Add game over screen

This commit is contained in:
2024-02-11 16:46:43 +01:00
parent f984ca3163
commit bb54002fa3
8 changed files with 128 additions and 0 deletions

33
game/wave.c Normal file
View File

@@ -0,0 +1,33 @@
#include "wave.h"
WaveInfo getWaveInfo(i32 idx) {
BZ_ASSERT(idx >= 0);
WaveData waveData;
if (idx >= NUM_WAVES) {
waveData = predefWaves[NUM_WAVES - 1];
waveData.difficultyScale += (idx - NUM_WAVES) * 0.1f;
} else {
waveData = predefWaves[idx];
}
WaveInfo info = {
.data = waveData,
.orcsToSend = waveData.numOrcs,
.goblinsToSend = waveData.numGoblins,
};
return info;
}
void updateWave(WaveInfo *wave, f32 dt) {
wave->orcsElapsed += dt;
wave->golbinsElapsed += dt;
wave->elapsed += dt;
}
bool isWaveSendingOver(const WaveInfo *wave) {
return wave->orcsToSend == 0 && wave->goblinsToSend == 0;
}