mirror of
https://github.com/wesnoth/wesnoth
synced 2025-05-02 23:01:17 +00:00

- added left and right side image support and added them to the test scenario. - allow images the 200 x 200 image to be 250 x 250. - added a mutulated shyde. - mirrored the arch mage.
1102 lines
36 KiB
INI
1102 lines
36 KiB
INI
#textdomain wesnoth
|
|
|
|
[test]
|
|
name="Test scenario"
|
|
map_data="border_size=1
|
|
usage=map
|
|
|
|
Mm , Mm , Mm , Mm , Mm^Xm , Mm^Xm , Mm^Xm , Gg , Ww , Gg , Dd , Gg , Aa , Gg , Aa , Gg , Hh , Gg , Mm , Gg , Uu , Gg , Wo , Wo , Ch , Wo , Wo , Wo , Gg , Wo , Wo , Wo , Md , Wo , Wo , Wo , Rd , Wo , Wo
|
|
Mm , Mm , Mm , Mm , Mm^Xm , Mm^Xm , Mm^Xm , Gg , Ww^Vm , Gg , Dd^Vda , Gg , Aa^Vea , Gg , Aa^Vha , Gg , Hh^Vhh , Gg , Mm^Vhh , Gg , Uu^Vu , Gg , Wo , Wo , Ch , Wo , Wo , Wo , Gg , Wo , Wo , Wo , Md , Wo , Wo , Wo , Rd , Wo , Wo
|
|
Mm , Mm , Mm , Mm , Mm , Mm^Xm , Gg , Gg , Gg , Uu^Vud , Gg , Dd^Vdt , Gg , Gg^Ve , Gg , Gg^Vh , Gg , Ha^Vhha , Gg , Gs^Vht , Wo , Wo , Cud , Ch , Wo , Wo , Ds , Gg , Wo , Wo , Hd , Md , Wo , Wo , Re , Rd , Wo , Wo , Wo
|
|
Mm , Mm , Gg , Gg , Gg , Gg , Gg , Ch , Ch , Ch , Ch , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Ss^Vhs , Gg , Cud , Wo , Wo , Dd , Ds , Wo , Wo , Ha , Hd , Wo , Wo , Ql , Re , Wo , Wo , Uu , Uu , Uu
|
|
Mm , Mm , Gg , Gg , Gg , Gg , Gg , Ch , 1 Kh , Ch , Ww , Gg , Gg , Mm^Vhh , Gg , Gg , Gg , Gg , Gg , Gs^Fp , Gs^Fp , Gs^Fp , Gs^Fp , Dd , Wo , Wo , Gs , Ha , Wo , Wo , Mm , Ql , Wo , Wo , Uh , Uh , Wo , Wo , Wo
|
|
Mm , Mm , Gg , Gg , Gg , Gg , Gg , Ch , Ch , Ch , Gg , Ww , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gs^Fp , Gs^Fp , Gs^Fp , Gs^Fp , Wo , Gs , Gs , Gg^Vh , Ww , Ww , Mm , Ww , Wo , Rr , Rr , Wo , Wo , Gg , Gg , Gg
|
|
Mm , Mm , Gg , Gg , Gg , Gg , Gg , Ch , Ch , Ch , Gg , Gg , Gg , Gg , Rr , Gg , Rr , Rr , Rr , Gs^Fp , Gs^Fp , Gs^Fp , Gs^Fp , Gs^Fp , Gg^Vh , Rr , Gg , Ww , Ww , Hh , Hh , Hh , Wo , Wo , Wo , Gg , Wo , Gg , Gg
|
|
Mm , Mm , Gg , Gg , Gg , Gg , Gg , Gg^Ve , Gg , Gg^Ve , Gg , Gg , Gg , Gg , Gg , Gg , Rr , Gg , Rr , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Ww , Ww , Ww , Ww , Gg , Wo , Mm^Xm , Wo , Gg , Wo , Ha , Ha
|
|
Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gs , Gg , Gg , Rr , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Wo , Mm^Xm , Wo , Gg , Wo , Ha , Ha
|
|
Gg , Gg , Gs^Fp , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gs , Gg , Gs , Gg , Gs , Gg , Gg , Re , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Wo , Aa , Wo , Gg , Wo , Hh , Hh
|
|
Gg , Gg , Gg , Gg , Gs^Ft , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gs , Gs , Gs , Gg , Re , Gg , Re , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Wo , Aa , Wo , Md , Wo , Hh , Hh
|
|
Gg , Gg , Dd^Do , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gs , Gg , Gg , Rd , Gg , Gg , Re , Re , Re , Gg , Gg , Ch , Ch , Ch , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Wo , Ai , Wo , Md , Wo , Ss^Bw| , Ss^Bw|
|
|
Gg , Gg , Gg , Gg , Gg^Fet , Gg , Gg , Gg , Gs^Fpa , Ds^Fp , Gs^Fp , Gg , Gg , Rd , Gg , Rd , Gg , Gg , Gg , Gg , Gg , Gg , Ch , Ch , Ch , Gg , Gg , Gg , Ww , Gg , Wo , Gg , Wo , Ai , Wo , Mm , Wo , Ss , Ss
|
|
Xu , Xu , Xu , Gg , Gg , Gg , Gg , Gg , Re^Fp , Gg^Fet , Gg^Fp , Ss^Vm , Gg , Rd , Rd , Rd , Gg , Re , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Wo^Bw\ , Wo^Bw/ , Wo^Bw| , Ww , Gg , Wo , Dd , Wo , Mm , Wo , Ss , Ss
|
|
Xu , Xu , Xu , Ce , Ce , Ke , Ce , Gg , Gg , Re^Fp , Gg^Ve , Gg^Vh , Gg , Gg , Gg , Gg , Ce , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Ss^Bw/ , Ww , Ss^Bw| , Ss^Bw\ , Gg , Wo , Dd , Wo , Qxu , Wo , Rr , Rr
|
|
Xu , Xu , Uu^Uf , Xu , Ce , Ce , Xu , Gg , Uh , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Ke , Ce , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Ss^Bw\ , Wo , Ds , Wo , Qxu , Wo , Rr , Rr
|
|
Xu , Xu , Uu^Uf , Xu , Xu , Xu , Xu , Xu , Uu , Gg , Uh , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Ss , Gg , Gg , 2 Kh , Gg , Gg , Wo , Ds , Wo , Rd , Wo , Uh , Uh
|
|
Xu , Xu , Qxu , Qxu , Cud , Xu , Uu , Uu^Ii , Uu^Vu , Gg , Xu , Gg , Gg , Gg , Gg^Ve , Gg , Ch , Gg , Gg , Chr , Chr , Gg , Chw , Ww , Gg , Chs , Chs , Gg , Cud , Gg , Gg , Gg , Wo , Gs , Wo , Rd , Wo , Uh , Uh
|
|
Xu , Xu , Xu , Qxu , Ql , Cud , Uh , Uu^Vu , Uu^Uf , Xu , Ql , Gg^Ve , Xu , Gg , Gg , Gg , Kh , Ch , Gg , Khr , Gg , Gg , Khw , Chw , Gg , Khs , Gg , Gg , Kud , Cud , Ww^Bw/ , Ww^Bw/ , Wo , Gs , Wo , Re , Wo , Uu , Uu
|
|
Xu , Xu , Qxu , Qxu , Ql , Ql , Ql , Xu , Xu , Xu , Xu , Xu , Xu , Xu , Xu , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Wo , Gg , Wo , Re , Wo , Uu , Uu
|
|
Xu , Xu , Qxu , Qxu , Ql , Ql , Ql , Xu , Xu , Xu , Xu , Xu , Xu , Xu , Xu , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Gg , Wo , Gg , Wo , Re , Wo , Uu , Uu
|
|
"
|
|
|
|
# [event]
|
|
# name=start
|
|
# {VARIABLE test_1 false}
|
|
# {VARIABLE test_2 no}
|
|
#
|
|
# # Test the new boolean_not_equals conditional
|
|
# [if]
|
|
# [variable]
|
|
# boolean_not_equals=off
|
|
# name=test_2
|
|
# [/variable]
|
|
# [then]
|
|
# [message]
|
|
# speaker=narrator
|
|
# message="test_2 != false"
|
|
# [/message]
|
|
# [/then]
|
|
# [else]
|
|
# [message]
|
|
# speaker=narrator
|
|
# message="test_2 == false"
|
|
# [/message]
|
|
# [/else]
|
|
# [/if]
|
|
#
|
|
# # Test the new string_length operator
|
|
# {VARIABLE_OP test_3 string_length "$test_1"}
|
|
#
|
|
# [message]
|
|
# speaker=narrator
|
|
# message="'$test_1|' is $test_3 characters long"
|
|
# [/message]
|
|
# [/event]
|
|
|
|
[event]
|
|
name=moveto
|
|
[filter]
|
|
x=11
|
|
y=6
|
|
side=1
|
|
[not]
|
|
id=Baldras
|
|
[/not]
|
|
[/filter]
|
|
|
|
[message]
|
|
speaker=narrator
|
|
message= "You can come if you wish, but the leader is only interested in speaking to Baldras."
|
|
image=wesnoth-icon.png
|
|
[/message]
|
|
[/event]
|
|
|
|
[event]
|
|
name=moveto
|
|
[filter]
|
|
x,y,side=17,7,1
|
|
[/filter]
|
|
[modify_side]
|
|
side=2
|
|
gold=1000
|
|
income=100
|
|
recruit=Orcish Assassin,Orcish Warrior,Orcish Crossbowman,Wolf Rider,Orcish Archer
|
|
# Test [modify_side][ai] constructs; torture test for
|
|
# patch num. 984
|
|
[ai]
|
|
time_of_day=morning,afternoon
|
|
aggression=1.0
|
|
caution=0.0
|
|
recruitment_pattern=fighter,fighter,fighter,fighter
|
|
{NO_SCOUTS}
|
|
[/ai]
|
|
[ai]
|
|
time_of_day=dawn,dusk
|
|
aggression=1.0
|
|
caution=0.0
|
|
recruitment_pattern=archer,archer,archer,archer
|
|
{NO_SCOUTS}
|
|
[/ai]
|
|
[ai]
|
|
time_of_day=first_watch,second_watch,underground
|
|
aggression=1.0
|
|
caution=0.0
|
|
recruitment_pattern=scout,scout,scout,scout
|
|
{NO_SCOUTS}
|
|
[/ai]
|
|
[/modify_side]
|
|
{REMOVE_LABEL $x1 $y1}
|
|
[message]
|
|
speaker=narrator
|
|
image=wesnoth-icon.png
|
|
message="Now the orcs will fight until death; nothing shall stop their powerful warriors!"
|
|
[/message]
|
|
[/event]
|
|
|
|
[label]
|
|
x,y=17,7
|
|
text="Open the hell"
|
|
[/label]
|
|
|
|
[label]
|
|
x,y=12,7
|
|
text="left"
|
|
[/label]
|
|
|
|
[event]
|
|
name=moveto
|
|
first_time_only=no
|
|
[filter]
|
|
x,y,side=12,7,1
|
|
[/filter]
|
|
|
|
[message_test_left]
|
|
message="Test foo bar bla bla bla bla bla bla bla bla bla bla bla"
|
|
[/message_test_left]
|
|
[/event]
|
|
|
|
[label]
|
|
x,y=13,7
|
|
text="right"
|
|
[/label]
|
|
|
|
[event]
|
|
name=moveto
|
|
first_time_only=no
|
|
[filter]
|
|
x,y,side=13,7,1
|
|
[/filter]
|
|
|
|
[message_test_right]
|
|
message="Test foo bar bla bla bla bla bla bla bla bla bla bla bla"
|
|
[/message_test_right]
|
|
[/event]
|
|
turns=36
|
|
id=test
|
|
|
|
{DAWN}
|
|
{MORNING}
|
|
{AFTERNOON}
|
|
{DUSK}
|
|
{FIRST_WATCH}
|
|
{SECOND_WATCH}
|
|
|
|
{PLACE_IMAGE items/book1.png 2 2}
|
|
{PLACE_IMAGE items/book2.png 3 2}
|
|
{PLACE_IMAGE items/book3.png 4 2}
|
|
{PLACE_IMAGE items/book4.png 5 2}
|
|
{PLACE_IMAGE items/flower1.png 2 3}
|
|
{PLACE_IMAGE items/flower2.png 3 3}
|
|
{PLACE_IMAGE items/flower3.png 4 3}
|
|
{PLACE_IMAGE items/flower4.png 5 3}
|
|
{PLACE_IMAGE scenery/rock1.png 2 4}
|
|
{PLACE_IMAGE scenery/rock2.png 3 4}
|
|
{PLACE_IMAGE scenery/rock3.png 4 4}
|
|
{PLACE_IMAGE scenery/rock4.png 5 4}
|
|
{PLACE_IMAGE items/dragonstatue.png 2 5}
|
|
{PLACE_IMAGE items/ornate1.png 3 5}
|
|
{PLACE_IMAGE items/ornate2.png 4 5}
|
|
{PLACE_IMAGE items/barrel.png 5 5}
|
|
{PLACE_IMAGE scenery/monolith1.png 2 6}
|
|
{PLACE_IMAGE scenery/monolith2.png 3 6}
|
|
{PLACE_IMAGE scenery/monolith3.png 4 6}
|
|
{PLACE_IMAGE scenery/monolith4.png 5 6}
|
|
{PLACE_IMAGE scenery/well.png 2 7}
|
|
{PLACE_IMAGE scenery/leanto.png 3 7}
|
|
{PLACE_IMAGE items/ball-green.png 4 7}
|
|
{PLACE_IMAGE items/ball-blue.png 5 7}
|
|
{PLACE_IMAGE items/box.png 2 8}
|
|
{PLACE_IMAGE scenery/well.png 10 5}
|
|
|
|
{OBJ_RING_REGENERATION 10 4 OBJ1}
|
|
{OBJ_RING_SLOW 11 4 OBJ2}
|
|
{OBJ_POTION_HEALING 12 4 OBJ3}
|
|
{OBJ_POTION_POISON 13 5 OBJ4}
|
|
{OBJ_POTION_HOLY 14 4 OBJ5}
|
|
{OBJ_POTION_STRONG 15 4 OBJ6}
|
|
{OBJ_POTION_DECAY 11 5 OBJ7}
|
|
{OBJ_TRIDENT_STORM 12 5 OBJ8}
|
|
#{OBJ_SWORD_FIRE 13 5 OBJ9}
|
|
#{OBJ_SCEPTER_FIRE 14 5 OBJ10}
|
|
|
|
{TELEPORT_TILE 10 3 27 15}
|
|
|
|
[event]
|
|
name=moveto
|
|
[filter]
|
|
side=1
|
|
[/filter]
|
|
|
|
[modify_side]
|
|
side=1
|
|
shroud_data="|111111111111
|
|
|1111111111111
|
|
|1111111111111
|
|
|11111111111111
|
|
|11111111111111
|
|
|001111111111111
|
|
|111111111111111
|
|
|1111111111111111
|
|
|111111111111111
|
|
|1111111111111111
|
|
|1111111111111111
|
|
|11111111111111111
|
|
|11111111111111111
|
|
|11111111111111111
|
|
|1111111111111111
|
|
|1111111111111111
|
|
|111111111111111
|
|
|111111111111111
|
|
|11111111111111
|
|
|11111111111111
|
|
|1111111111111
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|00000000000001111111
|
|
|000000000000011111111
|
|
|00000000000001111111
|
|
|000000000000000111111
|
|
|00000000000000011111
|
|
"
|
|
[/modify_side]
|
|
[/event]
|
|
|
|
[side]
|
|
random_gender=yes
|
|
type="Silver Mage"
|
|
side=1
|
|
canrecruit=yes
|
|
controller=human
|
|
hitpoints=80
|
|
recruit="Ghost,Troll Whelp,Assassin,Elvish Hero,Elvish Fighter,Elvish Archer,Horseman,Mage,Elvish Shaman,Red Mage,Spearman,Swordsman,Duelist,Fencer,Elvish Captain,Elvish Ranger,Elvish Shyde,Thief,Rogue,White Mage,Mage of Light,Elvish Sharpshooter,Silver Mage,Vampire Bat,Blood Bat,Soulless,Walking Corpse"
|
|
gold=2000
|
|
enemy=2
|
|
shroud=yes
|
|
[unit]
|
|
x,y=4,8
|
|
type="Elvish Avenger"
|
|
id=statue
|
|
generate_description=yes
|
|
hitpoints=4
|
|
[status]
|
|
stoned=on
|
|
[/status]
|
|
[/unit]
|
|
[unit]
|
|
x,y=12,8
|
|
type="Thief"
|
|
generate_description=yes
|
|
[/unit]
|
|
[unit]
|
|
x,y=9,8
|
|
type="Peasant"
|
|
generate_description=yes
|
|
[/unit]
|
|
[/side]
|
|
|
|
[side]
|
|
type=Orcish Warlord
|
|
id="Urug-Telfar"
|
|
side=2
|
|
controller=ai
|
|
canrecruit=yes
|
|
recruit="Orcish Grunt,Troll Whelp,Wolf Rider,Orcish Archer,Orcish Assassin,Saurian Skirmisher,Naga Fighter"
|
|
gold=40
|
|
income=10
|
|
enemy=1
|
|
[unit]
|
|
x,y=12,13
|
|
type="Orcish Archer"
|
|
generate_description=yes
|
|
[/unit]
|
|
[unit]
|
|
x,y=10,7
|
|
type="Orcish Archer"
|
|
generate_description=yes
|
|
[/unit]
|
|
[/side]
|
|
|
|
[item]
|
|
x,y=8,8
|
|
image="items/orcish-flag.png"
|
|
[/item]
|
|
[label]
|
|
x,y=8,8
|
|
text="Northerners unleashed!"
|
|
[/label]
|
|
|
|
[item]
|
|
x,y=10,10
|
|
halo="scenery/fire1.png:150,scenery/fire2.png:150,scenery/fire3.png:150,scenery/fire4.png:150,scenery/fire5.png:150,scenery/fire6.png:150,scenery/fire7.png:150,scenery/fire8.png:150"
|
|
[/item]
|
|
|
|
[event]
|
|
name=moveto
|
|
first_time_only=no
|
|
[filter]
|
|
side=1
|
|
x=8
|
|
y=8
|
|
[/filter]
|
|
[terrain]
|
|
x=28,30,29
|
|
y=15,15,17
|
|
terrain=Ch
|
|
[/terrain]
|
|
|
|
{VARIABLE_OP xx1 random 10..20}
|
|
{VARIABLE_OP yy1 random 10..17}
|
|
|
|
[unit]
|
|
side=2
|
|
x,y="$xx1","$yy1"
|
|
type="Orcish Warlord"
|
|
id="Bozo"
|
|
generate_description=yes
|
|
[/unit]
|
|
|
|
[message]
|
|
speaker="Bozo"
|
|
message="Mwahahahahah! I appeared at $xx1, $yy1!"
|
|
[/message]
|
|
[/event]
|
|
|
|
[item]
|
|
x,y=4,4
|
|
image="items/orcish-flag.png"
|
|
[/item]
|
|
[label]
|
|
x,y=10,9
|
|
text="Let's fight"
|
|
[/label]
|
|
|
|
[event]
|
|
name=moveto
|
|
first_time_only=no
|
|
[filter]
|
|
x=10
|
|
y=9
|
|
side=1
|
|
[/filter]
|
|
[animate_unit]
|
|
flag=attack
|
|
hit=hit
|
|
[primary_attack]
|
|
[/primary_attack]
|
|
[/animate_unit]
|
|
[/event]
|
|
[label]
|
|
x,y=4,4
|
|
text="Open, Sesame!"
|
|
[/label]
|
|
[label]
|
|
x,y=5,8
|
|
text="Let there be fog!"
|
|
[/label]
|
|
|
|
[event]
|
|
name=moveto
|
|
first_time_only=no
|
|
[filter]
|
|
x=5
|
|
y=8
|
|
side=1
|
|
[/filter]
|
|
[store_side]
|
|
side=1
|
|
variable=side1_store
|
|
[/store_side]
|
|
[if]
|
|
[variable]
|
|
name=side1_store.fog
|
|
equals="no"
|
|
[/variable]
|
|
[then]
|
|
[modify_side]
|
|
side=1
|
|
fog=yes
|
|
[/modify_side]
|
|
[redraw][/redraw]
|
|
[label]
|
|
x,y=5,8
|
|
text="Torches, attack!"
|
|
[/label]
|
|
[/then]
|
|
[else]
|
|
[modify_side]
|
|
side=1
|
|
fog=no
|
|
[/modify_side]
|
|
[redraw][/redraw]
|
|
[label]
|
|
x,y=5,8
|
|
text="Let there be fog!"
|
|
[/label]
|
|
[/else]
|
|
[/if]
|
|
{CLEAR_VARIABLE side1_store}
|
|
[/event]
|
|
|
|
[event]
|
|
name=moveto
|
|
first_time_only=no
|
|
[filter]
|
|
side=1
|
|
x=4
|
|
y=4
|
|
[/filter]
|
|
[terrain]
|
|
x=1,2
|
|
y=2,2
|
|
terrain=Re
|
|
[/terrain]
|
|
[/event]
|
|
|
|
[item]
|
|
x,y=8,5
|
|
image="items/orcish-flag.png"
|
|
[/item]
|
|
[label]
|
|
x,y=8,5
|
|
text="Reveal the Way"
|
|
[/label]
|
|
|
|
[event]
|
|
name=moveto
|
|
first_time_only=no
|
|
[filter]
|
|
side=1
|
|
x=8
|
|
y=5
|
|
[/filter]
|
|
[remove_shroud]
|
|
side=1
|
|
x="0-38"
|
|
y="0-20"
|
|
[/remove_shroud]
|
|
[/event]
|
|
|
|
[item]
|
|
x,y=12,6
|
|
image="terrain/color-hex.png~RC(red>purple)~RC(blue>black)"
|
|
[/item]
|
|
[label]
|
|
x,y=12,6
|
|
text="change coloring"
|
|
[/label]
|
|
|
|
[color_range]
|
|
id=blonde
|
|
rgb=255,255,0,255,255,128,0,0,0
|
|
[/color_range]
|
|
[color_palette]
|
|
thief=133,167,202,73,102,151,215,240,240,185,206,228,41,61,95,97,124,171
|
|
[/color_palette]
|
|
[event]
|
|
name=prerecruit
|
|
first_time_only=no
|
|
[filter]
|
|
type="Thief"
|
|
[/filter]
|
|
{RANDOM "RC(thief>red)","RC(thief>green)","RC(thief>blue)","RC(thief>blonde)","RC(thief>mauve_troll)","donothing()"}
|
|
[object]
|
|
silent=yes
|
|
[effect]
|
|
apply_to=image_mod
|
|
replace=$random
|
|
[/effect]
|
|
[/object]
|
|
[/event]
|
|
|
|
[color_range]
|
|
id=mauve_troll
|
|
rgb=ED6F9B,C63567,380113
|
|
[/color_range]
|
|
[color_range]
|
|
id=aqua_troll
|
|
rgb=7AA09A,3B765F,002121
|
|
[/color_range]
|
|
[color_range]
|
|
id=green_troll
|
|
rgb=869280,466546,001715
|
|
[/color_range]
|
|
[color_range]
|
|
id=grey_troll
|
|
rgb=7E808B,3E5451,00101A
|
|
[/color_range]
|
|
|
|
[color_palette]
|
|
troll_skin=A8A8A8,747F73,616153,374336,172830,9A9A9A,999999,596F60,596E5F,4E4F3F,4E5040,4D4F3F,1E3325,1F3325,001B22,001A21
|
|
[/color_palette]
|
|
[event]
|
|
name=prerecruit
|
|
first_time_only=no
|
|
[filter]
|
|
type="Troll Whelp"
|
|
[/filter]
|
|
#define GIVE_TROLLSKIN
|
|
{RANDOM "RC(troll_skin>mauve_troll)","RC(troll_skin>aqua_troll)","RC(troll_skin>aqua_troll)","RC(troll_skin>green_troll)","RC(troll_skin>grey_troll)","donothing()"}
|
|
[object]
|
|
silent=yes
|
|
[effect]
|
|
apply_to=image_mod
|
|
replace=$random
|
|
[/effect]
|
|
[/object]
|
|
#enddef
|
|
{GIVE_TROLLSKIN}
|
|
[/event]
|
|
|
|
[event]
|
|
name=moveto
|
|
first_time_only=no
|
|
[filter]
|
|
side=1
|
|
x=12
|
|
y=6
|
|
type="Thief"
|
|
[/filter]
|
|
[object]
|
|
id=bleach
|
|
name= "Potion of bleach"
|
|
image=items/potion-red.png
|
|
duration=level
|
|
description="Oooh tingly!!!"
|
|
[effect]
|
|
apply_to=image_mod
|
|
add="RC(thief>blonde)"
|
|
|
|
[color_palette]
|
|
thief=133,167,202,73,102,151,215,240,240,185,206,228,41,61,95,97,124,171
|
|
[/color_palette]
|
|
[/effect]
|
|
[/object]
|
|
[/event]
|
|
|
|
[event]
|
|
name=moveto
|
|
first_time_only=no
|
|
[filter]
|
|
side=1
|
|
x=12
|
|
y=6
|
|
[not]
|
|
type="Thief"
|
|
[/not]
|
|
[/filter]
|
|
[message]
|
|
speaker=narrator
|
|
image=units/elves-wood/captain.png~RC(magenta>green)
|
|
message="Send me a thief to spy on the blondes"
|
|
[/message]
|
|
[/event]
|
|
|
|
[item]
|
|
x,y=8,7
|
|
image="items/chest-plain-closed.png"
|
|
[/item]
|
|
[label]
|
|
x,y=8,7
|
|
text="BOOM!"
|
|
[/label]
|
|
|
|
[event]
|
|
name="moveto"
|
|
first_time_only=no
|
|
[filter]
|
|
x,y=8,7
|
|
[/filter]
|
|
[terrain]
|
|
x="7,9"
|
|
y="7,7"
|
|
terrain="Gg"
|
|
[/terrain]
|
|
[/event]
|
|
|
|
[item]
|
|
x,y=9,3
|
|
image="items/gohere.png"
|
|
[/item]
|
|
[label]
|
|
x,y=9,3
|
|
text="Win"
|
|
[/label]
|
|
|
|
[label]
|
|
x,y=14,9
|
|
text="The silly dance"
|
|
[/label]
|
|
[event]
|
|
name="moveto"
|
|
first_time_only=no
|
|
[filter]
|
|
x,y=14,9
|
|
[/filter]
|
|
[animate_unit]
|
|
[/animate_unit]
|
|
[allow_undo]
|
|
[/allow_undo]
|
|
[/event]
|
|
|
|
[event]
|
|
name="moveto"
|
|
first_time_only=no
|
|
[filter]
|
|
x,y=9,3
|
|
[/filter]
|
|
{VARIABLE endlevel_test.result "victory"}
|
|
{VARIABLE endlevel_test.bonus "yes"}
|
|
[insert_tag]
|
|
name=endlevel
|
|
variable=endlevel_test
|
|
[/insert_tag]
|
|
[/event]
|
|
|
|
[event]
|
|
name=prestart
|
|
|
|
[unit]
|
|
side=1
|
|
x,y="recall","recall"
|
|
type=Lich
|
|
[/unit]
|
|
|
|
[unit]
|
|
side=1
|
|
x,y="recall","recall"
|
|
type=Arch Mage
|
|
[/unit]
|
|
|
|
[unit]
|
|
side=1
|
|
x,y="recall","recall"
|
|
type=Ancient Wose
|
|
[/unit]
|
|
[/event]
|
|
|
|
[terrain_graphics]
|
|
x,y=13,13
|
|
map="
|
|
, *
|
|
*, *
|
|
, 1
|
|
*, *
|
|
, *"
|
|
|
|
[tile]
|
|
pos=1
|
|
type=*
|
|
[/tile]
|
|
[image]
|
|
name="forest"
|
|
position=vertical
|
|
base=90,144
|
|
[/image]
|
|
[/terrain_graphics]
|
|
|
|
[label]
|
|
x,y=15,15
|
|
text="This is not a forest"
|
|
[/label]
|
|
|
|
[label]
|
|
x,y = 25,6
|
|
text = "Let it snow"
|
|
[/label]
|
|
|
|
[event]
|
|
# When moving to the specified coordinates,
|
|
# the area will be transformed to a snow landscape,
|
|
# but the water area should remain as is.
|
|
name="moveto"
|
|
first_time_only=yes
|
|
[filter]
|
|
x,y=25,6
|
|
[/filter]
|
|
|
|
[terrain_mask]
|
|
x,y=20,1
|
|
mask="
|
|
usage=mask
|
|
|
|
_s, _s, _s, _s, Aa, Aa, _s, _s, _s, _s
|
|
_s, _s, _s, Aa, Aa, Aa, Aa, _s, _s, _s
|
|
_s, _s, Aa, Aa, Aa, Aa, Aa, Aa, _s, _s
|
|
_s, Aa, Aa, Aa, Aa, Aa, Aa, Aa, Aa, _s
|
|
Aa, Aa, Aa, Aa, Aa, Aa, Aa, Aa, Aa, Aa
|
|
Aa, Aa, Aa, Aa, Aa, Aa, Aa, Aa, Aa, Aa
|
|
_s, Aa, Aa, Aa, Aa, Aa, Aa, Aa, Aa, _s
|
|
_s, _s, Aa, Aa, Aa, Aa, Aa, Aa, _s, _s
|
|
_s, _s, _s, Aa, Aa, Aa, Aa, _s, _s, _s
|
|
_s, _s, _s, _s, Aa, Aa, _s, _s, _s, _s
|
|
"
|
|
[rule]
|
|
old=Gg^Vh
|
|
new=Aa
|
|
terrain=Aa^Vha
|
|
[/rule]
|
|
[rule]
|
|
old=Gs^Fp
|
|
new=Aa
|
|
terrain=Aa^Fpa
|
|
[/rule]
|
|
[rule]
|
|
old=Hh
|
|
new=Aa
|
|
terrain=Hh
|
|
[/rule]
|
|
[rule]
|
|
old=Gg, Re
|
|
new=Aa
|
|
# Don't specify terrain and it just uses the new terrain
|
|
[/rule]
|
|
# # default: Will match everything, since 'old' and 'new' aren't specified.
|
|
# # Set 'use_old=yes' to signal no change.
|
|
[rule]
|
|
use_old=yes
|
|
[/rule]
|
|
[/terrain_mask]
|
|
[/event]
|
|
|
|
[label]
|
|
x,y = 9,13
|
|
text = "Plant palms"
|
|
[/label]
|
|
|
|
[event]
|
|
# Replace all trees with tropic forest but leave the base terrain intact
|
|
name="moveto"
|
|
first_time_only=yes
|
|
[filter]
|
|
x,y=9,13
|
|
[/filter]
|
|
|
|
[terrain_mask]
|
|
x,y=8,11
|
|
mask="
|
|
usage=mask
|
|
|
|
^Ft, ^Ft, ^Ft, ^Ft
|
|
^Ft, ^Ft, ^Ft, ^Ft
|
|
^Ft, ^Ft, ^Ft, ^Ft
|
|
^Ft, ^Ft, ^Ft, ^Ft
|
|
"
|
|
[rule]
|
|
old=*^F*
|
|
layer=overlay
|
|
[/rule]
|
|
# # default: Will match everything, since 'old' and 'new' aren't specified.
|
|
# # Set 'use_old=yes' to signal no change.
|
|
[rule]
|
|
use_old=yes
|
|
[/rule]
|
|
[/terrain_mask]
|
|
[terrain]
|
|
x=12
|
|
y=12
|
|
terrain=Aa^Ft
|
|
layer=overlay
|
|
[/terrain]
|
|
|
|
[/event]
|
|
|
|
[label]
|
|
x,y = 10,13
|
|
text = "Flood"
|
|
[/label]
|
|
[event]
|
|
# replace the base terrain while leaving the overlay intact
|
|
name="moveto"
|
|
first_time_only=yes
|
|
[filter]
|
|
x,y=10,13
|
|
[/filter]
|
|
|
|
[terrain_mask]
|
|
x,y=8,11
|
|
mask="
|
|
usage=mask
|
|
|
|
Ww, Ww, Ww, Ww
|
|
Ww, Ww, Ww, Ww
|
|
Ww, Ww, Ww, Ww
|
|
Ww, Ww, Ww, Ww
|
|
"
|
|
[rule]
|
|
old=*^Ve*
|
|
layer=base
|
|
[/rule]
|
|
[rule]
|
|
layer=base
|
|
replace_if_failed=true # if just replacing the base failed, replace the whole terrain
|
|
# this will make the human village disappear.
|
|
[/rule]
|
|
# # default: Will match everything, since 'old' and 'new' aren't specified.
|
|
# # Set 'use_old=yes' to signal no change.
|
|
[rule]
|
|
use_old=yes
|
|
[/rule]
|
|
[/terrain_mask]
|
|
[terrain]
|
|
x=12
|
|
y=12
|
|
terrain=Ds
|
|
layer=base
|
|
[/terrain]
|
|
|
|
[label]
|
|
x,y = 11,14
|
|
text = "Sunken"
|
|
[/label]
|
|
[label]
|
|
x,y = 10,14
|
|
text = "Still there"
|
|
[/label]
|
|
|
|
[/event]
|
|
|
|
[event]
|
|
name=start
|
|
[set_menu_item]
|
|
id=test1
|
|
description="Summon Troll"
|
|
[show_if]
|
|
[not]
|
|
[have_unit]
|
|
x,y=$x1,$y1
|
|
[/have_unit]
|
|
[/not]
|
|
[/show_if]
|
|
[filter_location]
|
|
[/filter_location]
|
|
[command]
|
|
{LOYAL_UNIT $side_number (Troll) $x1 $y1 (MagicTroll) ("Magic Troll")}
|
|
{GIVE_TROLLSKIN}
|
|
#undef GIVE_TROLLSKIN
|
|
[sound]
|
|
name=magic-holy-miss-3.ogg
|
|
[/sound]
|
|
[/command]
|
|
[/set_menu_item]
|
|
[set_menu_item]
|
|
id=test2
|
|
image="buttons/group_all.png"
|
|
description="Dismiss Troll"
|
|
[show_if]
|
|
[have_unit]
|
|
x,y=$x1,$y1
|
|
type=Troll
|
|
side=$side_number
|
|
[/have_unit]
|
|
[/show_if]
|
|
[command]
|
|
[kill]
|
|
x,y=$x1,$y1
|
|
animate=yes
|
|
[/kill]
|
|
[/command]
|
|
[/set_menu_item]
|
|
[/event]
|
|
|
|
[label]
|
|
x,y=10,10
|
|
text="Keep out!!!"
|
|
[/label]
|
|
|
|
[event]
|
|
name=moveto
|
|
first_time_only=no
|
|
[filter]
|
|
x,y=10, 10
|
|
[/filter]
|
|
[deprecated_message]
|
|
message="Moving to this location is no longer supported... bye bye"
|
|
[/deprecated_message]
|
|
[kill]
|
|
x,y=10,10
|
|
animate=yes
|
|
[/kill]
|
|
[/event]
|
|
|
|
[label]
|
|
x,y=7,10
|
|
text="Earn 100 XP!"
|
|
[/label]
|
|
|
|
[event]
|
|
name=moveto
|
|
first_time_only=no
|
|
[filter]
|
|
x=7
|
|
y=10
|
|
[/filter]
|
|
{VARIABLE_OP unit.experience add 100}
|
|
[unstore_unit]
|
|
variable=unit
|
|
text="100 XP"
|
|
red,green,blue=200,200,50
|
|
[/unstore_unit]
|
|
[/event]
|
|
|
|
[label]
|
|
x,y=7,11
|
|
text="test anim"
|
|
[/label]
|
|
|
|
[event]
|
|
name=moveto
|
|
first_time_only=no
|
|
[filter]
|
|
x=7
|
|
y=11
|
|
[/filter]
|
|
[object]
|
|
[effect]
|
|
apply_to=new_attack
|
|
name=ruby of fire
|
|
description="ruby of fire"
|
|
icon=attacks/fireball.png
|
|
type=fire
|
|
range=ranged
|
|
[specials]
|
|
{WEAPON_SPECIAL_MAGICAL}
|
|
[/specials]
|
|
damage=14
|
|
number=4
|
|
[/effect]
|
|
|
|
[effect]
|
|
apply_to=new_animation
|
|
[standing_anim]
|
|
alpha=0.0~1.0
|
|
|
|
[frame]
|
|
begin=-2000
|
|
end=0
|
|
[/frame]
|
|
[/standing_anim]
|
|
[/effect]
|
|
[/object]
|
|
[/event]
|
|
|
|
# Capture connected villages near 13,2 for team 2
|
|
[event]
|
|
name=prestart
|
|
|
|
[store_locations]
|
|
x,y=13,2
|
|
radius=2
|
|
[filter_radius]
|
|
terrain=*^V*
|
|
[/filter_radius]
|
|
variable=temp_villages_area
|
|
[/store_locations]
|
|
|
|
{FOREACH temp_villages_area i}
|
|
[capture_village]
|
|
side=2
|
|
x,y=$temp_villages_area[$i].x,$temp_villages_area[$i].y
|
|
[/capture_village]
|
|
{NEXT i}
|
|
|
|
# Then put goblins on the northernmost villages
|
|
|
|
[store_locations]
|
|
find_in=temp_villages_area
|
|
y=1
|
|
variable=temp_villages_area
|
|
[/store_locations]
|
|
|
|
{FOREACH temp_villages_area i}
|
|
[unit]
|
|
type=Goblin Spearman
|
|
side=2
|
|
x,y=$temp_villages_area[$i].x,$temp_villages_area[$i].y
|
|
[/unit]
|
|
{NEXT i}
|
|
|
|
{CLEAR_VARIABLE temp_villages_area}
|
|
[/event]
|
|
|
|
#define DYNAMIC_EVENT_SETUP TYPE VAR
|
|
[set_variables]
|
|
name={VAR}
|
|
[literal]
|
|
name={TYPE}
|
|
[set_variable]
|
|
name={VAR}
|
|
add=1
|
|
[/set_variable]
|
|
[message]
|
|
id=statue
|
|
message="dynamic " + {TYPE} + " event ${VAR}|!"
|
|
[option]
|
|
message="Continue!"
|
|
[/option]
|
|
[option]
|
|
message="Stop annoying me..."
|
|
[command]
|
|
[set_variables]
|
|
name={VAR}
|
|
mode=replace
|
|
[value]
|
|
name=moveto
|
|
[filter]
|
|
side=1
|
|
[filter_location]
|
|
radius=1
|
|
[filter]
|
|
id=statue
|
|
[/filter]
|
|
[/filter_location]
|
|
[/filter]
|
|
[message]
|
|
id=statue
|
|
message="No more dynamic events! Sorry..."
|
|
[/message]
|
|
[/value]
|
|
[/set_variables]
|
|
{MODIFY_UNIT id=statue status.stoned true}
|
|
[/command]
|
|
[/option]
|
|
[/message]
|
|
[insert_tag]
|
|
name=event
|
|
variable={VAR}
|
|
[/insert_tag]
|
|
[/literal]
|
|
[/set_variables]
|
|
#enddef
|
|
|
|
[event]
|
|
name=prestart
|
|
[set_menu_item]
|
|
id=dynamic_ev
|
|
description="Start Dynamic Events!"
|
|
[filter_location]
|
|
[filter]
|
|
id=statue
|
|
[/filter]
|
|
[/filter_location]
|
|
[command]
|
|
{DYNAMIC_EVENT_SETUP "new turn" ev}
|
|
[insert_tag]
|
|
name=event
|
|
variable=ev
|
|
[/insert_tag]
|
|
[set_menu_item]
|
|
id=dynamic_ev
|
|
[show_if]
|
|
[not]
|
|
[/not]
|
|
[/show_if]
|
|
[/set_menu_item]
|
|
[unstone]
|
|
id=statue
|
|
[/unstone]
|
|
[/command]
|
|
[/set_menu_item]
|
|
[/event]
|
|
|
|
[/test]
|
|
|
|
# vim: tabstop=4: shiftwidth=4: expandtab: softtabstop=4: autoindent:
|