倒计时器

时间:2010-05-24 21:27:08

标签: objective-c

我设置了一个计时器,当玩家处于转弯阶段时,它会被调用。我还有一个乘数,当玩家采取行动时,它会缓慢递减。

由于一些奇怪的原因我的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);
}

我在某处有语法错误吗?

编辑 - 事实证明我使用了错误的标识符来显示浮动。

1 个答案:

答案 0 :(得分:4)

假设mult是float或double,那么您正在错误地使用NSLog的打印格式。你想要

NSLog(@"%f", mult);

这是一个很好的参考:

http://www.cocoadev.com/index.pl?NSLog