[test] #This is a test-case scenario for bug 8857 #For problem exposition simplicity it uses 5x5 plain grass map and to sides (human,ai) #Without any modifications id=test name=_"Bug 8857" next_scenario=null map_data="1 Gg , Gg , Gg , Gg , Gg Gg , Gg , Gg , Gg , Gg Gg , Gg , Gg , Gg , Gg Gg , Gg , Gg , Gg , Gg Gg , Gg , Gg , Gg , 2 Gg" turns=20 {AFTERNOON} #Side 1 [side] side=1 controller=human team_name=human type=Dragoon description=human user_description=_"human" canrecruit=1 [/side] #Side 2 [side] side=2 team_name=ai type=Lieutenant description=ai user_description=_"ai" role=lieutenant canrecruit=1 [/side] #This is a standart macro defined in utils.cfg, but for safety lets redefine it here #define VARIABLE NAME X [set_variable] name={NAME} value={X} [/set_variable] #enddef #Now the error itself, lets define two events launched at prestart, and turn 1. #Both are going to use [while] tag. Notice that syntax of both events is exactly the same #With exception of condition checking line {VARIABLE some_var 1} [event] name=prestart {VARIABLE flag 0} [while] [variable] name=flag numerical_not_equals=$some_var [/variable] [do] {VARIABLE flag 1} [message] description=human message="This won't show even once" [/message] [/do] [/while] [/event] [event] name=turn 1 {VARIABLE flag1 0} [while] [variable] name=flag1 numerical_not_equals=1 [/variable] [do] {VARIABLE flag1 1} [message] description=human message="This will show once as supposed" [/message] [/do] [/while] [/event] [/test]