cocos 体力和倒计时新编

最早的版本,也是后来改进的基础,有兴趣的可以看下:
https://blog.csdn.net/linw321456/article/details/106472398?spm=1001.2014.3001.5501

这里不会在具体展示代码了,只简单介绍下,后来使用过程中遇到的一些问题以及解决方案。

一开始对整个编程的过程和理解都有很多的问题,以至于基础版有各种各样甚至是千疮百孔般的问题:
a. 在单独一格体力结束计时后,会继续计时;
b. 体力会有时扣掉一格,有时扣掉2格,甚至多格体力;
c. 恢复体力也会出现一次恢复2格或多格的情况;
d. 在倒计时到1:00或者新的一轮2:00计数时会有的1s停顿
e. 在游戏退出后,重新进入游戏,时间间隔并不计入统计
f. 以上都是小问题,这两个js文件的使用竟然还会造成游戏卡顿…

解决问题的过程其实真的很有意思,即使各种找不到原因,但是解决的那一刻真的很舒爽。
A. 其实就是简单的判断做复杂了
B. 掉体力是通过事件判断驱动的,但是每次事件完成要取消,否则就会叠加
C. 恢复体力同上
D. 这就是基础代码里的结构问题
E. cc.sys.localStorage的判断问题
F. 重点说这个吧
首先就是因为退出游戏回到游戏,只能通过cc.sys.localStorage来保存数据,一些简单的小游戏都需要一些基本的数据,比如,时间,最佳分数等。
本人很愚蠢的给每个参数都来了一个localStorage,比如:min, sec, bestscore, lastbestscore, ttl_sec,time_display…貌似第一次用了7个左右,写了几十次…
后来改了下,只用到两个,一个就是ttl_sec,一个是bestscore,毕竟这两个好像不能换算。
其他的min,sec, time_display都可以用ttl_sec换算得到,所以只取一个。
改完以后,一下顺畅了许多。

另外,因为这是一开始为做小游戏做的,所以我查了下weChat的官方文档,里面有两个接口wx.show和wx.off,貌似可以把ttl_sec的localStorage都省了。

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

linw321456

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值