DarkGDK,精灵生成时间之间的差距

时间:2013-01-08 13:40:57

标签: c++ sprite delay gdk

我有一个for循环,我在其中声明sprite的位置。但它们通常会在彼此附近产生并且看起来很可怕。使用诸如dbWait(1000);之类的函数会冻结所有精灵,因此它不是解决方案。

有没有办法在产卵之间产生差距?

for(int i=20;i<=25;i++){
    dbSprite(i,dbRnd(500),dbRnd(90)+400,20);
    dbHideSprite(i);
}

1 个答案:

答案 0 :(得分:0)

int spritesToSpawn = 25;

while (LoopGDK ())
{
 if (spritesToSpawn)
  if (waitToSpawn <= 0)
  {
    dbSprite (i, dbRnd (500), dbRnd(90)_400, 20);
    waitToSpawn = SPAWNING_DELAY;
    --spritesToSpawn;
  }
  else
    --waitToSpawn;

 ...

 dbSync();
}

也就是说,诀窍是利用那个主循环。让它继续它的业务,利用它来产生,只要你准备好了另一个。