您需要 登录 才可以下载或查看,没有账号?注册
x
前面已经实现了“物体随机刷新”,代码如下,利用flag全局变量使金币每15帧刷新一次
那么假设不以帧计时,那么有没有专门的API可以实现计时呢?
一、Invoke函数
·Invoke(string, float):在float秒后执行函数string,只会执行一次
·InvokeRepeating(string,float1,float2):在float1秒后执行函数string,接下来每float2秒执行一次
·CancelInvoke():使这个脚本中所有的Invoke调用失效
同等代码如下:除此之外,当按下C键之后,所有的刷新都会停止
Invoke 相关的函数都在 MonoBehaviour 类里面,我们所有写的脚本类都是 MonoBehaviour 类的子类,所以我们可以直接通过方法名来调用父类中的方法
二、碰撞销毁当主角碰撞到金币时,金币应该马上被销毁,不然就可以“反复刷分”,这显然是不合理的 方法如下:因为Coin太多,而名字是唯一的,所以要先建立Tag标签
之后只需要编写代码实现:当主角与标签为Tag的物体发生碰撞的时候,销毁这个物体即可,如下:
除此之外,最好将主角方块的质量设的特别大,这样主角就基本不会发生碰撞效果 实现结果:
当然,还可以将碰撞改为触发,并移除金币的刚体组件,给金币加上自动旋转效果,金币脚本和效果如下:
————————————————
版权声明:本文为CSDN博主「Jaihk662」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Jaihk662/article/details/86766641
|