enemy lifecycle

This commit is contained in:
t. boddy 2026-02-14 23:29:13 -05:00
parent ad71177251
commit 19258268b0
2 changed files with 28 additions and 6 deletions

View file

@ -50,7 +50,12 @@ void spawnEnemy(u8 type, u8 zone){
for(u8 j = 0; j < PROP_COUNT; j++){
enemies[i].ints[j] = 0;
}
enemies[i].ints[0] = random() % 20;
switch(enemies[i].type){
case 0:
loadEnemyOne(i);
break;
}
}
static void boundsEnemy(u8 i){

View file

@ -1,17 +1,34 @@
void loadEnemyOne(u8 i){
enemies[i].ints[0] = random() % 60;
}
void updateEnemyOne(u8 i){
if(enemies[i].clock % 20 == enemies[i].ints[0]){
if(enemies[i].clock % 60 == enemies[i].ints[0]){
struct bulletSpawner spawner = {
.x = enemies[i].pos.x,
.y = enemies[i].pos.y,
.anim = 6 + (random() % 3),
// .frame = 1,
.speed = FIX32(4),
.angle = random() % 128,
.angle = random() % 256,
};
if(random() % 2 < 1) spawner.anim += 3;
for(u8 j = 0; j < 8; j++){
for(u8 j = 0; j < 4; j++){
spawnBullet(spawner, EMPTY);
spawner.angle += 128;
spawner.angle += 256;
}
}
}
void updateLander(u8 i){}
void updateMutant(u8 i){}
void updateSwarmer(u8 i){}
void updatePod(u8 i){}
void updateBomber(u8 i){}
void updateBaiter(u8 i){}