我设置了一个计时器,当玩家处于转弯阶段时,它会被调用。我还有一个乘数,当玩家采取行动时,它会缓慢递减。
由于一些奇怪的原因我的mult变量返回垃圾值我在onLoad语句中将其初始化为1,但它似乎仍有问题。每次Timer触发时,该值都会立即显示在NsLog语句中,作为一个非常大的负数。 当我获得积分时,它会变成一个非常大的正数。
-(void) Timerbar:(NSTimer *)barTimer {
if(!waitForPlayer) {
[barTimer invalidate];
}
if(mult > 0.0) {
mult -= 0.01;
if(mult < 0) {
mult = 0;
}
}
power = (mult * 10) / pwrBarMaxWidth;
pwrBarWidth = (int)power % limit;
NSLog(@"%d", mult);
}
我在某处有语法错误吗?
编辑 - 事实证明我使用了错误的标识符来显示浮动。
答案 0 :(得分:4)
假设mult是float或double,那么您正在错误地使用NSLog的打印格式。你想要
NSLog(@"%f", mult);
这是一个很好的参考: