Add some event filter tests
This commit is contained in:
parent
7cbc6c9d5d
commit
5bb0576e17
2 changed files with 234 additions and 0 deletions
230
data/test/scenarios/events-test_filters.cfg
Normal file
230
data/test/scenarios/events-test_filters.cfg
Normal file
|
@ -0,0 +1,230 @@
|
|||
|
||||
{GENERIC_UNIT_TEST event_test_filter_condition (
|
||||
[event]
|
||||
name=start
|
||||
{VARIABLE var 1}
|
||||
{VARIABLE triggers 0}
|
||||
[do_command]
|
||||
[move]
|
||||
x=7,8
|
||||
y=3,3
|
||||
[/move]
|
||||
[/do_command]
|
||||
[do_command]
|
||||
[move]
|
||||
x=8,9
|
||||
y=3,4
|
||||
[/move]
|
||||
[/do_command]
|
||||
[do_command]
|
||||
[move]
|
||||
x=9,8
|
||||
y=4,4
|
||||
[/move]
|
||||
[/do_command]
|
||||
{RETURN ({VARIABLE_CONDITIONAL triggers equals 3})}
|
||||
[/event]
|
||||
[event]
|
||||
name=moveto
|
||||
[filter_condition]
|
||||
{VARIABLE_CONDITIONAL var equals 1}
|
||||
[/filter_condition]
|
||||
{ASSERT ({VARIABLE_CONDITIONAL var equals 1})}
|
||||
{VARIABLE var 2}
|
||||
{VARIABLE_OP triggers add 1}
|
||||
[/event]
|
||||
[event]
|
||||
name=moveto
|
||||
[filter_condition]
|
||||
{VARIABLE_CONDITIONAL var equals 2}
|
||||
[/filter_condition]
|
||||
{ASSERT ({VARIABLE_CONDITIONAL var equals 2})}
|
||||
{VARIABLE var 3}
|
||||
{VARIABLE_OP triggers add 1}
|
||||
[/event]
|
||||
[event]
|
||||
name=moveto
|
||||
[filter_condition]
|
||||
{VARIABLE_CONDITIONAL var equals 3}
|
||||
[/filter_condition]
|
||||
{ASSERT ({VARIABLE_CONDITIONAL var equals 3})}
|
||||
{VARIABLE_OP triggers add 1}
|
||||
[/event]
|
||||
)}
|
||||
|
||||
{GENERIC_UNIT_TEST event_test_filter_side (
|
||||
[event]
|
||||
name=start
|
||||
{VARIABLE triggers 0}
|
||||
[do_command]
|
||||
[move]
|
||||
x=7,11
|
||||
y=3,4
|
||||
[/move]
|
||||
[/do_command]
|
||||
[end_turn][/end_turn]
|
||||
[/event]
|
||||
[event]
|
||||
name=side 2 turn
|
||||
[do_command]
|
||||
[move]
|
||||
x=13,10
|
||||
y=3,2
|
||||
[/move]
|
||||
[/do_command]
|
||||
[end_turn][/end_turn]
|
||||
[/event]
|
||||
[event]
|
||||
name=moveto
|
||||
[filter_side]
|
||||
side=1
|
||||
[/filter_side]
|
||||
{ASSERT ({VARIABLE_CONDITIONAL unit.race equals elf})}
|
||||
{VARIABLE_OP triggers add 1}
|
||||
[/event]
|
||||
[event]
|
||||
name=moveto
|
||||
[filter_side]
|
||||
side=2
|
||||
[/filter_side]
|
||||
{ASSERT ({VARIABLE_CONDITIONAL unit.race equals orc})}
|
||||
{VARIABLE_OP triggers add 1}
|
||||
[/event]
|
||||
[event]
|
||||
name=turn 2
|
||||
{RETURN ({VARIABLE_CONDITIONAL triggers equals 2})}
|
||||
[/event]
|
||||
)}
|
||||
|
||||
{GENERIC_UNIT_TEST event_test_filter_unit (
|
||||
[event]
|
||||
name=start
|
||||
{VARIABLE triggers 0}
|
||||
[do_command]
|
||||
[recruit]
|
||||
type=Peasant
|
||||
x,y=3,6
|
||||
[from]
|
||||
x,y=7,3
|
||||
[/from]
|
||||
[/recruit]
|
||||
[recruit]
|
||||
type=Woodsman
|
||||
x,y=15,8
|
||||
[from]
|
||||
x,y=7,3
|
||||
[/from]
|
||||
[/recruit]
|
||||
[/do_command]
|
||||
{RETURN ({VARIABLE_CONDITIONAL triggers equals 4})}
|
||||
[/event]
|
||||
[event]
|
||||
name=recruit
|
||||
first_time_only=no
|
||||
[filter_second]
|
||||
race=elf
|
||||
[/filter_second]
|
||||
{ASSERT ({VARIABLE_CONDITIONAL unit.level equals 0})}
|
||||
{VARIABLE_OP triggers add 1}
|
||||
[/event]
|
||||
[event]
|
||||
name=recruit
|
||||
[filter]
|
||||
type=Peasant
|
||||
[/filter]
|
||||
{ASSERT ({VARIABLE_CONDITIONAL second_unit.race equals elf})}
|
||||
{VARIABLE_OP triggers add 1}
|
||||
[/event]
|
||||
[event]
|
||||
name=recruit
|
||||
[filter]
|
||||
type=Woodsman
|
||||
[/filter]
|
||||
{ASSERT ({VARIABLE_CONDITIONAL second_unit.race equals elf})}
|
||||
{VARIABLE_OP triggers add 1}
|
||||
[/event]
|
||||
) (SIDE1_RECRUIT=Peasant,Woodsman)}
|
||||
|
||||
{GENERIC_UNIT_TEST event_test_filter_attack (
|
||||
[event]
|
||||
name=turn 1
|
||||
[modify_unit]
|
||||
[filter]
|
||||
[/filter]
|
||||
# Make sure the attacks hit
|
||||
[attack]
|
||||
accuracy=100
|
||||
[/attack]
|
||||
# Make sure they don't die during the attacks
|
||||
[status]
|
||||
invulnerable=yes
|
||||
[/status]
|
||||
[/modify_unit]
|
||||
{VARIABLE triggers 0}
|
||||
[do_command]
|
||||
[move]
|
||||
x=7,13
|
||||
y=3,4
|
||||
[/move]
|
||||
[attack]
|
||||
[source]
|
||||
x,y=13,4
|
||||
[/source]
|
||||
[destination]
|
||||
x,y=13,3
|
||||
[/destination]
|
||||
[/attack]
|
||||
[/do_command]
|
||||
[end_turn][/end_turn]
|
||||
[/event]
|
||||
[event]
|
||||
name=side 2 turn
|
||||
[do_command]
|
||||
[attack]
|
||||
[source]
|
||||
x,y=13,3
|
||||
[/source]
|
||||
[destination]
|
||||
x,y=13,4
|
||||
[/destination]
|
||||
[/attack]
|
||||
[/do_command]
|
||||
[end_turn][/end_turn]
|
||||
[/event]
|
||||
[event]
|
||||
name=attack
|
||||
[filter_attack]
|
||||
damage=5
|
||||
[/filter_attack]
|
||||
{ASSERT ({VARIABLE_CONDITIONAL side_number equals 1})}
|
||||
{VARIABLE_OP triggers add 1}
|
||||
[/event]
|
||||
[event]
|
||||
name=attack
|
||||
[filter_attack]
|
||||
damage=9
|
||||
[/filter_attack]
|
||||
{ASSERT ({VARIABLE_CONDITIONAL side_number equals 2})}
|
||||
{VARIABLE_OP triggers add 1}
|
||||
[/event]
|
||||
[event]
|
||||
name=attack
|
||||
[filter_second_attack]
|
||||
damage=5
|
||||
[/filter_second_attack]
|
||||
{ASSERT ({VARIABLE_CONDITIONAL side_number equals 2})}
|
||||
{VARIABLE_OP triggers add 1}
|
||||
[/event]
|
||||
[event]
|
||||
name=attack
|
||||
[filter_second_attack]
|
||||
damage=9
|
||||
[/filter_second_attack]
|
||||
{ASSERT ({VARIABLE_CONDITIONAL side_number equals 1})}
|
||||
{VARIABLE_OP triggers add 1}
|
||||
[/event]
|
||||
[event]
|
||||
name=turn 2
|
||||
{RETURN ({VARIABLE_CONDITIONAL triggers equals 4})}
|
||||
[/event]
|
||||
)}
|
|
@ -97,6 +97,10 @@
|
|||
0 event_test_auto_variables_weapons
|
||||
0 event_test_auto_variables_damage
|
||||
0 event_test_auto_variables_owner
|
||||
0 event_test_filter_condition
|
||||
0 event_test_filter_side
|
||||
0 event_test_filter_unit
|
||||
0 event_test_filter_attack
|
||||
0 filter_vision
|
||||
0 scatter_units
|
||||
0 has_ally
|
||||
|
|
Loading…
Add table
Reference in a new issue