#define _NSP_LOC_ADJUST ID X Y {VARIABLE loc_adjust[{ID}].x {X}} {VARIABLE loc_adjust[{ID}].y {Y}} #enddef #define NSP_LOC_ADJUST X {VARIABLE given_x {X}} {VARIABLE_OP given_x modulo 2} {IF_VAR given_x equals 1 ( [then] {_NSP_LOC_ADJUST 0 0 0} {_NSP_LOC_ADJUST 1 -1 -1} {_NSP_LOC_ADJUST 2 -1 0} {_NSP_LOC_ADJUST 3 0 -1} {_NSP_LOC_ADJUST 4 0 1} {_NSP_LOC_ADJUST 5 1 -1} {_NSP_LOC_ADJUST 6 1 0} [/then] [else] {_NSP_LOC_ADJUST 0 0 0} {_NSP_LOC_ADJUST 1 -1 0} {_NSP_LOC_ADJUST 2 -1 1} {_NSP_LOC_ADJUST 3 0 -1} {_NSP_LOC_ADJUST 4 0 1} {_NSP_LOC_ADJUST 5 1 0} {_NSP_LOC_ADJUST 6 1 1} [/else] )} #enddef #define NSP LOC TYPE {VARIABLE waves[$wave_id].{LOC}[${LOC}_id].type {TYPE}} {VARIABLE_OP {LOC}_id add 1} #enddef #define NSP_WAVE ID ANNOUNCE SPAWNS {VARIABLE waves[$wave_id].next_wave {ID}} {VARIABLE wave_id {ID}} {VARIABLE waves[$wave_id].announce {ANNOUNCE}} {SPAWNS} #enddef #define NSP_ANNOUNCE ANNOUNCE [event] name=new turn first_time_only=no {IF_VAR waves[$turn_number].announce not_equals $empty ( [then] {ANNOUNCE} [/then] )} [/event] #enddef #define NSP_SPAWN SPAWN INFO [event] name=new turn first_time_only=no {IF_VAR waves[$turn_number].announce not_equals $empty ( [then] {SPAWN} {IF_VAR choice equals 1 ( [then] {INFO} [/then] )} [/then] )} [/event] #enddef