我做了一个简单的计时器,但是试图增加计时器的速度随着时间的推移,所以我基本上希望计时器的间隔为1.0,每10秒我希望计时器的间隔减少0.1
我该怎么做呢?
[self schedule:@selector(tick:)interval:1.0];
这是在init部分
-(void)tick:(ccTime)dt{
myTime = myTime+1;
totalTime = myTime;
[timeLabel setString:[NSString stringWithFormat:@"%i", totalTime]];
}
那是计时器。
这是一个基本的计时器,间隔为1.0秒,但我希望间隔每10秒减少10%。
答案 0 :(得分:2)
@property(nonatomic,readWrite)CGFloat lastUpdatedInterval;
in.m文件,初始化self.lastUpdatedInterval = 1.0;
然后致电
[self schedule:@selector(tick:)interval:self.lastUpdatedInterval];
在更新循环中,
-(void)tick:(ccTime)dt
{
if(myTime>9 && (myTime%10 == 0))
{
[self unschedule:@selector(tick:)];
self.lastUpdatedInterval = self.lastUpdatedInterval - (self.lastUpdatedInterval*0.1);
[self schedule:@selector(tick:)interval:self.lastUpdatedInterval];
}
myTime = myTime+1;
totalTime = myTime;
[timeLabel setString:[NSString stringWithFormat:@"%i", totalTime]];
}