Reindent the mainline content to uniiform whitespace.
This commit is contained in:
parent
ab20cd39e1
commit
b1b2435d40
202 changed files with 8005 additions and 8179 deletions
|
@ -34,13 +34,13 @@
|
|||
[about]
|
||||
title = _ "Campaign Design"
|
||||
[entry]
|
||||
name = "Josh Parsons"
|
||||
name = "Josh Parsons"
|
||||
[/entry]
|
||||
[/about]
|
||||
[about]
|
||||
title = _ "Adaptation for mainline"
|
||||
[entry]
|
||||
name = "Eric S. Raymond"
|
||||
name = "Eric S. Raymond"
|
||||
[/entry]
|
||||
[/about]
|
||||
|
||||
|
|
|
@ -81,101 +81,101 @@ Elves can move fast and safely among the trees. Pick off the enemy grunts with y
|
|||
y="18"
|
||||
[/unit]
|
||||
#ifdef EASY
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="0"
|
||||
[/set_variable]
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="0"
|
||||
[/set_variable]
|
||||
#endif
|
||||
#ifdef NORMAL
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="1"
|
||||
[/set_variable]
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="1"
|
||||
[/set_variable]
|
||||
#endif
|
||||
#ifdef HARD
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="2"
|
||||
[/set_variable]
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="2"
|
||||
[/set_variable]
|
||||
#endif
|
||||
[/event]
|
||||
|
||||
[story]
|
||||
[part]
|
||||
background=maps/wesnoth.png
|
||||
music=revelation.ogg
|
||||
story= _ "The arrival of humans and orcs sent shockwaves through the settled peoples of the Great Continent. Elves, dwarves, and others who had reached equilibrium with one another and become accustomed for centuries to at most small-scale clashes - little more, in truth, than armed squabbles - found themselves required to gird for warfare of unaccustomed intensity."
|
||||
[/part]
|
||||
[part]
|
||||
background=maps/wesnoth.png
|
||||
music=elf-land.ogg
|
||||
story= _ "Perhaps most affected were the elves. Eldest and wisest of the Speaking Peoples, their first encounters with humans went less well than either side might have wished. "
|
||||
[/part]
|
||||
[part]
|
||||
background=maps/wesnoth.png
|
||||
story= _ "But humans, though crude and thrusting, at least had in them a spark of song and grace which elves could recognize as kindred to their own nature. Not so with orcs."
|
||||
[/part]
|
||||
[part]
|
||||
background=maps/wesnoth.png
|
||||
music="elf-land.ogg"
|
||||
story= _ "For a score of years after Haldric's people landed, orcs remained scarce more than a rumor to trouble the green fastnesses of the elves. That was, until the day that an elvish noble of ancient line, Erlornas by name, encountered the new foe."
|
||||
delay="0"
|
||||
show_title="no"
|
||||
[image]
|
||||
x="929"
|
||||
y="146"
|
||||
file="items/gohere.png"
|
||||
delay="500"
|
||||
[/image]
|
||||
[/part]
|
||||
[part]
|
||||
music="frantic.ogg"
|
||||
story=_"The orcs were sighted at the northern marches of the great forest of Wesmere."
|
||||
delay="0"
|
||||
show_title="no"
|
||||
[/part]
|
||||
[part]
|
||||
music="elf-land.ogg"
|
||||
[image]
|
||||
x="551"
|
||||
y="363"
|
||||
file="units/elves-wood/lord.png~TC(1,magenta)"
|
||||
delay="1000"
|
||||
[/image]
|
||||
background="map.jpg"
|
||||
delay="0"
|
||||
show_title="yes"
|
||||
[image]
|
||||
x="534"
|
||||
y="295"
|
||||
file="units/orcs/warrior.png~TC(2,magenta)"
|
||||
delay="1000"
|
||||
[/image]
|
||||
[image]
|
||||
x="546"
|
||||
y="366"
|
||||
file="misc/cross.png"
|
||||
delay="500"
|
||||
[/image]
|
||||
[image]
|
||||
x="567"
|
||||
y="360"
|
||||
file="misc/cross.png"
|
||||
delay="500"
|
||||
[/image]
|
||||
[image]
|
||||
x="588"
|
||||
y="354"
|
||||
file="misc/cross.png"
|
||||
delay="500"
|
||||
[/image]
|
||||
[image]
|
||||
x="572"
|
||||
y="346"
|
||||
file="misc/cross.png"
|
||||
delay="500"
|
||||
[/image]
|
||||
[/part]
|
||||
[part]
|
||||
background=maps/wesnoth.png
|
||||
music=revelation.ogg
|
||||
story= _ "The arrival of humans and orcs sent shockwaves through the settled peoples of the Great Continent. Elves, dwarves, and others who had reached equilibrium with one another and become accustomed for centuries to at most small-scale clashes - little more, in truth, than armed squabbles - found themselves required to gird for warfare of unaccustomed intensity."
|
||||
[/part]
|
||||
[part]
|
||||
background=maps/wesnoth.png
|
||||
music=elf-land.ogg
|
||||
story= _ "Perhaps most affected were the elves. Eldest and wisest of the Speaking Peoples, their first encounters with humans went less well than either side might have wished. "
|
||||
[/part]
|
||||
[part]
|
||||
background=maps/wesnoth.png
|
||||
story= _ "But humans, though crude and thrusting, at least had in them a spark of song and grace which elves could recognize as kindred to their own nature. Not so with orcs."
|
||||
[/part]
|
||||
[part]
|
||||
background=maps/wesnoth.png
|
||||
music="elf-land.ogg"
|
||||
story= _ "For a score of years after Haldric's people landed, orcs remained scarce more than a rumor to trouble the green fastnesses of the elves. That was, until the day that an elvish noble of ancient line, Erlornas by name, encountered the new foe."
|
||||
delay="0"
|
||||
show_title="no"
|
||||
[image]
|
||||
x="929"
|
||||
y="146"
|
||||
file="items/gohere.png"
|
||||
delay="500"
|
||||
[/image]
|
||||
[/part]
|
||||
[part]
|
||||
music="frantic.ogg"
|
||||
story=_"The orcs were sighted at the northern marches of the great forest of Wesmere."
|
||||
delay="0"
|
||||
show_title="no"
|
||||
[/part]
|
||||
[part]
|
||||
music="elf-land.ogg"
|
||||
[image]
|
||||
x="551"
|
||||
y="363"
|
||||
file="units/elves-wood/lord.png~TC(1,magenta)"
|
||||
delay="1000"
|
||||
[/image]
|
||||
background="map.jpg"
|
||||
delay="0"
|
||||
show_title="yes"
|
||||
[image]
|
||||
x="534"
|
||||
y="295"
|
||||
file="units/orcs/warrior.png~TC(2,magenta)"
|
||||
delay="1000"
|
||||
[/image]
|
||||
[image]
|
||||
x="546"
|
||||
y="366"
|
||||
file="misc/cross.png"
|
||||
delay="500"
|
||||
[/image]
|
||||
[image]
|
||||
x="567"
|
||||
y="360"
|
||||
file="misc/cross.png"
|
||||
delay="500"
|
||||
[/image]
|
||||
[image]
|
||||
x="588"
|
||||
y="354"
|
||||
file="misc/cross.png"
|
||||
delay="500"
|
||||
[/image]
|
||||
[image]
|
||||
x="572"
|
||||
y="346"
|
||||
file="misc/cross.png"
|
||||
delay="500"
|
||||
[/image]
|
||||
[/part]
|
||||
[/story]
|
||||
|
||||
[event]
|
||||
|
|
|
@ -56,11 +56,11 @@
|
|||
{STARTING_VILLAGES 2 6}
|
||||
|
||||
[story]
|
||||
[part]
|
||||
background=maps/wesnoth.png
|
||||
music=northerners.ogg
|
||||
story= _ "The backtrail of the orcs was easy to trace -- a swathe of ugly trampled ground through the violated forest. Erlornas and his followers pursued them north and west."
|
||||
[/part]
|
||||
[part]
|
||||
background=maps/wesnoth.png
|
||||
music=northerners.ogg
|
||||
story= _ "The backtrail of the orcs was easy to trace -- a swathe of ugly trampled ground through the violated forest. Erlornas and his followers pursued them north and west."
|
||||
[/part]
|
||||
[/story]
|
||||
|
||||
[event]
|
||||
|
@ -84,22 +84,22 @@ Assassins are hard to hit, and their poison is insidious. Stay close to the vill
|
|||
[/objective]
|
||||
[/objectives]
|
||||
#ifdef EASY
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="0"
|
||||
[/set_variable]
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="0"
|
||||
[/set_variable]
|
||||
#endif
|
||||
#ifdef NORMAL
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="1"
|
||||
[/set_variable]
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="1"
|
||||
[/set_variable]
|
||||
#endif
|
||||
#ifdef HARD
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="2"
|
||||
[/set_variable]
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="2"
|
||||
[/set_variable]
|
||||
#endif
|
||||
[/event]
|
||||
[event]
|
||||
|
|
|
@ -41,16 +41,16 @@
|
|||
[/side]
|
||||
|
||||
[story]
|
||||
[part]
|
||||
background=maps/wesnoth.png
|
||||
music=northerners.ogg
|
||||
story= _ "As they fared further north the green forest thinned, fading into barren and scrubby country. Gradually the message of the treestumps and dead wood around them became clear. This had been forest once. The orcs had killed it."
|
||||
[/part]
|
||||
[part]
|
||||
background=maps/wesnoth.png
|
||||
music=northerners.ogg
|
||||
story= _ "The orcish trail stood out less against the desolation, but the craft of elvish trackers was more than equal to following. They pursued with grimmer purpose now."
|
||||
[/part]
|
||||
[part]
|
||||
background=maps/wesnoth.png
|
||||
music=northerners.ogg
|
||||
story= _ "As they fared further north the green forest thinned, fading into barren and scrubby country. Gradually the message of the treestumps and dead wood around them became clear. This had been forest once. The orcs had killed it."
|
||||
[/part]
|
||||
[part]
|
||||
background=maps/wesnoth.png
|
||||
music=northerners.ogg
|
||||
story= _ "The orcish trail stood out less against the desolation, but the craft of elvish trackers was more than equal to following. They pursued with grimmer purpose now."
|
||||
[/part]
|
||||
[/story]
|
||||
|
||||
[event]
|
||||
|
@ -74,22 +74,22 @@ There are no villages in this scenario - you must use healers instead. Use hit a
|
|||
[/objective]
|
||||
[/objectives]
|
||||
#ifdef EASY
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="0"
|
||||
[/set_variable]
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="0"
|
||||
[/set_variable]
|
||||
#endif
|
||||
#ifdef NORMAL
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="1"
|
||||
[/set_variable]
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="1"
|
||||
[/set_variable]
|
||||
#endif
|
||||
#ifdef HARD
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="2"
|
||||
[/set_variable]
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="2"
|
||||
[/set_variable]
|
||||
#endif
|
||||
[/event]
|
||||
[event]
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
#define AVOID_CAVEDOORS
|
||||
# The edges of the cave passages and mountains on both troll lairs.
|
||||
# Keep the trolls from landing these, so they have to come
|
||||
# Keep the trolls from landing these, so they have to come
|
||||
# out one at a time through the center hex. Players
|
||||
# can use these to get in, solving what would otherwise
|
||||
# be an imbalance heavily favoring the trolls.
|
||||
|
@ -33,16 +33,16 @@
|
|||
side="2"
|
||||
canrecruit="1"
|
||||
#ifdef HARD
|
||||
gold="50"
|
||||
recruit="Troll, Troll Rocklobber"
|
||||
gold="50"
|
||||
recruit="Troll, Troll Rocklobber"
|
||||
#endif
|
||||
#ifdef NORMAL
|
||||
gold="40"
|
||||
recruit="Troll Whelp,Troll"
|
||||
gold="40"
|
||||
recruit="Troll Whelp,Troll"
|
||||
#endif
|
||||
#ifdef EASY
|
||||
gold="30"
|
||||
recruit="Troll Whelp,"
|
||||
gold="30"
|
||||
recruit="Troll Whelp,"
|
||||
#endif
|
||||
team_name="baddies"
|
||||
controller="ai"
|
||||
|
@ -60,7 +60,7 @@
|
|||
turns="4,5,6,10,11,12,16,17,18,22,23,24"
|
||||
grouping="offensive"
|
||||
attack_depth="5"
|
||||
{AVOID_CAVEDOORS}
|
||||
{AVOID_CAVEDOORS}
|
||||
[/ai]
|
||||
[ai]
|
||||
aggression="-0.1"
|
||||
|
@ -76,16 +76,16 @@
|
|||
side="3"
|
||||
canrecruit="1"
|
||||
#ifdef HARD
|
||||
gold="50"
|
||||
recruit="Troll, Troll Rocklobber"
|
||||
gold="50"
|
||||
recruit="Troll, Troll Rocklobber"
|
||||
#endif
|
||||
#ifdef NORMAL
|
||||
gold="40"
|
||||
recruit="Troll Whelp, Troll"
|
||||
gold="40"
|
||||
recruit="Troll Whelp, Troll"
|
||||
#endif
|
||||
#ifdef EASY
|
||||
gold="30"
|
||||
recruit="Troll Whelp"
|
||||
gold="30"
|
||||
recruit="Troll Whelp"
|
||||
#endif
|
||||
team_name="baddies"
|
||||
controller="ai"
|
||||
|
@ -135,22 +135,22 @@ Trolls are very dangerous if they can attack as a group. Use the cave-mouths as
|
|||
[/objective]
|
||||
[/objectives]
|
||||
#ifdef EASY
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="0"
|
||||
[/set_variable]
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="0"
|
||||
[/set_variable]
|
||||
#endif
|
||||
#ifdef NORMAL
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="1"
|
||||
[/set_variable]
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="1"
|
||||
[/set_variable]
|
||||
#endif
|
||||
#ifdef HARD
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="2"
|
||||
[/set_variable]
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="2"
|
||||
[/set_variable]
|
||||
#endif
|
||||
[/event]
|
||||
[event]
|
||||
|
|
|
@ -116,22 +116,22 @@ This enemy is too strong for you to defeat alone. Use mounted units, and Linaera
|
|||
y="18"
|
||||
[/unit]
|
||||
#ifdef EASY
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="0"
|
||||
[/set_variable]
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="0"
|
||||
[/set_variable]
|
||||
#endif
|
||||
#ifdef NORMAL
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="1"
|
||||
[/set_variable]
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="1"
|
||||
[/set_variable]
|
||||
#endif
|
||||
#ifdef HARD
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="2"
|
||||
[/set_variable]
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="2"
|
||||
[/set_variable]
|
||||
#endif
|
||||
[/event]
|
||||
[event]
|
||||
|
|
|
@ -63,22 +63,22 @@ Undead are resistant to physical attack. Use mages to attack the undead, and elv
|
|||
[/objective]
|
||||
[/objectives]
|
||||
#ifdef EASY
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="0"
|
||||
[/set_variable]
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="0"
|
||||
[/set_variable]
|
||||
#endif
|
||||
#ifdef NORMAL
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="1"
|
||||
[/set_variable]
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="1"
|
||||
[/set_variable]
|
||||
#endif
|
||||
#ifdef HARD
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="2"
|
||||
[/set_variable]
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="2"
|
||||
[/set_variable]
|
||||
#endif
|
||||
[/event]
|
||||
[event]
|
||||
|
|
|
@ -26,13 +26,13 @@
|
|||
gold="100"
|
||||
income="0"
|
||||
#ifdef EASY
|
||||
recruit="Elvish Archer, Elvish Fighter, Elvish Scout, Elvish Shaman"
|
||||
recruit="Elvish Archer, Elvish Fighter, Elvish Scout, Elvish Shaman"
|
||||
#endif
|
||||
#ifdef NORMAL
|
||||
recruit="Elvish Archer, Elvish Fighter, Elvish Scout, Elvish Shaman"
|
||||
recruit="Elvish Archer, Elvish Fighter, Elvish Scout, Elvish Shaman"
|
||||
#endif
|
||||
#ifdef HARD
|
||||
recruit="Elvish Scout,Elvish Fighter,Elvish Archer,Elvish Shaman"
|
||||
recruit="Elvish Scout,Elvish Fighter,Elvish Archer,Elvish Shaman"
|
||||
#endif
|
||||
recruit="Elvish Archer, Elvish Fighter, Elvish Scout, Elvish Shaman"
|
||||
fog="no"
|
||||
|
@ -49,19 +49,19 @@
|
|||
side="2"
|
||||
canrecruit="1"
|
||||
#ifdef EASY
|
||||
gold="200"
|
||||
income="0"
|
||||
recruit="Orcish Archer, Orcish Assassin, Orcish Crossbowman, Orcish Grunt, Orcish Warrior, Troll, Troll Whelp, Wolf Rider"
|
||||
gold="200"
|
||||
income="0"
|
||||
recruit="Orcish Archer, Orcish Assassin, Orcish Crossbowman, Orcish Grunt, Orcish Warrior, Troll, Troll Whelp, Wolf Rider"
|
||||
#endif
|
||||
#ifdef NORMAL
|
||||
gold="250"
|
||||
income="5"
|
||||
recruit="Goblin Knight, Orcish Archer, Orcish Assassin, Orcish Crossbowman, Orcish Grunt, Orcish Warrior, Troll, Troll Whelp, Wolf Rider"
|
||||
gold="250"
|
||||
income="5"
|
||||
recruit="Goblin Knight, Orcish Archer, Orcish Assassin, Orcish Crossbowman, Orcish Grunt, Orcish Warrior, Troll, Troll Whelp, Wolf Rider"
|
||||
#endif
|
||||
#ifdef HARD
|
||||
gold="300"
|
||||
income="5"
|
||||
recruit="Goblin Knight, Orcish Archer, Orcish Assassin, Orcish Crossbowman, Orcish Grunt, Orcish Warrior, Troll, Troll Whelp, Wolf Rider"
|
||||
gold="300"
|
||||
income="5"
|
||||
recruit="Goblin Knight, Orcish Archer, Orcish Assassin, Orcish Crossbowman, Orcish Grunt, Orcish Warrior, Troll, Troll Whelp, Wolf Rider"
|
||||
#endif
|
||||
team_name="baddies"
|
||||
controller="ai"
|
||||
|
@ -105,22 +105,22 @@ Your enemy is well defended against attacks from the south. Use rangers to sneak
|
|||
[/objective]
|
||||
[/objectives]
|
||||
#ifdef EASY
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="0"
|
||||
[/set_variable]
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="0"
|
||||
[/set_variable]
|
||||
#endif
|
||||
#ifdef NORMAL
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="1"
|
||||
[/set_variable]
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="1"
|
||||
[/set_variable]
|
||||
#endif
|
||||
#ifdef HARD
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="2"
|
||||
[/set_variable]
|
||||
[set_variable]
|
||||
name="difficulty"
|
||||
value="2"
|
||||
[/set_variable]
|
||||
#endif
|
||||
[/event]
|
||||
[event]
|
||||
|
|
|
@ -1054,7 +1054,6 @@
|
|||
[/message]
|
||||
#enddef
|
||||
|
||||
|
||||
#define DIALOGUE_FAEA_SASS1
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
|
|
|
@ -113,7 +113,6 @@
|
|||
{PLACE_IMAGE scenery/signpost.png 27 13}
|
||||
{PLACE_IMAGE scenery/signpost.png 23 20}
|
||||
|
||||
|
||||
# Place starting units for Drogan and Malin
|
||||
{UNIT (Spearman) (Kerith) ( _ "Kerith") 1 30 11}
|
||||
{UNIT (Bowman) (Owain) ( _ "Owain") 1 31 12}
|
||||
|
|
|
@ -110,40 +110,40 @@
|
|||
{VARIABLE_OP number_of_guards random 0..2}
|
||||
|
||||
{REPEAT $number_of_guards (
|
||||
[store_locations]
|
||||
[filter_adjacent_location]
|
||||
x,y={X},{Y}
|
||||
[/filter_adjacent_location]
|
||||
[store_locations]
|
||||
[filter_adjacent_location]
|
||||
x,y={X},{Y}
|
||||
[/filter_adjacent_location]
|
||||
|
||||
[not]
|
||||
[filter]
|
||||
[/filter]
|
||||
[/not]
|
||||
[not]
|
||||
[filter]
|
||||
[/filter]
|
||||
[/not]
|
||||
|
||||
variable=possible_guard_locations
|
||||
[/store_locations]
|
||||
variable=possible_guard_locations
|
||||
[/store_locations]
|
||||
|
||||
{IF_VAR possible_guard_locations.length greater_than 0 (
|
||||
[then]
|
||||
{VARIABLE_OP random_location_index random 0..$possible_guard_locations.length}
|
||||
{IF_VAR possible_guard_locations.length greater_than 0 (
|
||||
[then]
|
||||
{VARIABLE_OP random_location_index random 0..$possible_guard_locations.length}
|
||||
|
||||
[move_unit_fake]
|
||||
side={SIDE}
|
||||
type={TYPE}
|
||||
x={X},$possible_guard_locations[$random_location_index].x
|
||||
y={Y},$possible_guard_locations[$random_location_index].y
|
||||
[/move_unit_fake]
|
||||
[move_unit_fake]
|
||||
side={SIDE}
|
||||
type={TYPE}
|
||||
x={X},$possible_guard_locations[$random_location_index].x
|
||||
y={Y},$possible_guard_locations[$random_location_index].y
|
||||
[/move_unit_fake]
|
||||
|
||||
[unit]
|
||||
description={DESCRIPTION}
|
||||
user_description={UDESCRIPTION}
|
||||
type={TYPE}
|
||||
side={SIDE}
|
||||
x,y=$possible_guard_locations[$random_location_index].x,$possible_guard_locations[$random_location_index].y
|
||||
random_traits=yes
|
||||
[/unit]
|
||||
[/then]
|
||||
)}
|
||||
[unit]
|
||||
description={DESCRIPTION}
|
||||
user_description={UDESCRIPTION}
|
||||
type={TYPE}
|
||||
side={SIDE}
|
||||
x,y=$possible_guard_locations[$random_location_index].x,$possible_guard_locations[$random_location_index].y
|
||||
random_traits=yes
|
||||
[/unit]
|
||||
[/then]
|
||||
)}
|
||||
)}
|
||||
|
||||
{CLEAR_VARIABLE number_of_guards}
|
||||
|
@ -169,15 +169,15 @@
|
|||
[/filter]
|
||||
|
||||
{IF_VAR village_$x1,$y1|_cleared not_equals yes (
|
||||
[then]
|
||||
{RANDOM_GUARDS (Goblin Spearman) Villager (_ "Villager") 2 $x1 $y1}
|
||||
[then]
|
||||
{RANDOM_GUARDS (Goblin Spearman) Villager (_ "Villager") 2 $x1 $y1}
|
||||
|
||||
{VARIABLE village_$x1,$y1|_cleared yes}
|
||||
[/then]
|
||||
{VARIABLE village_$x1,$y1|_cleared yes}
|
||||
[/then]
|
||||
|
||||
[else]
|
||||
[allow_undo][/allow_undo]
|
||||
[/else]
|
||||
[else]
|
||||
[allow_undo][/allow_undo]
|
||||
[/else]
|
||||
)}
|
||||
[/event]
|
||||
|
||||
|
@ -259,9 +259,9 @@
|
|||
[/store_villages]
|
||||
|
||||
{FOREACH villages i}
|
||||
{VARIABLE_OP village_var format "village_$villages[$i].x,$villages[$i].y|_cleared"}
|
||||
{VARIABLE_OP village_var format "village_$villages[$i].x,$villages[$i].y|_cleared"}
|
||||
|
||||
{CLEAR_VARIABLE $village_var}
|
||||
{CLEAR_VARIABLE $village_var}
|
||||
{NEXT i}
|
||||
|
||||
{CLEAR_VARIABLE villages}
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
[time_area]
|
||||
x=12-24,12-21,12-20,14-18,16-18
|
||||
y=19-20,18,17,16,15
|
||||
{DEFAULT_SCHEDULE}
|
||||
{DEFAULT_SCHEDULE}
|
||||
[/time_area]
|
||||
|
||||
[side]
|
||||
|
@ -250,6 +250,6 @@
|
|||
{CLEAR_VARIABLE free_ghost_turn}
|
||||
{CLEAR_VARIABLE ghost_was_freed}
|
||||
[/event]
|
||||
|
||||
|
||||
{@campaigns/Descent_Into_Darkness/utils/global-events.cfg}
|
||||
[/scenario]
|
||||
|
|
|
@ -251,7 +251,7 @@
|
|||
y=7,6,5-7,5-6
|
||||
[/have_unit]
|
||||
[then]
|
||||
{DIALOGUE_ASF_FOUNDENTRANCE}
|
||||
{DIALOGUE_ASF_FOUNDENTRANCE}
|
||||
[endlevel]
|
||||
bonus=no
|
||||
result=continue
|
||||
|
@ -275,7 +275,7 @@
|
|||
y=7,6,5-7,5-6
|
||||
[/have_unit]
|
||||
[then]
|
||||
{DIALOGUE_ASF_FOUNDENTRANCE}
|
||||
{DIALOGUE_ASF_FOUNDENTRANCE}
|
||||
[endlevel]
|
||||
bonus=no
|
||||
result=continue
|
||||
|
|
|
@ -275,6 +275,6 @@
|
|||
kill=yes
|
||||
[/store_unit]
|
||||
[/event]
|
||||
|
||||
|
||||
{@campaigns/Descent_Into_Darkness/utils/global-events.cfg}
|
||||
[/scenario]
|
||||
|
|
|
@ -335,6 +335,6 @@
|
|||
[/then]
|
||||
[/if]
|
||||
[/event]
|
||||
|
||||
|
||||
{@campaigns/Descent_Into_Darkness/utils/global-events.cfg}
|
||||
[/scenario]
|
||||
|
|
|
@ -24,7 +24,7 @@
|
|||
recruit=Walking Corpse,Vampire Bat,Ghost,Ghoul,Skeleton Archer,Skeleton,Dark Adept
|
||||
gold=200
|
||||
save_id=Malin Keshar
|
||||
profile=portraits/malinlich.png
|
||||
profile=portraits/malinlich.png
|
||||
[/side]
|
||||
|
||||
{STARTING_VILLAGES 1 6}
|
||||
|
@ -43,8 +43,8 @@
|
|||
[/ai]
|
||||
fog=no
|
||||
shroud=no
|
||||
#After I have greatly reduced the number of villages in this scenario
|
||||
#it might be a good idea to give our foolish hero some income
|
||||
#After I have greatly reduced the number of villages in this scenario
|
||||
#it might be a good idea to give our foolish hero some income
|
||||
{INCOME 5 7 9}
|
||||
[/side]
|
||||
|
||||
|
|
|
@ -5,10 +5,10 @@
|
|||
race=undead
|
||||
image="units/ghast.png"
|
||||
{TRAIT_FEARLESS_MUSTHAVE}
|
||||
# [advancefrom]
|
||||
# unit=Necrophage
|
||||
# experience=60
|
||||
# [/advancefrom]
|
||||
# [advancefrom]
|
||||
# unit=Necrophage
|
||||
# experience=60
|
||||
# [/advancefrom]
|
||||
hitpoints=65
|
||||
movement_type=undeadfoot
|
||||
movement=5
|
||||
|
|
|
@ -153,23 +153,23 @@
|
|||
{VARIABLE random_ambusher_type_table[3].type "Wraith"}
|
||||
{VARIABLE random_ambusher_type_table[4].type "Necrophage"}
|
||||
|
||||
#ifdef NORMAL
|
||||
{VARIABLE random_ambusher_type_table[5].type "Banebow"}
|
||||
#endif
|
||||
#ifdef NORMAL
|
||||
{VARIABLE random_ambusher_type_table[5].type "Banebow"}
|
||||
#endif
|
||||
|
||||
#ifdef HARD
|
||||
{VARIABLE random_ambusher_type_table[5].type "Banebow"}
|
||||
{VARIABLE random_ambusher_type_table[6].type "Spectre"}
|
||||
{VARIABLE random_ambusher_type_table[7].type "Nightgaunt"}
|
||||
#endif
|
||||
#ifdef HARD
|
||||
{VARIABLE random_ambusher_type_table[5].type "Banebow"}
|
||||
{VARIABLE random_ambusher_type_table[6].type "Spectre"}
|
||||
{VARIABLE random_ambusher_type_table[7].type "Nightgaunt"}
|
||||
#endif
|
||||
|
||||
{VARIABLE random_ambusher_type_i 0}
|
||||
|
||||
# With this macro we place a set number of ambushers (from the above list) to a
|
||||
# given rectangular area. We do this in blocks so that we can guarantee that
|
||||
# every major area has at least some ambushers: if we randomized the ambush
|
||||
# locations across all possible locations at once, the RNG could theoretically
|
||||
# clump all the ambushers into a single corner of the map.
|
||||
# With this macro we place a set number of ambushers (from the above list) to a
|
||||
# given rectangular area. We do this in blocks so that we can guarantee that
|
||||
# every major area has at least some ambushers: if we randomized the ambush
|
||||
# locations across all possible locations at once, the RNG could theoretically
|
||||
# clump all the ambushers into a single corner of the map.
|
||||
|
||||
#define UNDEAD_AMBUSH_AREA SIDE X Y NUMBER
|
||||
[store_locations]
|
||||
|
@ -283,7 +283,7 @@
|
|||
[/while]
|
||||
#enddef
|
||||
|
||||
# Only the number of ambushers differs by difficulty here.
|
||||
# Only the number of ambushers differs by difficulty here.
|
||||
|
||||
#ifdef EASY
|
||||
{UNDEAD_AMBUSH_AREA 2 1-27 1-32 25}
|
||||
|
@ -337,12 +337,12 @@
|
|||
[/filter]
|
||||
|
||||
{MODIFY_UNIT (
|
||||
side=2
|
||||
role=ambusher
|
||||
side=2
|
||||
role=ambusher
|
||||
|
||||
[filter_adjacent]
|
||||
x,y=$x1,$y1
|
||||
[/filter_adjacent]
|
||||
[filter_adjacent]
|
||||
x,y=$x1,$y1
|
||||
[/filter_adjacent]
|
||||
) role not_ambusher}
|
||||
|
||||
[redraw][/redraw]
|
||||
|
|
|
@ -222,93 +222,93 @@
|
|||
|
||||
# you can win either by waiting till the turns run out or by defeating the enemies,
|
||||
# so what happens next is macroified here so it doesn't need to be manually repeated
|
||||
#define MESSENGER_AND_CHOICE
|
||||
[unit]
|
||||
type=Spectre
|
||||
side=7
|
||||
description=Messenger of Doom
|
||||
user_description= _ "Messenger of Doom"
|
||||
x=43
|
||||
y=1
|
||||
[/unit]
|
||||
{MOVE_UNIT (description=Messenger of Doom) 39 4}
|
||||
[message]
|
||||
description=Messenger of Doom
|
||||
message= _ "I come bearing a message from my leader."
|
||||
[/message]
|
||||
[message]
|
||||
description=Dacyn
|
||||
message= _ "Very well, you may read it. It might tell us something useful."
|
||||
[/message]
|
||||
[message]
|
||||
description=Messenger of Doom
|
||||
message= _ "He says: 'Well done; you have defeated some of my less powerful captains, and a small fraction of my horde. Were I to bring the whole might of my Dread Legions to bear I could crush you like an insect. But I seek a victory that will reveal the true extent of my personal power. Unlike the Great General Gweddry I do not seek to hide behind the armored skirts of my soldiers! You, O commander Gweddry, are a coward! The bards may sing that you defeated my captains, but in reality you did nothing but cower far behind the lines in safety while others braver than you fought and died in your name.'"
|
||||
[/message]
|
||||
[message]
|
||||
description=Gweddry
|
||||
message= _ "What is the point of this message? Does it consist of anything more than insults?"
|
||||
[/message]
|
||||
[message]
|
||||
description=Messenger of Doom
|
||||
message= _ "The point is that you did not defeat my Lord's minions, it was others doing the work for you! The mighty Gweddry himself would last but a few moments in actual combat. And my master seeks to prove this. He challenges you, Gweddry, to a contest, a battle."
|
||||
[/message]
|
||||
[message]
|
||||
description=Gweddry
|
||||
message= _ "What are his terms? I won't accept anything obviously weighted towards his victory!"
|
||||
[/message]
|
||||
[message]
|
||||
description=Messenger of Doom
|
||||
message= _ "That only proves you are a coward. Nevertheless, these are his terms: You pick your six best warriors and he will pick his six best. Then you will fight, to the death; until either you or he is destroyed!"
|
||||
[/message]
|
||||
[message]
|
||||
description=Owaec
|
||||
message= _ "Gweddry, I don't think you should accept. He is bound to bring more than six Undead to the battle; he will bring an army!"
|
||||
[/message]
|
||||
[message]
|
||||
description=Dacyn
|
||||
message= _ "Well, I think you should accept. There is a small chance that it will be a fair fight, and otherwise we will definitely have to face his whole undead army."
|
||||
[/message]
|
||||
[message]
|
||||
description=Messenger of Doom
|
||||
message= _ "I will simplify your choice. Accept, coward, or face the onslaught of my lord's hordes at dawn tomorrow!"
|
||||
[/message]
|
||||
[message]
|
||||
description=Gweddry
|
||||
message= _ "Hmm..."
|
||||
[option]
|
||||
message= _ "I will accept this challenge. By your own master's terms, that proves I am no coward."
|
||||
[command]
|
||||
[store_unit]
|
||||
[filter]
|
||||
description=Konrad
|
||||
[/filter]
|
||||
variable=konrad
|
||||
kill=yes
|
||||
[/store_unit]
|
||||
[endlevel]
|
||||
result=victory
|
||||
next_scenario=Duel
|
||||
[/endlevel]
|
||||
[/command]
|
||||
[/option]
|
||||
[option]
|
||||
message= _ "I will not accept a fight in which he will obviously cheat! I refuse!"
|
||||
[command]
|
||||
[store_unit]
|
||||
[filter]
|
||||
description=Konrad
|
||||
[/filter]
|
||||
variable=konrad
|
||||
kill=yes
|
||||
[/store_unit]
|
||||
[endlevel]
|
||||
result=victory
|
||||
next_scenario=Reject
|
||||
[/endlevel]
|
||||
[/command]
|
||||
[/option]
|
||||
[/message]
|
||||
#enddef
|
||||
#define MESSENGER_AND_CHOICE
|
||||
[unit]
|
||||
type=Spectre
|
||||
side=7
|
||||
description=Messenger of Doom
|
||||
user_description= _ "Messenger of Doom"
|
||||
x=43
|
||||
y=1
|
||||
[/unit]
|
||||
{MOVE_UNIT (description=Messenger of Doom) 39 4}
|
||||
[message]
|
||||
description=Messenger of Doom
|
||||
message= _ "I come bearing a message from my leader."
|
||||
[/message]
|
||||
[message]
|
||||
description=Dacyn
|
||||
message= _ "Very well, you may read it. It might tell us something useful."
|
||||
[/message]
|
||||
[message]
|
||||
description=Messenger of Doom
|
||||
message= _ "He says: 'Well done; you have defeated some of my less powerful captains, and a small fraction of my horde. Were I to bring the whole might of my Dread Legions to bear I could crush you like an insect. But I seek a victory that will reveal the true extent of my personal power. Unlike the Great General Gweddry I do not seek to hide behind the armored skirts of my soldiers! You, O commander Gweddry, are a coward! The bards may sing that you defeated my captains, but in reality you did nothing but cower far behind the lines in safety while others braver than you fought and died in your name.'"
|
||||
[/message]
|
||||
[message]
|
||||
description=Gweddry
|
||||
message= _ "What is the point of this message? Does it consist of anything more than insults?"
|
||||
[/message]
|
||||
[message]
|
||||
description=Messenger of Doom
|
||||
message= _ "The point is that you did not defeat my Lord's minions, it was others doing the work for you! The mighty Gweddry himself would last but a few moments in actual combat. And my master seeks to prove this. He challenges you, Gweddry, to a contest, a battle."
|
||||
[/message]
|
||||
[message]
|
||||
description=Gweddry
|
||||
message= _ "What are his terms? I won't accept anything obviously weighted towards his victory!"
|
||||
[/message]
|
||||
[message]
|
||||
description=Messenger of Doom
|
||||
message= _ "That only proves you are a coward. Nevertheless, these are his terms: You pick your six best warriors and he will pick his six best. Then you will fight, to the death; until either you or he is destroyed!"
|
||||
[/message]
|
||||
[message]
|
||||
description=Owaec
|
||||
message= _ "Gweddry, I don't think you should accept. He is bound to bring more than six Undead to the battle; he will bring an army!"
|
||||
[/message]
|
||||
[message]
|
||||
description=Dacyn
|
||||
message= _ "Well, I think you should accept. There is a small chance that it will be a fair fight, and otherwise we will definitely have to face his whole undead army."
|
||||
[/message]
|
||||
[message]
|
||||
description=Messenger of Doom
|
||||
message= _ "I will simplify your choice. Accept, coward, or face the onslaught of my lord's hordes at dawn tomorrow!"
|
||||
[/message]
|
||||
[message]
|
||||
description=Gweddry
|
||||
message= _ "Hmm..."
|
||||
[option]
|
||||
message= _ "I will accept this challenge. By your own master's terms, that proves I am no coward."
|
||||
[command]
|
||||
[store_unit]
|
||||
[filter]
|
||||
description=Konrad
|
||||
[/filter]
|
||||
variable=konrad
|
||||
kill=yes
|
||||
[/store_unit]
|
||||
[endlevel]
|
||||
result=victory
|
||||
next_scenario=Duel
|
||||
[/endlevel]
|
||||
[/command]
|
||||
[/option]
|
||||
[option]
|
||||
message= _ "I will not accept a fight in which he will obviously cheat! I refuse!"
|
||||
[command]
|
||||
[store_unit]
|
||||
[filter]
|
||||
description=Konrad
|
||||
[/filter]
|
||||
variable=konrad
|
||||
kill=yes
|
||||
[/store_unit]
|
||||
[endlevel]
|
||||
result=victory
|
||||
next_scenario=Reject
|
||||
[/endlevel]
|
||||
[/command]
|
||||
[/option]
|
||||
[/message]
|
||||
#enddef
|
||||
|
||||
[event]
|
||||
name=time over
|
||||
|
|
|
@ -231,11 +231,11 @@
|
|||
|
||||
{VARIABLE random_ambusher_type_i 0}
|
||||
|
||||
# With this macro we place a set number of ambushers (from the above list) to a
|
||||
# given rectangular area. We do this in blocks so that we can guarantee that
|
||||
# every major area has at least some ambushers: if we randomized the ambush
|
||||
# locations across all possible locations at once, the RNG could theoretically
|
||||
# clump all the ambushers into a single corner of the map.
|
||||
# With this macro we place a set number of ambushers (from the above list) to a
|
||||
# given rectangular area. We do this in blocks so that we can guarantee that
|
||||
# every major area has at least some ambushers: if we randomized the ambush
|
||||
# locations across all possible locations at once, the RNG could theoretically
|
||||
# clump all the ambushers into a single corner of the map.
|
||||
|
||||
#define ORC_AMBUSH_AREA SIDE X Y NUMBER
|
||||
# Any hill that's completely surrounded by other hills, mountains or
|
||||
|
@ -353,7 +353,7 @@
|
|||
[/while]
|
||||
#enddef
|
||||
|
||||
# Only the number of ambushers differs by difficulty here.
|
||||
# Only the number of ambushers differs by difficulty here.
|
||||
|
||||
#ifdef EASY
|
||||
{ORC_AMBUSH_AREA 2 5-35 1-7 5}
|
||||
|
@ -424,12 +424,12 @@
|
|||
[/filter]
|
||||
|
||||
{MODIFY_UNIT (
|
||||
side=2,3
|
||||
role=ambusher
|
||||
side=2,3
|
||||
role=ambusher
|
||||
|
||||
[filter_adjacent]
|
||||
x,y=$x1,$y1
|
||||
[/filter_adjacent]
|
||||
[filter_adjacent]
|
||||
x,y=$x1,$y1
|
||||
[/filter_adjacent]
|
||||
) role not_ambusher}
|
||||
|
||||
[redraw][/redraw]
|
||||
|
|
|
@ -463,9 +463,9 @@
|
|||
[/event]
|
||||
|
||||
#
|
||||
# When any side 1 unit reaches a possible exit, we find out if it
|
||||
# is the correct one. We don't know who will reach the exit,
|
||||
# so the dialog must be general for anyone.
|
||||
# When any side 1 unit reaches a possible exit, we find out if it
|
||||
# is the correct one. We don't know who will reach the exit,
|
||||
# so the dialog must be general for anyone.
|
||||
# If the unit is Konrad, the victory event is handled separately.
|
||||
#
|
||||
[event]
|
||||
|
|
|
@ -187,11 +187,11 @@
|
|||
variable=scepter_vicinity
|
||||
[/store_locations]
|
||||
{FOREACH scepter_vicinity i}
|
||||
[terrain]
|
||||
x=$scepter_vicinity[$i].x
|
||||
y=$scepter_vicinity[$i].y
|
||||
letter=Uu
|
||||
[/terrain]
|
||||
[terrain]
|
||||
x=$scepter_vicinity[$i].x
|
||||
y=$scepter_vicinity[$i].y
|
||||
letter=Uu
|
||||
[/terrain]
|
||||
{NEXT i}
|
||||
[terrain]
|
||||
x=$scepter_x
|
||||
|
|
|
@ -480,9 +480,9 @@ Soooo... It is you who sent your subordinates to attack us. Now when we've destr
|
|||
[store_locations]
|
||||
terrain=*^V* # wmllint: ignore
|
||||
[and]
|
||||
x=34
|
||||
y=7
|
||||
radius=10
|
||||
x=34
|
||||
y=7
|
||||
radius=10
|
||||
[/and]
|
||||
variable=temp_starting_villages_area
|
||||
[/store_locations]
|
||||
|
|
|
@ -183,5 +183,4 @@
|
|||
result=victory
|
||||
[/endlevel]
|
||||
[/event]
|
||||
|
||||
[/scenario]
|
||||
|
|
|
@ -56,7 +56,7 @@
|
|||
side=1
|
||||
canrecruit=1
|
||||
controller=human
|
||||
[/side]
|
||||
[/side]
|
||||
|
||||
{STARTING_VILLAGES 1 7}
|
||||
|
||||
|
|
|
@ -201,14 +201,14 @@
|
|||
[/attack]
|
||||
{DEFENSE_ANIM_RANGE "konrad-lord-scepter-sword-defend.png" "konrad-lord-scepter-attack-w1.png" {SOUND_LIST:HUMAN_HIT} melee}
|
||||
{DEFENSE_ANIM_FILTERED "konrad-commander-scepter-defend.png" "konrad-commander-scepter.png" {SOUND_LIST:HUMAN_HIT} (
|
||||
[secondary_attack_filter]
|
||||
name=scepter of fire
|
||||
[/secondary_attack_filter]
|
||||
[secondary_attack_filter]
|
||||
name=scepter of fire
|
||||
[/secondary_attack_filter]
|
||||
)}
|
||||
{DEFENSE_ANIM_FILTERED "konrad-commander-bow-defend.png" "konrad-commander-bow.png" {SOUND_LIST:HUMAN_HIT} (
|
||||
[secondary_attack_filter]
|
||||
name=bow
|
||||
[/secondary_attack_filter]
|
||||
[secondary_attack_filter]
|
||||
name=bow
|
||||
[/secondary_attack_filter]
|
||||
)}
|
||||
[attack_anim]
|
||||
[attack_filter]
|
||||
|
|
|
@ -200,14 +200,14 @@
|
|||
die_sound={SOUND_LIST:HUMAN_DIE}
|
||||
{DEFENSE_ANIM_RANGE "konrad-lord-scepter-sword-defend.png" "konrad-lord-scepter-attack-w1.png" {SOUND_LIST:HUMAN_HIT} melee}
|
||||
{DEFENSE_ANIM_FILTERED "konrad-lord-scepter-defend.png" "konrad-lord-scepter.png" {SOUND_LIST:HUMAN_HIT} (
|
||||
[secondary_attack_filter]
|
||||
name=scepter of fire
|
||||
[/secondary_attack_filter]
|
||||
[secondary_attack_filter]
|
||||
name=scepter of fire
|
||||
[/secondary_attack_filter]
|
||||
)}
|
||||
{DEFENSE_ANIM_FILTERED "konrad-lord-bow-defend.png" "konrad-lord-bow.png" {SOUND_LIST:HUMAN_HIT} (
|
||||
[secondary_attack_filter]
|
||||
name=bow
|
||||
[/secondary_attack_filter]
|
||||
[secondary_attack_filter]
|
||||
name=bow
|
||||
[/secondary_attack_filter]
|
||||
)}
|
||||
[attack]
|
||||
name=sword
|
||||
|
|
|
@ -78,31 +78,31 @@
|
|||
type=blade
|
||||
[/effect]
|
||||
|
||||
# [effect]
|
||||
# apply_to=new_animation
|
||||
# [attack_anim]
|
||||
# [attack_filter]
|
||||
# name=flaming sword
|
||||
# [/attack_filter]
|
||||
#
|
||||
# start_time=-200
|
||||
#
|
||||
# [if]
|
||||
# hits=yes
|
||||
# [frame]
|
||||
# duration=350
|
||||
# sound=fire.wav
|
||||
# [/frame]
|
||||
# [/if]
|
||||
# [else]
|
||||
# hits=no
|
||||
# [frame]
|
||||
# duration=350
|
||||
# sound={SOUND_LIST:MISS}
|
||||
# [/frame]
|
||||
# [/else]
|
||||
# [/attack_anim]
|
||||
# [/effect]
|
||||
# [effect]
|
||||
# apply_to=new_animation
|
||||
# [attack_anim]
|
||||
# [attack_filter]
|
||||
# name=flaming sword
|
||||
# [/attack_filter]
|
||||
#
|
||||
# start_time=-200
|
||||
#
|
||||
# [if]
|
||||
# hits=yes
|
||||
# [frame]
|
||||
# duration=350
|
||||
# sound=fire.wav
|
||||
# [/frame]
|
||||
# [/if]
|
||||
# [else]
|
||||
# hits=no
|
||||
# [frame]
|
||||
# duration=350
|
||||
# sound={SOUND_LIST:MISS}
|
||||
# [/frame]
|
||||
# [/else]
|
||||
# [/attack_anim]
|
||||
# [/effect]
|
||||
[/object]
|
||||
[/command]
|
||||
[/option]
|
||||
|
@ -286,7 +286,7 @@ fire: +10%")}
|
|||
|
||||
[terrain_mask]
|
||||
x,y=1,1
|
||||
mask="
|
||||
mask="
|
||||
usage=mask
|
||||
|
||||
_f, _f, _f, _f, _f, _f, Re, _f, _f, _f, _f, _f, _f, _f, _f, Re, _f, Re, _f, Re, _f, Re, _f, Re, Re, _f, Uh, Re, _f, _f, Re, _f, _f, Re, _f, _f, Uh, _f, _f, _f, _f, _f, _f, _f, _f, Re, _f, _f, Re, _f
|
||||
|
@ -572,10 +572,10 @@ _f, _f, _f, _f, _f, _f, Re, _f, _f, _f, _f, _f,
|
|||
terrain=Xu
|
||||
[filter_adjacent_location]
|
||||
terrain=U*, Re
|
||||
[filter_adjacent_location]
|
||||
terrain=U*, Re
|
||||
count=4-5
|
||||
[/filter_adjacent_location]
|
||||
[filter_adjacent_location]
|
||||
terrain=U*, Re
|
||||
count=4-5
|
||||
[/filter_adjacent_location]
|
||||
[/filter_adjacent_location]
|
||||
[not]
|
||||
# don't start near the cave floor around the scepter
|
||||
|
|
|
@ -139,7 +139,6 @@
|
|||
{SEEKER 2 45 (Bowman)}
|
||||
{SEEKER 3 47 (Bowman)}
|
||||
|
||||
|
||||
# Here we approximate the vision area extending around all units and
|
||||
# initialize the loop variables, both of which we need when randomly
|
||||
# placing the guards below
|
||||
|
@ -160,7 +159,6 @@
|
|||
{VARIABLE guards 1}
|
||||
{VARIABLE loops 0}
|
||||
|
||||
|
||||
# This loop which places most of the guards works like this:
|
||||
#
|
||||
# - generate a new guard (at 1,1, no real location for it yet)
|
||||
|
@ -276,78 +274,59 @@
|
|||
[/store_locations]
|
||||
|
||||
{IF_VAR new_guard_locations.length greater_than 0 (
|
||||
[then]
|
||||
{VARIABLE_OP random_i random "1..$new_guard_locations.length"}
|
||||
{VARIABLE_OP random_i add -1}
|
||||
|
||||
{VARIABLE stored_guard.x $new_guard_locations[$random_i].x}
|
||||
{VARIABLE stored_guard.y $new_guard_locations[$random_i].y}
|
||||
|
||||
[unstore_unit]
|
||||
variable=stored_guard
|
||||
[/unstore_unit]
|
||||
|
||||
[store_locations]
|
||||
[and]
|
||||
x,y=$stored_guard.x,$stored_guard.y
|
||||
radius=2
|
||||
[/and]
|
||||
|
||||
[not]
|
||||
find_in=total_vision_area
|
||||
radius=7
|
||||
|
||||
[filter_radius]
|
||||
terrain=Gg,R*,Re^Gvs,*^V*,C*
|
||||
[/filter_radius]
|
||||
[/not]
|
||||
|
||||
[not]
|
||||
terrain=Gs^Fp,Hh,Ww,Wo,Ss,Ds
|
||||
[/not]
|
||||
|
||||
variable=new_assistant_guard_locations
|
||||
[/store_locations]
|
||||
|
||||
{IF_VAR new_assistant_guard_locations.length greater_than 0 (
|
||||
[then]
|
||||
{VARIABLE_OP random_i random "1..$new_guard_locations.length"}
|
||||
{VARIABLE_OP random_i random "1..$new_assistant_guard_locations.length"}
|
||||
{VARIABLE_OP random_i add -1}
|
||||
|
||||
{VARIABLE stored_guard.x $new_guard_locations[$random_i].x}
|
||||
{VARIABLE stored_guard.y $new_guard_locations[$random_i].y}
|
||||
{VARIABLE_OP assistant_guard_type random "Shock Trooper,Shock Trooper,Iron Mauler,Javelineer,Swordsman,Pikeman"}
|
||||
|
||||
[unstore_unit]
|
||||
variable=stored_guard
|
||||
[/unstore_unit]
|
||||
[unit]
|
||||
type=$assistant_guard_type
|
||||
side=2
|
||||
x,y=$new_assistant_guard_locations[$random_i].x,$new_assistant_guard_locations[$random_i].y
|
||||
generate_description=yes
|
||||
random_traits=yes
|
||||
ai_special=guardian
|
||||
[/unit]
|
||||
|
||||
[store_locations]
|
||||
[and]
|
||||
x,y=$stored_guard.x,$stored_guard.y
|
||||
radius=2
|
||||
[/and]
|
||||
|
||||
[not]
|
||||
find_in=total_vision_area
|
||||
radius=7
|
||||
|
||||
[filter_radius]
|
||||
terrain=Gg,R*,Re^Gvs,*^V*,C*
|
||||
[/filter_radius]
|
||||
[/not]
|
||||
|
||||
[not]
|
||||
terrain=Gs^Fp,Hh,Ww,Wo,Ss,Ds
|
||||
[/not]
|
||||
|
||||
variable=new_assistant_guard_locations
|
||||
[/store_locations]
|
||||
|
||||
{IF_VAR new_assistant_guard_locations.length greater_than 0 (
|
||||
[then]
|
||||
{VARIABLE_OP random_i random "1..$new_assistant_guard_locations.length"}
|
||||
{VARIABLE_OP random_i add -1}
|
||||
|
||||
{VARIABLE_OP assistant_guard_type random "Shock Trooper,Shock Trooper,Iron Mauler,Javelineer,Swordsman,Pikeman"}
|
||||
|
||||
[unit]
|
||||
type=$assistant_guard_type
|
||||
side=2
|
||||
x,y=$new_assistant_guard_locations[$random_i].x,$new_assistant_guard_locations[$random_i].y
|
||||
generate_description=yes
|
||||
random_traits=yes
|
||||
ai_special=guardian
|
||||
[/unit]
|
||||
|
||||
[store_locations]
|
||||
[and]
|
||||
x,y=$new_assistant_guard_locations[$random_i].x,$new_assistant_guard_locations[$random_i].y
|
||||
radius=6
|
||||
|
||||
[filter_radius]
|
||||
terrain=Gg,R*,Re^Gvs,*^V*,C*
|
||||
[/filter_radius]
|
||||
[/and]
|
||||
|
||||
[or]
|
||||
find_in=total_vision_area
|
||||
[/or]
|
||||
|
||||
variable=total_vision_area
|
||||
[/store_locations]
|
||||
[/then]
|
||||
)}
|
||||
|
||||
[store_locations]
|
||||
[and]
|
||||
x,y=$stored_guard.x,$stored_guard.y
|
||||
radius=$guard_vision_range
|
||||
x,y=$new_assistant_guard_locations[$random_i].x,$new_assistant_guard_locations[$random_i].y
|
||||
radius=6
|
||||
|
||||
[filter_radius]
|
||||
terrain=Gg,R*,Re^Gvs,*^V*,C*
|
||||
|
@ -360,9 +339,28 @@
|
|||
|
||||
variable=total_vision_area
|
||||
[/store_locations]
|
||||
|
||||
{VARIABLE_OP guards add 1}
|
||||
[/then]
|
||||
)}
|
||||
|
||||
[store_locations]
|
||||
[and]
|
||||
x,y=$stored_guard.x,$stored_guard.y
|
||||
radius=$guard_vision_range
|
||||
|
||||
[filter_radius]
|
||||
terrain=Gg,R*,Re^Gvs,*^V*,C*
|
||||
[/filter_radius]
|
||||
[/and]
|
||||
|
||||
[or]
|
||||
find_in=total_vision_area
|
||||
[/or]
|
||||
|
||||
variable=total_vision_area
|
||||
[/store_locations]
|
||||
|
||||
{VARIABLE_OP guards add 1}
|
||||
[/then]
|
||||
)}
|
||||
|
||||
{VARIABLE_OP loops add 1}
|
||||
|
|
|
@ -766,7 +766,7 @@
|
|||
#
|
||||
[terrain_mask]
|
||||
x,y=15,11
|
||||
mask="
|
||||
mask="
|
||||
usage=mask
|
||||
|
||||
Re , Mm^Xm , Re , Ww , Rr , Ww^Bw| , Rr , Rr , Gs^Fp , Mm^Xm , Gs^Fp
|
||||
|
@ -792,7 +792,6 @@ Uu , Uu , Chr , Uh , Re , Uu
|
|||
y=12-20
|
||||
[/kill]
|
||||
[redraw][/redraw]
|
||||
|
||||
[scroll_to]
|
||||
x,y=20,16
|
||||
[/scroll_to]
|
||||
|
|
|
@ -290,10 +290,10 @@ Defeat:
|
|||
side=1
|
||||
x=6
|
||||
y=11
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_STRONG}
|
||||
[/modifications]
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_STRONG}
|
||||
[/modifications]
|
||||
[/unit]
|
||||
|
||||
[message]
|
||||
|
@ -469,10 +469,10 @@ Defeat:
|
|||
side=1
|
||||
x=6
|
||||
y=11
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_STRONG}
|
||||
[/modifications]
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_STRONG}
|
||||
[/modifications]
|
||||
[/unit]
|
||||
|
||||
[message]
|
||||
|
@ -547,10 +547,10 @@ Defeat:
|
|||
description=Camerin
|
||||
profile=portraits/Camerin.jpg
|
||||
user_description= _ "Camerin"
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_STRONG}
|
||||
[/modifications]
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_STRONG}
|
||||
[/modifications]
|
||||
side=1
|
||||
x=1
|
||||
y=1
|
||||
|
|
|
@ -160,7 +160,6 @@ Defeat:
|
|||
{TRAIT_LOYAL}
|
||||
{TRAIT_STRONG}
|
||||
[/modifications]
|
||||
|
||||
[/unit]
|
||||
|
||||
[message]
|
||||
|
|
|
@ -89,181 +89,180 @@
|
|||
x=33
|
||||
y=6
|
||||
[/hide_unit]
|
||||
|
||||
[/event]
|
||||
[/event]
|
||||
|
||||
#define TEMPTATION_OF_TALLIN
|
||||
[message]
|
||||
description=Malifor
|
||||
message= _ "But my my, what do we have here - Tallin."
|
||||
[/message]
|
||||
[message]
|
||||
description=Malifor
|
||||
message= _ "But my my, what do we have here - Tallin."
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
role=Supporter
|
||||
[message]
|
||||
role=Supporter
|
||||
|
||||
message= _ "He knows your name, Tallin. I don't like the looks of this."
|
||||
[/message]
|
||||
message= _ "He knows your name, Tallin. I don't like the looks of this."
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
description=Malifor
|
||||
message= _ "Oh yes, I know you, Tallin. I have been watching you for a long time. You are a perfect candidate to become one of my immortal generals."
|
||||
[/message]
|
||||
[message]
|
||||
description=Malifor
|
||||
message= _ "Oh yes, I know you, Tallin. I have been watching you for a long time. You are a perfect candidate to become one of my immortal generals."
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
description=Tallin
|
||||
message= _ "....!"
|
||||
[/message]
|
||||
[message]
|
||||
description=Tallin
|
||||
message= _ "....!"
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
description=Malifor
|
||||
message= _ "Look around you Tallin, see all the power, see all of the wealth, the glory, the pleasure that the realm of death has to offer. Think of the great empire of Knalga; it can be yours. Come share it with me!"
|
||||
[/message]
|
||||
[message]
|
||||
description=Malifor
|
||||
message= _ "Look around you Tallin, see all the power, see all of the wealth, the glory, the pleasure that the realm of death has to offer. Think of the great empire of Knalga; it can be yours. Come share it with me!"
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
role=Supporter
|
||||
[message]
|
||||
role=Supporter
|
||||
|
||||
message= _ "Tallin, are you OK?!"
|
||||
[/message]
|
||||
message= _ "Tallin, are you OK?!"
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
description=Malifor
|
||||
message= _ "It's very easy, Tallin, see that little vermin by your side? Take out your knife...... cut his throat .......feel his hot blood pump over your hands..... sacrifice him to death!"
|
||||
[message]
|
||||
description=Malifor
|
||||
message= _ "It's very easy, Tallin, see that little vermin by your side? Take out your knife...... cut his throat .......feel his hot blood pump over your hands..... sacrifice him to death!"
|
||||
|
||||
[option]
|
||||
message= _ "......die.... you..... little.....dwarf.....vermin!"
|
||||
[command]
|
||||
[message]
|
||||
role=Supporter
|
||||
[option]
|
||||
message= _ "......die.... you..... little.....dwarf.....vermin!"
|
||||
[command]
|
||||
[message]
|
||||
role=Supporter
|
||||
|
||||
message= _ "Tallin! No!"
|
||||
[/message]
|
||||
message= _ "Tallin! No!"
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
description=Hamel
|
||||
message= _ "Tallin, what are you doing?"
|
||||
[/message]
|
||||
[message]
|
||||
description=Hamel
|
||||
message= _ "Tallin, what are you doing?"
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
[message]
|
||||
description=Tallin
|
||||
message= _ ".....Death!..... Blood!...."
|
||||
[/message]
|
||||
|
||||
{MODIFY_UNIT description=Tallin profile portraits/Tallin-Evil.jpg}
|
||||
|
||||
[sound]
|
||||
name=dagger-swish.wav
|
||||
[/sound]
|
||||
|
||||
[delay]
|
||||
time=50
|
||||
[/delay]
|
||||
|
||||
[sound]
|
||||
name=dwarf-hit-3.ogg
|
||||
[/sound]
|
||||
|
||||
[message]
|
||||
description=Hamel
|
||||
message= _ "Ahhh! Treacherous human! Kill him, men!"
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
description=Malifor
|
||||
message= _ "HAHAHAHAHAHAHA!"
|
||||
[/message]
|
||||
|
||||
[sound]
|
||||
name=fire.wav
|
||||
[/sound]
|
||||
[sound]
|
||||
name=ugg.wav
|
||||
[/sound]
|
||||
|
||||
[colour_adjust]
|
||||
red=100
|
||||
green=100
|
||||
blue=100
|
||||
[/colour_adjust]
|
||||
|
||||
[delay]
|
||||
time=10
|
||||
[/delay]
|
||||
|
||||
[colour_adjust]
|
||||
red=0
|
||||
green=0
|
||||
blue=0
|
||||
[/colour_adjust]
|
||||
|
||||
[teleport]
|
||||
[filter]
|
||||
description=Tallin
|
||||
message= _ ".....Death!..... Blood!...."
|
||||
[/message]
|
||||
[/filter]
|
||||
x=34
|
||||
y=6
|
||||
[/teleport]
|
||||
|
||||
{MODIFY_UNIT description=Tallin profile portraits/Tallin-Evil.jpg}
|
||||
[message]
|
||||
description=Hamel
|
||||
message= _ "What the! Where did he go?"
|
||||
[/message]
|
||||
|
||||
[sound]
|
||||
name=dagger-swish.wav
|
||||
[/sound]
|
||||
[message]
|
||||
description=Malifor
|
||||
message= _ "Right here with me, fools! He is mine now."
|
||||
[/message]
|
||||
|
||||
[delay]
|
||||
time=50
|
||||
[/delay]
|
||||
[disallow_recruit]
|
||||
side=1
|
||||
type=Dwarvish Fighter,Dwarvish Thunderer,Peasant,Thug,Poacher,Woodsman,Footpad
|
||||
[/disallow_recruit]
|
||||
|
||||
[sound]
|
||||
name=dwarf-hit-3.ogg
|
||||
[/sound]
|
||||
[store_unit]
|
||||
[filter]
|
||||
role=Supporter
|
||||
[/filter]
|
||||
variable=betrayed_friend
|
||||
[/store_unit]
|
||||
|
||||
[message]
|
||||
description=Hamel
|
||||
message= _ "Ahhh! Treacherous human! Kill him, men!"
|
||||
[/message]
|
||||
[set_variable]
|
||||
name=turned_evil
|
||||
value=1
|
||||
[/set_variable]
|
||||
|
||||
[message]
|
||||
description=Malifor
|
||||
message= _ "HAHAHAHAHAHAHA!"
|
||||
[/message]
|
||||
|
||||
[sound]
|
||||
name=fire.wav
|
||||
[/sound]
|
||||
[sound]
|
||||
name=ugg.wav
|
||||
[/sound]
|
||||
|
||||
[colour_adjust]
|
||||
red=100
|
||||
green=100
|
||||
blue=100
|
||||
[/colour_adjust]
|
||||
|
||||
[delay]
|
||||
time=10
|
||||
[/delay]
|
||||
|
||||
[colour_adjust]
|
||||
red=0
|
||||
green=0
|
||||
blue=0
|
||||
[/colour_adjust]
|
||||
|
||||
[teleport]
|
||||
[filter]
|
||||
description=Tallin
|
||||
[/filter]
|
||||
x=34
|
||||
y=6
|
||||
[/teleport]
|
||||
|
||||
[message]
|
||||
description=Hamel
|
||||
message= _ "What the! Where did he go?"
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
description=Malifor
|
||||
message= _ "Right here with me, fools! He is mine now."
|
||||
[/message]
|
||||
|
||||
[disallow_recruit]
|
||||
side=1
|
||||
type=Dwarvish Fighter,Dwarvish Thunderer,Peasant,Thug,Poacher,Woodsman,Footpad
|
||||
[/disallow_recruit]
|
||||
|
||||
[store_unit]
|
||||
[filter]
|
||||
role=Supporter
|
||||
[/filter]
|
||||
variable=betrayed_friend
|
||||
[/store_unit]
|
||||
|
||||
[set_variable]
|
||||
name=turned_evil
|
||||
value=1
|
||||
[/set_variable]
|
||||
|
||||
[endlevel]
|
||||
[endlevel]
|
||||
# Disable this option in 1.4.
|
||||
# result=victory
|
||||
# bonus=no
|
||||
# next_scenario=compelled
|
||||
result=defeat
|
||||
[/endlevel]
|
||||
[/command]
|
||||
[/option]
|
||||
result=defeat
|
||||
[/endlevel]
|
||||
[/command]
|
||||
[/option]
|
||||
|
||||
[option]
|
||||
message= _ " *Shakes head* I reject your evil. Attack, men! Let us rid the good green world of this rotting filth!"
|
||||
[command]
|
||||
[message]
|
||||
description=Hamel
|
||||
message= _ "Aye! That's the way of it, lad! For the murdered dwarves of Knalga! Attack!"
|
||||
[/message]
|
||||
[option]
|
||||
message= _ " *Shakes head* I reject your evil. Attack, men! Let us rid the good green world of this rotting filth!"
|
||||
[command]
|
||||
[message]
|
||||
description=Hamel
|
||||
message= _ "Aye! That's the way of it, lad! For the murdered dwarves of Knalga! Attack!"
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
description=Malifor
|
||||
message= _ "You fool! You will pay for your folly with your life."
|
||||
[/message]
|
||||
[message]
|
||||
description=Malifor
|
||||
message= _ "You fool! You will pay for your folly with your life."
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
description=Tallin
|
||||
message= _ "Yeah, right, buddy."
|
||||
[/message]
|
||||
[/command]
|
||||
[/option]
|
||||
[/message]
|
||||
[message]
|
||||
description=Tallin
|
||||
message= _ "Yeah, right, buddy."
|
||||
[/message]
|
||||
[/command]
|
||||
[/option]
|
||||
[/message]
|
||||
#enddef
|
||||
|
||||
[event]
|
||||
name=start
|
||||
[event]
|
||||
name=start
|
||||
|
||||
{SUPPORTER}
|
||||
[recall]
|
||||
|
@ -767,7 +766,7 @@
|
|||
description=Malifor
|
||||
message= _ "HAHAHAHAHAHA! Such vast threats from one so small? HAHAHAHA!"
|
||||
[/message]
|
||||
|
||||
|
||||
{TEMPTATION_OF_TALLIN}
|
||||
|
||||
[objectives]
|
||||
|
@ -830,78 +829,73 @@
|
|||
[event]
|
||||
name=victory
|
||||
|
||||
[if]
|
||||
|
||||
[variable]
|
||||
name=turned_evil
|
||||
numerical_equals=0
|
||||
[/variable]
|
||||
[if]
|
||||
[variable]
|
||||
name=turned_evil
|
||||
numerical_equals=0
|
||||
[/variable]
|
||||
|
||||
[then]
|
||||
[then]
|
||||
[message]
|
||||
description=Tallin
|
||||
message= _ "We have finally secured the mines. But what should we do about that foul lich? He is a menace to all that lives, and must be ended."
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
description=Tallin
|
||||
message= _ "We have finally secured the mines. But what should we do about that foul lich? He is a menace to all that lives, and must be ended."
|
||||
[/message]
|
||||
[message]
|
||||
description=Hamel
|
||||
message= _ "Aye! We'll have to lay both his skeletons and himself to final rest before these caves will be fit for dwarvenkind again."
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
description=Hamel
|
||||
message= _ "Aye! We'll have to lay both his skeletons and himself to final rest before these caves will be fit for dwarvenkind again."
|
||||
[/message]
|
||||
[message]
|
||||
description=Tallin
|
||||
message= _ "But I'm sore vexed. We need better weapons, Luck and spirit can carry us only so far."
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
description=Tallin
|
||||
message= _ "But I'm sore vexed. We need better weapons, Luck and spirit can carry us only so far."
|
||||
[/message]
|
||||
[message]
|
||||
description=Hamel
|
||||
message= _ "Aye. We must do both. I'm thinking it might be best if I muster my folk to start on the weapon-making while you and your followers pursue yon lich. By the time you've laid him to final rest and return here, we'll ha' made a good start on the work."
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
description=Hamel
|
||||
message= _ "Aye. We must do both. I'm thinking it might be best if I muster my folk to start on the weapon-making while you and your followers pursue yon lich. By the time you've laid him to final rest and return here, we'll ha' made a good start on the work."
|
||||
[/message]
|
||||
[message]
|
||||
description=Tallin
|
||||
message= _ "So it shall be."
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
description=Tallin
|
||||
message= _ "So it shall be."
|
||||
[/message]
|
||||
[role]
|
||||
type=Dwarvish Steelclad,Dwarvish Fighter,Dwarvish Dragonguard,Dwarvish Thunderguard,Dwarvish Thunderer
|
||||
role=follower
|
||||
[/role]
|
||||
|
||||
[role]
|
||||
type=Dwarvish Steelclad,Dwarvish Fighter,Dwarvish Dragonguard,Dwarvish Thunderguard,Dwarvish Thunderer
|
||||
role=follower
|
||||
[/role]
|
||||
[message]
|
||||
role=follower
|
||||
message= _ "With all respect, Lord Hamel, some o' us would like to fare forth with Tallin. He's lucky, he is - or he makes his own luck."
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
role=follower
|
||||
message= _ "With all respect, Lord Hamel, some o' us would like to fare forth with Tallin. He's lucky, he is - or he makes his own luck."
|
||||
[/message]
|
||||
[message]
|
||||
description=Hamel
|
||||
message= _ "And so it shall be. You've my leave and welcome. Try to keep the lad safe..."
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
description=Hamel
|
||||
message= _ "And so it shall be. You've my leave and welcome. Try to keep the lad safe..."
|
||||
[/message]
|
||||
[message]
|
||||
role=follower
|
||||
message= _ "Thank you, Lord Hamel."
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
role=follower
|
||||
message= _ "Thank you, Lord Hamel."
|
||||
[/message]
|
||||
[kill]
|
||||
description=Hamel
|
||||
[/kill]
|
||||
|
||||
[kill]
|
||||
description=Hamel
|
||||
[/kill]
|
||||
|
||||
[disallow_recruit]
|
||||
side=1
|
||||
type=Dwarvish Fighter,Dwarvish Thunderer
|
||||
[/disallow_recruit]
|
||||
|
||||
[endlevel]
|
||||
result=victory
|
||||
bonues=yes
|
||||
[/endlevel]
|
||||
|
||||
[/then]
|
||||
|
||||
[/if]
|
||||
[disallow_recruit]
|
||||
side=1
|
||||
type=Dwarvish Fighter,Dwarvish Thunderer
|
||||
[/disallow_recruit]
|
||||
|
||||
[endlevel]
|
||||
result=victory
|
||||
bonues=yes
|
||||
[/endlevel]
|
||||
[/then]
|
||||
[/if]
|
||||
[/event]
|
||||
|
||||
[event]
|
||||
|
|
|
@ -607,17 +607,15 @@
|
|||
y=7
|
||||
[/filter]
|
||||
|
||||
[if]
|
||||
description=Tallin
|
||||
[then]
|
||||
|
||||
[set_variable]
|
||||
name=tallin_gotta_stick
|
||||
value=1
|
||||
[/set_variable]
|
||||
|
||||
[/then]
|
||||
[/if]
|
||||
[if]
|
||||
description=Tallin
|
||||
[then]
|
||||
[set_variable]
|
||||
name=tallin_gotta_stick
|
||||
value=1
|
||||
[/set_variable]
|
||||
[/then]
|
||||
[/if]
|
||||
|
||||
[removeitem]
|
||||
x=3
|
||||
|
@ -694,7 +692,6 @@
|
|||
[/effect]
|
||||
[/object]
|
||||
|
||||
|
||||
[message]
|
||||
speaker=unit
|
||||
message= _ "Wow! This thing is... incredible!"
|
||||
|
@ -1464,20 +1461,20 @@
|
|||
y=39
|
||||
[/removeitem]
|
||||
|
||||
[unit]
|
||||
type=White Mage
|
||||
gender=female
|
||||
description=Sister Theta
|
||||
user_description= _ "Sister Theta"
|
||||
profile=portraits/Sister_Theta.jpg
|
||||
side=1
|
||||
x=$keep.x
|
||||
y=$keep.y
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_QUICK}
|
||||
[/modifications]
|
||||
[/unit]
|
||||
[unit]
|
||||
type=White Mage
|
||||
gender=female
|
||||
description=Sister Theta
|
||||
user_description= _ "Sister Theta"
|
||||
profile=portraits/Sister_Theta.jpg
|
||||
side=1
|
||||
x=$keep.x
|
||||
y=$keep.y
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_QUICK}
|
||||
[/modifications]
|
||||
[/unit]
|
||||
|
||||
[message]
|
||||
description=Sister Theta
|
||||
|
@ -1601,10 +1598,10 @@
|
|||
profile=portraits/Father_Marcus.jpg
|
||||
x=9
|
||||
y=39
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_RESILIENT}
|
||||
[/modifications]
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_RESILIENT}
|
||||
[/modifications]
|
||||
[/unit]
|
||||
|
||||
[message]
|
||||
|
@ -1747,10 +1744,10 @@
|
|||
x=3
|
||||
y=39
|
||||
hitpoints=1
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_HEALTHY}
|
||||
[/modifications]
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_HEALTHY}
|
||||
[/modifications]
|
||||
[/unit]
|
||||
|
||||
[message]
|
||||
|
@ -1955,10 +1952,10 @@
|
|||
side=1
|
||||
x=2
|
||||
y=33
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_RESILIENT}
|
||||
[/modifications]
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_RESILIENT}
|
||||
[/modifications]
|
||||
[/unit]
|
||||
|
||||
[message]
|
||||
|
@ -2189,7 +2186,7 @@
|
|||
[/filter]
|
||||
|
||||
[filter_second]
|
||||
type=Thug,Poacher,Bandit,Highwayman,Bowman,Master Bowman,Longbowman,Elvish Druid,Elvish Shyde,Footpad,Outlaw,Fugitive
|
||||
type=Thug,Poacher,Bandit,Highwayman,Bowman,Master Bowman,Longbowman,Elvish Druid,Elvish Shyde,Footpad,Outlaw,Fugitive
|
||||
[/filter_second]
|
||||
|
||||
[message]
|
||||
|
@ -3122,10 +3119,10 @@
|
|||
side=1
|
||||
x=6
|
||||
y=11
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_HEALTHY}
|
||||
[/modifications]
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_HEALTHY}
|
||||
[/modifications]
|
||||
[/unit]
|
||||
|
||||
[unit]
|
||||
|
@ -3135,10 +3132,10 @@
|
|||
side=1
|
||||
x=8
|
||||
y=11
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_STRONG}
|
||||
[/modifications]
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_STRONG}
|
||||
[/modifications]
|
||||
[/unit]
|
||||
|
||||
[unit]
|
||||
|
@ -3148,10 +3145,10 @@
|
|||
side=1
|
||||
x=9
|
||||
y=12
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_RESILIENT}
|
||||
[/modifications]
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_RESILIENT}
|
||||
[/modifications]
|
||||
[/unit]
|
||||
|
||||
[message]
|
||||
|
|
|
@ -188,7 +188,7 @@
|
|||
{GOLD4 20 30 35 40}
|
||||
recruit=Troll Whelp
|
||||
team_name=trolls
|
||||
[ai]
|
||||
[ai]
|
||||
recruitment_pattern=fighter
|
||||
[/ai]
|
||||
[/side]
|
||||
|
@ -202,7 +202,7 @@
|
|||
{GOLD4 20 30 35 40}
|
||||
recruit=Troll Whelp
|
||||
team_name=trolls
|
||||
[ai]
|
||||
[ai]
|
||||
recruitment_pattern=fighter
|
||||
[/ai]
|
||||
[/side]
|
||||
|
@ -210,7 +210,7 @@
|
|||
[event]
|
||||
name=start
|
||||
|
||||
{MODIFY_UNIT description=Tallin alignment chaotic}
|
||||
{MODIFY_UNIT description=Tallin alignment chaotic}
|
||||
|
||||
[unit]
|
||||
type=Giant Spider
|
||||
|
|
|
@ -291,7 +291,6 @@
|
|||
find_vacant=yes
|
||||
[/unstore_unit]
|
||||
{CLEAR_VARIABLE typechange}
|
||||
|
||||
[/event]
|
||||
|
||||
[side]
|
||||
|
@ -361,49 +360,43 @@
|
|||
[event]
|
||||
name=start
|
||||
|
||||
[if]
|
||||
|
||||
[variable]
|
||||
name=tallin_gotta_stick
|
||||
numerical_equals=1
|
||||
[/variable]
|
||||
[if]
|
||||
[variable]
|
||||
name=tallin_gotta_stick
|
||||
numerical_equals=1
|
||||
[/variable]
|
||||
|
||||
[then]
|
||||
|
||||
[object]
|
||||
silent=yes
|
||||
[filter]
|
||||
description=Tallin
|
||||
[/filter]
|
||||
duration=forever
|
||||
|
||||
[effect]
|
||||
apply_to=movement
|
||||
increase=2
|
||||
[/effect]
|
||||
[effect]
|
||||
apply_to=attack
|
||||
range=melee
|
||||
increase_damage=2
|
||||
[/effect]
|
||||
[effect]
|
||||
apply_to=hitpoints
|
||||
increase_total=10
|
||||
heal_full=yes
|
||||
[/effect]
|
||||
[effect]
|
||||
apply_to=max_experience
|
||||
increase=-20%
|
||||
[/effect]
|
||||
[/object]
|
||||
|
||||
[/then]
|
||||
|
||||
[/if]
|
||||
|
||||
{CLEAR_VARIABLE tallin_gotta_stick}
|
||||
[then]
|
||||
[object]
|
||||
silent=yes
|
||||
[filter]
|
||||
description=Tallin
|
||||
[/filter]
|
||||
duration=forever
|
||||
|
||||
[effect]
|
||||
apply_to=movement
|
||||
increase=2
|
||||
[/effect]
|
||||
[effect]
|
||||
apply_to=attack
|
||||
range=melee
|
||||
increase_damage=2
|
||||
[/effect]
|
||||
[effect]
|
||||
apply_to=hitpoints
|
||||
increase_total=10
|
||||
heal_full=yes
|
||||
[/effect]
|
||||
[effect]
|
||||
apply_to=max_experience
|
||||
increase=-20%
|
||||
[/effect]
|
||||
[/object]
|
||||
[/then]
|
||||
[/if]
|
||||
|
||||
{CLEAR_VARIABLE tallin_gotta_stick}
|
||||
|
||||
[role]
|
||||
type=Halberdier, Royal Guard, Master Bowman, Pikeman, Swordsman, Longbowman, Javelineer, Spearman, Bowman, Peasant
|
||||
|
|
|
@ -370,7 +370,7 @@
|
|||
type=Troll
|
||||
side=3
|
||||
hitpoints=36
|
||||
experience=14
|
||||
experience=14
|
||||
x=29
|
||||
y=9
|
||||
[/unit]
|
||||
|
@ -379,43 +379,43 @@
|
|||
type=Dwarvish Ulfserker
|
||||
side=2
|
||||
hitpoints=12
|
||||
experience=40
|
||||
experience=40
|
||||
x=28
|
||||
y=8
|
||||
[/unit]
|
||||
|
||||
[unit]
|
||||
[unit]
|
||||
type=Dwarvish Ulfserker
|
||||
side=2
|
||||
hitpoints=34
|
||||
experience=8
|
||||
experience=8
|
||||
x=24
|
||||
y=7
|
||||
[/unit]
|
||||
|
||||
[unit]
|
||||
[unit]
|
||||
type=Dwarvish Ulfserker
|
||||
side=2
|
||||
hitpoints=28
|
||||
experience=18
|
||||
experience=18
|
||||
x=24
|
||||
y=4
|
||||
[/unit]
|
||||
|
||||
[unit]
|
||||
[unit]
|
||||
type=Dwarvish Ulfserker
|
||||
side=2
|
||||
hitpoints=30
|
||||
experience=16
|
||||
experience=16
|
||||
x=23
|
||||
y=2
|
||||
[/unit]
|
||||
|
||||
[unit]
|
||||
[unit]
|
||||
type=Dwarvish Ulfserker
|
||||
side=2
|
||||
hitpoints=12
|
||||
experience=16
|
||||
experience=16
|
||||
x=30
|
||||
y=7
|
||||
[/unit]
|
||||
|
@ -424,7 +424,7 @@
|
|||
type=Young Ogre
|
||||
side=3
|
||||
hitpoints=6
|
||||
experience=31
|
||||
experience=31
|
||||
x=28
|
||||
y=7
|
||||
[/unit]
|
||||
|
@ -433,7 +433,7 @@
|
|||
type=Young Ogre
|
||||
side=3
|
||||
hitpoints=12
|
||||
experience=12
|
||||
experience=12
|
||||
x=20
|
||||
y=7
|
||||
[/unit]
|
||||
|
@ -442,7 +442,7 @@
|
|||
type=Ogre
|
||||
side=3
|
||||
hitpoints=27
|
||||
experience=8
|
||||
experience=8
|
||||
x=23
|
||||
y=3
|
||||
[/unit]
|
||||
|
@ -451,7 +451,7 @@
|
|||
type=Dwarvish Ulfserker
|
||||
side=2
|
||||
hitpoints=9
|
||||
experience=41
|
||||
experience=41
|
||||
x=25
|
||||
y=5
|
||||
[/unit]
|
||||
|
|
|
@ -115,7 +115,7 @@
|
|||
description=Camerin
|
||||
user_description= _ "Camerin"
|
||||
canrecruit=1
|
||||
profile=portraits/Camerin.jpg
|
||||
profile=portraits/Camerin.jpg
|
||||
side=3
|
||||
{GOLD4 700 800 900 1000}
|
||||
recruit=Thug,Trapper,Peasant,Dwarvish Steelclad,Dwarvish Fighter,Dwarvish Thunderer,Dwarvish Thunderguard,Dwarvish Guardsman,Dwarvish Stalwart,Poacher,Footpad,Outlaw
|
||||
|
@ -604,7 +604,7 @@
|
|||
side=3
|
||||
description=Father Marcus
|
||||
user_description= _ "Father Marcus"
|
||||
profile=portraits/Father_Marcus.jpg
|
||||
profile=portraits/Father_Marcus.jpg
|
||||
x=18
|
||||
y=4
|
||||
[/unit]
|
||||
|
@ -622,7 +622,7 @@
|
|||
gender=female
|
||||
description=Sister Theta
|
||||
user_description= _ "Sister Theta"
|
||||
profile=portraits/Sister_Theta.jpg
|
||||
profile=portraits/Sister_Theta.jpg
|
||||
x=19
|
||||
y=5
|
||||
side=3
|
||||
|
|
|
@ -220,7 +220,7 @@
|
|||
[side]
|
||||
type=Orcish Warlord
|
||||
description=Atul
|
||||
user_description= _ "Atul"
|
||||
user_description= _ "Atul"
|
||||
canrecruit=1
|
||||
side=2
|
||||
{GOLD4 200 300 400 500}
|
||||
|
@ -269,10 +269,10 @@
|
|||
x=15
|
||||
y=2
|
||||
side=1
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_HEALTHY}
|
||||
[/modifications]
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_HEALTHY}
|
||||
[/modifications]
|
||||
[/unit]
|
||||
|
||||
[unit]
|
||||
|
@ -283,9 +283,9 @@
|
|||
side=1
|
||||
x=15
|
||||
y=2
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
[/modifications]
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
[/modifications]
|
||||
[/unit]
|
||||
|
||||
[unit]
|
||||
|
@ -296,9 +296,9 @@
|
|||
side=1
|
||||
x=15
|
||||
y=2
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
[/modifications]
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
[/modifications]
|
||||
[/unit]
|
||||
|
||||
{WARLORD 10 13}
|
||||
|
@ -428,10 +428,10 @@
|
|||
profile=portraits/Anita.jpg
|
||||
x=11
|
||||
y=14
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_DEXTEROUS}
|
||||
[/modifications]
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_DEXTEROUS}
|
||||
[/modifications]
|
||||
[/unit]
|
||||
|
||||
[message]
|
||||
|
|
|
@ -54,11 +54,10 @@
|
|||
y=15
|
||||
letter=Uu
|
||||
[/terrain]
|
||||
[/event]
|
||||
|
||||
[/event]
|
||||
|
||||
[event]
|
||||
name=start
|
||||
[event]
|
||||
name=start
|
||||
|
||||
[unit]
|
||||
type=Troll Warrior
|
||||
|
|
|
@ -618,7 +618,7 @@
|
|||
[/event]
|
||||
|
||||
[event]
|
||||
name=start
|
||||
name=start
|
||||
|
||||
{SUPPORTER}
|
||||
[recall]
|
||||
|
@ -828,7 +828,7 @@
|
|||
[unit]
|
||||
description=Hidel
|
||||
type=Elvish Marshal
|
||||
profile=portraits/Hidel.jpg
|
||||
profile=portraits/Hidel.jpg
|
||||
user_description= _ "Hidel"
|
||||
x=28
|
||||
y=15
|
||||
|
@ -1110,10 +1110,10 @@
|
|||
user_description= _ "Singe"
|
||||
x=3
|
||||
y=14
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_RESILIENT}
|
||||
[/modifications]
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_RESILIENT}
|
||||
[/modifications]
|
||||
[/unit]
|
||||
|
||||
[move_unit_fake]
|
||||
|
@ -1132,10 +1132,10 @@
|
|||
description=Halk
|
||||
x=3
|
||||
y=15
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_STRONG}
|
||||
[/modifications]
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_STRONG}
|
||||
[/modifications]
|
||||
[/unit]
|
||||
|
||||
{CLEAR_VARIABLE gettinghelp}
|
||||
|
|
|
@ -23,8 +23,6 @@
|
|||
next_scenario=get_gold
|
||||
{STARTING_VILLAGES 1 6}
|
||||
|
||||
|
||||
|
||||
[side]
|
||||
type=Lieutenant
|
||||
description=Tallin
|
||||
|
@ -146,21 +144,18 @@
|
|||
letter=Mm
|
||||
[/terrain]
|
||||
|
||||
[gold]
|
||||
side=1
|
||||
amount=200
|
||||
[/gold]
|
||||
|
||||
[gold]
|
||||
side=1
|
||||
amount=200
|
||||
[/gold]
|
||||
[/then]
|
||||
[/if]
|
||||
|
||||
[/event]
|
||||
|
||||
[/event]
|
||||
|
||||
[event]
|
||||
name=start
|
||||
|
||||
{SUPPORTER}
|
||||
{SUPPORTER}
|
||||
|
||||
[recall]
|
||||
role=Supporter
|
||||
|
@ -202,7 +197,6 @@
|
|||
description="Ro'Sothian"
|
||||
[/recall]
|
||||
|
||||
|
||||
[unit]
|
||||
type=Orcish Sovereign
|
||||
description=Rakshas
|
||||
|
@ -491,7 +485,7 @@
|
|||
description= _ "Death of Ro'Sothian"
|
||||
condition=lose
|
||||
[/objective]
|
||||
[objective]
|
||||
[objective]
|
||||
description= _ "Turns run out"
|
||||
condition=lose
|
||||
[/objective]
|
||||
|
|
|
@ -316,7 +316,7 @@
|
|||
kill=yes
|
||||
[/store_unit]
|
||||
|
||||
[set_variable]
|
||||
[set_variable]
|
||||
name=Anita_in_command.side
|
||||
value=9
|
||||
[/set_variable]
|
||||
|
@ -333,21 +333,20 @@
|
|||
value=1
|
||||
[/set_variable]
|
||||
|
||||
[unstore_unit]
|
||||
[unstore_unit]
|
||||
variable=Anita_in_command
|
||||
find_vacant=yes
|
||||
[/unstore_unit]
|
||||
[/unstore_unit]
|
||||
|
||||
{CLEAR_VARIABLE Anita_in_command}
|
||||
[/then]
|
||||
[/if]
|
||||
|
||||
[/event]
|
||||
[/event]
|
||||
|
||||
[event]
|
||||
name=start
|
||||
|
||||
{SUPPORTER}
|
||||
{SUPPORTER}
|
||||
|
||||
[recall]
|
||||
role=Supporter
|
||||
|
@ -699,7 +698,6 @@
|
|||
side=3
|
||||
[/unit]
|
||||
|
||||
|
||||
[message]
|
||||
speaker=narrator
|
||||
message= _ "After making haste through the forest for most of a watch, the party arrived at the battle scene."
|
||||
|
|
|
@ -57,7 +57,7 @@
|
|||
type=Orcish Sovereign
|
||||
description=Rakshas
|
||||
user_description= _ "Rakshas"
|
||||
profile=portraits/Rakshas.jpg
|
||||
profile=portraits/Rakshas.jpg
|
||||
canrecruit=1
|
||||
side=2
|
||||
recruit=Orcish Warrior,Orcish Slayer,Troll,Troll Rocklobber,Orcish Crossbowman
|
||||
|
@ -226,7 +226,7 @@
|
|||
type=Dwarvish Lord
|
||||
description=Hamel
|
||||
user_description= _ "Hamel"
|
||||
profile=portraits/Hamel.jpg
|
||||
profile=portraits/Hamel.jpg
|
||||
canrecruit=1
|
||||
side=8
|
||||
{GOLD4 2500 2500 2000 1500}
|
||||
|
|
|
@ -275,10 +275,10 @@
|
|||
side=1
|
||||
x=$keep.x
|
||||
y=$keep.y
|
||||
[modifications]
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_QUICK}
|
||||
[/modifications]
|
||||
[/modifications]
|
||||
[/unit]
|
||||
|
||||
[message]
|
||||
|
@ -331,10 +331,10 @@
|
|||
side=1
|
||||
x=$keep.x
|
||||
y=$keep.y
|
||||
[modifications]
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_QUICK}
|
||||
[/modifications]
|
||||
[/modifications]
|
||||
[/unit]
|
||||
[message]
|
||||
description=Sister Theta
|
||||
|
@ -384,10 +384,10 @@
|
|||
side=1
|
||||
x=$keep.x
|
||||
y=$keep.y
|
||||
[modifications]
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_QUICK}
|
||||
[/modifications]
|
||||
[/modifications]
|
||||
[/unit]
|
||||
|
||||
[message]
|
||||
|
@ -425,10 +425,10 @@
|
|||
side=1
|
||||
x=$keep.x
|
||||
y=$keep.y
|
||||
[modifications]
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_QUICK}
|
||||
[/modifications]
|
||||
[/modifications]
|
||||
[/unit]
|
||||
[message]
|
||||
description=Sister Theta
|
||||
|
@ -465,10 +465,10 @@
|
|||
side=1
|
||||
x=$keep.x
|
||||
y=$keep.y
|
||||
[modifications]
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_QUICK}
|
||||
[/modifications]
|
||||
[/modifications]
|
||||
[/unit]
|
||||
[message]
|
||||
description=Sister Theta
|
||||
|
@ -524,10 +524,10 @@
|
|||
side=1
|
||||
x=$keep.x
|
||||
y=$keep.y
|
||||
[modifications]
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_QUICK}
|
||||
[/modifications]
|
||||
[/modifications]
|
||||
[/unit]
|
||||
[message]
|
||||
description=Father Marcus
|
||||
|
@ -572,10 +572,10 @@
|
|||
side=1
|
||||
x=$keep.x
|
||||
y=$keep.y
|
||||
[modifications]
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_QUICK}
|
||||
[/modifications]
|
||||
[/modifications]
|
||||
[/unit]
|
||||
[message]
|
||||
description=Sister Theta
|
||||
|
@ -630,10 +630,10 @@
|
|||
side=1
|
||||
x=$keep.x
|
||||
y=$keep.y
|
||||
[modifications]
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_RESILIENT}
|
||||
[/modifications]
|
||||
[/modifications]
|
||||
[/unit]
|
||||
|
||||
[message]
|
||||
|
@ -675,10 +675,10 @@
|
|||
side=1
|
||||
x=$keep.x
|
||||
y=$keep.y
|
||||
[modifications]
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_RESILIENT}
|
||||
[/modifications]
|
||||
[/modifications]
|
||||
[/unit]
|
||||
|
||||
[message]
|
||||
|
@ -715,10 +715,10 @@
|
|||
side=1
|
||||
x=$keep.x
|
||||
y=$keep.y
|
||||
[modifications]
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_RESILIENT}
|
||||
[/modifications]
|
||||
[/modifications]
|
||||
[/unit]
|
||||
|
||||
[message]
|
||||
|
@ -759,10 +759,10 @@
|
|||
side=1
|
||||
x=$keep.x
|
||||
y=$keep.y
|
||||
[modifications]
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_RESILIENT}
|
||||
[/modifications]
|
||||
[/modifications]
|
||||
[/unit]
|
||||
|
||||
[message]
|
||||
|
@ -803,10 +803,10 @@
|
|||
side=1
|
||||
x=$keep.x
|
||||
y=$keep.y
|
||||
[modifications]
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_RESILIENT}
|
||||
[/modifications]
|
||||
[/modifications]
|
||||
[/unit]
|
||||
[/then]
|
||||
[/if]
|
||||
|
@ -838,10 +838,10 @@
|
|||
side=1
|
||||
x=$keep.x
|
||||
y=$keep.y
|
||||
[modifications]
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_RESILIENT}
|
||||
[/modifications]
|
||||
[/modifications]
|
||||
[/unit]
|
||||
|
||||
[message]
|
||||
|
@ -882,10 +882,10 @@
|
|||
side=1
|
||||
x=$keep.x
|
||||
y=$keep.y
|
||||
[modifications]
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_RESILIENT}
|
||||
[/modifications]
|
||||
[/modifications]
|
||||
[/unit]
|
||||
|
||||
[message]
|
||||
|
|
|
@ -40,7 +40,6 @@
|
|||
[event]
|
||||
name=prestart
|
||||
|
||||
|
||||
# Alanin and Krawg are taking a break
|
||||
|
||||
[store_unit]
|
||||
|
@ -75,7 +74,6 @@
|
|||
variable=resource_return_locations
|
||||
[/store_locations]
|
||||
|
||||
|
||||
# Here we need to randomize the coal and gold locations by
|
||||
# hand, because the map generator can otherwise sometimes place
|
||||
# them inside cavewall.
|
||||
|
@ -186,7 +184,6 @@
|
|||
{CLEAR_VARIABLE possible_coal_2_locations}
|
||||
{CLEAR_VARIABLE possible_gold_locations}
|
||||
|
||||
|
||||
# Here we overlay a mask containing a rather random pattern of
|
||||
# suitable terrains on the map, because the map generator itself
|
||||
# only places the very basic terrains (floor, walls, etc)
|
||||
|
|
|
@ -69,7 +69,6 @@
|
|||
name=prestart
|
||||
|
||||
[unhide_unit][/unhide_unit]
|
||||
|
||||
[modify_side]
|
||||
side=1
|
||||
gold=0
|
||||
|
@ -285,12 +284,12 @@
|
|||
side=1
|
||||
[/kill]
|
||||
{FOREACH dwarves i}
|
||||
{VARIABLE dwarves[$i].x "recall"}
|
||||
{VARIABLE dwarves[$i].y "recall"}
|
||||
{VARIABLE dwarves[$i].x "recall"}
|
||||
{VARIABLE dwarves[$i].y "recall"}
|
||||
|
||||
[unstore_unit]
|
||||
variable=dwarves[$i]
|
||||
[/unstore_unit]
|
||||
[unstore_unit]
|
||||
variable=dwarves[$i]
|
||||
[/unstore_unit]
|
||||
{NEXT i}
|
||||
{CLEAR_VARIABLE dwarves}
|
||||
[modify_side]
|
||||
|
|
|
@ -186,17 +186,17 @@
|
|||
[message]
|
||||
description="Kapou'e"
|
||||
message= _ "Oh, I just thought I would take a bracing winter stroll and visit my father's old friend. How could I not, given his impressive list of recent accomplishments."
|
||||
[/message]
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
[message]
|
||||
description="Shan Taum"
|
||||
|
||||
message= _ "Accomplishments?"
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
description="Kapou'e"
|
||||
message= _ "Well let's see, first he betrays the trust of his sworn sovereign and becomes no less then a bootlicking spy for the humans. Then goes on to engineer the death of half of the Great Council and in doing so makes himself directly responsible for the deaths of hundreds of our brethren. And best of all, he is directly responsible for a bloody civil war right at the time when his people are on the edge of total extermination!"
|
||||
[message]
|
||||
description="Kapou'e"
|
||||
message= _ "Well let's see, first he betrays the trust of his sworn sovereign and becomes no less then a bootlicking spy for the humans. Then goes on to engineer the death of half of the Great Council and in doing so makes himself directly responsible for the deaths of hundreds of our brethren. And best of all, he is directly responsible for a bloody civil war right at the time when his people are on the edge of total extermination!"
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
|
@ -266,7 +266,7 @@
|
|||
name=turn 3
|
||||
|
||||
[role]
|
||||
side=1
|
||||
side=1
|
||||
type=Orcish Warlord, Orcish Warrior, Goblin Knight, Goblin Pillager, Orcish Grunt, Orcish Crossbowman, Orcish Archer
|
||||
role=Helper
|
||||
[/role]
|
||||
|
|
|
@ -102,16 +102,16 @@
|
|||
[/event]
|
||||
|
||||
[story]
|
||||
[part]
|
||||
background=maps/wesnoth.png
|
||||
music=northerners.ogg
|
||||
story= _ "In the first few years after the founding of the Northern Alliance, the dwarves of Knalga and the human population of Dwarven Doors were fully preoccupied with rebuilding what had been broken by the long orcish occupation. But soon enough they prospered once again. The dwarves begin mining their past for inspiration in ways to rebuild Knalga so it would be even greater than before, and began also reaching out for contact with their scattered kinfolk."
|
||||
[/part]
|
||||
[part]
|
||||
background=maps/wesnoth.png
|
||||
music=northerners.ogg
|
||||
story= _ "But the threat from hostile orcs, wild men, and remnant undead was not yet ended. The dwarves kept strong guards on the approaches to Knalga. In the year 550 after the founding of Wesnoth, the captain of the East Gate received a warning that a small band of rogue orcs had been sighted."
|
||||
[/part]
|
||||
[part]
|
||||
background=maps/wesnoth.png
|
||||
music=northerners.ogg
|
||||
story= _ "In the first few years after the founding of the Northern Alliance, the dwarves of Knalga and the human population of Dwarven Doors were fully preoccupied with rebuilding what had been broken by the long orcish occupation. But soon enough they prospered once again. The dwarves begin mining their past for inspiration in ways to rebuild Knalga so it would be even greater than before, and began also reaching out for contact with their scattered kinfolk."
|
||||
[/part]
|
||||
[part]
|
||||
background=maps/wesnoth.png
|
||||
music=northerners.ogg
|
||||
story= _ "But the threat from hostile orcs, wild men, and remnant undead was not yet ended. The dwarves kept strong guards on the approaches to Knalga. In the year 550 after the founding of Wesnoth, the captain of the East Gate received a warning that a small band of rogue orcs had been sighted."
|
||||
[/part]
|
||||
[/story]
|
||||
|
||||
[event]
|
||||
|
@ -143,5 +143,5 @@ and kill or scatter these invaders."
|
|||
[endlevel]
|
||||
result=victory
|
||||
[/endlevel]
|
||||
[/event]
|
||||
[/event]
|
||||
[/scenario]
|
||||
|
|
|
@ -46,10 +46,10 @@
|
|||
[/side]
|
||||
|
||||
[story]
|
||||
[part]
|
||||
background=maps/wesnoth.png
|
||||
story= _ "Following the victory against the orcs, Aiglondur was summoned to the audience hall of Hamel, lord of Knalga and Lord Companion of the Northern Alliance. Beside the dais stood a stranger in the robes of the Order of Loremasters..."
|
||||
[/part]
|
||||
[part]
|
||||
background=maps/wesnoth.png
|
||||
story= _ "Following the victory against the orcs, Aiglondur was summoned to the audience hall of Hamel, lord of Knalga and Lord Companion of the Northern Alliance. Beside the dais stood a stranger in the robes of the Order of Loremasters..."
|
||||
[/part]
|
||||
[/story]
|
||||
|
||||
[event]
|
||||
|
@ -59,7 +59,7 @@
|
|||
# That one is in the next scenario.
|
||||
[unit]
|
||||
type=Dwarvish Witness
|
||||
description="Angarthing_dummy"
|
||||
description="Angarthing_dummy"
|
||||
user_description= _ "Angarthing"
|
||||
profile=portraits/angarthing.png
|
||||
side=1
|
||||
|
@ -92,11 +92,11 @@
|
|||
{PLACE_IMAGE "items/brazier-lit1.png" 8 12}
|
||||
{PLACE_IMAGE "items/brazier-lit1.png" 14 12}
|
||||
{PLACE_IMAGE "items/brazier-lit1.png" 11 14}
|
||||
{PLACE_IMAGE "scenery/dwarven-doors-closed.png" 7 11}
|
||||
{PLACE_IMAGE "scenery/dwarven-doors-closed.png" 7 11}
|
||||
|
||||
[message]
|
||||
description="Hamel"
|
||||
message=_"Aiglondur, what ye ha' found is disturbing, for all it
|
||||
message=_"Aiglondur, what ye ha' found is disturbing, for all it
|
||||
seems a small thing. I make known to ye Angarthing, loremaster in training,
|
||||
who recognized the mark on it."
|
||||
[/message]
|
||||
|
@ -207,5 +207,5 @@ who recognized the mark on it."
|
|||
[endlevel]
|
||||
result=continue_no_save
|
||||
[/endlevel]
|
||||
[/event]
|
||||
[/event]
|
||||
[/scenario]
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
fog="no"
|
||||
shroud="no"
|
||||
recruit="Dwarvish Fighter, Dwarvish Thunderer, Dwarvish Guardsman"
|
||||
{GOLD 100 80 60} # BALANCE
|
||||
{GOLD 100 80 60} # BALANCE
|
||||
[/side]
|
||||
|
||||
{STARTING_VILLAGES 1 3}
|
||||
|
@ -58,7 +58,7 @@
|
|||
grouping=offensive
|
||||
{ATTACK_DEPTH 3 4 5}
|
||||
[/ai]
|
||||
{GOLD 240 200 160} # BALANCE
|
||||
{GOLD 240 200 160} # BALANCE
|
||||
[/side]
|
||||
|
||||
#ifdef HARD
|
||||
|
@ -83,7 +83,7 @@
|
|||
{TRAIT_INTELLIGENT}
|
||||
[/modifications]
|
||||
{GOLD 280 300 340} # BALANCE
|
||||
{INCOME 5 7 9}
|
||||
{INCOME 5 7 9}
|
||||
|
||||
team_name=bandits
|
||||
controller=ai
|
||||
|
@ -112,10 +112,10 @@
|
|||
[/side]
|
||||
|
||||
[story]
|
||||
[part]
|
||||
background=maps/wesnoth.png
|
||||
story= _ "Angarthing and Aiglondur and the dwarvish troop traveled swiftly to the east through the settled lands of the Northern Alliance. Soon enough they came to the wilder march country, where raids by large bands of hostile orcs and men were all too common."
|
||||
[/part]
|
||||
[part]
|
||||
background=maps/wesnoth.png
|
||||
story= _ "Angarthing and Aiglondur and the dwarvish troop traveled swiftly to the east through the settled lands of the Northern Alliance. Soon enough they came to the wilder march country, where raids by large bands of hostile orcs and men were all too common."
|
||||
[/part]
|
||||
[/story]
|
||||
|
||||
{@campaigns/The_Hammer_of_Thursagan/utils/herodeaths.cfg}
|
||||
|
@ -125,8 +125,8 @@
|
|||
|
||||
[unit]
|
||||
type=Dwarvish Witness
|
||||
description="Angarthing"
|
||||
user_description= _ "Angarthing"
|
||||
description="Angarthing"
|
||||
user_description= _ "Angarthing"
|
||||
profile=portraits/angarthing.png
|
||||
side=1
|
||||
[modifications]
|
||||
|
@ -202,19 +202,19 @@
|
|||
[/event]
|
||||
|
||||
[event]
|
||||
name=die
|
||||
[filter]
|
||||
description=Marth Tak
|
||||
[/filter]
|
||||
name=die
|
||||
[filter]
|
||||
description=Marth Tak
|
||||
[/filter]
|
||||
|
||||
[message]
|
||||
description=Angarthing
|
||||
message= _ "We have failed our duty to the Alliance."
|
||||
[/message]
|
||||
[message]
|
||||
description=Angarthing
|
||||
message= _ "We have failed our duty to the Alliance."
|
||||
[/message]
|
||||
|
||||
[endlevel]
|
||||
result=defeat
|
||||
[/endlevel]
|
||||
[endlevel]
|
||||
result=defeat
|
||||
[/endlevel]
|
||||
[/event]
|
||||
|
||||
[event]
|
||||
|
@ -239,10 +239,9 @@
|
|||
[/message]
|
||||
|
||||
[message]
|
||||
description="Marth Tak"
|
||||
message=_"East, eh? You won't find many friends in that direction. Travel safely."
|
||||
description="Marth Tak"
|
||||
message=_"East, eh? You won't find many friends in that direction. Travel safely."
|
||||
[/message]
|
||||
|
||||
[/if]
|
||||
[/event]
|
||||
[/scenario]
|
||||
|
|
|
@ -23,7 +23,7 @@
|
|||
fog="no"
|
||||
shroud="no"
|
||||
recruit="Dwarvish Fighter,Dwarvish Thunderer,Dwarvish Guardsman"
|
||||
{GOLD 100 80 60} # BALANCE
|
||||
{GOLD 100 80 60} # BALANCE
|
||||
[/side]
|
||||
|
||||
[side]
|
||||
|
@ -64,10 +64,10 @@
|
|||
{@campaigns/The_Hammer_of_Thursagan/utils/macros.cfg}
|
||||
|
||||
[story]
|
||||
[part]
|
||||
background=maps/wesnoth.png
|
||||
story= _ "Aiglondur and his troop, some still shaking their heads dubiously at the very notion of fighting alongside orcs rather than against them, continued east to the easternmost edge of the Northern Alliance's lands."
|
||||
[/part]
|
||||
[part]
|
||||
background=maps/wesnoth.png
|
||||
story= _ "Aiglondur and his troop, some still shaking their heads dubiously at the very notion of fighting alongside orcs rather than against them, continued east to the easternmost edge of the Northern Alliance's lands."
|
||||
[/part]
|
||||
[/story]
|
||||
|
||||
#ifdef NORMAL
|
||||
|
@ -83,7 +83,7 @@
|
|||
[filter]
|
||||
description=Gronk
|
||||
[/filter]
|
||||
[message]
|
||||
[message]
|
||||
speaker=second_unit
|
||||
message="Hey! That troll was sitting on some treasure!"
|
||||
[/message]
|
||||
|
@ -100,9 +100,9 @@
|
|||
name="start"
|
||||
|
||||
[recall]
|
||||
description="Angarthing"
|
||||
description="Angarthing"
|
||||
x,y=2,9
|
||||
[/recall]
|
||||
[/recall]
|
||||
|
||||
[message]
|
||||
description="Gronk"
|
||||
|
|
|
@ -22,10 +22,10 @@
|
|||
[/label]
|
||||
|
||||
[story]
|
||||
[part]
|
||||
background=maps/wesnoth.png
|
||||
story= _ "The Alliance's road ended at the troll bridge. East of it lay only the wildlands."
|
||||
[/part]
|
||||
[part]
|
||||
background=maps/wesnoth.png
|
||||
story= _ "The Alliance's road ended at the troll bridge. East of it lay only the wildlands."
|
||||
[/part]
|
||||
[/story]
|
||||
|
||||
[side]
|
||||
|
@ -39,7 +39,7 @@
|
|||
fog="no"
|
||||
shroud="no"
|
||||
recruit="Dwarvish Fighter,Dwarvish Thunderer,Dwarvish Guardsman"
|
||||
{GOLD 100 80 60} # BALANCE
|
||||
{GOLD 100 80 60} # BALANCE
|
||||
[/side]
|
||||
|
||||
[side]
|
||||
|
@ -144,12 +144,12 @@
|
|||
[event]
|
||||
name=capture
|
||||
first_time_only=no
|
||||
[if]
|
||||
[variable]
|
||||
name=unit.side
|
||||
numerical_equals=5
|
||||
[/variable]
|
||||
[then]
|
||||
[if]
|
||||
[variable]
|
||||
name=unit.side
|
||||
numerical_equals=5
|
||||
[/variable]
|
||||
[then]
|
||||
{CLEAR cleared_$x1|,$y1|_village}
|
||||
[/then]
|
||||
[else]
|
||||
|
@ -159,123 +159,123 @@
|
|||
not_equals=yes
|
||||
[/variable]
|
||||
[then]
|
||||
# Compute the number of indigs that will pop up
|
||||
[if]
|
||||
[variable]
|
||||
name=unit.side
|
||||
numerical_equals=1
|
||||
[/variable]
|
||||
[then]
|
||||
# The bandit villagers hate dwarves...
|
||||
[set_variable]
|
||||
name=indigs
|
||||
random=0..2
|
||||
[/set_variable]
|
||||
[/then]
|
||||
[else]
|
||||
# ...but they hate orcs much worse.
|
||||
[set_variable]
|
||||
name=indigs
|
||||
random=2..5
|
||||
[/set_variable]
|
||||
[/else]
|
||||
[/if]
|
||||
# Now place the indigs
|
||||
[while]
|
||||
[variable]
|
||||
name=indigs
|
||||
greater_than=0
|
||||
[/variable]
|
||||
[do]
|
||||
[store_locations]
|
||||
[filter_adjacent_location]
|
||||
x,y=$x1,$y1
|
||||
[/filter_adjacent_location]
|
||||
# Compute the number of indigs that will pop up
|
||||
[if]
|
||||
[variable]
|
||||
name=unit.side
|
||||
numerical_equals=1
|
||||
[/variable]
|
||||
[then]
|
||||
# The bandit villagers hate dwarves...
|
||||
[set_variable]
|
||||
name=indigs
|
||||
random=0..2
|
||||
[/set_variable]
|
||||
[/then]
|
||||
[else]
|
||||
# ...but they hate orcs much worse.
|
||||
[set_variable]
|
||||
name=indigs
|
||||
random=2..5
|
||||
[/set_variable]
|
||||
[/else]
|
||||
[/if]
|
||||
# Now place the indigs
|
||||
[while]
|
||||
[variable]
|
||||
name=indigs
|
||||
greater_than=0
|
||||
[/variable]
|
||||
[do]
|
||||
[store_locations]
|
||||
[filter_adjacent_location]
|
||||
x,y=$x1,$y1
|
||||
[/filter_adjacent_location]
|
||||
|
||||
[not]
|
||||
[filter]
|
||||
[/filter]
|
||||
[/not]
|
||||
[not]
|
||||
[filter]
|
||||
[/filter]
|
||||
[/not]
|
||||
|
||||
variable=possible_indig_locations
|
||||
[/store_locations]
|
||||
variable=possible_indig_locations
|
||||
[/store_locations]
|
||||
|
||||
[if]
|
||||
[variable]
|
||||
name=possible_indig_locations.length
|
||||
greater_than=0
|
||||
[/variable]
|
||||
[then]
|
||||
{VARIABLE_OP random_location_index random 1..$possible_indig_locations.length}
|
||||
[set_variable]
|
||||
name=random_location_index
|
||||
add=-1
|
||||
[/set_variable]
|
||||
{RANDOM (Footpad,Thief,Thug)}
|
||||
[unit]
|
||||
type=$random
|
||||
side=5
|
||||
x,y=$possible_indig_locations[$random_location_index].x,$possible_indig_locations[$random_location_index].y
|
||||
generate_description=yes
|
||||
random_traits=yes
|
||||
[/unit]
|
||||
[/then]
|
||||
[/if]
|
||||
[set_variable]
|
||||
name=indigs
|
||||
add=-1
|
||||
[/set_variable]
|
||||
[/do]
|
||||
[/while]
|
||||
{CLEAR_VARIABLE indigs}
|
||||
# Perform appropriate notifications
|
||||
[if]
|
||||
[variable]
|
||||
name=possible_indig_locations.length
|
||||
greater_than=0
|
||||
[/variable]
|
||||
[then]
|
||||
[set_variable]
|
||||
name=cleared_$x1|,$y1|_village
|
||||
value=yes
|
||||
[/set_variable]
|
||||
[message]
|
||||
speaker=unit
|
||||
message= _ "The villagers are attacking us!"
|
||||
[/message]
|
||||
[if]
|
||||
[variable]
|
||||
name=indigs_sighted
|
||||
equals=0
|
||||
[/variable]
|
||||
[then]
|
||||
[message]
|
||||
speaker=Aiglondur
|
||||
message= _ "Aye, it's still bandit country, right enough."
|
||||
[/message]
|
||||
[/then]
|
||||
[/if]
|
||||
[set_variable]
|
||||
name=indigs_sighted
|
||||
add=1
|
||||
[/set_variable]
|
||||
[/then]
|
||||
[else]
|
||||
[if]
|
||||
[variable]
|
||||
name=indigs_sighted
|
||||
greater_than=0
|
||||
[/variable]
|
||||
[then]
|
||||
[message]
|
||||
speaker=unit
|
||||
message= _ "No bandits in this village."
|
||||
[/message]
|
||||
[/then]
|
||||
[/if]
|
||||
[/else]
|
||||
[/if]
|
||||
{CLEAR_VARIABLE possible_indig_locations}
|
||||
[if]
|
||||
[variable]
|
||||
name=possible_indig_locations.length
|
||||
greater_than=0
|
||||
[/variable]
|
||||
[then]
|
||||
{VARIABLE_OP random_location_index random 1..$possible_indig_locations.length}
|
||||
[set_variable]
|
||||
name=random_location_index
|
||||
add=-1
|
||||
[/set_variable]
|
||||
{RANDOM (Footpad,Thief,Thug)}
|
||||
[unit]
|
||||
type=$random
|
||||
side=5
|
||||
x,y=$possible_indig_locations[$random_location_index].x,$possible_indig_locations[$random_location_index].y
|
||||
generate_description=yes
|
||||
random_traits=yes
|
||||
[/unit]
|
||||
[/then]
|
||||
[/if]
|
||||
[set_variable]
|
||||
name=indigs
|
||||
add=-1
|
||||
[/set_variable]
|
||||
[/do]
|
||||
[/while]
|
||||
{CLEAR_VARIABLE indigs}
|
||||
# Perform appropriate notifications
|
||||
[if]
|
||||
[variable]
|
||||
name=possible_indig_locations.length
|
||||
greater_than=0
|
||||
[/variable]
|
||||
[then]
|
||||
[set_variable]
|
||||
name=cleared_$x1|,$y1|_village
|
||||
value=yes
|
||||
[/set_variable]
|
||||
[message]
|
||||
speaker=unit
|
||||
message= _ "The villagers are attacking us!"
|
||||
[/message]
|
||||
[if]
|
||||
[variable]
|
||||
name=indigs_sighted
|
||||
equals=0
|
||||
[/variable]
|
||||
[then]
|
||||
[message]
|
||||
speaker=Aiglondur
|
||||
message= _ "Aye, it's still bandit country, right enough."
|
||||
[/message]
|
||||
[/then]
|
||||
[/if]
|
||||
[set_variable]
|
||||
name=indigs_sighted
|
||||
add=1
|
||||
[/set_variable]
|
||||
[/then]
|
||||
[else]
|
||||
[if]
|
||||
[variable]
|
||||
name=indigs_sighted
|
||||
greater_than=0
|
||||
[/variable]
|
||||
[then]
|
||||
[message]
|
||||
speaker=unit
|
||||
message= _ "No bandits in this village."
|
||||
[/message]
|
||||
[/then]
|
||||
[/if]
|
||||
[/else]
|
||||
[/if]
|
||||
{CLEAR_VARIABLE possible_indig_locations}
|
||||
[/then]
|
||||
[/if]
|
||||
[/else]
|
||||
|
@ -284,25 +284,25 @@
|
|||
|
||||
[event]
|
||||
name="prestart"
|
||||
[role]
|
||||
type=Dwarvish Steelclad,Dwarvish Thunderguard,Dwarvish Fighter,Dwarvish Thunderer
|
||||
[not]
|
||||
description=Aiglondur
|
||||
[/not]
|
||||
role=Scout
|
||||
[/role]
|
||||
[role]
|
||||
type=Dwarvish Steelclad,Dwarvish Thunderguard,Dwarvish Fighter,Dwarvish Thunderer
|
||||
[not]
|
||||
description=Aiglondur
|
||||
[/not]
|
||||
role=Scout
|
||||
[/role]
|
||||
[/event]
|
||||
|
||||
[event]
|
||||
name="start"
|
||||
|
||||
[recall]
|
||||
description="Angarthing"
|
||||
[/recall]
|
||||
description="Angarthing"
|
||||
[/recall]
|
||||
|
||||
[recall]
|
||||
role=Scout
|
||||
[/recall]
|
||||
role=Scout
|
||||
[/recall]
|
||||
|
||||
[set_variable]
|
||||
name=indigs_sighted
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
fog="no"
|
||||
shroud=yes
|
||||
recruit="Dwarvish Fighter, Dwarvish Thunderer,Dwarvish Guardsman"
|
||||
{GOLD 100 80 60} # BALANCE
|
||||
{GOLD 100 80 60} # BALANCE
|
||||
[/side]
|
||||
|
||||
[side]
|
||||
|
@ -41,7 +41,7 @@
|
|||
canrecruit=1
|
||||
team_name=wildthings
|
||||
recruit=Gryphon
|
||||
{GOLD 60 80 100} # BALANCE
|
||||
{GOLD 60 80 100} # BALANCE
|
||||
[ai]
|
||||
{ATTACK_DEPTH 1 3 5}
|
||||
passive_leader=yes
|
||||
|
@ -107,8 +107,8 @@
|
|||
{PLACE_IMAGE (scenery/signpost.png) 30 11}
|
||||
|
||||
[recall]
|
||||
description="Angarthing"
|
||||
[/recall]
|
||||
description="Angarthing"
|
||||
[/recall]
|
||||
|
||||
[message]
|
||||
description="Angarthing"
|
||||
|
@ -183,10 +183,10 @@
|
|||
profile=portraits/ratheln.png
|
||||
user_description= _ "Ratheln"
|
||||
side=1
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_STRONG}
|
||||
[/modifications]
|
||||
[modifications]
|
||||
{TRAIT_LOYAL}
|
||||
{TRAIT_STRONG}
|
||||
[/modifications]
|
||||
x=19
|
||||
y=11
|
||||
[/unit]
|
||||
|
|
|
@ -29,8 +29,8 @@
|
|||
[side]
|
||||
type=Dwarvish Steelclad
|
||||
description=Masked Dwarf
|
||||
user_description= _ "Masked Dwarf"
|
||||
profile=portraits/maskeddwarf.png
|
||||
user_description= _ "Masked Dwarf"
|
||||
profile=portraits/maskeddwarf.png
|
||||
side=2
|
||||
canrecruit=1
|
||||
team_name=evil
|
||||
|
@ -54,23 +54,23 @@
|
|||
{@campaigns/The_Hammer_of_Thursagan/utils/macros.cfg}
|
||||
|
||||
[event]
|
||||
name="start"
|
||||
name="start"
|
||||
|
||||
# The recruitment algorithm in the AI doesn't want to create Ulfserkers.
|
||||
# We only want a limited number of these anyway, for flavor; they are
|
||||
# way too dangerous in swarms. So we'll create them explicitly here.
|
||||
#define MASKED_ULFSERKER X Y NAME
|
||||
[unit]
|
||||
type=Dwarvish Ulfserker
|
||||
side=2
|
||||
x,y={X},{Y}
|
||||
description={NAME}
|
||||
user_description=Masked Dwarf
|
||||
[/unit]
|
||||
#define MASKED_ULFSERKER X Y NAME
|
||||
[unit]
|
||||
type=Dwarvish Ulfserker
|
||||
side=2
|
||||
x,y={X},{Y}
|
||||
description={NAME}
|
||||
user_description=Masked Dwarf
|
||||
[/unit]
|
||||
#enddef
|
||||
{MASKED_ULFSERKER 38 12 Ulfserker1}
|
||||
{MASKED_ULFSERKER 39 14 Ulfserker2}
|
||||
#ifdef NORMAL
|
||||
#ifdef NORMAL
|
||||
{MASKED_ULFSERKER 40 12 Ulfserker3}
|
||||
#endif
|
||||
#ifdef HARD
|
||||
|
@ -148,18 +148,18 @@
|
|||
|
||||
# The Masked Dwarves are nameless, it's a part of their charm...
|
||||
[event]
|
||||
name=recruit
|
||||
first_time_only=no
|
||||
name=recruit
|
||||
first_time_only=no
|
||||
[filter]
|
||||
side=2
|
||||
[/filter]
|
||||
|
||||
{MODIFY_UNIT x,y=$x1,$y1 user_description _"Masked Dwarf"}
|
||||
{MODIFY_UNIT x,y=$x1,$y1 user_description _"Masked Dwarf"}
|
||||
[/event]
|
||||
|
||||
[event]
|
||||
name=capture
|
||||
first_time_only=yes
|
||||
name=capture
|
||||
first_time_only=yes
|
||||
[filter]
|
||||
side=1
|
||||
[/filter]
|
||||
|
@ -195,21 +195,21 @@
|
|||
[/message]
|
||||
|
||||
#define PLACE_BURNED_VILLAGE X Y
|
||||
{VARIABLE_OP random_string format "scenery/village-human-burned1.png,scenery/village-human-burned2.png,scenery/village-human-burned3.png,scenery/village-human-burned4.png"}
|
||||
{RANDOM $random_string}
|
||||
{PLACE_IMAGE $random {X} {Y}}
|
||||
{VARIABLE_OP random_string format "scenery/village-human-burned1.png,scenery/village-human-burned2.png,scenery/village-human-burned3.png,scenery/village-human-burned4.png"}
|
||||
{RANDOM $random_string}
|
||||
{PLACE_IMAGE $random {X} {Y}}
|
||||
#enddef
|
||||
|
||||
{PLACE_BURNED_VILLAGE 36 8}
|
||||
{PLACE_BURNED_VILLAGE 33 13}
|
||||
{PLACE_BURNED_VILLAGE 33 32}
|
||||
{PLACE_BURNED_VILLAGE 26 13}
|
||||
{PLACE_BURNED_VILLAGE 30 16}
|
||||
{PLACE_BURNED_VILLAGE 36 8}
|
||||
{PLACE_BURNED_VILLAGE 33 13}
|
||||
{PLACE_BURNED_VILLAGE 33 32}
|
||||
{PLACE_BURNED_VILLAGE 26 13}
|
||||
{PLACE_BURNED_VILLAGE 30 16}
|
||||
|
||||
[modify_side]
|
||||
[modify_side]
|
||||
side=1
|
||||
fog=no
|
||||
[/modify_side]
|
||||
[/modify_side]
|
||||
[message]
|
||||
speaker="Masked Dwarf"
|
||||
message=_"Fellow dwarves, hail! We're looking for a human refugee, one named Ollin. Have you seen him? Our master demands his life."
|
||||
|
@ -310,8 +310,7 @@ deed? I am a witness."
|
|||
message=_"They were seeking captives. To what purpose, I cannot say. But I doubt it was any good one."
|
||||
[/message]
|
||||
[kill]
|
||||
description=Ollin
|
||||
description=Ollin
|
||||
[/kill]
|
||||
[/event]
|
||||
|
||||
[/scenario]
|
||||
|
|
|
@ -93,7 +93,7 @@
|
|||
{GOLD 90 120 150} # BALANCE
|
||||
{INCOME 10 5 3} # BALANCE
|
||||
[ai]
|
||||
{NO_SCOUTS}
|
||||
{NO_SCOUTS}
|
||||
grouping=offensive
|
||||
passive_leader=yes
|
||||
recruitment_pattern=fighter
|
||||
|
@ -105,7 +105,7 @@
|
|||
[/side]
|
||||
|
||||
[event]
|
||||
name="start"
|
||||
name="start"
|
||||
{PLACE_IMAGE "scenery/signpost.png" 40 17}
|
||||
|
||||
[recall]
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
victory_when_enemies_defeated=yes
|
||||
|
||||
# The map should be thematically something like a reflection of the one
|
||||
# for "At The East Gate", but on a larger scale. The player's
|
||||
# for "At The East Gate", but on a larger scale. The player's
|
||||
# encampment should be at the west edge. Kal Kartha will be
|
||||
# represented by an underground keep (the West Gate) set into
|
||||
# high mountains at the east edge of the map.
|
||||
|
@ -29,7 +29,7 @@
|
|||
fog="no"
|
||||
shroud="no"
|
||||
recruit="Dwarvish Fighter,Dwarvish Thunderer,Dwarvish Guardsman,Mage"
|
||||
{GOLD 140 120 100} # BALANCE
|
||||
{GOLD 140 120 100} # BALANCE
|
||||
[/side]
|
||||
|
||||
[side]
|
||||
|
@ -51,7 +51,7 @@
|
|||
recruitment_pattern=fighter,fighter,mixed fighter
|
||||
{ATTACK_DEPTH 4 5 5}
|
||||
[/ai]
|
||||
{GOLD 280 240 200} # BALANCE
|
||||
{GOLD 280 240 200} # BALANCE
|
||||
[/side]
|
||||
|
||||
{STARTING_VILLAGES 2 5}
|
||||
|
@ -85,7 +85,7 @@
|
|||
x,y=44,15 # wants to take the Kal Karthans' keep.
|
||||
[/leader_goal]
|
||||
[target]
|
||||
side=2 # wants to kill Kal Karthans
|
||||
side=2 # wants to kill Kal Karthans
|
||||
value=4.0
|
||||
[/target]
|
||||
[/ai]
|
||||
|
@ -117,7 +117,7 @@
|
|||
x,y=44,15 # wants to take the Kal Karthans' keep.
|
||||
[/leader_goal]
|
||||
[target]
|
||||
side=2 # wants to kill Kal Karthans
|
||||
side=2 # wants to kill Kal Karthans
|
||||
value=4.0
|
||||
[/target]
|
||||
[/ai]
|
||||
|
@ -148,7 +148,7 @@
|
|||
x,y=44,15 # wants to take the Kal Karthans' keep.
|
||||
[/leader_goal]
|
||||
[target]
|
||||
side=2 # wants to kill Kal Karthans
|
||||
side=2 # wants to kill Kal Karthans
|
||||
value=4.0
|
||||
[/target]
|
||||
[/ai]
|
||||
|
@ -170,8 +170,8 @@
|
|||
name="start"
|
||||
|
||||
[recall]
|
||||
description="Angarthing"
|
||||
[/recall]
|
||||
description="Angarthing"
|
||||
[/recall]
|
||||
|
||||
[recall]
|
||||
description="Ratheln"
|
||||
|
@ -243,7 +243,7 @@
|
|||
[/event]
|
||||
|
||||
[event]
|
||||
name="victory"
|
||||
name="victory"
|
||||
|
||||
[message]
|
||||
speaker=Dulcatulos
|
||||
|
|
|
@ -8,10 +8,10 @@
|
|||
# This scenario will take place on a throneroom map which is, effectively,
|
||||
# all castle. It should have two keep hexes on it, one near the front
|
||||
# for our heroes and one at the rear for Karrag. Features of the
|
||||
# map must include an indication of a doorway in the cave wall near the
|
||||
# rear dais. The throneroom map should in general look like a distorted
|
||||
# map must include an indication of a doorway in the cave wall near the
|
||||
# rear dais. The throneroom map should in general look like a distorted
|
||||
# mirror image of Hamel's, but with the braziers unlit.
|
||||
#
|
||||
#
|
||||
# Aiglondur, Angarthing, and a few of their veteran followers face Karrag,
|
||||
# flanked by several of his followers. Dulcatulos escorts our heroes.
|
||||
# Karrag's group should have black team disks and Dulcatulos a blue one.
|
||||
|
@ -34,7 +34,7 @@
|
|||
fog="no"
|
||||
shroud="no"
|
||||
recruit="Dwarvish Fighter,Dwarvish Thunderer,Dwarvish Guardsman,Mage"
|
||||
{GOLD 140 120 100} # BALANCE
|
||||
{GOLD 140 120 100} # BALANCE
|
||||
[/side]
|
||||
|
||||
[side]
|
||||
|
@ -57,7 +57,7 @@
|
|||
recruitment_pattern=fighter,fighter,mixed fighter
|
||||
{ATTACK_DEPTH 4 5 5}
|
||||
[/ai]
|
||||
{GOLD 280 240 200} # BALANCE
|
||||
{GOLD 280 240 200} # BALANCE
|
||||
[/side]
|
||||
|
||||
[side]
|
||||
|
@ -82,17 +82,16 @@
|
|||
{PLACE_IMAGE "items/brazier.png" 9 14}
|
||||
{PLACE_IMAGE "items/brazier.png" 14 13}
|
||||
{PLACE_IMAGE "items/brazier.png" 17 14}
|
||||
{PLACE_IMAGE "scenery/dwarven-doors-closed.png" 18 11}
|
||||
{PLACE_IMAGE "scenery/dwarven-doors-closed.png" 18 11}
|
||||
|
||||
[recall]
|
||||
description="Angarthing"
|
||||
[/recall]
|
||||
description="Angarthing"
|
||||
[/recall]
|
||||
|
||||
[recall]
|
||||
description="Ratheln"
|
||||
[/recall]
|
||||
|
||||
|
||||
[unit]
|
||||
type=Dwarvish Steelclad
|
||||
description=Dulcatulos
|
||||
|
@ -102,8 +101,8 @@
|
|||
x,y=10,9
|
||||
[/unit]
|
||||
|
||||
{RECALL_VETERAN (Dwarvish Dragonguard) 11 11}
|
||||
{RECALL_VETERAN (Dwarvish Lord) 11 12}
|
||||
{RECALL_VETERAN (Dwarvish Dragonguard) 11 11}
|
||||
{RECALL_VETERAN (Dwarvish Lord) 11 12}
|
||||
|
||||
#define REMOVE_KEEP X Y
|
||||
[terrain]
|
||||
|
@ -115,9 +114,9 @@
|
|||
{REMOVE_KEEP 10 11}
|
||||
{REMOVE_KEEP 16 11}
|
||||
|
||||
# Karrag's throne guards
|
||||
# Karrag's throne guards
|
||||
|
||||
{MODIFY_UNIT description="Karrag" facing sw}
|
||||
{MODIFY_UNIT description="Karrag" facing sw}
|
||||
|
||||
[unit]
|
||||
type=Dwarvish Steelclad
|
||||
|
@ -231,8 +230,8 @@
|
|||
name=lich-hit-1.ogg
|
||||
[/sound]
|
||||
{MODIFY_UNIT description=Karrag type "Lich"}
|
||||
[redraw]
|
||||
[/redraw]
|
||||
[redraw]
|
||||
[/redraw]
|
||||
|
||||
[message]
|
||||
description= _ "Dulcatulos"
|
||||
|
@ -273,14 +272,14 @@
|
|||
[/objectives]
|
||||
[/event]
|
||||
|
||||
[message]
|
||||
speaker=narrator
|
||||
message=_"Neither side can recruit or recall. You must win with the troops you have."
|
||||
image=wesnoth-icon.png
|
||||
[/message]
|
||||
[message]
|
||||
speaker=narrator
|
||||
message=_"Neither side can recruit or recall. You must win with the troops you have."
|
||||
image=wesnoth-icon.png
|
||||
[/message]
|
||||
|
||||
[event]
|
||||
name="die"
|
||||
name="die"
|
||||
[filter]
|
||||
description=Karrag
|
||||
[/filter]
|
||||
|
@ -324,5 +323,4 @@
|
|||
result=defeat
|
||||
[/endlevel]
|
||||
[/event]
|
||||
|
||||
[/scenario]
|
||||
|
|
|
@ -49,13 +49,13 @@
|
|||
{PLACE_IMAGE "items/brazier-lit1.png" 9 14}
|
||||
{PLACE_IMAGE "items/brazier-lit1.png" 14 13}
|
||||
{PLACE_IMAGE "items/brazier-lit1.png" 17 14}
|
||||
{PLACE_IMAGE "scenery/dwarven-doors-closed.png" 18 11}
|
||||
{PLACE_IMAGE "scenery/dwarven-doors-closed.png" 18 11}
|
||||
|
||||
[recall]
|
||||
description="Angarthing"
|
||||
x,y=16,10
|
||||
facing=sw
|
||||
[/recall]
|
||||
[/recall]
|
||||
|
||||
[recall]
|
||||
description="Ratheln"
|
||||
|
@ -74,16 +74,16 @@
|
|||
facing=se
|
||||
[/recall]
|
||||
|
||||
# The Kal Karthans. One has to be named Narithil for the dialogue.
|
||||
# The Kal Karthans. One has to be named Narithil for the dialogue.
|
||||
|
||||
#define KAL_KARTHAN X Y TYPE NAME
|
||||
[unit]
|
||||
type={TYPE}
|
||||
description={NAME}
|
||||
user_description= _ {NAME} # wmllint: ignore
|
||||
side=3
|
||||
x,y={X},{Y}
|
||||
[/unit]
|
||||
[unit]
|
||||
type={TYPE}
|
||||
description={NAME}
|
||||
user_description= _ {NAME} # wmllint: ignore
|
||||
side=3
|
||||
x,y={X},{Y}
|
||||
[/unit]
|
||||
#enddef
|
||||
|
||||
{KAL_KARTHAN 9 9 "Dwarvish Fighter" Glamcatsil}
|
||||
|
@ -189,5 +189,4 @@ Tan-Malgar and his allies spread, and reached Tallin. You did the Alliance bett
|
|||
result=continue
|
||||
[/endlevel]
|
||||
[/event]
|
||||
|
||||
[/scenario]
|
||||
|
|
|
@ -72,35 +72,35 @@
|
|||
[/frame]
|
||||
[/attack_anim]
|
||||
[attack]
|
||||
name=bolas
|
||||
description= _"bolas"
|
||||
type=impact
|
||||
range=ranged
|
||||
damage=6
|
||||
number=2
|
||||
[specials]
|
||||
name=bolas
|
||||
description= _"bolas"
|
||||
type=impact
|
||||
range=ranged
|
||||
damage=6
|
||||
number=2
|
||||
[specials]
|
||||
{WEAPON_SPECIAL_MAGICAL}
|
||||
{WEAPON_SPECIAL_SLOW}
|
||||
[/specials]
|
||||
icon=attacks/bolas.png
|
||||
{WEAPON_SPECIAL_SLOW}
|
||||
[/specials]
|
||||
icon=attacks/bolas.png
|
||||
[/attack]
|
||||
[attack_anim]
|
||||
[attack_filter]
|
||||
name=bolas
|
||||
[/attack_filter]
|
||||
[missile_frame]
|
||||
begin=-150
|
||||
end=0
|
||||
image=projectiles/bolas-n.png
|
||||
image_diagonal=projectiles/bolas-ne.png
|
||||
[/missile_frame]
|
||||
{FRAME_ON_SLOW (
|
||||
[frame]
|
||||
begin=-100
|
||||
end=0
|
||||
image=units/annalist-defend.png
|
||||
sound=slowed.wav
|
||||
[/frame]
|
||||
)}
|
||||
[attack_filter]
|
||||
name=bolas
|
||||
[/attack_filter]
|
||||
[missile_frame]
|
||||
begin=-150
|
||||
end=0
|
||||
image=projectiles/bolas-n.png
|
||||
image_diagonal=projectiles/bolas-ne.png
|
||||
[/missile_frame]
|
||||
{FRAME_ON_SLOW (
|
||||
[frame]
|
||||
begin=-100
|
||||
end=0
|
||||
image=units/annalist-defend.png
|
||||
sound=slowed.wav
|
||||
[/frame]
|
||||
)}
|
||||
[/attack_anim]
|
||||
[/unit]
|
||||
|
|
|
@ -19,9 +19,9 @@
|
|||
{AMLA_DEFAULT}
|
||||
unit_description= _ "Loremasters are the sages of the dwarvish race. Their counsel is greatly valued by war-leaders and chieftains, and they are viewed with awe by ordinary dwarves, for they alone have plumbed the deepest and most closely-held secrets of dwarven knowledge. It is said that where a loremaster stands, there is the soul of the dwarves. To the abilities of the Annalist they add a limited ability to heal."+{SPECIAL_NOTES}+{SPECIAL_NOTES_SLOW}+{SPECIAL_NOTES_UNPOISON}+{SPECIAL_NOTES_LEADERSHIP}+_ "SPECIAL_NOTES^ This unit can exert leadership on units of his own level."+{SPECIAL_NOTES_MAGICAL}+{SPECIAL_NOTES_HEALS}
|
||||
[abilities]
|
||||
{ABILITY_LEADERSHIP_LEVEL_4}
|
||||
{ABILITY_UNPOISON}
|
||||
{ABILITY_HEALS}
|
||||
{ABILITY_LEADERSHIP_LEVEL_4}
|
||||
{ABILITY_UNPOISON}
|
||||
{ABILITY_HEALS}
|
||||
[/abilities]
|
||||
{DEFENSE_ANIM_RANGE "units/loremaster-defend.png" "units/loremaster.png" {SOUND_LIST:DWARF_HIT} melee}
|
||||
{DEFENSE_ANIM_RANGE "units/loremaster-defend-ranged.png" "units/loremaster.png" {SOUND_LIST:DWARF_HIT} ranged}
|
||||
|
@ -72,35 +72,35 @@
|
|||
[/frame]
|
||||
[/attack_anim]
|
||||
[attack]
|
||||
name=bolas
|
||||
description= _"bolas"
|
||||
type=impact
|
||||
range=ranged
|
||||
damage=6
|
||||
number=3
|
||||
[specials]
|
||||
name=bolas
|
||||
description= _"bolas"
|
||||
type=impact
|
||||
range=ranged
|
||||
damage=6
|
||||
number=3
|
||||
[specials]
|
||||
{WEAPON_SPECIAL_MAGICAL}
|
||||
{WEAPON_SPECIAL_SLOW}
|
||||
[/specials]
|
||||
icon=attacks/bolas.png
|
||||
{WEAPON_SPECIAL_SLOW}
|
||||
[/specials]
|
||||
icon=attacks/bolas.png
|
||||
[/attack]
|
||||
[attack_anim]
|
||||
[attack_filter]
|
||||
name=bolas
|
||||
[/attack_filter]
|
||||
[missile_frame]
|
||||
begin=-150
|
||||
end=0
|
||||
image=projectiles/bolas-n.png
|
||||
image_diagonal=projectiles/bolas-ne.png
|
||||
[/missile_frame]
|
||||
{FRAME_ON_SLOW (
|
||||
[frame]
|
||||
begin=-100
|
||||
end=0
|
||||
image=units/loremaster-defend-ranged.png
|
||||
sound=slowed.wav
|
||||
[/frame]
|
||||
)}
|
||||
[attack_filter]
|
||||
name=bolas
|
||||
[/attack_filter]
|
||||
[missile_frame]
|
||||
begin=-150
|
||||
end=0
|
||||
image=projectiles/bolas-n.png
|
||||
image_diagonal=projectiles/bolas-ne.png
|
||||
[/missile_frame]
|
||||
{FRAME_ON_SLOW (
|
||||
[frame]
|
||||
begin=-100
|
||||
end=0
|
||||
image=units/loremaster-defend-ranged.png
|
||||
sound=slowed.wav
|
||||
[/frame]
|
||||
)}
|
||||
[/attack_anim]
|
||||
[/unit]
|
||||
|
|
|
@ -76,35 +76,35 @@
|
|||
[/frame]
|
||||
[/attack_anim]
|
||||
[attack]
|
||||
name=bolas
|
||||
description= _"bolas"
|
||||
type=impact
|
||||
range=ranged
|
||||
damage=6
|
||||
number=1
|
||||
[specials]
|
||||
{WEAPON_SPECIAL_SLOW}
|
||||
{WEAPON_SPECIAL_MAGICAL}
|
||||
[/specials]
|
||||
icon=attacks/bolas.png
|
||||
name=bolas
|
||||
description= _"bolas"
|
||||
type=impact
|
||||
range=ranged
|
||||
damage=6
|
||||
number=1
|
||||
[specials]
|
||||
{WEAPON_SPECIAL_SLOW}
|
||||
{WEAPON_SPECIAL_MAGICAL}
|
||||
[/specials]
|
||||
icon=attacks/bolas.png
|
||||
[/attack]
|
||||
[attack_anim]
|
||||
[attack_filter]
|
||||
name=bolas
|
||||
[/attack_filter]
|
||||
[missile_frame]
|
||||
begin=-150
|
||||
end=0
|
||||
image=projectiles/bolas-n.png
|
||||
image_diagonal=projectiles/bolas-ne.png
|
||||
[/missile_frame]
|
||||
{FRAME_ON_SLOW (
|
||||
[frame]
|
||||
begin=-100
|
||||
end=0
|
||||
image=units/witness-defend.png
|
||||
sound=slowed.wav
|
||||
[/frame]
|
||||
)}
|
||||
[attack_filter]
|
||||
name=bolas
|
||||
[/attack_filter]
|
||||
[missile_frame]
|
||||
begin=-150
|
||||
end=0
|
||||
image=projectiles/bolas-n.png
|
||||
image_diagonal=projectiles/bolas-ne.png
|
||||
[/missile_frame]
|
||||
{FRAME_ON_SLOW (
|
||||
[frame]
|
||||
begin=-100
|
||||
end=0
|
||||
image=units/witness-defend.png
|
||||
sound=slowed.wav
|
||||
[/frame]
|
||||
)}
|
||||
[/attack_anim]
|
||||
[/unit]
|
||||
|
|
|
@ -12,9 +12,9 @@
|
|||
message= _ "You retrieve $amount_gold pieces of gold."
|
||||
image=wesnoth-icon.png
|
||||
[/message]
|
||||
|
||||
|
||||
{CLEAR_VARIABLE amount_gold}
|
||||
|
||||
|
||||
[gold]
|
||||
side={SIDE}
|
||||
amount={AMOUNT}
|
||||
|
@ -25,40 +25,40 @@
|
|||
Mage,Red Mage,White Mage,Arch Mage,Great Mage,Mage of Light,Silver Mage #enddef
|
||||
|
||||
#define CONDITIONAL_MAGE_RECRUITING
|
||||
[store_unit]
|
||||
[filter]
|
||||
side=1
|
||||
type={MAGES}
|
||||
[/filter]
|
||||
variable=mage_test
|
||||
[/store_unit]
|
||||
[if]
|
||||
[variable]
|
||||
name=mage_disallow
|
||||
boolean_equals=false
|
||||
[/variable]
|
||||
[variable]
|
||||
name=mage_test.length
|
||||
numerical_equals=0
|
||||
[/variable]
|
||||
[then]
|
||||
[message]
|
||||
speaker=narrator
|
||||
message= _ "Without magic users from Master Perrin's academy in your party, you can no longer recruit new ones."
|
||||
image=wesnoth-icon.png
|
||||
[/message]
|
||||
[disallow_recruit]
|
||||
type=Mage
|
||||
[/disallow_recruit]
|
||||
{VARIABLE mage_disallow true}
|
||||
[/then]
|
||||
[/if]
|
||||
{CLEAR_VARIABLE mage_test}
|
||||
[store_unit]
|
||||
[filter]
|
||||
side=1
|
||||
type={MAGES}
|
||||
[/filter]
|
||||
variable=mage_test
|
||||
[/store_unit]
|
||||
[if]
|
||||
[variable]
|
||||
name=mage_disallow
|
||||
boolean_equals=false
|
||||
[/variable]
|
||||
[variable]
|
||||
name=mage_test.length
|
||||
numerical_equals=0
|
||||
[/variable]
|
||||
[then]
|
||||
[message]
|
||||
speaker=narrator
|
||||
message= _ "Without magic users from Master Perrin's academy in your party, you can no longer recruit new ones."
|
||||
image=wesnoth-icon.png
|
||||
[/message]
|
||||
[disallow_recruit]
|
||||
type=Mage
|
||||
[/disallow_recruit]
|
||||
{VARIABLE mage_disallow true}
|
||||
[/then]
|
||||
[/if]
|
||||
{CLEAR_VARIABLE mage_test}
|
||||
#enddef
|
||||
|
||||
#
|
||||
# Following macros implement the Staff of Righteous Flame
|
||||
#
|
||||
#
|
||||
# Following macros implement the Staff of Righteous Flame
|
||||
#
|
||||
|
||||
#define OBJ_STAFF_OF_RIGHTEOUS_FLAME X Y
|
||||
{PLACE_IMAGE "scenery/temple1.png" {X} {Y}}
|
||||
|
@ -100,7 +100,7 @@
|
|||
#enddef
|
||||
|
||||
#define SET_RIGHTEOUS_FLAME_EVENT
|
||||
# Set up a final-strike ability contingent on having the Staff of
|
||||
# Set up a final-strike ability contingent on having the Staff of
|
||||
# Righteous Flame -- gives a gaudy kill on all neighboring enemies.
|
||||
[event]
|
||||
name=die
|
||||
|
@ -109,8 +109,8 @@
|
|||
[filter]
|
||||
type={MAGES}
|
||||
[wml_filter]
|
||||
[variables]
|
||||
has_borf=yes
|
||||
[variables]
|
||||
has_borf=yes
|
||||
[/variables]
|
||||
[/wml_filter]
|
||||
[/filter]
|
||||
|
@ -202,22 +202,22 @@
|
|||
[/store_unit]
|
||||
|
||||
{FOREACH finalstriketargets i}
|
||||
[kill]
|
||||
x,y=$finalstriketargets[$i].x,$finalstriketargets[$i].y
|
||||
animate=yes
|
||||
fire_event=yes
|
||||
[/kill]
|
||||
[kill]
|
||||
x,y=$finalstriketargets[$i].x,$finalstriketargets[$i].y
|
||||
animate=yes
|
||||
fire_event=yes
|
||||
[/kill]
|
||||
{NEXT i}
|
||||
|
||||
{CLEAR_VARIABLE finalstriketargets}
|
||||
[redraw] # Needed in case fog is active;
|
||||
[redraw] # Needed in case fog is active;
|
||||
[/redraw] # the deaths might change some hex visibilities.
|
||||
[/event]
|
||||
#enddef
|
||||
|
||||
#
|
||||
# Following macros are about generating defenders on village captures
|
||||
#
|
||||
#
|
||||
# Following macros are about generating defenders on village captures
|
||||
#
|
||||
|
||||
#define INDIGENE_SIDE SIDE
|
||||
[side]
|
||||
|
@ -236,101 +236,100 @@
|
|||
name=capture
|
||||
first_time_only=no
|
||||
|
||||
{RANDOM 0..10}
|
||||
[if]
|
||||
[variable]
|
||||
name=random
|
||||
less_than=$trapdiff
|
||||
[/variable]
|
||||
[then]
|
||||
[set_variable]
|
||||
name=numban
|
||||
{RANDOM 0..10}
|
||||
[if]
|
||||
[variable]
|
||||
name=random
|
||||
less_than=$trapdiff
|
||||
[/variable]
|
||||
[then]
|
||||
[set_variable]
|
||||
name=numban
|
||||
#ifdef EASY
|
||||
random=2..5
|
||||
random=2..5
|
||||
#endif
|
||||
#ifdef NORMAL
|
||||
random=1..4
|
||||
random=1..4
|
||||
#endif
|
||||
#ifdef HARD
|
||||
random=0..3
|
||||
random=0..3
|
||||
#endif
|
||||
[/set_variable]
|
||||
[set_variable]
|
||||
name=numban
|
||||
add=$trapdiff
|
||||
[/set_variable]
|
||||
[while]
|
||||
[variable]
|
||||
name=numban
|
||||
greater_than=0
|
||||
[/variable]
|
||||
[do]
|
||||
{RANDOM {UNITLIST}}
|
||||
[unit]
|
||||
type=$random
|
||||
side={SIDE}
|
||||
x=$x1
|
||||
y=$y1
|
||||
generate_description=yes
|
||||
random_traits=yes
|
||||
[/unit]
|
||||
[set_variable]
|
||||
name=numban
|
||||
add=-2
|
||||
[/set_variable]
|
||||
[/do]
|
||||
[/while]
|
||||
{CLEAR_VARIABLE numban}
|
||||
[message]
|
||||
speaker=unit
|
||||
message= _ "The villagers are attacking us!"
|
||||
[/message]
|
||||
[/set_variable]
|
||||
[set_variable]
|
||||
name=numban
|
||||
add=$trapdiff
|
||||
[/set_variable]
|
||||
[while]
|
||||
[variable]
|
||||
name=numban
|
||||
greater_than=0
|
||||
[/variable]
|
||||
[do]
|
||||
{RANDOM {UNITLIST}}
|
||||
[unit]
|
||||
type=$random
|
||||
side={SIDE}
|
||||
x=$x1
|
||||
y=$y1
|
||||
generate_description=yes
|
||||
random_traits=yes
|
||||
[/unit]
|
||||
[set_variable]
|
||||
name=numban
|
||||
add=-2
|
||||
[/set_variable]
|
||||
[/do]
|
||||
[/while]
|
||||
{CLEAR_VARIABLE numban}
|
||||
[message]
|
||||
speaker=unit
|
||||
message= _ "The villagers are attacking us!"
|
||||
[/message]
|
||||
[set_variable]
|
||||
name=indigs_sighted
|
||||
add=1
|
||||
[/set_variable]
|
||||
[/then]
|
||||
[else]
|
||||
[/then]
|
||||
[else]
|
||||
[if]
|
||||
[variable]
|
||||
name=indigs_sighted
|
||||
greater_than=0
|
||||
[/variable]
|
||||
[variable]
|
||||
name=indigs_sighted
|
||||
greater_than=0
|
||||
[/variable]
|
||||
[then]
|
||||
[message]
|
||||
speaker=unit
|
||||
message= _ "No defenders in this village."
|
||||
[/message]
|
||||
[message]
|
||||
speaker=unit
|
||||
message= _ "No defenders in this village."
|
||||
[/message]
|
||||
[/then]
|
||||
[/if]
|
||||
[/else]
|
||||
[/if]
|
||||
[set_variable]
|
||||
name=trapdiff
|
||||
add=1
|
||||
[/set_variable]
|
||||
[/else]
|
||||
[/if]
|
||||
[set_variable]
|
||||
name=trapdiff
|
||||
add=1
|
||||
[/set_variable]
|
||||
[/event]
|
||||
#enddef
|
||||
|
||||
#define RECALL_VETERAN TYPE X Y
|
||||
[role]
|
||||
type={TYPE}
|
||||
[not]
|
||||
description=Aiglondur
|
||||
[/not]
|
||||
[not]
|
||||
description=Dulcatulos
|
||||
[/not]
|
||||
role=veteran
|
||||
[/role]
|
||||
[role]
|
||||
type={TYPE}
|
||||
[not]
|
||||
description=Aiglondur
|
||||
[/not]
|
||||
[not]
|
||||
description=Dulcatulos
|
||||
[/not]
|
||||
role=veteran
|
||||
[/role]
|
||||
|
||||
[recall]
|
||||
role=veteran
|
||||
x,y={X},{Y}
|
||||
[/recall]
|
||||
[recall]
|
||||
role=veteran
|
||||
x,y={X},{Y}
|
||||
[/recall]
|
||||
#enddef
|
||||
|
||||
|
||||
#define GIANT_SPIDER X Y
|
||||
[unit]
|
||||
type=Giant Spider
|
||||
|
@ -338,7 +337,7 @@
|
|||
y={Y}
|
||||
side=2
|
||||
ai_special=guardian
|
||||
description=Giant Spider
|
||||
description=Giant Spider
|
||||
[/unit]
|
||||
#enddef
|
||||
|
||||
|
@ -351,11 +350,10 @@
|
|||
ai_special=guardian
|
||||
random_traits=yes
|
||||
generate_description=yes
|
||||
user_description= _ "Masked Dwarf"
|
||||
user_description= _ "Masked Dwarf"
|
||||
[/unit]
|
||||
#enddef
|
||||
|
||||
|
||||
#define MASKED_SNIPER X Y
|
||||
[unit]
|
||||
type=Dwarvish Thunderguard
|
||||
|
@ -365,11 +363,10 @@
|
|||
ai_special=guardian
|
||||
random_traits=yes
|
||||
generate_description=yes
|
||||
user_description= _ "Masked Dwarf"
|
||||
user_description= _ "Masked Dwarf"
|
||||
[/unit]
|
||||
#enddef
|
||||
|
||||
|
||||
#define MASKED_STALWART X Y
|
||||
[unit]
|
||||
type=Dwarvish Stalwart
|
||||
|
@ -379,7 +376,7 @@
|
|||
ai_special=guardian
|
||||
random_traits=yes
|
||||
generate_description=yes
|
||||
user_description= _ "Masked Dwarf"
|
||||
user_description= _ "Masked Dwarf"
|
||||
[/unit]
|
||||
#enddef
|
||||
|
||||
|
@ -393,36 +390,36 @@
|
|||
[/unit]
|
||||
#enddef
|
||||
|
||||
#define JAIL_SAGA ORATOR
|
||||
#define JAIL_SAGA ORATOR
|
||||
|
||||
[set_variable]
|
||||
name=saga_told
|
||||
value=1
|
||||
[/set_variable]
|
||||
|
||||
[message]
|
||||
description={ORATOR}
|
||||
message= _ "Finally! I see someone managed to see through the web of deception thrown up by that vile Karrag!"
|
||||
[/message]
|
||||
[set_variable]
|
||||
name=saga_told
|
||||
value=1
|
||||
[/set_variable]
|
||||
|
||||
[message]
|
||||
description=Aiglondur
|
||||
message= _ "I thought Karrag's fight was against the so called 'dirtgrubbers'. Why would he keep you, a dwarf captive?"
|
||||
[/message]
|
||||
[message]
|
||||
description={ORATOR}
|
||||
message= _ "Finally! I see someone managed to see through the web of deception thrown up by that vile Karrag!"
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
description={ORATOR}
|
||||
message= _ "I guess Karrag thought I knew too much. When his masked henchmen started raiding, plundering and taking all sorts of prisoners - which were sent to these underlevels and never seen again - I began to inquire. I discovered many unsettling things indeed, but before I could capitalize on them I was arrested and thrown down here."
|
||||
[/message]
|
||||
[message]
|
||||
description=Aiglondur
|
||||
message= _ "I thought Karrag's fight was against the so called 'dirtgrubbers'. Why would he keep you, a dwarf captive?"
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
description={ORATOR}
|
||||
message= _ "I gather that he is involved in some sick ritual which requires the blood of living creatures. These cells seem to be the holding place where he keeps his victims. The 'dirtgrubbers' he seems to prefer sacrificing have long since been taken away. Now it is just us few dwarves that remain..."
|
||||
[/message]
|
||||
[message]
|
||||
description={ORATOR}
|
||||
message= _ "I guess Karrag thought I knew too much. When his masked henchmen started raiding, plundering and taking all sorts of prisoners - which were sent to these underlevels and never seen again - I began to inquire. I discovered many unsettling things indeed, but before I could capitalize on them I was arrested and thrown down here."
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
description= _ "Angarthing"
|
||||
message= _ "Freeing these prisoners is more of a blow to Karrag then we thought, for now he is unable to continue in his dirty sorcery."
|
||||
[/message]
|
||||
[message]
|
||||
description={ORATOR}
|
||||
message= _ "I gather that he is involved in some sick ritual which requires the blood of living creatures. These cells seem to be the holding place where he keeps his victims. The 'dirtgrubbers' he seems to prefer sacrificing have long since been taken away. Now it is just us few dwarves that remain..."
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
description= _ "Angarthing"
|
||||
message= _ "Freeing these prisoners is more of a blow to Karrag then we thought, for now he is unable to continue in his dirty sorcery."
|
||||
[/message]
|
||||
|
||||
#enddef
|
||||
|
|
|
@ -120,10 +120,9 @@
|
|||
[event]
|
||||
name=prestart
|
||||
|
||||
|
||||
# These names look unimaginative because "Lady Jessica" is
|
||||
# the only character in BfW with a personal name that is a
|
||||
# normal English name. I'm making the Wesfolk follow suit.
|
||||
# These names look unimaginative because "Lady Jessica" is
|
||||
# the only character in BfW with a personal name that is a
|
||||
# normal English name. I'm making the Wesfolk follow suit.
|
||||
#ifdef EASY
|
||||
{GUARD_UNIT (Poacher) (Thomas) ( _ "Thomas") 2 11 20}
|
||||
#else
|
||||
|
@ -295,7 +294,7 @@
|
|||
[allow_recruit]
|
||||
side=1
|
||||
type=Thief,Thug,Poacher,Footpad
|
||||
[/allow_recruit]
|
||||
[/allow_recruit]
|
||||
[message]
|
||||
description=Prince Haldric
|
||||
message= _ "So what shall I call you?"
|
||||
|
@ -314,7 +313,7 @@
|
|||
|
||||
{VARIABLE wesfolk_leader_store.description (Lady Outlaw)}
|
||||
{VARIABLE wesfolk_leader_store.user_description ( _ "Lady Outlaw")}
|
||||
{VARIABLE wesfolk_leader_store.canrecruit 0}
|
||||
{VARIABLE wesfolk_leader_store.canrecruit 0}
|
||||
{VARIABLE wesfolk_leader_store.side 1}
|
||||
|
||||
[unstore_unit]
|
||||
|
@ -469,6 +468,5 @@
|
|||
[/kill]
|
||||
|
||||
{CLEAR_VARIABLE wesfolk_leader_store}
|
||||
|
||||
[/event]
|
||||
[/scenario]
|
||||
|
|
|
@ -72,7 +72,7 @@
|
|||
recruit=Dark Adept, Necrophage, Ghost, Skeleton, Skeleton Archer, Blood Bat, Soulless, Giant Mudcrawler
|
||||
#endif
|
||||
#ifdef HARD
|
||||
recruit=Dark Adept, Necrophage, Wraith, Shadow, Revenant, Deathblade, Bone Shooter, Blood Bat, Soulless
|
||||
recruit=Dark Adept, Necrophage, Wraith, Shadow, Revenant, Deathblade, Bone Shooter, Blood Bat, Soulless
|
||||
#endif
|
||||
team_name=cult
|
||||
[/side]
|
||||
|
@ -99,7 +99,7 @@
|
|||
recruit=Dark Adept, Necrophage, Ghost, Skeleton, Skeleton Archer, Blood Bat, Soulless, Giant Mudcrawler
|
||||
#endif
|
||||
#ifdef HARD
|
||||
recruit=Dark Adept, Necrophage, Wraith, Shadow, Revenant, Deathblade, Bone Shooter, Blood Bat, Soulless
|
||||
recruit=Dark Adept, Necrophage, Wraith, Shadow, Revenant, Deathblade, Bone Shooter, Blood Bat, Soulless
|
||||
#endif
|
||||
team_name=cult
|
||||
[/side]
|
||||
|
|
|
@ -164,7 +164,7 @@
|
|||
[/move_unit_fake]
|
||||
[/else]
|
||||
[/if]
|
||||
[/else]
|
||||
[/else]
|
||||
[/if]
|
||||
|
||||
{VARIABLE lady_store.x 6}
|
||||
|
@ -288,12 +288,9 @@
|
|||
equals=Wesfolk Outcast
|
||||
[/variable]
|
||||
[then]
|
||||
|
||||
{VARIABLE lady_store.experience 0}
|
||||
{VARIABLE lady_store.type (Outlaw Princess)}
|
||||
|
||||
[/then]
|
||||
|
||||
[/if]
|
||||
|
||||
[if]
|
||||
|
@ -302,11 +299,8 @@
|
|||
equals=Wesfolk Lady
|
||||
[/variable]
|
||||
[then]
|
||||
|
||||
{VARIABLE lady_store.type (Outlaw Princess)}
|
||||
|
||||
[/then]
|
||||
|
||||
[/if]
|
||||
|
||||
[if]
|
||||
|
@ -315,16 +309,13 @@
|
|||
equals=Wesfolk Leader
|
||||
[/variable]
|
||||
[then]
|
||||
|
||||
{VARIABLE lady_store.type (Outlaw Queen)}
|
||||
|
||||
[/then]
|
||||
|
||||
[/if]
|
||||
|
||||
{VARIABLE lady_store.description (Lady Jessica)}
|
||||
{VARIABLE lady_store.user_description (_ "Lady Jessica")}
|
||||
|
||||
|
||||
[unstore_unit]
|
||||
variable=lady_store
|
||||
[/unstore_unit]
|
||||
|
|
|
@ -278,7 +278,7 @@
|
|||
[/message]
|
||||
|
||||
[message]
|
||||
description=Prince Haldric
|
||||
description=Prince Haldric
|
||||
message= _ "That's horrible!"
|
||||
[/message]
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
{campaigns/The_Rise_Of_Wesnoth/utils/trow-deaths.cfg}
|
||||
|
||||
{FALLEN_LICH_POINT_BIGMAP}
|
||||
|
||||
|
||||
[side]
|
||||
type=Noble Commander
|
||||
description=Prince Haldric
|
||||
|
@ -98,7 +98,7 @@
|
|||
|
||||
{STARTING_VILLAGES 3 6}
|
||||
|
||||
#define TURNED_TO_STONE
|
||||
#define TURNED_TO_STONE
|
||||
[status]
|
||||
stone=on
|
||||
[/status]
|
||||
|
|
|
@ -222,148 +222,148 @@
|
|||
[/message]
|
||||
[/event]
|
||||
|
||||
#define SAVED_BY_DIONLI
|
||||
[move_unit_fake]
|
||||
type=Elvish Shyde
|
||||
side=2
|
||||
x=31,30,29,28,28
|
||||
y=8.8.9.8,7
|
||||
[/move_unit_fake]
|
||||
#define SAVED_BY_DIONLI
|
||||
[move_unit_fake]
|
||||
type=Elvish Shyde
|
||||
side=2
|
||||
x=31,30,29,28,28
|
||||
y=8.8.9.8,7
|
||||
[/move_unit_fake]
|
||||
|
||||
{HERO (Elvish Shyde) (Lord Dionli) ( _ "Lord Dionli") 2 28 7 ("portraits/dionli.png")}
|
||||
{HERO (Elvish Shyde) (Lord Dionli) ( _ "Lord Dionli") 2 28 7 ("portraits/dionli.png")}
|
||||
|
||||
[message]
|
||||
description=Lord Dionli
|
||||
message= _ "What? What's going on here? Dwarves? Humans? Ships? Glimir, tell me."
|
||||
[/message]
|
||||
[message]
|
||||
description=Glimir
|
||||
message= _ "The stories are true. There must be dwarven colonists in the Brown Hills. We caught this band chopping wood near the bay. Then we saw lots of ships. Not like before, with that fellow from Southbay and his lone ship. It was always interesting when he stopped by."
|
||||
[/message]
|
||||
[message]
|
||||
description=Glimir
|
||||
message= _ "We thought we were being invaded. We, erm, put our differences aside with the dwarves, for the moment, and decided to deal with this first."
|
||||
[/message]
|
||||
[message]
|
||||
description=Lord Dionli
|
||||
message= _ "These are disturbing trends. Human, it is by luck alone that I am here to spare you. For on this day the Council of Lords is meeting in a forest not far from here."
|
||||
[/message]
|
||||
[message]
|
||||
description=Prince Haldric
|
||||
message= _ "I am Prince Haldric. We come in peace. May our peoples-"
|
||||
[/message]
|
||||
[message]
|
||||
description=Lady Jessica
|
||||
message= _ "Haldric."
|
||||
[/message]
|
||||
[message]
|
||||
description=Lord Dionli
|
||||
message= _ "As for you, dwarf, return to the Brown Hills. Then tell your people to prepare to return to the north."
|
||||
[/message]
|
||||
[message]
|
||||
description=Dursil
|
||||
message= _ "I'll return to the hills, but I can't promise that my people will go. Hmph!"
|
||||
[/message]
|
||||
[message]
|
||||
description=Lord Dionli
|
||||
message= _ "Haldric, is it? You are their leader? You and your advisers are to come with me. It will be safe for your passengers to disembark here."
|
||||
[/message]
|
||||
[message]
|
||||
description=Lord Dionli
|
||||
message= _ "What? What's going on here? Dwarves? Humans? Ships? Glimir, tell me."
|
||||
[/message]
|
||||
[message]
|
||||
description=Glimir
|
||||
message= _ "The stories are true. There must be dwarven colonists in the Brown Hills. We caught this band chopping wood near the bay. Then we saw lots of ships. Not like before, with that fellow from Southbay and his lone ship. It was always interesting when he stopped by."
|
||||
[/message]
|
||||
[message]
|
||||
description=Glimir
|
||||
message= _ "We thought we were being invaded. We, erm, put our differences aside with the dwarves, for the moment, and decided to deal with this first."
|
||||
[/message]
|
||||
[message]
|
||||
description=Lord Dionli
|
||||
message= _ "These are disturbing trends. Human, it is by luck alone that I am here to spare you. For on this day the Council of Lords is meeting in a forest not far from here."
|
||||
[/message]
|
||||
[message]
|
||||
description=Prince Haldric
|
||||
message= _ "I am Prince Haldric. We come in peace. May our peoples-"
|
||||
[/message]
|
||||
[message]
|
||||
description=Lady Jessica
|
||||
message= _ "Haldric."
|
||||
[/message]
|
||||
[message]
|
||||
description=Lord Dionli
|
||||
message= _ "As for you, dwarf, return to the Brown Hills. Then tell your people to prepare to return to the north."
|
||||
[/message]
|
||||
[message]
|
||||
description=Dursil
|
||||
message= _ "I'll return to the hills, but I can't promise that my people will go. Hmph!"
|
||||
[/message]
|
||||
[message]
|
||||
description=Lord Dionli
|
||||
message= _ "Haldric, is it? You are their leader? You and your advisers are to come with me. It will be safe for your passengers to disembark here."
|
||||
[/message]
|
||||
|
||||
[move_unit_fake]
|
||||
type=Blood Bat
|
||||
side=4
|
||||
x=1,2,3
|
||||
y=15,15,15
|
||||
[/move_unit_fake]
|
||||
[move_unit_fake]
|
||||
type=Blood Bat
|
||||
side=4
|
||||
x=1,2,3
|
||||
y=15,15,15
|
||||
[/move_unit_fake]
|
||||
|
||||
{UNDEAD_INTEL (Blood Bat) (Familiar) ( _ "Familiar") "portraits/familiar.png" 4 3 15}
|
||||
{UNDEAD_INTEL (Blood Bat) (Familiar) ( _ "Familiar") "portraits/familiar.png" 4 3 15}
|
||||
|
||||
[kill]
|
||||
description=Familiar
|
||||
[/kill]
|
||||
[kill]
|
||||
description=Familiar
|
||||
[/kill]
|
||||
|
||||
[move_unit_fake]
|
||||
type=Blood Bat
|
||||
side=4
|
||||
x=3,3,2,1
|
||||
y=15,14,13,13
|
||||
[/move_unit_fake]
|
||||
[move_unit_fake]
|
||||
type=Blood Bat
|
||||
side=4
|
||||
x=3,3,2,1
|
||||
y=15,14,13,13
|
||||
[/move_unit_fake]
|
||||
|
||||
[message]
|
||||
description=Lady Jessica
|
||||
message= _ "(whispered) Maybe it'd be best if you didn't mention our little friend following us..."
|
||||
[/message]
|
||||
[message]
|
||||
description=Lady Jessica
|
||||
message= _ "(whispered) Maybe it'd be best if you didn't mention our little friend following us..."
|
||||
[/message]
|
||||
|
||||
#ifdef EASY
|
||||
[message]
|
||||
description=Lord Typhon
|
||||
message= _ "I must return to my people. You have kept your word, you may avail of my services in the future. The services of my people will remain at your disposal."
|
||||
[/message]
|
||||
[message]
|
||||
description=Lord Typhon
|
||||
message= _ "I must return to my people. You have kept your word, you may avail of my services in the future. The services of my people will remain at your disposal."
|
||||
[/message]
|
||||
#else
|
||||
[disallow_recruit]
|
||||
side=1
|
||||
type=Merman Fighter
|
||||
[/disallow_recruit]
|
||||
[disallow_recruit]
|
||||
side=1
|
||||
type=Merman Fighter
|
||||
[/disallow_recruit]
|
||||
|
||||
[message]
|
||||
description=Lord Typhon
|
||||
message= _ "I must return to my people. My warriors that fought by your side wish to remain with you. You have kept your word, and you may avail of my services in the future."
|
||||
[/message]
|
||||
[message]
|
||||
description=Lord Typhon
|
||||
message= _ "I must return to my people. My warriors that fought by your side wish to remain with you. You have kept your word, and you may avail of my services in the future."
|
||||
[/message]
|
||||
#endif
|
||||
|
||||
[kill]
|
||||
description=Lord Typhon
|
||||
[/kill]
|
||||
[kill]
|
||||
description=Lord Typhon
|
||||
[/kill]
|
||||
|
||||
[message]
|
||||
description=Prince Haldric
|
||||
message= _ "May the currents carry you swiftly, my friend. (whispered) Jessica, send word that a third of the fleet is to return to the Green Isle, to look for more survivors. If they return tell them to keep returning until no more survivors are found."
|
||||
[/message]
|
||||
[message]
|
||||
description=Prince Haldric
|
||||
message= _ "(whispered) Man the ships with skeleton crews, and give them the remaining supplies. Pass the word to Lord Typhon. Make sure than no more than a third of the fleet is sent. We must not provide the orcs with a ready-made fleet. Make haste, return before it is time to meet with these, what are they? Ahh, elves."
|
||||
[/message]
|
||||
[message]
|
||||
description=Prince Haldric
|
||||
message= _ "This is the second Eldaric I get to say goodbye to. At least this time it is easier than the first."
|
||||
[/message]
|
||||
[message]
|
||||
description=Prince Haldric
|
||||
message= _ "May the currents carry you swiftly, my friend. (whispered) Jessica, send word that a third of the fleet is to return to the Green Isle, to look for more survivors. If they return tell them to keep returning until no more survivors are found."
|
||||
[/message]
|
||||
[message]
|
||||
description=Prince Haldric
|
||||
message= _ "(whispered) Man the ships with skeleton crews, and give them the remaining supplies. Pass the word to Lord Typhon. Make sure than no more than a third of the fleet is sent. We must not provide the orcs with a ready-made fleet. Make haste, return before it is time to meet with these, what are they? Ahh, elves."
|
||||
[/message]
|
||||
[message]
|
||||
description=Prince Haldric
|
||||
message= _ "This is the second Eldaric I get to say goodbye to. At least this time it is easier than the first."
|
||||
[/message]
|
||||
|
||||
[set_variable]
|
||||
name=num_done
|
||||
value=0
|
||||
[/set_variable]
|
||||
[set_variable]
|
||||
name=num_done
|
||||
value=0
|
||||
[/set_variable]
|
||||
|
||||
[set_variable]
|
||||
name=a_beach
|
||||
value=0
|
||||
[/set_variable]
|
||||
[set_variable]
|
||||
name=a_beach
|
||||
value=0
|
||||
[/set_variable]
|
||||
|
||||
[set_variable]
|
||||
name=cursed_isle
|
||||
value=0
|
||||
[/set_variable]
|
||||
[set_variable]
|
||||
name=cursed_isle
|
||||
value=0
|
||||
[/set_variable]
|
||||
|
||||
[set_variable]
|
||||
name=the_dragon
|
||||
value=0
|
||||
[/set_variable]
|
||||
[set_variable]
|
||||
name=the_dragon
|
||||
value=0
|
||||
[/set_variable]
|
||||
|
||||
[set_variable]
|
||||
name=troll_hole
|
||||
value=0
|
||||
[/set_variable]
|
||||
[set_variable]
|
||||
name=troll_hole
|
||||
value=0
|
||||
[/set_variable]
|
||||
|
||||
[set_variable]
|
||||
name=last_done
|
||||
value="none"
|
||||
[/set_variable]
|
||||
[set_variable]
|
||||
name=last_done
|
||||
value="none"
|
||||
[/set_variable]
|
||||
|
||||
[endlevel]
|
||||
#Bet I scared a few people there
|
||||
result=continue
|
||||
next_scenario=Elf_Lords
|
||||
[/endlevel]
|
||||
#enddef
|
||||
[endlevel]
|
||||
#Bet I scared a few people there
|
||||
result=continue
|
||||
next_scenario=Elf_Lords
|
||||
[/endlevel]
|
||||
#enddef
|
||||
|
||||
[event]
|
||||
name=attack
|
||||
|
|
|
@ -148,7 +148,6 @@
|
|||
[event]
|
||||
name=prestart
|
||||
|
||||
|
||||
{PLACE_IMAGE (scenery/fire1.png) 4 24}
|
||||
{PLACE_IMAGE (scenery/fire2.png) 8 25}
|
||||
{PLACE_IMAGE (scenery/fire3.png) 26 9}
|
||||
|
|
|
@ -21,7 +21,7 @@
|
|||
usage=mixed fighter
|
||||
unit_description= _ "Born in the Wesfolk aristocracy, she and her people were excluded from society by their lords, who betrayed their loyalty when a war against Haldric's people was being lost. This outcast still conserves her nobleness in her veins and in the battlefield she has earned valuable experience, which continues increasing with time, as does her natural leadership."+{SPECIAL_NOTES}+{SPECIAL_NOTES_DISTRACT}+{SPECIAL_NOTES_LEADERSHIP}
|
||||
die_sound={SOUND_LIST:HUMAN_FEMALE_DIE}
|
||||
{DEFENSE_ANIM "units/human-outlaws/outlaw+female-defend.png" "units/human-outlaws/outlaw+female.png" {SOUND_LIST:HUMAN_FEMALE_HIT} }
|
||||
{DEFENSE_ANIM "units/human-outlaws/outlaw+female-defend.png" "units/human-outlaws/outlaw+female.png" {SOUND_LIST:HUMAN_FEMALE_HIT} }
|
||||
[attack]
|
||||
name=staff
|
||||
description=_"staff"
|
||||
|
|
|
@ -121,38 +121,38 @@
|
|||
[idle_anim]
|
||||
{STANDARD_IDLE_FILTER}
|
||||
start_time=0
|
||||
[frame]
|
||||
image="units/human-outlaws/footpad+female-idle-1.png"
|
||||
[/frame]
|
||||
[frame]
|
||||
image="units/human-outlaws/footpad+female-idle-2.png"
|
||||
[/frame]
|
||||
[frame]
|
||||
image="units/human-outlaws/footpad+female-idle-3.png"
|
||||
[/frame]
|
||||
[frame]
|
||||
image="units/human-outlaws/footpad+female-idle-4.png"
|
||||
[/frame]
|
||||
[frame]
|
||||
image="units/human-outlaws/footpad+female-idle-3.png"
|
||||
[/frame]
|
||||
[frame]
|
||||
image="units/human-outlaws/footpad+female-idle-2.png"
|
||||
[/frame]
|
||||
[frame]
|
||||
image="units/human-outlaws/footpad+female-idle-3.png"
|
||||
[/frame]
|
||||
[frame]
|
||||
image="units/human-outlaws/footpad+female-idle-4.png"
|
||||
[/frame]
|
||||
[frame]
|
||||
image="units/human-outlaws/footpad+female-idle-3.png"
|
||||
[/frame]
|
||||
[frame]
|
||||
image="units/human-outlaws/footpad+female-idle-2.png"
|
||||
[/frame]
|
||||
[frame]
|
||||
image="units/human-outlaws/footpad+female-idle-1.png"
|
||||
[/frame]
|
||||
[frame]
|
||||
image="units/human-outlaws/footpad+female-idle-1.png"
|
||||
[/frame]
|
||||
[frame]
|
||||
image="units/human-outlaws/footpad+female-idle-2.png"
|
||||
[/frame]
|
||||
[frame]
|
||||
image="units/human-outlaws/footpad+female-idle-3.png"
|
||||
[/frame]
|
||||
[frame]
|
||||
image="units/human-outlaws/footpad+female-idle-4.png"
|
||||
[/frame]
|
||||
[frame]
|
||||
image="units/human-outlaws/footpad+female-idle-3.png"
|
||||
[/frame]
|
||||
[frame]
|
||||
image="units/human-outlaws/footpad+female-idle-2.png"
|
||||
[/frame]
|
||||
[frame]
|
||||
image="units/human-outlaws/footpad+female-idle-3.png"
|
||||
[/frame]
|
||||
[frame]
|
||||
image="units/human-outlaws/footpad+female-idle-4.png"
|
||||
[/frame]
|
||||
[frame]
|
||||
image="units/human-outlaws/footpad+female-idle-3.png"
|
||||
[/frame]
|
||||
[frame]
|
||||
image="units/human-outlaws/footpad+female-idle-2.png"
|
||||
[/frame]
|
||||
[frame]
|
||||
image="units/human-outlaws/footpad+female-idle-1.png"
|
||||
[/frame]
|
||||
[/idle_anim]
|
||||
[/unit]
|
||||
|
|
|
@ -23,4 +23,4 @@ This unit negates enemy Zones of Control around itself for friendly units (but n
|
|||
#enddef
|
||||
|
||||
#define SPECIAL_NOTES_DISTRACT
|
||||
_"This unit is capable of distracting opponents, allowing friendly units to trespass their Zones of Control and move unhindered around them."#enddef
|
||||
_"This unit is capable of distracting opponents, allowing friendly units to trespass their Zones of Control and move unhindered around them."#enddef
|
||||
|
|
|
@ -940,4 +940,3 @@
|
|||
[/if]
|
||||
[/story]
|
||||
#enddef
|
||||
|
||||
|
|
|
@ -210,5 +210,3 @@
|
|||
file=story/tgi-stormvale.png
|
||||
[/image]
|
||||
#enddef
|
||||
|
||||
|
||||
|
|
|
@ -255,7 +255,7 @@
|
|||
message= _ "I hope that's the last of the bandits! How many more of these foul undead must we fight?"
|
||||
[/message]
|
||||
|
||||
# Deoran arrives at the elvish citadel
|
||||
# Deoran arrives at the elvish citadel
|
||||
|
||||
[message]
|
||||
speaker=Deoran
|
||||
|
|
|
@ -468,10 +468,10 @@
|
|||
[/store_villages]
|
||||
|
||||
{FOREACH side_2_villages i}
|
||||
[capture_village]
|
||||
side=1
|
||||
x,y=$side_2_villages[$i].x,$side_2_villages[$i].y
|
||||
[/capture_village]
|
||||
[capture_village]
|
||||
side=1
|
||||
x,y=$side_2_villages[$i].x,$side_2_villages[$i].y
|
||||
[/capture_village]
|
||||
{NEXT i}
|
||||
|
||||
{CLEAR_VARIABLE side_2_villages}
|
||||
|
|
|
@ -98,7 +98,6 @@
|
|||
[event]
|
||||
name=prestart
|
||||
|
||||
|
||||
# Store away Deoran, his human troops, Ethiliel and her bodyguards, so
|
||||
# that only Gerrick and the rest of the elves remain.
|
||||
|
||||
|
@ -154,7 +153,6 @@
|
|||
variable=stored_Deoran_army
|
||||
[/store_unit]
|
||||
|
||||
|
||||
# Store Deoran's gold so it can be restored in Into the Depths and set
|
||||
# Gerrick's gold to 100.
|
||||
|
||||
|
@ -168,7 +166,6 @@
|
|||
gold=100
|
||||
[/modify_side]
|
||||
|
||||
|
||||
# Recall Gerrick and set him as the leader.
|
||||
|
||||
[recall]
|
||||
|
@ -457,7 +454,6 @@
|
|||
image=wesnoth-icon.png
|
||||
[/message]
|
||||
|
||||
|
||||
# The next scenario is again led by Deoran, so store away Gerrick and
|
||||
# his troops, except those remaining on the recall list.
|
||||
|
||||
|
@ -481,7 +477,6 @@
|
|||
kill=yes
|
||||
[/store_unit]
|
||||
|
||||
|
||||
# Reinstate Deoran as the leader and unstore Hylas, Ethiliel and
|
||||
# troops so they're all again recallable in the next scenario.
|
||||
|
||||
|
@ -501,9 +496,9 @@
|
|||
[/unstore_unit]
|
||||
|
||||
{FOREACH stored_Deoran_army i}
|
||||
[unstore_unit]
|
||||
variable=stored_Deoran_army[$i]
|
||||
[/unstore_unit]
|
||||
[unstore_unit]
|
||||
variable=stored_Deoran_army[$i]
|
||||
[/unstore_unit]
|
||||
{NEXT i}
|
||||
|
||||
[endlevel]
|
||||
|
|
|
@ -85,13 +85,13 @@
|
|||
[/side]
|
||||
|
||||
[side]
|
||||
side=4
|
||||
no_leader=yes
|
||||
team_name=elves
|
||||
gold=100
|
||||
income=0
|
||||
side=4
|
||||
no_leader=yes
|
||||
team_name=elves
|
||||
gold=100
|
||||
income=0
|
||||
[/side]
|
||||
|
||||
|
||||
#prestart
|
||||
[event]
|
||||
name=prestart
|
||||
|
@ -103,11 +103,11 @@
|
|||
#ifdef NORMAL
|
||||
{SG_GUARD (Naga Fighter) (Wizzi) (_"Wizzi") 4 10 14}
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef HARD
|
||||
{SG_GUARD (Naga Warrior) (Wizzi) (_"Wizzi") 4 10 14}
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef EASY
|
||||
{GENERIC_UNIT 3 Ghost 24 25}
|
||||
#else
|
||||
|
@ -144,8 +144,6 @@
|
|||
{GENERIC_UNIT 3 Ghost 29 37}
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
[recall]
|
||||
description=Sir Gerrick
|
||||
[/recall]
|
||||
|
@ -337,12 +335,11 @@
|
|||
#else
|
||||
{GENERIC_UNIT 4 (Elvish Rider) 14 48}
|
||||
#endif
|
||||
|
||||
[message]
|
||||
race=elf
|
||||
message= _ "Get them !"
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
race=elf
|
||||
message= _ "Get them !"
|
||||
[/message]
|
||||
[/event]
|
||||
|
||||
# Urza Afalas moves north - choice two.
|
||||
|
@ -382,7 +379,6 @@
|
|||
#else
|
||||
{GENERIC_UNIT 4 (Elvish Druid) 10 43}
|
||||
#endif
|
||||
|
||||
[/event]
|
||||
|
||||
# Urza Afalas moves north - choice two.
|
||||
|
@ -422,7 +418,6 @@
|
|||
#else
|
||||
{GENERIC_UNIT 4 (Elvish Rider) 4 44}
|
||||
#endif
|
||||
|
||||
[/event]
|
||||
|
||||
[event]
|
||||
|
@ -460,7 +455,6 @@
|
|||
#else
|
||||
{GENERIC_UNIT 4 (Elvish Sorceress) 5 36}
|
||||
#endif
|
||||
|
||||
[/event]
|
||||
|
||||
[event]
|
||||
|
@ -511,7 +505,6 @@
|
|||
#else
|
||||
{GENERIC_UNIT 4 (Elvish Scout) 5 31}
|
||||
#endif
|
||||
|
||||
[/event]
|
||||
|
||||
[event]
|
||||
|
@ -554,31 +547,30 @@
|
|||
#else
|
||||
{GENERIC_UNIT 4 Poacher 5 31}
|
||||
#endif
|
||||
[message]
|
||||
type=Trapper
|
||||
message= _ "The elves payed us well to kill you."
|
||||
[/message]
|
||||
[message]
|
||||
type=Poacher
|
||||
message= _ "The elves payed us well to kill you."
|
||||
[/message]
|
||||
[message]
|
||||
description=Urza Afalas
|
||||
message= _ "You bastards!"
|
||||
[/message]
|
||||
[message]
|
||||
type=Thief
|
||||
message= _ "You would have done the same to us if you were in our place!"
|
||||
[/message]
|
||||
[message]
|
||||
type=Rogue
|
||||
message= _ "You would have done the same to us if you were in our place!"
|
||||
[/message]
|
||||
[message]
|
||||
description=Urza Afalas
|
||||
message= _ "I probably would have..."
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
type=Trapper
|
||||
message= _ "The elves payed us well to kill you."
|
||||
[/message]
|
||||
[message]
|
||||
type=Poacher
|
||||
message= _ "The elves payed us well to kill you."
|
||||
[/message]
|
||||
[message]
|
||||
description=Urza Afalas
|
||||
message= _ "You bastards!"
|
||||
[/message]
|
||||
[message]
|
||||
type=Thief
|
||||
message= _ "You would have done the same to us if you were in our place!"
|
||||
[/message]
|
||||
[message]
|
||||
type=Rogue
|
||||
message= _ "You would have done the same to us if you were in our place!"
|
||||
[/message]
|
||||
[message]
|
||||
description=Urza Afalas
|
||||
message= _ "I probably would have..."
|
||||
[/message]
|
||||
[/event]
|
||||
|
||||
[event]
|
||||
|
|
|
@ -398,7 +398,6 @@
|
|||
[/filter]
|
||||
|
||||
[redraw][/redraw]
|
||||
|
||||
[message]
|
||||
speaker=Grek
|
||||
message= _ "Ha! Humans and elves! What are you doing in our caves, and why shouldn't we grind your bones and gnaw on your flesh?"
|
||||
|
@ -415,18 +414,18 @@
|
|||
[/message]
|
||||
|
||||
#ifdef EASY
|
||||
{VARIABLE troll_help_cost 100}
|
||||
{VARIABLE troll_help_cost 100}
|
||||
#endif
|
||||
#ifdef NORMAL
|
||||
{VARIABLE troll_help_cost 150}
|
||||
{VARIABLE troll_help_cost 150}
|
||||
#endif
|
||||
#ifdef HARD
|
||||
{VARIABLE troll_help_cost 200}
|
||||
{VARIABLE troll_help_cost 200}
|
||||
#endif
|
||||
|
||||
# The help from the trolls can be received either on first sighting of them or
|
||||
# later; so here's what the trolls do to help you wrapped inside a macro so that
|
||||
# the WML doesn't need to be duplicated by hand
|
||||
# The help from the trolls can be received either on first sighting of them or
|
||||
# later; so here's what the trolls do to help you wrapped inside a macro so that
|
||||
# the WML doesn't need to be duplicated by hand
|
||||
|
||||
#define TROLL_HELP
|
||||
[gold]
|
||||
|
@ -449,7 +448,6 @@
|
|||
gold=$stored_side_4.gold
|
||||
[/modify_side]
|
||||
|
||||
|
||||
# Note: the order of storing the villages, flipping the
|
||||
# units and recapturing the villages is important, because a
|
||||
# side with no leader cannot own villages.
|
||||
|
@ -462,10 +460,10 @@
|
|||
{MODIFY_UNIT side=4 side 5}
|
||||
|
||||
{FOREACH side_4_villages i}
|
||||
[capture_village]
|
||||
x,y=$side_4_villages[$i].x,$side_4_villages[$i].y
|
||||
side=5
|
||||
[/capture_village]
|
||||
[capture_village]
|
||||
x,y=$side_4_villages[$i].x,$side_4_villages[$i].y
|
||||
side=5
|
||||
[/capture_village]
|
||||
{NEXT i}
|
||||
|
||||
{CLEAR_VARIABLE stored_side_4}
|
||||
|
@ -718,7 +716,6 @@
|
|||
{SG_CHANGE_TERRAIN 18 24 Ww}
|
||||
|
||||
[redraw][/redraw]
|
||||
|
||||
[message]
|
||||
speaker=unit
|
||||
message= _ "I've broken through!"
|
||||
|
@ -735,7 +732,6 @@
|
|||
[/filter]
|
||||
|
||||
[redraw][/redraw]
|
||||
|
||||
[message]
|
||||
speaker="Ethiliel"
|
||||
message= _ "Mebrin! My teacher of old! Can that truly be you?"
|
||||
|
|
|
@ -141,7 +141,7 @@
|
|||
user_description= _ "Plynry"
|
||||
unrenamable=yes
|
||||
[ai]
|
||||
passive_leader=yes
|
||||
passive_leader=yes
|
||||
[/ai]
|
||||
team_name=South_Guard
|
||||
controller=ai
|
||||
|
@ -241,17 +241,17 @@
|
|||
description=Minister Hylas
|
||||
[/recall]
|
||||
|
||||
[message]
|
||||
[message]
|
||||
side=2
|
||||
canrecruit=0
|
||||
image="portraits/Nicholas_Kerpan/human-poacher.png"
|
||||
message= _ "Tharzo! That meddler who killed the Urza brothers approaches from the south. His men and horses look worn out."
|
||||
[/message]
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
[message]
|
||||
speaker="Tharzo Kalain"
|
||||
message= _ "The dark gods have put revenge in our laps. Destroy them all before they reach the border fort!"
|
||||
[/message]
|
||||
[/message]
|
||||
[/event]
|
||||
|
||||
[event]
|
||||
|
@ -263,32 +263,32 @@
|
|||
description=Deoran
|
||||
[/filter]
|
||||
|
||||
[message]
|
||||
[message]
|
||||
speaker="Plynry"
|
||||
message= _ "Halt! Who comes to the border of Wesnoth?"
|
||||
[/message]
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
[message]
|
||||
speaker="Deoran"
|
||||
message= _ "It is I, Deoran, commander of the South Guard, and my men."
|
||||
[/message]
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
[message]
|
||||
speaker="Plynry"
|
||||
message= _ "Deoran? You had been thought lost long since. But I see by your men's gear and drill that they are of the South Guard indeed. Pass.."
|
||||
[/message]
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
[message]
|
||||
speaker="Deoran"
|
||||
message= _ "We, and our elvish allies, have won a great battle against a lich."
|
||||
[/message]
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
[message]
|
||||
speaker="Plynry"
|
||||
message= _ "Elvish allies? I think you had best make haste to Westin. There are rumors of trouble with the elves of the Aethenwood."
|
||||
[/message]
|
||||
[/message]
|
||||
|
||||
# Unstore Sir Gerrick and his troops back so that everyone will be happily
|
||||
# Unstore Sir Gerrick and his troops back so that everyone will be happily
|
||||
# reunited at the beginning of the next scenario.
|
||||
|
||||
{VARIABLE stored_Sir_Gerrick.x "recall"}
|
||||
|
@ -299,12 +299,12 @@
|
|||
[/unstore_unit]
|
||||
|
||||
{FOREACH stored_Sir_Gerrick_army i}
|
||||
{VARIABLE stored_Sir_Gerrick_army[$i].x "recall"}
|
||||
{VARIABLE stored_Sir_Gerrick_army[$i].y "recall"}
|
||||
{VARIABLE stored_Sir_Gerrick_army[$i].x "recall"}
|
||||
{VARIABLE stored_Sir_Gerrick_army[$i].y "recall"}
|
||||
|
||||
[unstore_unit]
|
||||
variable=stored_Sir_Gerrick_army[$i]
|
||||
[/unstore_unit]
|
||||
[unstore_unit]
|
||||
variable=stored_Sir_Gerrick_army[$i]
|
||||
[/unstore_unit]
|
||||
{NEXT i}
|
||||
|
||||
{CLEAR_VARIABLE stored_Sir_Gerrick_army}
|
||||
|
|
|
@ -313,4 +313,3 @@
|
|||
[/frame]
|
||||
[/attack_anim]
|
||||
[/unit]
|
||||
|
||||
|
|
|
@ -144,4 +144,3 @@
|
|||
[/movement_anim]
|
||||
{DEFENSE_ANIM "deoran/mounted-general-defend.png" "deoran/mounted-general.png" {SOUND_LIST:HORSE_HIT} }
|
||||
[/unit]
|
||||
|
||||
|
|
|
@ -37,7 +37,6 @@
|
|||
append=yes
|
||||
[/music]
|
||||
|
||||
|
||||
{DUSK}
|
||||
{FIRST_WATCH}
|
||||
{SECOND_WATCH}
|
||||
|
|
|
@ -40,7 +40,6 @@
|
|||
append=yes
|
||||
[/music]
|
||||
|
||||
|
||||
{DUSK}
|
||||
{FIRST_WATCH}
|
||||
{SECOND_WATCH}
|
||||
|
|
|
@ -32,18 +32,18 @@
|
|||
[entry]
|
||||
name = "Asa Swain"
|
||||
[/entry]
|
||||
[entry]
|
||||
name= "Piotr Cychowski"
|
||||
[/entry]
|
||||
[entry]
|
||||
name= "Piotr Cychowski"
|
||||
[/entry]
|
||||
[/about]
|
||||
[about]
|
||||
title= _ "Campaign Maintenance"
|
||||
[entry]
|
||||
name = "Jan Rietema (Rhuvaen)"
|
||||
[/entry]
|
||||
[entry]
|
||||
name = "Piotr Cychowski (Mist)"
|
||||
[/entry]
|
||||
[entry]
|
||||
name = "Piotr Cychowski (Mist)"
|
||||
[/entry]
|
||||
[/about]
|
||||
[about]
|
||||
title= _ "Artwork and Graphics Design"
|
||||
|
@ -92,9 +92,9 @@
|
|||
[entry]
|
||||
name = "Ringcaat (Thorin N. Tatge)"
|
||||
[/entry]
|
||||
[entry]
|
||||
name = "Zookeeper"
|
||||
[/entry]
|
||||
[entry]
|
||||
name = "Zookeeper"
|
||||
[/entry]
|
||||
text=_"And special thanks to everyone else who I forgot to mention."
|
||||
[/about]
|
||||
[/campaign]
|
||||
|
|
|
@ -116,8 +116,8 @@
|
|||
shroud=no
|
||||
fog=no
|
||||
team_name=evil
|
||||
{GOLD 100 100 100}
|
||||
{INCOME -2 -2 -2}
|
||||
{GOLD 100 100 100}
|
||||
{INCOME -2 -2 -2}
|
||||
#ifdef EASY
|
||||
recruit=Skeleton, Skeleton Archer, Vampire Bat, Ghoul, Dark Adept
|
||||
#endif
|
||||
|
@ -145,13 +145,12 @@
|
|||
[/ai]
|
||||
[/side]
|
||||
|
||||
|
||||
# macro for setting up the village occupants
|
||||
# macro for setting up the village occupants
|
||||
|
||||
#define VILLAGE_EVENT TYPE NAME
|
||||
{VARIABLE villager[$village_events].type {TYPE}}
|
||||
{VARIABLE villager[$village_events].name {NAME}}
|
||||
{VARIABLE_OP village_events add 1}
|
||||
{VARIABLE villager[$village_events].type {TYPE}}
|
||||
{VARIABLE villager[$village_events].name {NAME}}
|
||||
{VARIABLE_OP village_events add 1}
|
||||
#enddef
|
||||
|
||||
# prestart events:
|
||||
|
@ -202,7 +201,6 @@
|
|||
{VILLAGE_EVENT "Desert Fighter" _"Piyru"}
|
||||
{VILLAGE_EVENT "Desert Hunter" _"Anioh"}
|
||||
{VILLAGE_EVENT "Desert Scout" _"Taliu"}
|
||||
|
||||
[/event]
|
||||
|
||||
# Dialogue at start of scenario
|
||||
|
@ -281,137 +279,135 @@
|
|||
[/message]
|
||||
[/event]
|
||||
|
||||
# Desert Village event
|
||||
# Some of the outer villages have elves hiding in them. If the player
|
||||
# reaches them before the undead do, they can rescue the elves
|
||||
|
||||
# Desert Village event
|
||||
# Some of the outer villages have elves hiding in them. If the player
|
||||
# reaches them before the undead do, they can rescue the elves
|
||||
[event]
|
||||
name=capture
|
||||
first_time_only=no
|
||||
[filter]
|
||||
side=1,3
|
||||
#!-- Fixes bug 10418, reduces potential number of elves found in the desert to max four
|
||||
[not]
|
||||
x=40-60
|
||||
y=1-12
|
||||
[/not]
|
||||
[filter_location]
|
||||
terrain=Dd^Vdt
|
||||
[/filter_location]
|
||||
[/filter]
|
||||
|
||||
[event]
|
||||
name=capture
|
||||
first_time_only=no
|
||||
[filter]
|
||||
side=1,3
|
||||
#!-- Fixes bug 10418, reduces potential number of elves found in the desert to max four
|
||||
[not]
|
||||
x=40-60
|
||||
y=1-12
|
||||
[/not]
|
||||
[filter_location]
|
||||
terrain=Dd^Vdt
|
||||
[/filter_location]
|
||||
[/filter]
|
||||
# check to see if the village has been captured
|
||||
# by the undead before
|
||||
[store_locations]
|
||||
variable=vill
|
||||
x=$x1
|
||||
y=$y1
|
||||
find_in=abandoned
|
||||
[/store_locations]
|
||||
|
||||
# check to see if the village has been captured
|
||||
# by the undead before
|
||||
[store_locations]
|
||||
variable=vill
|
||||
x=$x1
|
||||
y=$y1
|
||||
find_in=abandoned
|
||||
[/store_locations]
|
||||
|
||||
[if]
|
||||
[variable]
|
||||
name=vill.length
|
||||
less_than=1
|
||||
[/variable]
|
||||
[then]
|
||||
[if]
|
||||
[variable]
|
||||
name=unit.side
|
||||
numerical_equals=1
|
||||
[/variable]
|
||||
[variable]
|
||||
name=vill.length
|
||||
less_than=1
|
||||
[/variable]
|
||||
[then]
|
||||
[if]
|
||||
[variable]
|
||||
name=unit.side
|
||||
numerical_equals=1
|
||||
[/variable]
|
||||
|
||||
[then]
|
||||
{RANDOM 1..10}
|
||||
[then]
|
||||
{RANDOM 1..10}
|
||||
|
||||
[if]
|
||||
[variable]
|
||||
name=random
|
||||
less_than_equal_to=6
|
||||
[/variable]
|
||||
[if]
|
||||
[variable]
|
||||
name=random
|
||||
less_than_equal_to=6
|
||||
[/variable]
|
||||
|
||||
[then]
|
||||
# pick one village occupant at random
|
||||
{RANDOM 1..$village_events}
|
||||
{VARIABLE_OP random add -1}
|
||||
[then]
|
||||
# pick one village occupant at random
|
||||
{RANDOM 1..$village_events}
|
||||
{VARIABLE_OP random add -1}
|
||||
|
||||
{VARIABLE unit_type $villager[$random].type}
|
||||
{VARIABLE unit_name $villager[$random].name}
|
||||
{VARIABLE unit_type $villager[$random].type}
|
||||
{VARIABLE unit_name $villager[$random].name}
|
||||
|
||||
[unit]
|
||||
side=1
|
||||
type=$unit_type
|
||||
x=$x1
|
||||
y=$y1
|
||||
user_description=$unit_name
|
||||
upkeep=full
|
||||
animate=yes
|
||||
moves="0"
|
||||
[/unit]
|
||||
[unit]
|
||||
side=1
|
||||
type=$unit_type
|
||||
x=$x1
|
||||
y=$y1
|
||||
user_description=$unit_name
|
||||
upkeep=full
|
||||
animate=yes
|
||||
moves="0"
|
||||
[/unit]
|
||||
|
||||
{CLEAR_VARIABLE unit_type}
|
||||
{CLEAR_VARIABLE unit_name}
|
||||
{CLEAR_VARIABLE unit_type}
|
||||
{CLEAR_VARIABLE unit_name}
|
||||
|
||||
# remove this village inhabitant from array
|
||||
{VARIABLE next_i $random}
|
||||
{VARIABLE_OP next_i add 1}
|
||||
[while]
|
||||
[variable]
|
||||
name=next_i
|
||||
less_than=$village_events
|
||||
[/variable]
|
||||
[do]
|
||||
{VARIABLE villager[$random].type $villager[$next_i].type}
|
||||
{VARIABLE villager[$random].name $villager[$next_i].name}
|
||||
{VARIABLE_OP random add 1}
|
||||
{VARIABLE_OP next_i add 1}
|
||||
[/do]
|
||||
[/while]
|
||||
{CLEAR_VARIABLE villager[$village_events].type}
|
||||
{CLEAR_VARIABLE villager[$village_events].name}
|
||||
{CLEAR_VARIABLE next_i}
|
||||
{VARIABLE_OP village_events add -1}
|
||||
[message]
|
||||
speaker=unit
|
||||
message= _ "Oh good, some elves have survived in this outer settlement. They've agreed to help us search for other survivors."
|
||||
[/message]
|
||||
# remove this village inhabitant from array
|
||||
{VARIABLE next_i $random}
|
||||
{VARIABLE_OP next_i add 1}
|
||||
[while]
|
||||
[variable]
|
||||
name=next_i
|
||||
less_than=$village_events
|
||||
[/variable]
|
||||
[do]
|
||||
{VARIABLE villager[$random].type $villager[$next_i].type}
|
||||
{VARIABLE villager[$random].name $villager[$next_i].name}
|
||||
{VARIABLE_OP random add 1}
|
||||
{VARIABLE_OP next_i add 1}
|
||||
[/do]
|
||||
[/while]
|
||||
{CLEAR_VARIABLE villager[$village_events].type}
|
||||
{CLEAR_VARIABLE villager[$village_events].name}
|
||||
{CLEAR_VARIABLE next_i}
|
||||
{VARIABLE_OP village_events add -1}
|
||||
[message]
|
||||
speaker=unit
|
||||
message= _ "Oh good, some elves have survived in this outer settlement. They've agreed to help us search for other survivors."
|
||||
[/message]
|
||||
[/then]
|
||||
|
||||
[/then]
|
||||
|
||||
[else]
|
||||
[message]
|
||||
speaker=unit
|
||||
message= _ "The encampment is empty. I wonder what happened to the inhabitants?"
|
||||
[/message]
|
||||
[/else]
|
||||
[/if]
|
||||
[/then]
|
||||
[else]
|
||||
# captured by undead -> abandon it
|
||||
{VARIABLE abandoned[$abandoned_villages].x $x1}
|
||||
{VARIABLE abandoned[$abandoned_villages].y $y1}
|
||||
{VARIABLE_OP abandoned_villages add 1}
|
||||
[/else]
|
||||
[else]
|
||||
[message]
|
||||
speaker=unit
|
||||
message= _ "The encampment is empty. I wonder what happened to the inhabitants?"
|
||||
[/message]
|
||||
[/else]
|
||||
[/if]
|
||||
[/then]
|
||||
[else]
|
||||
# captured by undead -> abandon it
|
||||
{VARIABLE abandoned[$abandoned_villages].x $x1}
|
||||
{VARIABLE abandoned[$abandoned_villages].y $y1}
|
||||
{VARIABLE_OP abandoned_villages add 1}
|
||||
[/else]
|
||||
[/if]
|
||||
[/then]
|
||||
[else]
|
||||
[if]
|
||||
[variable]
|
||||
name=unit.side
|
||||
equals=1
|
||||
[/variable]
|
||||
[then]
|
||||
[message]
|
||||
speaker=unit
|
||||
message= _ "This encampment has been abandoned. There are signs of a struggle and a few bloodstains but nothing else. I fear for those elves who lived out here."
|
||||
[/message]
|
||||
[/then]
|
||||
[/if]
|
||||
[/else]
|
||||
[/if]
|
||||
[/then]
|
||||
[else]
|
||||
[if]
|
||||
[variable]
|
||||
name=unit.side
|
||||
equals=1
|
||||
[/variable]
|
||||
[then]
|
||||
[message]
|
||||
speaker=unit
|
||||
message= _ "This encampment has been abandoned. There are signs of a struggle and a few bloodstains but nothing else. I fear for those elves who lived out here."
|
||||
[/message]
|
||||
[/then]
|
||||
[/if]
|
||||
[/else]
|
||||
[/if]
|
||||
{CLEAR_VARIABLE vill}
|
||||
[/event]
|
||||
{CLEAR_VARIABLE vill}
|
||||
[/event]
|
||||
|
||||
#define MUDCRAWLER_TALK SPEAKER
|
||||
# Hasn't completed #1 encounter, do it now
|
||||
|
@ -818,7 +814,6 @@
|
|||
[/event]
|
||||
[/event]
|
||||
|
||||
|
||||
# Grasslands dialogue, when Kaleh and Nym approach the eastern fields
|
||||
|
||||
[event]
|
||||
|
@ -833,133 +828,132 @@
|
|||
|
||||
# only show this if the villages haven't been captured yet
|
||||
[if]
|
||||
[variable]
|
||||
name=grasslands_dialogue
|
||||
less_than=1
|
||||
[/variable]
|
||||
[then]
|
||||
{VARIABLE grasslands_dialogue 1}
|
||||
[message]
|
||||
description=Kaleh
|
||||
message= _ "These fields seem strangely vacant. Where are the horses?"
|
||||
[/message]
|
||||
[message]
|
||||
description=Nym
|
||||
message= _ "Maybe they're hiding in the stables. Let's go check."
|
||||
[/message]
|
||||
[/then]
|
||||
[variable]
|
||||
name=grasslands_dialogue
|
||||
less_than=1
|
||||
[/variable]
|
||||
[then]
|
||||
{VARIABLE grasslands_dialogue 1}
|
||||
[message]
|
||||
description=Kaleh
|
||||
message= _ "These fields seem strangely vacant. Where are the horses?"
|
||||
[/message]
|
||||
[message]
|
||||
description=Nym
|
||||
message= _ "Maybe they're hiding in the stables. Let's go check."
|
||||
[/message]
|
||||
[/then]
|
||||
[/if]
|
||||
[/event]
|
||||
|
||||
# Stables Encounters
|
||||
# Now wrapped into one - also includes the grasslands dialogue
|
||||
# if it hasn't been shown yet
|
||||
# Stables Encounters
|
||||
# Now wrapped into one - also includes the grasslands dialogue
|
||||
# if it hasn't been shown yet
|
||||
|
||||
[event]
|
||||
name=capture
|
||||
first_time_only=no
|
||||
[filter]
|
||||
x=43,43
|
||||
y=29,32
|
||||
[/filter]
|
||||
[event]
|
||||
name=capture
|
||||
first_time_only=no
|
||||
[filter]
|
||||
x=43,43
|
||||
y=29,32
|
||||
[/filter]
|
||||
|
||||
# check to see if the undead have captured it
|
||||
[store_locations]
|
||||
variable=vill
|
||||
x=$x1
|
||||
y=$y1
|
||||
find_in=abandoned
|
||||
[/store_locations]
|
||||
# check to see if the undead have captured it
|
||||
[store_locations]
|
||||
variable=vill
|
||||
x=$x1
|
||||
y=$y1
|
||||
find_in=abandoned
|
||||
[/store_locations]
|
||||
|
||||
[if]
|
||||
[variable]
|
||||
name=unit.side
|
||||
equals=1
|
||||
[/variable]
|
||||
[then]
|
||||
[if]
|
||||
[variable]
|
||||
name=vill.length
|
||||
less_than=1
|
||||
[/variable]
|
||||
[then]
|
||||
[if]
|
||||
[variable]
|
||||
name=grasslands_dialogue
|
||||
less_than=1
|
||||
[/variable]
|
||||
[then]
|
||||
{VARIABLE grasslands_dialogue 1}
|
||||
[message]
|
||||
description=Kaleh
|
||||
message= _ "These fields seem strangely vacant. Where are the horses?"
|
||||
[/message]
|
||||
[message]
|
||||
description=Nym
|
||||
message= _ "Maybe they're hiding in the stables. Let's go check."
|
||||
[/message]
|
||||
[message]
|
||||
description=Nym
|
||||
message= _ "I think I see movement in the stables. Is anyone there?"
|
||||
[/message]
|
||||
[/then]
|
||||
[/if]
|
||||
[if]
|
||||
[variable]
|
||||
name=grasslands_dialogue
|
||||
less_than=2
|
||||
[/variable]
|
||||
[then]
|
||||
# first stable encounter
|
||||
{VARIABLE grasslands_dialogue 2}
|
||||
{RANDOM_TRAIT_UNIT 1 "Desert Scout" $x1 $y1 "Naru" ( _ "Naru") ()}
|
||||
[message]
|
||||
description=Naru
|
||||
message= _ "Is it safe to come out? I was so scared."
|
||||
[/message]
|
||||
[message]
|
||||
description=Kaleh
|
||||
message= _ "Where are all the other horses?"
|
||||
[/message]
|
||||
[message]
|
||||
description=Naru
|
||||
message= _ "A hunting party left just yesterday, so unless the rocks fell all over the land, many of the horses have probably survived. The few that remained here were scared by the falling rocks and fled into the night. It took all my skill to calm Yasi and keep him from running."
|
||||
[/message]
|
||||
[message]
|
||||
description=Kaleh
|
||||
message= _ "We'll need your help in checking to see if the outer settlements are okay. Who knows what kinds of damage they suffered in the night? And perhaps some of the people out in the desert have been able to round up some of the loose horses."
|
||||
[/message]
|
||||
[message]
|
||||
description=Nym
|
||||
message= _ "Well, let's hope that hunting party comes back soon."
|
||||
[/message]
|
||||
[/then]
|
||||
[else]
|
||||
# second stable encounter
|
||||
[message]
|
||||
description=Naru
|
||||
message= _ "Hey Nisa, the rocks have stopped falling. You can come out now!"
|
||||
[/message]
|
||||
{RANDOM_TRAIT_UNIT 1 "Desert Scout" 43 31 "Nisa" ( _ "Nisa") (gender="female")}
|
||||
[message]
|
||||
description=Nisa
|
||||
message= _ "Oh, thank Eloh, I thought they would never stop."
|
||||
[/message]
|
||||
[/else]
|
||||
[/if]
|
||||
[/then]
|
||||
[variable]
|
||||
name=unit.side
|
||||
equals=1
|
||||
[/variable]
|
||||
[then]
|
||||
[if]
|
||||
[variable]
|
||||
name=vill.length
|
||||
less_than=1
|
||||
[/variable]
|
||||
[then]
|
||||
[if]
|
||||
[variable]
|
||||
name=grasslands_dialogue
|
||||
less_than=1
|
||||
[/variable]
|
||||
[then]
|
||||
{VARIABLE grasslands_dialogue 1}
|
||||
[message]
|
||||
description=Kaleh
|
||||
message= _ "These fields seem strangely vacant. Where are the horses?"
|
||||
[/message]
|
||||
[message]
|
||||
description=Nym
|
||||
message= _ "Maybe they're hiding in the stables. Let's go check."
|
||||
[/message]
|
||||
[message]
|
||||
description=Nym
|
||||
message= _ "I think I see movement in the stables. Is anyone there?"
|
||||
[/message]
|
||||
[/then]
|
||||
[/if]
|
||||
[if]
|
||||
[variable]
|
||||
name=grasslands_dialogue
|
||||
less_than=2
|
||||
[/variable]
|
||||
[then]
|
||||
# first stable encounter
|
||||
{VARIABLE grasslands_dialogue 2}
|
||||
{RANDOM_TRAIT_UNIT 1 "Desert Scout" $x1 $y1 "Naru" ( _ "Naru") ()}
|
||||
[message]
|
||||
description=Naru
|
||||
message= _ "Is it safe to come out? I was so scared."
|
||||
[/message]
|
||||
[message]
|
||||
description=Kaleh
|
||||
message= _ "Where are all the other horses?"
|
||||
[/message]
|
||||
[message]
|
||||
description=Naru
|
||||
message= _ "A hunting party left just yesterday, so unless the rocks fell all over the land, many of the horses have probably survived. The few that remained here were scared by the falling rocks and fled into the night. It took all my skill to calm Yasi and keep him from running."
|
||||
[/message]
|
||||
[message]
|
||||
description=Kaleh
|
||||
message= _ "We'll need your help in checking to see if the outer settlements are okay. Who knows what kinds of damage they suffered in the night? And perhaps some of the people out in the desert have been able to round up some of the loose horses."
|
||||
[/message]
|
||||
[message]
|
||||
description=Nym
|
||||
message= _ "Well, let's hope that hunting party comes back soon."
|
||||
[/message]
|
||||
[/then]
|
||||
[else]
|
||||
# second stable encounter
|
||||
[message]
|
||||
description=Naru
|
||||
message= _ "Hey Nisa, the rocks have stopped falling. You can come out now!"
|
||||
[/message]
|
||||
{RANDOM_TRAIT_UNIT 1 "Desert Scout" 43 31 "Nisa" ( _ "Nisa") (gender="female")}
|
||||
[message]
|
||||
description=Nisa
|
||||
message= _ "Oh, thank Eloh, I thought they would never stop."
|
||||
[/message]
|
||||
[/else]
|
||||
[/if]
|
||||
[/then]
|
||||
[/if]
|
||||
[/then]
|
||||
[else]
|
||||
# the undead capture village - abandon it
|
||||
# this just prevents the stables encounters from happening again on recapturing the villages
|
||||
{VARIABLE abandoned[$abandoned_villages].x $x1}
|
||||
{VARIABLE abandoned[$abandoned_villages].y $y1}
|
||||
{VARIABLE_OP abandoned_villages add 1}
|
||||
[/else]
|
||||
[/if]
|
||||
[/then]
|
||||
[else]
|
||||
# the undead capture village - abandon it
|
||||
# this just prevents the stables encounters from happening again on recapturing the villages
|
||||
{VARIABLE abandoned[$abandoned_villages].x $x1}
|
||||
{VARIABLE abandoned[$abandoned_villages].y $y1}
|
||||
{VARIABLE_OP abandoned_villages add 1}
|
||||
[/else]
|
||||
[/if]
|
||||
[/event]
|
||||
|
||||
[/event]
|
||||
|
||||
# Undead leader shows up on dusk of the first long night, turn 11
|
||||
|
||||
|
@ -1083,13 +1077,13 @@
|
|||
[/filter]
|
||||
|
||||
[sound]
|
||||
name=wail-long.wav
|
||||
name=wail-long.wav
|
||||
[/sound]
|
||||
|
||||
[kill]
|
||||
side=3
|
||||
race=undead
|
||||
animate=yes
|
||||
side=3
|
||||
race=undead
|
||||
animate=yes
|
||||
[/kill]
|
||||
|
||||
[message]
|
||||
|
@ -1217,7 +1211,6 @@
|
|||
[/message]
|
||||
[/event]
|
||||
|
||||
|
||||
[event]
|
||||
name=victory
|
||||
|
||||
|
@ -1329,5 +1322,4 @@
|
|||
{KALEH_DEATH}
|
||||
{FRIEND_DEATH}
|
||||
{GARAK_DEATH}
|
||||
|
||||
[/scenario]
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -5,7 +5,6 @@
|
|||
# then killing the leader takes precedent over killing the champion, and
|
||||
# the leader who died is the one who takes his revenge.
|
||||
|
||||
|
||||
[scenario]
|
||||
#textdomain wesnoth-utbs
|
||||
|
||||
|
@ -170,7 +169,7 @@
|
|||
description=Possessed Garak
|
||||
message= _ "Hahahaha! Your puny friend is no more. With his body I shall crush you all. Arise again my minions and feast in the slaughter!"
|
||||
[/message]
|
||||
|
||||
|
||||
#enddef
|
||||
|
||||
#define GARAK_DIALOGUE_PART_TWO
|
||||
|
@ -758,16 +757,16 @@
|
|||
# capture villages for side 1
|
||||
# and store them for victory conditions / undead
|
||||
# capture
|
||||
#define SET_ELVEN_CAMP X Y
|
||||
[capture_village]
|
||||
#define SET_ELVEN_CAMP X Y
|
||||
[capture_village]
|
||||
side=1
|
||||
x={X}
|
||||
y={Y}
|
||||
[/capture_village]
|
||||
{VARIABLE elven_camp[$elven_camps].x {X}}
|
||||
{VARIABLE elven_camp[$elven_camps].y {Y}}
|
||||
{VARIABLE_OP elven_camps add 1}
|
||||
#enddef
|
||||
[/capture_village]
|
||||
{VARIABLE elven_camp[$elven_camps].x {X}}
|
||||
{VARIABLE elven_camp[$elven_camps].y {Y}}
|
||||
{VARIABLE_OP elven_camps add 1}
|
||||
#enddef
|
||||
|
||||
# Prestart functions:
|
||||
# set starting scenario objectives
|
||||
|
@ -897,7 +896,6 @@
|
|||
name=village_counter
|
||||
value=$elven_camps
|
||||
[/set_variable]
|
||||
|
||||
[/event]
|
||||
|
||||
#Time Areas correspond with halo around campfires
|
||||
|
@ -948,7 +946,6 @@
|
|||
|
||||
#print dialogue messages
|
||||
{INTRO_DIALOGUE}
|
||||
|
||||
[/event]
|
||||
|
||||
# if deathblade Zur dies first then set variable revenge = 2
|
||||
|
@ -1170,83 +1167,81 @@
|
|||
|
||||
#enddef
|
||||
|
||||
|
||||
#define POSSESS_GARAK SIDE MINION
|
||||
# one undead side possesses Garak
|
||||
#
|
||||
#store Garak's x,y location
|
||||
[store_locations]
|
||||
[filter]
|
||||
description=Garak
|
||||
[/filter]
|
||||
variable=locs
|
||||
[/store_locations]
|
||||
|
||||
[store_unit]
|
||||
[filter]
|
||||
description=Garak
|
||||
[/filter]
|
||||
variable=ElvishGarak
|
||||
kill=no
|
||||
[/store_unit]
|
||||
|
||||
# play some adequate sound
|
||||
|
||||
[kill]
|
||||
description=Garak
|
||||
animate=yes
|
||||
fire_event=no
|
||||
[/kill]
|
||||
|
||||
[kill]
|
||||
side={SIDE}
|
||||
canrecruit=1
|
||||
animate=yes
|
||||
fire_event=no
|
||||
[/kill]
|
||||
|
||||
{UNIT_ (Corrupted Elf) (Possessed Garak) ( _ "Possessed Garak") {SIDE} $locs[0].x $locs[0].y}
|
||||
|
||||
[store_locations]
|
||||
x=$locs[0].x
|
||||
y=$locs[0].y
|
||||
terrain=Dd^Vdt
|
||||
find_in=elven_camp
|
||||
variable=camps
|
||||
[/store_locations]
|
||||
# one undead side possesses Garak
|
||||
#
|
||||
#store Garak's x,y location
|
||||
[store_locations]
|
||||
[filter]
|
||||
description=Garak
|
||||
[/filter]
|
||||
variable=locs
|
||||
[/store_locations]
|
||||
|
||||
[if]
|
||||
[variable]
|
||||
name=camps.length
|
||||
equals=1
|
||||
[/variable]
|
||||
[store_unit]
|
||||
[filter]
|
||||
description=Garak
|
||||
[/filter]
|
||||
variable=ElvishGarak
|
||||
kill=no
|
||||
[/store_unit]
|
||||
|
||||
[then]
|
||||
#turn village into sand, Dd is the letter for sand
|
||||
[terrain]
|
||||
x=$camps[0].x
|
||||
y=$camps[0].y
|
||||
letter=Dd
|
||||
[/terrain]
|
||||
# play some adequate sound
|
||||
|
||||
{UNIT_ (Walking Corpse) () ("") {SIDE} $camps[0].x $camps[0].y}
|
||||
[kill]
|
||||
description=Garak
|
||||
animate=yes
|
||||
fire_event=no
|
||||
[/kill]
|
||||
|
||||
{VARIABLE_OP village_counter add -1}
|
||||
[kill]
|
||||
side={SIDE}
|
||||
canrecruit=1
|
||||
animate=yes
|
||||
fire_event=no
|
||||
[/kill]
|
||||
|
||||
[/then]
|
||||
[/if]
|
||||
|
||||
{GARAK_DIALOGUE_PART_ONE}
|
||||
|
||||
{CREATE_MINIONS ({MINIONS}) {SIDE} $locs[0].x $locs[0].y}
|
||||
|
||||
{GARAK_DIALOGUE_PART_TWO}
|
||||
|
||||
{CLEAR_VARIABLE camps}
|
||||
|
||||
{CLEAR_VARIABLE locs}
|
||||
|
||||
{SET_VARIABLE possessed_garak {SIDE}}
|
||||
{UNIT_ (Corrupted Elf) (Possessed Garak) ( _ "Possessed Garak") {SIDE} $locs[0].x $locs[0].y}
|
||||
|
||||
[store_locations]
|
||||
x=$locs[0].x
|
||||
y=$locs[0].y
|
||||
terrain=Dd^Vdt
|
||||
find_in=elven_camp
|
||||
variable=camps
|
||||
[/store_locations]
|
||||
|
||||
[if]
|
||||
[variable]
|
||||
name=camps.length
|
||||
equals=1
|
||||
[/variable]
|
||||
|
||||
[then]
|
||||
#turn village into sand, Dd is the letter for sand
|
||||
[terrain]
|
||||
x=$camps[0].x
|
||||
y=$camps[0].y
|
||||
letter=Dd
|
||||
[/terrain]
|
||||
|
||||
{UNIT_ (Walking Corpse) () ("") {SIDE} $camps[0].x $camps[0].y}
|
||||
|
||||
{VARIABLE_OP village_counter add -1}
|
||||
[/then]
|
||||
[/if]
|
||||
|
||||
{GARAK_DIALOGUE_PART_ONE}
|
||||
|
||||
{CREATE_MINIONS ({MINIONS}) {SIDE} $locs[0].x $locs[0].y}
|
||||
|
||||
{GARAK_DIALOGUE_PART_TWO}
|
||||
|
||||
{CLEAR_VARIABLE camps}
|
||||
|
||||
{CLEAR_VARIABLE locs}
|
||||
|
||||
{SET_VARIABLE possessed_garak {SIDE}}
|
||||
|
||||
#enddef
|
||||
|
||||
|
@ -1285,7 +1280,6 @@
|
|||
#death events, and Possessed Garak is created
|
||||
|
||||
{POSSESS_GARAK 3 "Soulless"}
|
||||
|
||||
[/then]
|
||||
[/if]
|
||||
|
||||
|
@ -1313,9 +1307,8 @@
|
|||
|
||||
#Azkotep (skele) dies, Garak dies, both without triggering
|
||||
#death events, and Possessed Garak is created
|
||||
|
||||
{POSSESS_GARAK 2 "Skeleton"}
|
||||
|
||||
{POSSESS_GARAK 2 "Skeleton"}
|
||||
[/then]
|
||||
[/if]
|
||||
|
||||
|
@ -1340,7 +1333,6 @@
|
|||
[/message]
|
||||
|
||||
{POSSESS_GARAK 3 "Soulless"}
|
||||
|
||||
[/then]
|
||||
[/if]
|
||||
[/event]
|
||||
|
@ -1465,9 +1457,8 @@
|
|||
name=revenge
|
||||
value=3
|
||||
[/set_variable]
|
||||
|
||||
|
||||
{POSSESS_GARAK 3 "Soulless"}
|
||||
|
||||
[/else]
|
||||
[/if]
|
||||
[/then]
|
||||
|
@ -1549,9 +1540,8 @@
|
|||
name=revenge
|
||||
value=2
|
||||
[/set_variable]
|
||||
|
||||
|
||||
{POSSESS_GARAK 2 "Skeleton"}
|
||||
|
||||
[/else]
|
||||
[/if]
|
||||
[/then]
|
||||
|
@ -1621,88 +1611,88 @@
|
|||
y=0-30
|
||||
side=2,3
|
||||
[filter_location]
|
||||
find_in=elven_camp
|
||||
terrain=Dd^Vdt
|
||||
find_in=elven_camp
|
||||
terrain=Dd^Vdt
|
||||
[/filter_location]
|
||||
[/filter]
|
||||
|
||||
#turn village into sand, Dd is the letter for sand
|
||||
[terrain]
|
||||
x=$x1
|
||||
y=$y1
|
||||
letter=Dd
|
||||
[/terrain]
|
||||
#turn village into sand, Dd is the letter for sand
|
||||
[terrain]
|
||||
x=$x1
|
||||
y=$y1
|
||||
letter=Dd
|
||||
[/terrain]
|
||||
|
||||
#NOTE: a walking dead is created from inhabitants of the
|
||||
#elvish encampment
|
||||
#NOTE: a walking dead is created from inhabitants of the
|
||||
#elvish encampment
|
||||
|
||||
{UNIT_ (Walking Corpse) () ("") $side_number $x1 $y1}
|
||||
{UNIT_ (Walking Corpse) () ("") $side_number $x1 $y1}
|
||||
|
||||
[if]
|
||||
[variable]
|
||||
name=village_counter
|
||||
equals=12
|
||||
[/variable]
|
||||
[if]
|
||||
[variable]
|
||||
name=village_counter
|
||||
equals=12
|
||||
[/variable]
|
||||
|
||||
[then]
|
||||
[message]
|
||||
description=Nym
|
||||
message= _ "They're raising the corpses of our slain people! What a horrible fate!"
|
||||
[/message]
|
||||
[then]
|
||||
[message]
|
||||
description=Nym
|
||||
message= _ "They're raising the corpses of our slain people! What a horrible fate!"
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
description=Elyssa
|
||||
message= _ "Then we shall have to give them a proper cremation."
|
||||
[/message]
|
||||
[/then]
|
||||
[/if]
|
||||
[message]
|
||||
description=Elyssa
|
||||
message= _ "Then we shall have to give them a proper cremation."
|
||||
[/message]
|
||||
[/then]
|
||||
[/if]
|
||||
|
||||
#amount of gold enemy plunders from each encampment based of diff
|
||||
#amount of gold enemy plunders from each encampment based of diff
|
||||
#ifdef EASY
|
||||
[gold]
|
||||
amount=10
|
||||
side=$side_number
|
||||
[/gold]
|
||||
[gold]
|
||||
amount=10
|
||||
side=$side_number
|
||||
[/gold]
|
||||
#endif
|
||||
|
||||
#ifdef NORMAL
|
||||
[gold]
|
||||
amount=20
|
||||
side=$side_number
|
||||
[/gold]
|
||||
[gold]
|
||||
amount=20
|
||||
side=$side_number
|
||||
[/gold]
|
||||
#endif
|
||||
|
||||
#ifdef HARD
|
||||
[gold]
|
||||
amount=30
|
||||
side=$side_number
|
||||
[/gold]
|
||||
[gold]
|
||||
amount=30
|
||||
side=$side_number
|
||||
[/gold]
|
||||
#endif
|
||||
|
||||
[set_variable]
|
||||
name=village_counter
|
||||
add=-1
|
||||
[/set_variable]
|
||||
[set_variable]
|
||||
name=village_counter
|
||||
add=-1
|
||||
[/set_variable]
|
||||
|
||||
{CLEAR_VARIABLE locs}
|
||||
{CLEAR_VARIABLE locs}
|
||||
|
||||
[if]
|
||||
[variable]
|
||||
name=village_counter
|
||||
less_than=6
|
||||
[/variable]
|
||||
[if]
|
||||
[variable]
|
||||
name=village_counter
|
||||
less_than=6
|
||||
[/variable]
|
||||
|
||||
[then]
|
||||
[message]
|
||||
description=Kaleh
|
||||
message= _ "Too many of our people have been killed. We will surely be overwhelmed by the undead now. All is lost!"
|
||||
[/message]
|
||||
[then]
|
||||
[message]
|
||||
description=Kaleh
|
||||
message= _ "Too many of our people have been killed. We will surely be overwhelmed by the undead now. All is lost!"
|
||||
[/message]
|
||||
|
||||
[endlevel]
|
||||
result=defeat
|
||||
[/endlevel]
|
||||
[/then]
|
||||
[/if]
|
||||
[endlevel]
|
||||
result=defeat
|
||||
[/endlevel]
|
||||
[/then]
|
||||
[/if]
|
||||
[/event]
|
||||
|
||||
#time over event
|
||||
|
@ -1726,5 +1716,4 @@
|
|||
{ELYSSA_DEATH}
|
||||
|
||||
{@campaigns/Under_the_Burning_Suns/utils/global-events.cfg}
|
||||
|
||||
[/scenario]
|
||||
|
|
|
@ -17,88 +17,86 @@
|
|||
#!-- Undead deploy champions (one each)
|
||||
#!-- Number of tents saved from destruction affects unit limit later in campaign
|
||||
#!-- Character Garak is removed from campaign at this stage
|
||||
#!-- There is an orc raid in second half
|
||||
#!-- There is an orc raid in second half
|
||||
#!-- Thereis no timeflow, scenario takes place at night
|
||||
#!-- Above gives us
|
||||
|
||||
[scenario]
|
||||
#textdomain wesnoth-utbs
|
||||
id="3_Stirring_in_the_Night_alt"
|
||||
name= _ "A Stirring in the Night (development branch)"
|
||||
label= _ "A Stirring in the Night (development branch)"
|
||||
|
||||
#textdomain wesnoth-utbs
|
||||
id="3_Stirring_in_the_Night_alt"
|
||||
name= _ "A Stirring in the Night (development branch)"
|
||||
label= _ "A Stirring in the Night (development branch)"
|
||||
map_data="{campaigns/Under_the_Burning_Suns/maps/03_A_Stirring_in_the_Night.map}"
|
||||
|
||||
map_data="{campaigns/Under_the_Burning_Suns/maps/03_A_Stirring_in_the_Night.map}"
|
||||
#!-- This appends the module files for the scenario
|
||||
{campaigns/Under_the_Burning_Suns/scenarios/scen3_alt}
|
||||
|
||||
#!-- This appends the module files for the scenario
|
||||
{campaigns/Under_the_Burning_Suns/scenarios/scen3_alt}
|
||||
[music]
|
||||
name=frantic.ogg
|
||||
[/music]
|
||||
#!-- I shouldn't allow the branches to remerge, to many things would get broken at once, but who cares, it sucks anyway ;)
|
||||
|
||||
[music]
|
||||
name=frantic.ogg
|
||||
[/music]
|
||||
#!-- I shouldn't allow the branches to remerge, to many things would get broken at once, but who cares, it sucks anyway ;)
|
||||
next_scenario=4_Descending_into_Darkness
|
||||
#don't display snapshot of map in saved games
|
||||
snapshot="no"
|
||||
#there is no turn limit for this scenario
|
||||
turns="-1"
|
||||
victory_when_enemies_defeated=no
|
||||
|
||||
next_scenario=4_Descending_into_Darkness
|
||||
#don't display snapshot of map in saved games
|
||||
snapshot="no"
|
||||
#there is no turn limit for this scenario
|
||||
turns="-1"
|
||||
victory_when_enemies_defeated=no
|
||||
{LONGDARK4}
|
||||
|
||||
{LONGDARK4}
|
||||
|
||||
#! -- Story leading to sceanario
|
||||
{STORY_CHAPTER_3} #
|
||||
#! -- Setting up sides
|
||||
{SIDES_SETUP}#
|
||||
#! -- standart macro
|
||||
{STARTING_VILLAGES 1 30}#
|
||||
#! -- setting up objectives,variables and map objects
|
||||
#! -- sets variables : $ambush_turn, $sneak_up, $elven_camps, $killed_by_azkotep, $killed_by_ystara, $grak_challenged, $zur_challenged
|
||||
{PRESTART}#
|
||||
#! -- initial dialogue, placement of champions ^ probably should be moved to prestart
|
||||
{SCENARIO_START}#
|
||||
#! -- at the end of the initial dialogue kaleh raises a war cry, some elves will wake up and respond
|
||||
{WAR_CRY}#
|
||||
#! -- count (or store) dying elves and orcs, they will make a host for possesed Garak
|
||||
#! -- sets variables : $azkotep_casaulties, $ystara_casaulties
|
||||
#! -- affects variables : $killed_by_ystara, $killed_by_azkotep
|
||||
{ELF_CORPSE}#
|
||||
#! -- count destroyed tents, each lost makes future scenarios harder
|
||||
#! -- includes defeat by loss of tents
|
||||
#! -- affects variables : $elven_camps
|
||||
{DESTROY_TENT}#
|
||||
#! -- instead with providing AI with higher lvl units on medium and hard give it highly experienced lvl1's
|
||||
#! -- Story leading to sceanario
|
||||
{STORY_CHAPTER_3} #
|
||||
#! -- Setting up sides
|
||||
{SIDES_SETUP}#
|
||||
#! -- standart macro
|
||||
{STARTING_VILLAGES 1 30}#
|
||||
#! -- setting up objectives,variables and map objects
|
||||
#! -- sets variables : $ambush_turn, $sneak_up, $elven_camps, $killed_by_azkotep, $killed_by_ystara, $grak_challenged, $zur_challenged
|
||||
{PRESTART}#
|
||||
#! -- initial dialogue, placement of champions ^ probably should be moved to prestart
|
||||
{SCENARIO_START}#
|
||||
#! -- at the end of the initial dialogue kaleh raises a war cry, some elves will wake up and respond
|
||||
{WAR_CRY}#
|
||||
#! -- count (or store) dying elves and orcs, they will make a host for possesed Garak
|
||||
#! -- sets variables : $azkotep_casaulties, $ystara_casaulties
|
||||
#! -- affects variables : $killed_by_ystara, $killed_by_azkotep
|
||||
{ELF_CORPSE}#
|
||||
#! -- count destroyed tents, each lost makes future scenarios harder
|
||||
#! -- includes defeat by loss of tents
|
||||
#! -- affects variables : $elven_camps
|
||||
{DESTROY_TENT}#
|
||||
#! -- instead with providing AI with higher lvl units on medium and hard give it highly experienced lvl1's
|
||||
#ifdef EASY
|
||||
#else
|
||||
{RECRUIT_TWEAK}#
|
||||
{RECRUIT_TWEAK}#
|
||||
#endif
|
||||
#! -- if opposing champion wasn't attacked by the player yet Garak can issue a challenge
|
||||
#! -- affects variables : $grak_challenged, $zur_challenged
|
||||
{CHALLENGE}#
|
||||
#! -- if challenge didn't happen by turn 12 and bad guy die garak gets possesed
|
||||
#! -- sets variable : $ElvishGarak, $defiant_death
|
||||
#! -- depends on variables : $grak_challenged, $zur_challenged, $azkotep_casaulties[], $ystara_casaulties[], $killed_by_azkotep, $killed_by_ystara
|
||||
#! -- clears variables : $azkotep_casaulties[], $ystara_casaulties[], $killed_by_azkotep, $killed_by_ystara
|
||||
{POSSESION}#
|
||||
#! -- somewhere around turn 8 an orc raiding party makes an entrance
|
||||
#! -- affects variables : $sneak_up
|
||||
#! -- depends on variables : $ambush_turn
|
||||
#! -- clears variables : $ambush_turn
|
||||
{ORC_PARTY}#
|
||||
#! -- handles evil guys deaths and victory events, lots of dialogue
|
||||
#! -- includes glorious victory
|
||||
#! -- includes normal victory
|
||||
#! -- sets variables : $scen3 (for compatibility with classic branch)
|
||||
#! -- depends on variables : $ElvishGarak, $defiant_death, $elven_camps
|
||||
#! -- clears variables : $ElvishGarak, $grak_challenged, $zur_challenged, $defiant_death, $elven_camps
|
||||
{CREEP_DEATH}
|
||||
#! -- if opposing champion wasn't attacked by the player yet Garak can issue a challenge
|
||||
#! -- affects variables : $grak_challenged, $zur_challenged
|
||||
{CHALLENGE}#
|
||||
#! -- if challenge didn't happen by turn 12 and bad guy die garak gets possesed
|
||||
#! -- sets variable : $ElvishGarak, $defiant_death
|
||||
#! -- depends on variables : $grak_challenged, $zur_challenged, $azkotep_casaulties[], $ystara_casaulties[], $killed_by_azkotep, $killed_by_ystara
|
||||
#! -- clears variables : $azkotep_casaulties[], $ystara_casaulties[], $killed_by_azkotep, $killed_by_ystara
|
||||
{POSSESION}#
|
||||
#! -- somewhere around turn 8 an orc raiding party makes an entrance
|
||||
#! -- affects variables : $sneak_up
|
||||
#! -- depends on variables : $ambush_turn
|
||||
#! -- clears variables : $ambush_turn
|
||||
{ORC_PARTY}#
|
||||
#! -- handles evil guys deaths and victory events, lots of dialogue
|
||||
#! -- includes glorious victory
|
||||
#! -- includes normal victory
|
||||
#! -- sets variables : $scen3 (for compatibility with classic branch)
|
||||
#! -- depends on variables : $ElvishGarak, $defiant_death, $elven_camps
|
||||
#! -- clears variables : $ElvishGarak, $grak_challenged, $zur_challenged, $defiant_death, $elven_camps
|
||||
{CREEP_DEATH}
|
||||
|
||||
#! -- and the good guys die
|
||||
{KALEH_DEATH}#
|
||||
#! -- and the good guys die
|
||||
{KALEH_DEATH}#
|
||||
|
||||
{FRIEND_DEATH}#
|
||||
|
||||
{ELYSSA_DEATH}#
|
||||
{FRIEND_DEATH}#
|
||||
|
||||
{ELYSSA_DEATH}#
|
||||
[/scenario]
|
||||
|
|
|
@ -262,7 +262,7 @@
|
|||
[/ai]
|
||||
[/side]
|
||||
|
||||
{@campaigns/Under_the_Burning_Suns/utils/dialog-macros.cfg}
|
||||
{@campaigns/Under_the_Burning_Suns/utils/dialog-macros.cfg}
|
||||
|
||||
# Prestart functions:
|
||||
# set starting scenario objectives
|
||||
|
@ -1117,7 +1117,7 @@
|
|||
y=$ring_y
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[/filter]
|
||||
|
||||
|
@ -1303,7 +1303,7 @@
|
|||
y=16
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[/filter]
|
||||
|
||||
|
|
|
@ -414,7 +414,7 @@
|
|||
[/part]
|
||||
[/story]
|
||||
|
||||
{@campaigns/Under_the_Burning_Suns/utils/dialog-macros.cfg}
|
||||
{@campaigns/Under_the_Burning_Suns/utils/dialog-macros.cfg}
|
||||
|
||||
# Prestart functions:
|
||||
# set starting scenario objectives
|
||||
|
@ -1346,7 +1346,7 @@
|
|||
[/remove_shroud]
|
||||
|
||||
#dwarf/troll/elf dialogue
|
||||
|
||||
|
||||
{CHECK_EXPLORER}
|
||||
[message]
|
||||
description=$explorer.description
|
||||
|
@ -4277,7 +4277,7 @@
|
|||
message= _ "Oh no, we took too long and enemy reinforcements have arrived. We'll surely be overwhelmed now!"
|
||||
[/message]
|
||||
[/event]
|
||||
|
||||
|
||||
{@campaigns/Under_the_Burning_Suns/utils/kaleh-abilities.cfg}
|
||||
{@campaigns/Under_the_Burning_Suns/utils/deaths.cfg}
|
||||
{KALEH_DEATH}
|
||||
|
|
|
@ -179,7 +179,7 @@
|
|||
[/part]
|
||||
[/story]
|
||||
|
||||
{@campaigns/Under_the_Burning_Suns/utils/dialog-macros.cfg}
|
||||
{@campaigns/Under_the_Burning_Suns/utils/dialog-macros.cfg}
|
||||
|
||||
# Prestart functions:
|
||||
# set starting scenario objectives
|
||||
|
@ -509,18 +509,18 @@
|
|||
[modifications]
|
||||
{TRAIT_INTELLIGENT}
|
||||
{TRAIT_LOYAL}
|
||||
[object]
|
||||
id=t3
|
||||
silent=yes
|
||||
[effect]
|
||||
apply_to=movement_costs
|
||||
replace=yes
|
||||
[movement_costs]
|
||||
cave=99
|
||||
grassland=99
|
||||
[/movement_costs]
|
||||
[/effect]
|
||||
[/object]
|
||||
[object]
|
||||
id=t3
|
||||
silent=yes
|
||||
[effect]
|
||||
apply_to=movement_costs
|
||||
replace=yes
|
||||
[movement_costs]
|
||||
cave=99
|
||||
grassland=99
|
||||
[/movement_costs]
|
||||
[/effect]
|
||||
[/object]
|
||||
[/modifications]
|
||||
[/unit]
|
||||
|
||||
|
@ -535,18 +535,18 @@
|
|||
[modifications]
|
||||
{TRAIT_RESILIENT}
|
||||
{TRAIT_LOYAL}
|
||||
[object]
|
||||
id=t4
|
||||
silent=yes
|
||||
[effect]
|
||||
apply_to=movement_costs
|
||||
replace=yes
|
||||
[movement_costs]
|
||||
cave=99
|
||||
grassland=99
|
||||
[/movement_costs]
|
||||
[/effect]
|
||||
[/object]
|
||||
[object]
|
||||
id=t4
|
||||
silent=yes
|
||||
[effect]
|
||||
apply_to=movement_costs
|
||||
replace=yes
|
||||
[movement_costs]
|
||||
cave=99
|
||||
grassland=99
|
||||
[/movement_costs]
|
||||
[/effect]
|
||||
[/object]
|
||||
[/modifications]
|
||||
[/unit]
|
||||
|
||||
|
@ -1075,11 +1075,11 @@
|
|||
[/set_variable]
|
||||
[/then]
|
||||
[/if]
|
||||
|
||||
{VARIABLE temp $heat_damage}
|
||||
{VARIABLE_OP temp multiply -1}
|
||||
{VARIABLE_OP lava_damage add $temp}
|
||||
{CLEAR_VARIABLE temp}
|
||||
|
||||
{VARIABLE temp $heat_damage}
|
||||
{VARIABLE_OP temp multiply -1}
|
||||
{VARIABLE_OP lava_damage add $temp}
|
||||
{CLEAR_VARIABLE temp}
|
||||
|
||||
[set_variable]
|
||||
name=unitstats.hitpoints
|
||||
|
@ -1152,9 +1152,9 @@
|
|||
y=11-27
|
||||
[filter]
|
||||
side=1,3,4
|
||||
[not]
|
||||
description=Guardian Phoenix,Dust Devil
|
||||
[/not]
|
||||
[not]
|
||||
description=Guardian Phoenix,Dust Devil
|
||||
[/not]
|
||||
[/filter]
|
||||
variable=locs
|
||||
[/store_locations]
|
||||
|
@ -1847,18 +1847,18 @@
|
|||
[modifications]
|
||||
{TRAIT_INTELLIGENT}
|
||||
{TRAIT_LOYAL}
|
||||
[object]
|
||||
id=t2
|
||||
silent=yes
|
||||
[effect]
|
||||
apply_to=movement_costs
|
||||
replace=yes
|
||||
[movement_costs]
|
||||
cave=99
|
||||
grassland=99
|
||||
[/movement_costs]
|
||||
[/effect]
|
||||
[/object]
|
||||
[object]
|
||||
id=t2
|
||||
silent=yes
|
||||
[effect]
|
||||
apply_to=movement_costs
|
||||
replace=yes
|
||||
[movement_costs]
|
||||
cave=99
|
||||
grassland=99
|
||||
[/movement_costs]
|
||||
[/effect]
|
||||
[/object]
|
||||
[/modifications]
|
||||
[/unit]
|
||||
|
||||
|
@ -1893,18 +1893,18 @@
|
|||
[modifications]
|
||||
{TRAIT_RESILIENT}
|
||||
{TRAIT_LOYAL}
|
||||
[object]
|
||||
id=t1
|
||||
silent=yes
|
||||
[effect]
|
||||
apply_to=movement_costs
|
||||
replace=yes
|
||||
[movement_costs]
|
||||
cave=99
|
||||
grassland=99
|
||||
[/movement_costs]
|
||||
[/effect]
|
||||
[/object]
|
||||
[object]
|
||||
id=t1
|
||||
silent=yes
|
||||
[effect]
|
||||
apply_to=movement_costs
|
||||
replace=yes
|
||||
[movement_costs]
|
||||
cave=99
|
||||
grassland=99
|
||||
[/movement_costs]
|
||||
[/effect]
|
||||
[/object]
|
||||
[/modifications]
|
||||
[/unit]
|
||||
|
||||
|
@ -2237,7 +2237,7 @@
|
|||
y=17-21
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[/filter]
|
||||
|
||||
|
@ -2298,7 +2298,7 @@
|
|||
y=12-13
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[/filter]
|
||||
|
||||
|
@ -2368,7 +2368,7 @@
|
|||
y=20-25
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[/filter]
|
||||
|
||||
|
@ -2391,7 +2391,7 @@
|
|||
y=26
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[/filter]
|
||||
|
||||
|
@ -2412,7 +2412,7 @@
|
|||
y=28
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[/filter]
|
||||
|
||||
|
|
|
@ -255,7 +255,7 @@
|
|||
[/part]
|
||||
[/story]
|
||||
|
||||
{@campaigns/Under_the_Burning_Suns/utils/dialog-macros.cfg}
|
||||
{@campaigns/Under_the_Burning_Suns/utils/dialog-macros.cfg}
|
||||
|
||||
# Prestart functions:
|
||||
# set starting scenario objectives
|
||||
|
@ -527,19 +527,19 @@
|
|||
[modifications]
|
||||
{TRAIT_STRONG}
|
||||
{TRAIT_RESILIENT}
|
||||
[object]
|
||||
id=o1
|
||||
silent=yes
|
||||
[effect]
|
||||
apply_to=movement_costs
|
||||
replace=true
|
||||
[movement_costs]
|
||||
cave=99
|
||||
grass=99
|
||||
shallow_water=99
|
||||
[/movement_costs]
|
||||
[/effect]
|
||||
[/object]
|
||||
[object]
|
||||
id=o1
|
||||
silent=yes
|
||||
[effect]
|
||||
apply_to=movement_costs
|
||||
replace=true
|
||||
[movement_costs]
|
||||
cave=99
|
||||
grass=99
|
||||
shallow_water=99
|
||||
[/movement_costs]
|
||||
[/effect]
|
||||
[/object]
|
||||
[/modifications]
|
||||
[/unit]
|
||||
|
||||
|
@ -554,19 +554,19 @@
|
|||
[modifications]
|
||||
{TRAIT_STRONG}
|
||||
{TRAIT_RESILIENT}
|
||||
[object]
|
||||
id=o2
|
||||
silent=yes
|
||||
[effect]
|
||||
apply_to=movement_costs
|
||||
replace=true
|
||||
[movement_costs]
|
||||
cave=99
|
||||
grass=99
|
||||
shallow_water=99
|
||||
[/movement_costs]
|
||||
[/effect]
|
||||
[/object]
|
||||
[object]
|
||||
id=o2
|
||||
silent=yes
|
||||
[effect]
|
||||
apply_to=movement_costs
|
||||
replace=true
|
||||
[movement_costs]
|
||||
cave=99
|
||||
grass=99
|
||||
shallow_water=99
|
||||
[/movement_costs]
|
||||
[/effect]
|
||||
[/object]
|
||||
[/modifications]
|
||||
[/unit]
|
||||
[/event]
|
||||
|
@ -1590,7 +1590,7 @@
|
|||
y=17
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[/filter]
|
||||
|
||||
|
@ -2148,7 +2148,7 @@
|
|||
x,y=45,21
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[/filter]
|
||||
|
||||
|
@ -2268,7 +2268,7 @@
|
|||
y=24
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[/filter]
|
||||
|
||||
|
|
|
@ -763,7 +763,7 @@
|
|||
description=Elyssa
|
||||
[/not]
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
side=1
|
||||
[/filter]
|
||||
|
@ -793,7 +793,7 @@
|
|||
range=melee
|
||||
set_type=fire
|
||||
[set_specials]
|
||||
{WEAPON_SPECIAL_MAGICAL}
|
||||
{WEAPON_SPECIAL_MAGICAL}
|
||||
[/set_specials]
|
||||
[/effect]
|
||||
[/object]
|
||||
|
@ -832,7 +832,7 @@
|
|||
[/option]
|
||||
[/message]
|
||||
[/event]
|
||||
|
||||
|
||||
{@campaigns/Under_the_Burning_Suns/utils/kaleh-abilities.cfg}
|
||||
{@campaigns/Under_the_Burning_Suns/utils/global-events.cfg}
|
||||
[/scenario]
|
||||
|
|
|
@ -762,7 +762,7 @@
|
|||
description=Elyssa
|
||||
[/not]
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
side=1
|
||||
[/filter]
|
||||
|
@ -828,7 +828,7 @@
|
|||
[/option]
|
||||
[/message]
|
||||
[/event]
|
||||
|
||||
|
||||
{@campaigns/Under_the_Burning_Suns/utils/kaleh-abilities.cfg}
|
||||
{@campaigns/Under_the_Burning_Suns/utils/global-events.cfg}
|
||||
[/scenario]
|
||||
|
|
|
@ -337,7 +337,7 @@
|
|||
[/part]
|
||||
[/story]
|
||||
|
||||
{@campaigns/Under_the_Burning_Suns/utils/dialog-macros.cfg}
|
||||
{@campaigns/Under_the_Burning_Suns/utils/dialog-macros.cfg}
|
||||
|
||||
# Prestart functions:
|
||||
# insert items onto map
|
||||
|
@ -1240,7 +1240,7 @@
|
|||
y=45-53
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[/filter]
|
||||
|
||||
|
@ -1414,7 +1414,7 @@
|
|||
y=43-48
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[/filter]
|
||||
|
||||
|
@ -1906,7 +1906,7 @@
|
|||
y=49
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[/filter]
|
||||
|
||||
|
@ -1972,7 +1972,7 @@
|
|||
y=50
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[/filter]
|
||||
|
||||
|
@ -2052,7 +2052,7 @@
|
|||
y=45-47,48
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[/filter]
|
||||
|
||||
|
@ -2160,7 +2160,7 @@
|
|||
y=41-45
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[/filter]
|
||||
|
||||
|
@ -2240,7 +2240,7 @@
|
|||
y=44
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[/filter]
|
||||
|
||||
|
@ -2328,7 +2328,7 @@
|
|||
y=43
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[/filter]
|
||||
|
||||
|
@ -2471,7 +2471,7 @@
|
|||
y=40-44
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[/filter]
|
||||
|
||||
|
@ -2571,7 +2571,7 @@
|
|||
x,y=8-14,40-45
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
message= _ "Wait a minute, I don't see any targets or practice dummies. Who are they supposed to be attacking?"
|
||||
[/message]
|
||||
|
@ -2885,7 +2885,7 @@
|
|||
y=36-40
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[/filter]
|
||||
|
||||
|
@ -2952,7 +2952,7 @@
|
|||
y=36
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[/filter]
|
||||
|
||||
|
@ -2996,7 +2996,7 @@
|
|||
y=27-34
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[/filter]
|
||||
|
||||
|
@ -3110,7 +3110,7 @@
|
|||
y=28-30
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[/filter]
|
||||
|
||||
|
@ -3212,10 +3212,10 @@
|
|||
y=32-37
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[not]
|
||||
type=Flesh Golem
|
||||
type=Flesh Golem
|
||||
[/not]
|
||||
[/filter]
|
||||
|
||||
|
@ -3337,10 +3337,10 @@
|
|||
y=32-34
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[not]
|
||||
type=Flesh Golem
|
||||
type=Flesh Golem
|
||||
[/not]
|
||||
[/filter]
|
||||
|
||||
|
@ -3504,20 +3504,20 @@
|
|||
y=19-24
|
||||
side=1
|
||||
[/remove_shroud]
|
||||
|
||||
|
||||
[store_locations]
|
||||
variable=cloaked
|
||||
x=$x1
|
||||
y=$y1
|
||||
radius=1
|
||||
[not]
|
||||
terrain=Xu
|
||||
[/not]
|
||||
[not]
|
||||
[filter]
|
||||
side=1
|
||||
[/filter]
|
||||
[/not]
|
||||
variable=cloaked
|
||||
x=$x1
|
||||
y=$y1
|
||||
radius=1
|
||||
[not]
|
||||
terrain=Xu
|
||||
[/not]
|
||||
[not]
|
||||
[filter]
|
||||
side=1
|
||||
[/filter]
|
||||
[/not]
|
||||
[/store_locations]
|
||||
|
||||
[unit]
|
||||
|
@ -3628,10 +3628,10 @@
|
|||
y=1-18
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[not]
|
||||
type=Flesh Golem
|
||||
type=Flesh Golem
|
||||
[/not]
|
||||
[/filter]
|
||||
|
||||
|
@ -3762,10 +3762,10 @@
|
|||
# there, if the hex is empty teleport Kaleh there
|
||||
|
||||
[store_locations]
|
||||
[filter_adjacent_location]
|
||||
x={X_LOC}
|
||||
y={Y_LOC}
|
||||
[/filter_adjacent_location]
|
||||
[filter_adjacent_location]
|
||||
x={X_LOC}
|
||||
y={Y_LOC}
|
||||
[/filter_adjacent_location]
|
||||
terrain=Uu, Re, Uu^Vu, Cud, Ke, Uh, Uu^Uf
|
||||
[not]
|
||||
[filter]
|
||||
|
@ -4230,10 +4230,10 @@
|
|||
x,y=17,21
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[not]
|
||||
type=Flesh Golem
|
||||
type=Flesh Golem
|
||||
[/not]
|
||||
[/filter]
|
||||
|
||||
|
@ -4285,7 +4285,7 @@
|
|||
y=19-31
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[/filter]
|
||||
|
||||
|
@ -5973,10 +5973,10 @@
|
|||
y=1-33
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[not]
|
||||
type=Flesh Golem
|
||||
type=Flesh Golem
|
||||
[/not]
|
||||
[/have_unit]
|
||||
|
||||
|
@ -5996,10 +5996,10 @@
|
|||
y=1-33
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[not]
|
||||
type=Flesh Golem
|
||||
type=Flesh Golem
|
||||
[/not]
|
||||
message= _ "Look, the water is pouring out the side tunnel into the valley! That's a lot of water: it's even creating a small river. I sure wouldn't want to be downstream of that deluge right now."
|
||||
[/message]
|
||||
|
@ -6012,10 +6012,10 @@
|
|||
y=18-33
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[not]
|
||||
type=Flesh Golem
|
||||
type=Flesh Golem
|
||||
[/not]
|
||||
[/have_unit]
|
||||
|
||||
|
@ -6035,10 +6035,10 @@
|
|||
y=18-33
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[not]
|
||||
type=Flesh Golem
|
||||
type=Flesh Golem
|
||||
[/not]
|
||||
message= _ "Look, the water is pouring out the side tunnel into the valley! That's a lot of water: it's even creating a small river. I sure wouldn't want to be downstream of that deluge right now."
|
||||
[/message]
|
||||
|
@ -6061,10 +6061,10 @@
|
|||
y=1-33
|
||||
side=1
|
||||
[not]
|
||||
type=Dust Devil
|
||||
type=Dust Devil
|
||||
[/not]
|
||||
[not]
|
||||
type=Flesh Golem
|
||||
type=Flesh Golem
|
||||
[/not]
|
||||
[/filter]
|
||||
|
||||
|
|
|
@ -345,8 +345,8 @@
|
|||
story= _ "Which brings me to the other alien concept I was trying to figure out: our goddess Eloh. What was her plan? Why did she want me to surrender to the humans? Do the humans worship her as well? The humans seem so brutish and vile, that I can't imagine them worshipping the same god. I thought Eloh was just our god, I don't remember Zhul mentioning any other races worshipping her after the Great Fall, though perhaps things have changed. Her commands don't make any sense; she doesn't seem at all like the goddess Zhul told me about. And what was Esanoo talking about? How did his master know about 'Yechnagoth' and 'Yanqui'? If Eloh won't help me, then I really need some answers. I pray to whatever gods may be left that I'm not leading my people into a trap..."
|
||||
[/part]
|
||||
[/story]
|
||||
|
||||
{@campaigns/Under_the_Burning_Suns/utils/dialog-macros.cfg}
|
||||
|
||||
{@campaigns/Under_the_Burning_Suns/utils/dialog-macros.cfg}
|
||||
|
||||
# Prestart functions:
|
||||
# increase cost of all units by 1
|
||||
|
@ -796,15 +796,15 @@
|
|||
description=Esanoo
|
||||
message= _ "What? Huh?"
|
||||
[/message]
|
||||
|
||||
|
||||
[scroll_to]
|
||||
x=46
|
||||
y=39
|
||||
x=46
|
||||
y=39
|
||||
[/scroll_to]
|
||||
|
||||
{RANDOM_TRAIT_UNIT 2 "Spearman" 45 42 "Human Scout" ( _ "Human Scout") ()}
|
||||
{RANDOM_TRAIT_UNIT 2 "Javelineer" 47 42 "Human Scout" ( _ "Human Scout") ()}
|
||||
|
||||
|
||||
[redraw]
|
||||
[/redraw]
|
||||
|
||||
|
@ -3147,9 +3147,9 @@
|
|||
y=26-30
|
||||
side=1
|
||||
[/filter]
|
||||
|
||||
|
||||
{RANDOM_PLACEMENT_AREA 50 28 3}
|
||||
|
||||
|
||||
{PLACE_UNITS_RANDOMLY 3 7 "Crab Man" "Angry Crab" ( _ "Angry Crab") ()}
|
||||
|
||||
{CLEAR_PLACEMENT_AREA}
|
||||
|
@ -3173,9 +3173,9 @@
|
|||
y=21-26
|
||||
side=1
|
||||
[/filter]
|
||||
|
||||
|
||||
{RANDOM_PLACEMENT_AREA 41 23 3}
|
||||
|
||||
|
||||
{PLACE_UNITS_RANDOMLY 3 7 "Crab Man" "Angry Crab" ( _ "Angry Crab") ()}
|
||||
|
||||
{CLEAR_PLACEMENT_AREA}
|
||||
|
@ -3903,17 +3903,17 @@
|
|||
[/if]
|
||||
|
||||
[store_unit]
|
||||
variable=zhul_statue
|
||||
kill=yes
|
||||
[filter]
|
||||
description=Zhul_statue
|
||||
[/filter]
|
||||
variable=zhul_statue
|
||||
kill=yes
|
||||
[filter]
|
||||
description=Zhul_statue
|
||||
[/filter]
|
||||
[/store_unit]
|
||||
{VARIABLE zhul_statue.status.stoned "off"}
|
||||
{VARIABLE zhul_statue.description "Zhul"}
|
||||
{VARIABLE zhul_statue.user_description _"Zhul"}
|
||||
[unstore_unit]
|
||||
variable=zhul_statue
|
||||
variable=zhul_statue
|
||||
[/unstore_unit]
|
||||
|
||||
[message]
|
||||
|
@ -4065,7 +4065,6 @@
|
|||
[/if]
|
||||
[/event]
|
||||
|
||||
|
||||
# Event 10: time over event
|
||||
|
||||
[event]
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
[/music]
|
||||
|
||||
next_scenario=11_Battle_for_Zocthanol_Isle
|
||||
|
||||
|
||||
#no turn limit for this cutscene
|
||||
turns="-1"
|
||||
|
||||
|
|
|
@ -4,379 +4,379 @@
|
|||
#! -- Perform the challenge, set the death events where required
|
||||
#! -- internal variables : $garak_duel, $garak_x, $garak_y, $challenged
|
||||
#define CHALLENGE
|
||||
[event]
|
||||
name=turn 2
|
||||
[message]
|
||||
speaker=Garak
|
||||
message=_"These champions... I will challenge them. Zhul, bless my weapons with light of Eloh."
|
||||
[/message]
|
||||
[message]
|
||||
speaker=Zhul
|
||||
message=_"Garak, but the suns..."
|
||||
[/message]
|
||||
[message]
|
||||
speaker=Kaleh
|
||||
message=_"You will not do any such thing, anyone trying to fight these creeps singlehanded will surely die. We need you, we will not make it without you."
|
||||
[/message]
|
||||
[message]
|
||||
speaker=Garak
|
||||
message=_"I had dreams this night Kaleh, full of gloom and darkness, my journey will end here one way or another."
|
||||
[/message]
|
||||
[message]
|
||||
speaker=Kaleh
|
||||
message=_"No! That's not true, our future is what we make of it, stay behind for this fight and... "
|
||||
[/message]
|
||||
[message]
|
||||
speaker=Garak
|
||||
message=_"And what? You'll help me become a coward? I lived long, I'm not afraid of the end, just let me give it some meaning."
|
||||
[/message]
|
||||
[message]
|
||||
speaker=Zhul
|
||||
message=_"I bless you champion with the light that will come, I bless you with the memory and the promise. Break your bow champion, and let your sword shine in the dark."
|
||||
[/message]
|
||||
[object]
|
||||
id=Garak_vow
|
||||
silent=yes
|
||||
[filter]
|
||||
description=Garak
|
||||
[/filter]
|
||||
[effect]
|
||||
apply_to=remove_attacks
|
||||
range=ranged
|
||||
[/effect]
|
||||
[effect]
|
||||
apply_to=new_ability
|
||||
[abilities]
|
||||
{ABILITY_STEADFAST}
|
||||
[/abilities]
|
||||
[/effect]
|
||||
[effect]
|
||||
#textdomain wesnoth
|
||||
apply_to=attack
|
||||
range=melee
|
||||
[set_specials]
|
||||
[berserk]
|
||||
id=berserk
|
||||
name= _ "berserk"
|
||||
description= _ "Berserk:
|
||||
[event]
|
||||
name=turn 2
|
||||
[message]
|
||||
speaker=Garak
|
||||
message=_"These champions... I will challenge them. Zhul, bless my weapons with light of Eloh."
|
||||
[/message]
|
||||
[message]
|
||||
speaker=Zhul
|
||||
message=_"Garak, but the suns..."
|
||||
[/message]
|
||||
[message]
|
||||
speaker=Kaleh
|
||||
message=_"You will not do any such thing, anyone trying to fight these creeps singlehanded will surely die. We need you, we will not make it without you."
|
||||
[/message]
|
||||
[message]
|
||||
speaker=Garak
|
||||
message=_"I had dreams this night Kaleh, full of gloom and darkness, my journey will end here one way or another."
|
||||
[/message]
|
||||
[message]
|
||||
speaker=Kaleh
|
||||
message=_"No! That's not true, our future is what we make of it, stay behind for this fight and... "
|
||||
[/message]
|
||||
[message]
|
||||
speaker=Garak
|
||||
message=_"And what? You'll help me become a coward? I lived long, I'm not afraid of the end, just let me give it some meaning."
|
||||
[/message]
|
||||
[message]
|
||||
speaker=Zhul
|
||||
message=_"I bless you champion with the light that will come, I bless you with the memory and the promise. Break your bow champion, and let your sword shine in the dark."
|
||||
[/message]
|
||||
[object]
|
||||
id=Garak_vow
|
||||
silent=yes
|
||||
[filter]
|
||||
description=Garak
|
||||
[/filter]
|
||||
[effect]
|
||||
apply_to=remove_attacks
|
||||
range=ranged
|
||||
[/effect]
|
||||
[effect]
|
||||
apply_to=new_ability
|
||||
[abilities]
|
||||
{ABILITY_STEADFAST}
|
||||
[/abilities]
|
||||
[/effect]
|
||||
[effect]
|
||||
#textdomain wesnoth
|
||||
apply_to=attack
|
||||
range=melee
|
||||
[set_specials]
|
||||
[berserk]
|
||||
id=berserk
|
||||
name= _ "berserk"
|
||||
description= _ "Berserk:
|
||||
Whether used offensively or defensively, this attack presses the engagement until one of the combatants is slain, or 30 rounds of attacks have occurred."
|
||||
value=30
|
||||
[filter_opponent]
|
||||
description=Zur
|
||||
[or]
|
||||
description=Grak
|
||||
[/or]
|
||||
[/filter_opponent]
|
||||
[/berserk]
|
||||
#ifdef HARD
|
||||
#else
|
||||
[chance_to_hit]
|
||||
id=magical
|
||||
name= _ "magical"
|
||||
description= _ "Magical:
|
||||
value=30
|
||||
[filter_opponent]
|
||||
description=Zur
|
||||
[or]
|
||||
description=Grak
|
||||
[/or]
|
||||
[/filter_opponent]
|
||||
[/berserk]
|
||||
#ifdef HARD
|
||||
#else
|
||||
[chance_to_hit]
|
||||
id=magical
|
||||
name= _ "magical"
|
||||
description= _ "Magical:
|
||||
This attack always has a 70% chance to hit regardless of the defensive ability of the unit being attacked."
|
||||
value=70
|
||||
cumulative=no
|
||||
[filter_opponent]
|
||||
description=Zur
|
||||
[or]
|
||||
description=Grak
|
||||
[/or]
|
||||
[/filter_opponent]
|
||||
[/chance_to_hit]
|
||||
[firststrike]
|
||||
id=firststrike
|
||||
name= _ "firststrike"
|
||||
description= _ "First Strike:
|
||||
value=70
|
||||
cumulative=no
|
||||
[filter_opponent]
|
||||
description=Zur
|
||||
[or]
|
||||
description=Grak
|
||||
[/or]
|
||||
[/filter_opponent]
|
||||
[/chance_to_hit]
|
||||
[firststrike]
|
||||
id=firststrike
|
||||
name= _ "firststrike"
|
||||
description= _ "First Strike:
|
||||
This unit always strikes first with this attack, even if they are defending."
|
||||
[filter_opponent]
|
||||
description=Zur
|
||||
[or]
|
||||
description=Grak
|
||||
[/or]
|
||||
[/filter_opponent]
|
||||
[/firststrike]
|
||||
#endif
|
||||
mode=append
|
||||
[/set_specials]
|
||||
[/effect]
|
||||
#textdomain wesnoth-utbs
|
||||
[effect]
|
||||
apply_to=attack
|
||||
range=melee
|
||||
set_type=fire
|
||||
[/effect]
|
||||
[/object]
|
||||
[/event]
|
||||
[filter_opponent]
|
||||
description=Zur
|
||||
[or]
|
||||
description=Grak
|
||||
[/or]
|
||||
[/filter_opponent]
|
||||
[/firststrike]
|
||||
#endif
|
||||
mode=append
|
||||
[/set_specials]
|
||||
[/effect]
|
||||
#textdomain wesnoth-utbs
|
||||
[effect]
|
||||
apply_to=attack
|
||||
range=melee
|
||||
set_type=fire
|
||||
[/effect]
|
||||
[/object]
|
||||
[/event]
|
||||
|
||||
[event]
|
||||
name=attack
|
||||
first_time_only=no
|
||||
[filter]
|
||||
description=Garak
|
||||
[or]
|
||||
description=Grak
|
||||
[/or]
|
||||
[or]
|
||||
description=Zur
|
||||
[/or]
|
||||
[/filter]
|
||||
[filter_second]
|
||||
description=Garak
|
||||
[or]
|
||||
description=Grak
|
||||
[/or]
|
||||
[or]
|
||||
description=Zur
|
||||
[/or]
|
||||
[/filter_second]
|
||||
[if]
|
||||
[and]
|
||||
[variable]
|
||||
name=second_unit.description
|
||||
equals=Grak
|
||||
[/variable]
|
||||
[or]
|
||||
[variable]
|
||||
name=second_unit.description
|
||||
equals=Zur
|
||||
[/variable]
|
||||
[/or]
|
||||
[/and]
|
||||
[and]
|
||||
[variable]
|
||||
name=unit.description
|
||||
equals=Garak
|
||||
[/variable]
|
||||
[/and]
|
||||
[then]
|
||||
{VARIABLE challenged $second_unit.description}
|
||||
[if]
|
||||
[variable]
|
||||
name=challenged
|
||||
equals=Grak
|
||||
[/variable]
|
||||
[then]
|
||||
[message]
|
||||
description=Garak
|
||||
message=_"You there! Creep! Stand an face me shade! I challenge you!"
|
||||
[/message]
|
||||
[if]
|
||||
[variable]
|
||||
name=zur_challenged
|
||||
equals=0
|
||||
[/variable]
|
||||
[then]
|
||||
[message]
|
||||
description=Grak
|
||||
message=_"Foolish mortal... For crossing my path I'll devour your soul and torment it for all eternity..."
|
||||
[/message]
|
||||
[/then]
|
||||
[else]
|
||||
[message]
|
||||
description=Grak
|
||||
message=_"So you destroyed Zur... Come mortal, lets cross our blades... It's time for you to take his place..."
|
||||
[/message]
|
||||
[/else]
|
||||
[/if]
|
||||
[/then]
|
||||
[else]
|
||||
[message]
|
||||
description=Garak
|
||||
message=_"You there! Pile of bones! I challenge you, stand and face me!"
|
||||
[/message]
|
||||
[if]
|
||||
[variable]
|
||||
name=grak_challenged
|
||||
equals=0
|
||||
[/variable]
|
||||
[then]
|
||||
[message]
|
||||
description=Zur
|
||||
message=_"Puny elf... Time to die..."
|
||||
[/message]
|
||||
[/then]
|
||||
[else]
|
||||
[message]
|
||||
description=Zur
|
||||
message=_"Grak was weak... But still you deserve respect... Meet my axe and take his place..."
|
||||
[/message]
|
||||
[/else]
|
||||
[/if]
|
||||
[/else]
|
||||
[/if]
|
||||
[event]
|
||||
name=die
|
||||
[filter]
|
||||
description=Garak
|
||||
[/filter]
|
||||
[filter_second]
|
||||
description=Zur
|
||||
[or]
|
||||
description=Grak
|
||||
[/or]
|
||||
[/filter_second]
|
||||
[message]
|
||||
description=$challenged
|
||||
message=_"And so it ends... Your champion is dead elves... Come join him..."
|
||||
[/message]
|
||||
[/event]
|
||||
[event]
|
||||
name=die
|
||||
[filter]
|
||||
description=$challenged
|
||||
[/filter]
|
||||
[if]
|
||||
[variable]
|
||||
name=second_unit.description
|
||||
equals=Grak
|
||||
[/variable]
|
||||
[then]
|
||||
{VARIABLE grak_challenged 1}
|
||||
[/then]
|
||||
[else]
|
||||
{VARIABLE zur_challenged 1}
|
||||
[/else]
|
||||
[/if]
|
||||
{CLEAR_VARIABLE challenged}
|
||||
[/event]
|
||||
[/then]
|
||||
[/if]
|
||||
[if]
|
||||
[and]
|
||||
[variable]
|
||||
name=unit.description
|
||||
equals=Grak
|
||||
[/variable]
|
||||
[or]
|
||||
[variable]
|
||||
name=unit.description
|
||||
equals=Zur
|
||||
[/variable]
|
||||
[/or]
|
||||
[/and]
|
||||
[and]
|
||||
[variable]
|
||||
name=second_unit.description
|
||||
equals=Garak
|
||||
[/variable]
|
||||
[/and]
|
||||
[then]
|
||||
{VARIABLE challenged $unit.description}
|
||||
[if]
|
||||
[variable]
|
||||
name=challenged
|
||||
equals=Grak
|
||||
[/variable]
|
||||
[then]
|
||||
[message]
|
||||
description=Garak
|
||||
message=_"You there! Creep! Stand an face me shade! I challenge you!"
|
||||
[/message]
|
||||
[if]
|
||||
[variable]
|
||||
name=zur_challenged
|
||||
equals=0
|
||||
[/variable]
|
||||
[then]
|
||||
[message]
|
||||
description=Grak
|
||||
message=_"Foolish mortal... For crossing my path I'll devour your soul and torment it for all eternity..."
|
||||
[/message]
|
||||
[/then]
|
||||
[else]
|
||||
[message]
|
||||
description=Grak
|
||||
message=_"So you destroyed Zur... Come mortal, lets cross our blades... It's time for you to take his place..."
|
||||
[/message]
|
||||
[/else]
|
||||
[/if]
|
||||
[/then]
|
||||
[else]
|
||||
[message]
|
||||
description=Garak
|
||||
message=_"You there! Pile of bones! I challenge you, stand and face me!"
|
||||
[/message]
|
||||
[if]
|
||||
[variable]
|
||||
name=grak_challenged
|
||||
equals=0
|
||||
[/variable]
|
||||
[then]
|
||||
[message]
|
||||
description=Zur
|
||||
message=_"Puny elf... Time to die..."
|
||||
[/message]
|
||||
[/then]
|
||||
[else]
|
||||
[message]
|
||||
description=Zur
|
||||
message=_"Grak was weak... But still you deserve respect... Meet my axe and take his place..."
|
||||
[/message]
|
||||
[/else]
|
||||
[/if]
|
||||
[/else]
|
||||
[/if]
|
||||
[event]
|
||||
name=die
|
||||
[filter]
|
||||
description=Garak
|
||||
[/filter]
|
||||
[filter_second]
|
||||
description=Zur
|
||||
[or]
|
||||
description=Grak
|
||||
[/or]
|
||||
[/filter_second]
|
||||
[message]
|
||||
description=$challenged
|
||||
message=_"And so it ends... Your champion is dead elves... Come join him..."
|
||||
[/message]
|
||||
[/event]
|
||||
[event]
|
||||
name=die
|
||||
[filter]
|
||||
description=$challenged
|
||||
[/filter]
|
||||
[if]
|
||||
[variable]
|
||||
name=second_unit.description
|
||||
equals=Grak
|
||||
[/variable]
|
||||
[then]
|
||||
{VARIABLE grak_challenged 1}
|
||||
[/then]
|
||||
[else]
|
||||
{VARIABLE zur_challenged 1}
|
||||
[/else]
|
||||
[/if]
|
||||
{CLEAR_VARIABLE challenged}
|
||||
[/event]
|
||||
[/then]
|
||||
[/if]
|
||||
[/event]
|
||||
[event]
|
||||
name=attack
|
||||
first_time_only=no
|
||||
[filter]
|
||||
description=Garak
|
||||
[or]
|
||||
description=Grak
|
||||
[/or]
|
||||
[or]
|
||||
description=Zur
|
||||
[/or]
|
||||
[/filter]
|
||||
[filter_second]
|
||||
description=Garak
|
||||
[or]
|
||||
description=Grak
|
||||
[/or]
|
||||
[or]
|
||||
description=Zur
|
||||
[/or]
|
||||
[/filter_second]
|
||||
[if]
|
||||
[and]
|
||||
[variable]
|
||||
name=second_unit.description
|
||||
equals=Grak
|
||||
[/variable]
|
||||
[or]
|
||||
[variable]
|
||||
name=second_unit.description
|
||||
equals=Zur
|
||||
[/variable]
|
||||
[/or]
|
||||
[/and]
|
||||
[and]
|
||||
[variable]
|
||||
name=unit.description
|
||||
equals=Garak
|
||||
[/variable]
|
||||
[/and]
|
||||
[then]
|
||||
{VARIABLE challenged $second_unit.description}
|
||||
[if]
|
||||
[variable]
|
||||
name=challenged
|
||||
equals=Grak
|
||||
[/variable]
|
||||
[then]
|
||||
[message]
|
||||
description=Garak
|
||||
message=_"You there! Creep! Stand an face me shade! I challenge you!"
|
||||
[/message]
|
||||
[if]
|
||||
[variable]
|
||||
name=zur_challenged
|
||||
equals=0
|
||||
[/variable]
|
||||
[then]
|
||||
[message]
|
||||
description=Grak
|
||||
message=_"Foolish mortal... For crossing my path I'll devour your soul and torment it for all eternity..."
|
||||
[/message]
|
||||
[/then]
|
||||
[else]
|
||||
[message]
|
||||
description=Grak
|
||||
message=_"So you destroyed Zur... Come mortal, lets cross our blades... It's time for you to take his place..."
|
||||
[/message]
|
||||
[/else]
|
||||
[/if]
|
||||
[/then]
|
||||
[else]
|
||||
[message]
|
||||
description=Garak
|
||||
message=_"You there! Pile of bones! I challenge you, stand and face me!"
|
||||
[/message]
|
||||
[if]
|
||||
[variable]
|
||||
name=grak_challenged
|
||||
equals=0
|
||||
[/variable]
|
||||
[then]
|
||||
[message]
|
||||
description=Zur
|
||||
message=_"Puny elf... Time to die..."
|
||||
[/message]
|
||||
[/then]
|
||||
[else]
|
||||
[message]
|
||||
description=Zur
|
||||
message=_"Grak was weak... But still you deserve respect... Meet my axe and take his place..."
|
||||
[/message]
|
||||
[/else]
|
||||
[/if]
|
||||
[/else]
|
||||
[/if]
|
||||
[event]
|
||||
name=die
|
||||
[filter]
|
||||
description=Garak
|
||||
[/filter]
|
||||
[filter_second]
|
||||
description=Zur
|
||||
[or]
|
||||
description=Grak
|
||||
[/or]
|
||||
[/filter_second]
|
||||
[message]
|
||||
description=$challenged
|
||||
message=_"And so it ends... Your champion is dead elves... Come join him..."
|
||||
[/message]
|
||||
[/event]
|
||||
[event]
|
||||
name=die
|
||||
[filter]
|
||||
description=$challenged
|
||||
[/filter]
|
||||
[if]
|
||||
[variable]
|
||||
name=second_unit.description
|
||||
equals=Grak
|
||||
[/variable]
|
||||
[then]
|
||||
{VARIABLE grak_challenged 1}
|
||||
[/then]
|
||||
[else]
|
||||
{VARIABLE zur_challenged 1}
|
||||
[/else]
|
||||
[/if]
|
||||
{CLEAR_VARIABLE challenged}
|
||||
[/event]
|
||||
[/then]
|
||||
[/if]
|
||||
[if]
|
||||
[and]
|
||||
[variable]
|
||||
name=unit.description
|
||||
equals=Grak
|
||||
[/variable]
|
||||
[or]
|
||||
[variable]
|
||||
name=unit.description
|
||||
equals=Zur
|
||||
[/variable]
|
||||
[/or]
|
||||
[/and]
|
||||
[and]
|
||||
[variable]
|
||||
name=second_unit.description
|
||||
equals=Garak
|
||||
[/variable]
|
||||
[/and]
|
||||
[then]
|
||||
{VARIABLE challenged $unit.description}
|
||||
[if]
|
||||
[variable]
|
||||
name=challenged
|
||||
equals=Grak
|
||||
[/variable]
|
||||
[then]
|
||||
[message]
|
||||
description=Garak
|
||||
message=_"You there! Creep! Stand an face me shade! I challenge you!"
|
||||
[/message]
|
||||
[if]
|
||||
[variable]
|
||||
name=zur_challenged
|
||||
equals=0
|
||||
[/variable]
|
||||
[then]
|
||||
[message]
|
||||
description=Grak
|
||||
message=_"Foolish mortal... For crossing my path I'll devour your soul and torment it for all eternity..."
|
||||
[/message]
|
||||
[/then]
|
||||
[else]
|
||||
[message]
|
||||
description=Grak
|
||||
message=_"So you destroyed Zur... Come mortal, lets cross our blades... It's time for you to take his place..."
|
||||
[/message]
|
||||
[/else]
|
||||
[/if]
|
||||
[/then]
|
||||
[else]
|
||||
[message]
|
||||
description=Garak
|
||||
message=_"You there! Pile of bones! I challenge you, stand and face me!"
|
||||
[/message]
|
||||
[if]
|
||||
[variable]
|
||||
name=grak_challenged
|
||||
equals=0
|
||||
[/variable]
|
||||
[then]
|
||||
[message]
|
||||
description=Zur
|
||||
message=_"Puny elf... Time to die..."
|
||||
[/message]
|
||||
[/then]
|
||||
[else]
|
||||
[message]
|
||||
description=Zur
|
||||
message=_"Grak was weak... But still you deserve respect... Meet my axe and take his place..."
|
||||
[/message]
|
||||
[/else]
|
||||
[/if]
|
||||
[/else]
|
||||
[/if]
|
||||
[event]
|
||||
name=die
|
||||
[filter]
|
||||
description=Garak
|
||||
[/filter]
|
||||
[filter_second]
|
||||
description=Zur
|
||||
[or]
|
||||
description=Grak
|
||||
[/or]
|
||||
[/filter_second]
|
||||
[message]
|
||||
description=$challenged
|
||||
message=_"And so it ends... Your champion is dead elves... Come join him..."
|
||||
[/message]
|
||||
[/event]
|
||||
[event]
|
||||
name=die
|
||||
[filter]
|
||||
description=$challenged
|
||||
[/filter]
|
||||
[if]
|
||||
[variable]
|
||||
name=second_unit.description
|
||||
equals=Grak
|
||||
[/variable]
|
||||
[then]
|
||||
{VARIABLE grak_challenged 1}
|
||||
[/then]
|
||||
[else]
|
||||
{VARIABLE zur_challenged 1}
|
||||
[/else]
|
||||
[/if]
|
||||
{CLEAR_VARIABLE challenged}
|
||||
[/event]
|
||||
[/then]
|
||||
[/if]
|
||||
[/event]
|
||||
|
||||
[event]
|
||||
name=die
|
||||
[filter]
|
||||
description=Garak
|
||||
[/filter]
|
||||
[filter_second]
|
||||
[not]
|
||||
description=Grak
|
||||
[/not]
|
||||
[not]
|
||||
description=Zur
|
||||
[/not]
|
||||
[/filter_second]
|
||||
[message]
|
||||
description=Kaleh
|
||||
message=_"Where is Garak? Has anybody seen him?"
|
||||
[/message]
|
||||
[message]
|
||||
description=Zhul
|
||||
message=_"I've seen him jumping into deep darknes awhile ago pursuing agroup of enemies. Let's hope nothing happened to him."
|
||||
[/message]
|
||||
[/event]
|
||||
[event]
|
||||
name=die
|
||||
[filter]
|
||||
description=Garak
|
||||
[/filter]
|
||||
[filter_second]
|
||||
[not]
|
||||
description=Grak
|
||||
[/not]
|
||||
[not]
|
||||
description=Zur
|
||||
[/not]
|
||||
[/filter_second]
|
||||
[message]
|
||||
description=Kaleh
|
||||
message=_"Where is Garak? Has anybody seen him?"
|
||||
[/message]
|
||||
[message]
|
||||
description=Zhul
|
||||
message=_"I've seen him jumping into deep darknes awhile ago pursuing agroup of enemies. Let's hope nothing happened to him."
|
||||
[/message]
|
||||
[/event]
|
||||
|
||||
#enddef
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue