iPhone游戏每50分检查一次

时间:2010-04-10 08:23:45

标签: iphone objective-c numbers

我遇到了一个小障碍,想看看是否有人可以帮助我!

我想为if语句编写一个算法:

if (for every 50 points)
{
//do something
}

我认为+ = 50可以做到这一点,但是没有。

有什么想法吗?

谢谢!

2 个答案:

答案 0 :(得分:3)

if ((points % 50) == 0)
{
  // do something
}

其中points是包含您的点的int变量。 if语句将输入0,50,100,150 ..等等

答案 1 :(得分:1)

if (points - lastCheckpoint >= 50) 
{ 
  // do something
  lastCheckpoint = points - (points % 50);
}

在设置过程中以int lastCheckpoint = 0;开头,这就行了 警告:如果支票之间的点数增加100或更多,// do something只会被触发一次 如果您希望每50个点发生一次,您可以将增量语句更改为lastCheckpoint += 50;,尽管这会冒points远远超过lastCheckpoint的风险。

编辑:这将更有效:

if (points > nextCheckpoint)
{
  // do something
  nextCheckpoint = 50 + points - (points % 50);
}

int nextCheckpoint = 50;开始这样,在游戏循环的每次迭代中执行的测试(大概)都不包括减法。