用代码写了一个rotateBy的动作脚本

我把这个脚本绑定在了不同的几个节点上 让他们分别循环同样的一个简单动作
但是每次运行出来会随机有那么几个执行 每次都是有的执行有的不执行 而且是不固定的哪个会执行
是我这样绑定方法有问题么?
![]()
这个函数有没有可能随机取值为0呢?如果取值为0当然没有任何动作了,建议在脚本里加log,打印当前节点的名字,和旋转的角度,这样应该就能找到问题了
有是有 不过我没用那个参数·····开始是用来判断是否执行的 后来发现去掉这个判断自动给我加了未必能执行的效果
你在onload里加上cc.log(),打印你的节点名this.node.name和你随机取的random和randomt,应该就能判断问题所在了
嗯嗯 查出来了 是我获取随机数的方法出问题了····太信任之前写的代码了 直接拿来用没想到这的问题 多谢啦
不客气,我一般遇到问题都会打log,监测每个变量是否是预期的值,这样就很容易找到问题
疏忽了疏忽了 早看下log就对了
刚才测试动画编辑的时候 x y position 和widget相关的属性的动画编辑有什么区别么? x y 和position貌似是一个效果 position可以修改路径轨迹 x y 貌似没什么必要了吧? widget属性在动画里没看出效果来
我刚刚测试了一下,x属性只能修改x的坐标,y属性只能修改y坐标,position可以同时修改x和y的坐标,假如你的动画需要同时修改x和y的坐标,如果没有position,用x和y的话,你就需要添加两条属性轨道,相比position来说比较麻烦,而且有可能不能保证x和y的坐标修改同步
比如你的动画有很多帧,你的这个窗口如果缩小了以后,

看着像是在同一帧完成了动画,实际上
可能会出现这种情况,这只是个人能想到的情况,如果用position就不会,只有可能没有修改x或者y的其中一个,但是是同步的
还有就是更直白的说明意图,x就是水平移动,y就是垂直移动,如果没有单独的x和y,你用position的话,别人一看,哦,移动位置,怎么移动呢,这个时候就需要预览动画,或者查看x和y的坐标,有时候实际上你只移动了x的坐标,但是别人看就需要记住两个坐标,这些都是我个人能够想到的,有可能并没有什么卵用
还有widget动画属性,比如你有一个sprite,在特定条件下你想让他全屏显示,当然你可以修改scale或者size属性来达到全屏显示的效果,但是这是固定在一个屏幕分辨率上,如果换一个分辨率,就有可能会超出屏幕或者不能铺满屏幕,但是用widget就能实现不管分辨率是多少,上下左右的边距始终是相同的,所以不管是什么设备,都能铺满并且不会超出屏幕
以上是个人见解,仅供参考
嗯嗯 确实会有一些特定情况下x y看起来更直观一些 就是觉得使用情况不多好像没有太大意义 开始以为可以是作为相对位置的动画来制作 绑定到其它组件上执行类似moveby的效果 后来实验发现并不能 还是会把当前节点的位置记录然后设置位置 而且这个属性的变化不能修改轨迹 Position可以看到轨迹并修正是真挺好用的
widget当时实验的时候没试过全屏的效果 当时虽然在不同帧里面设置widget不过使用和不使用在不同机型中没看出区别 回去试一下全屏应该能验证效果
多谢解答这么多~
不客气,希望能够帮到你
