void Spawner::Update(int dt) { CheckDespawn(); timer.Update(dt); if (timer.Hit()) { TrySpawn(); } }
// обновление ИИ bool ArtInt::Update(float dT, NumXY<float> showPoint) { // рождение персов static float persTime = persSpawnTime; persTime -= dT; if (persTime < 0.0f) { persTime += persSpawnTime; TrySpawn(showPoint, 0); TrySpawn(showPoint, 1); } // обновление векторов персов BR(boars->Update(dT, showPoint)); // пауки BR(devils->Update(dT, showPoint)); // коровы return true; }
void ProcAi(void) { if (wave > 0) TrySpawn(); MobAi(); if (wavedelay) { wavedelay--; if (wavedelay == 0) NewWave(); } else if (wave > 0) { Uint8 i, mobs = 0; for (i = 0; i < 128; i++) if (mob[i][0] > 0) mobs++; if (mobs + wavemobleft == 0) wavedelay = 100; } }