Here you go
extended:
tags:
BattleUnit:
AUTO_DEATH: int
DEATH_COUNTUP: int
armors:
- update: ZOMBIE_ARMOR
scripts:
createUnit: |
var int auto_death;
battle_game.randomRange auto_death 3 5;
unit.setTag Tag.AUTO_DEATH auto_death;
return;
newTurnUnit: |
var int auto_death;
unit.getTag auto_death Tag.AUTO_DEATH;
if gt auto_death 0;
var int death_countup;
unit.getTag death_countup Tag.DEATH_COUNTUP;
if eq side FACTION_HOSTILE;
add death_countup 1;
unit.setTag Tag.DEATH_COUNTUP death_countup;
else and eq side FACTION_PLAYER ge death_countup auto_death;
unit.setHealth 0;
end;
end;
return;
Scripts have been directly tied to the zombie armor, upon zombie creation a random roll will be made between 3 and 5, from that point, every alien turn AFTER spawning, a counter will go up for that zombie and at the start of the player turn it checks if the counter has reached that number and 'kill' the zombie, spawning the chryssalid. Time to die for the zombie will be slightly different depending if it spawned during the alien turn by direct alien action or during one of the other faction's turns.