Cocos2D每秒调用方法一定次数?

时间:2012-10-18 02:57:41

标签: ios methods cocos2d-iphone intervals schedule

我正在使用Cocos2D 2.0,目前我的问题是每秒安排一定数量的方法。

我基本上要做的就是:

1. If score is 10 or less, call the method 5 times a second
2. If score is 11 or more, call the method 10 times a second

所以对于这段时间,我已经尝试分别做1/5或1/10但它没有奏效。我有什么方法可以使用这个电话来做这件事吗?

[self schedule:@selector() interval:];

谢谢!

2 个答案:

答案 0 :(得分:2)

是的,schedule:interval:可以解决问题。这里的问题是1/101/5是用两个整数文字定义的分数,因此按照C约定应用整数除法,结果为0。

尝试[self schedule:@selector(yourMethod) interval:1.0/10],它应该有效。

如果您重新安排同一个选择器,schedule:方法会自动更新时间间隔非常有用,您之前不需要取消预定。

答案 1 :(得分:1)

我认为您可以通过使用此

来实现目标
if(score <= 10){
[self schedule:@selector(yourMethod) interval:0.5f];

}else{ [self schedule:@selector(yourMethod) interval:0.10f]; }