NR S13: use new code features

Using location_id (which accepts multiple values sice 1.15.0)
and the new macros for handling overlays and ellipses.

Side effect: the now-leaders won't have the loyal trait anmore
This commit is contained in:
Severin Glöckner 2020-12-29 21:22:33 +01:00
parent 2d94d90449
commit deb007f1b1

View file

@ -386,10 +386,6 @@
# Check if Krash is alive, if yes place him at helm of side 7,
# otherwise it's taken over by older lich.
{RECALL_KRASH 7}
[store_starting_location]
side=7
variable=side_seven_starts_at
[/store_starting_location]
[if]
[not]
[have_unit]
@ -397,20 +393,13 @@
[/have_unit]
[/not]
[then]
[store_unit]
[filter]
id="Ro'Arthian"
[/filter]
variable=place_lich_at
kill=yes
[/store_unit]
{VARIABLE place_lich_at.side 7}
{VARIABLE place_lich_at.canrecruit yes}
[unstore_unit]
variable=place_lich_at
x,y=$side_seven_starts_at.x,$side_seven_starts_at.y
[/unstore_unit]
{UNMAKE_HERO "Ro'Arthian"}
{MAKE_LOYAL_LEADER "Ro'Arthian"}
{MODIFY_UNIT id="Ro'Arthian" side 7}
[recall]
id="Ro'Arthian"
location_id=7
show=no
[/recall]
[kill]
side=7
race=drake
@ -444,33 +433,18 @@
defeat_condition=no_leader_left
[/modify_side]
# Hide unit for spectacular entrance
[hide_unit]
x=$side_seven_starts_at.x
y=$side_seven_starts_at.y
[/hide_unit]
# Check if Eryssa is alive. If yes place her at the helm of side 9;
# Alternatively, let Sisal take her place, and if that's not possible
# either, younger lich assumes command and elves are scrubbed from
# the sides recall list.
[store_starting_location]
side=9
variable=side_nine_starts_at
[/store_starting_location]
[if]
[have_unit]
id=Eryssa
search_recall_list=yes
[/have_unit]
[then]
[modify_unit]
[filter]
id=Eryssa
[/filter]
side=9
canrecruit=yes
[/modify_unit]
{MAKE_LOYAL_LEADER Eryssa}
{MODIFY_UNIT id=Eryssa side 9}
[recall]
id=Eryssa
location_id=9
@ -487,13 +461,8 @@
search_recall_list=yes
[/have_unit]
[then]
[modify_unit]
[filter]
id=Sisal
[/filter]
side=9
canrecruit=yes
[/modify_unit]
{MAKE_LOYAL_LEADER Sisal}
{MODIFY_UNIT id=Sisal side 9}
[recall]
id=Sisal
location_id=9
@ -506,20 +475,13 @@
[/then]
[/elseif]
[else]
[store_unit]
[filter]
id="Ro'Sothian"
[/filter]
variable=place_second_lich_at
kill=yes
[/store_unit]
{VARIABLE place_second_lich_at.side 9}
{VARIABLE place_second_lich_at.canrecruit yes}
[unstore_unit]
variable=place_second_lich_at
x,y=$side_nine_starts_at.x,$side_nine_starts_at.y
[/unstore_unit]
{UNMAKE_HERO "Ro'Sothian"}
{MAKE_LOYAL_LEADER "Ro'Sothian"}
{MODIFY_UNIT id="Ro'Sothian" side 9}
[recall]
id="Ro'Sothian"
location_id=9
show=no
[/recall]
[kill]
side=9
race=elf
@ -552,26 +514,11 @@
defeat_condition=no_leader_left
[/modify_side]
# Hide leader of side 9, Hamel and Tallin for great entrance
# Hide leaders of side 7,9, Hamel and Tallin for great entrance
[hide_unit]
x=$side_nine_starts_at.x
y=$side_nine_starts_at.y
[/hide_unit]
[store_starting_location]
side=1
variable=side_one_starts_at
[/store_starting_location]
[hide_unit]
x=$side_one_starts_at.x
y=$side_one_starts_at.y
[/hide_unit]
[store_starting_location]
side=8
variable=side_eight_starts_at
[/store_starting_location]
[hide_unit]
x=$side_eight_starts_at.x
y=$side_eight_starts_at.y
[filter_location]
location_id=1,7,8,9
[/filter_location]
[/hide_unit]
# Place bad guys
@ -732,10 +679,17 @@
{CLEAR_VARIABLE ro_arthian_store}
[/else]
[/if]
{MODIFY_UNIT (x,y=$side_seven_starts_at.x,$side_seven_starts_at.y) facing se}
[modify_unit]
[filter]
side=7
canrecruit=yes
[/filter]
facing=se
[/modify_unit]
[unhide_unit]
x=$side_seven_starts_at.x
y=$side_seven_starts_at.y
[filter_location]
location_id=7
[/filter_location]
[/unhide_unit]
[if]
@ -821,10 +775,17 @@
{CLEAR_VARIABLE ro_sothian_store}
[/else]
[/if]
{MODIFY_UNIT (x,y=$side_nine_starts_at.x,$side_nine_starts_at.y) facing nw}
[modify_unit]
[filter]
side=9
canrecruit=yes
[/filter]
facing=nw
[/modify_unit]
[unhide_unit]
x=$side_nine_starts_at.x
y=$side_nine_starts_at.y
[filter_location]
location_id=9
[/filter_location]
[/unhide_unit]
[store_unit]
[filter]
@ -839,10 +800,11 @@
y=30,30,30,30,30
[/move_unit_fake]
{CLEAR_VARIABLE tallin_store}
{MODIFY_UNIT (x,y=$side_one_starts_at.x,$side_one_starts_at.y) facing sw}
{MODIFY_UNIT id=Tallin facing sw}
[unhide_unit]
x=$side_one_starts_at.x
y=$side_one_starts_at.y
[filter_location]
location_id=1
[/filter_location]
[/unhide_unit]
[message]
speaker=narrator
@ -946,10 +908,11 @@
y=31,31,31,31,31,31,31,31,32,32,32
[/move_unit_fake]
{CLEAR_VARIABLE hamel_store}
{MODIFY_UNIT (x,y=$side_eight_starts_at.x,$side_eight_starts_at.y) facing ne}
{MODIFY_UNIT id=Hammel facing ne}
[unhide_unit]
x=$side_eight_starts_at.x
y=$side_eight_starts_at.y
[filter_location]
location_id=8
[/filter_location]
[/unhide_unit]
[move_unit_fake]
type=Dwarvish Steelclad