use variables
anything that you create with the "dimvar=x" command will carry on throughout the game
if you want an objective to be done say dimvar=objective1complete
then setvar=objective1complete 0
then use some other variable commands to manipulate entities to do stuff
for example here
with the new level system (nextlevel=x) you will find yourself encountering enemies you have already killed and keys you have already picked up, but no longer!
this takes a lot of variables, 1 per entity to be affected actually:
;place in enemy script
:state=0:dimvar=ent1dest
:healthless=1:setvar=ent1dest 1
:varequal=ent1dest 1:destroy
that will work on 1 enemy in 1 level, you'll have to change the ent1dest to ent2dest and ent3dest and so on for each enemy
I appear to have burst into flames...