wesnoth/data/core/macros/teleport-utils.cfg

259 lines
6.2 KiB
INI

#textdomain wesnoth
# Macros for teleporting units.
# These don't depend on any other macros. Please don't change this.
# ! in comments is used in generating HTML documentation, ignore it otherwise.
#define TELEPORT_UNIT FILTER X Y
# Teleports a unit matching FILTER to X,Y
#
# For example, teleport player 3's leader to 4,5
#! {TELEPORT_UNIT (
#! side=3
#! canrecruit=yes
#! ) 4 5}
[teleport]
[filter]
{FILTER}
[/filter]
x={X}
y={Y}
[/teleport]
[redraw]
[/redraw]
#enddef
#define TELEPORT_TILE OLD_X OLD_Y NEW_X NEW_Y
# Teleports a unit on tile OLD_X,OLD_Y to NEW_X,NEW_Y
#
# For example, teleport any unit that's currently on 1,1 to 4,5
#! {TELEPORT_TILE 1 1 4 5}
[teleport]
[filter]
x={OLD_X}
y={OLD_Y}
[/filter]
x={NEW_X}
y={NEW_Y}
[/teleport]
[redraw]
[/redraw]
#enddef
#define TELEPORT_OUT_ANIMATION
# Generalized silver mage teleport out (disappear) animation
#
# For example, to apply a teleport animation to a custom unit definition:
#![animation]
#! apply_to=pre_teleport
#! {TELEPORT_OUT_ANIMATION}
#![/animation]
start_time=-1200
teleport_sparkle_1_start_time=-1200
teleport_sparkle_2_start_time=-1000
teleport_sparkle_3_start_time=-800
[teleport_sparkle_1_frame]
duration=800
halo=halo/teleport-[9,8,1~9].png
halo_x=-10
halo_y=30~-30
[/teleport_sparkle_1_frame]
[teleport_sparkle_2_frame]
duration=800
halo=halo/teleport-[9,8,1~9].png
halo_x=0
halo_y=40~-40
[/teleport_sparkle_2_frame]
[teleport_sparkle_3_frame]
duration=800
halo=halo/teleport-[9,8,1~9].png
halo_x=10
halo_y=30~-30
[/teleport_sparkle_3_frame]
[frame]
duration=100
image_mod=~MASK(masks/teleport-mask-0.png)
[/frame]
[frame]
duration=100
image_mod=~MASK(masks/teleport-mask-1.png)
[/frame]
[frame]
duration=100
image_mod=~MASK(masks/teleport-mask-2.png)
[/frame]
[frame]
duration=100
image_mod=~MASK(masks/teleport-mask-3.png)
[/frame]
[frame]
duration=100
image_mod=~MASK(masks/teleport-mask-4.png)
[/frame]
[frame]
duration=100
image_mod=~MASK(masks/teleport-mask-5.png)
[/frame]
[frame]
duration=100
image_mod=~MASK(masks/teleport-mask-6.png)
[/frame]
[frame]
duration=100
image_mod=~MASK(masks/teleport-mask-7.png)
[/frame]
[frame]
duration=100
image_mod=~MASK(masks/teleport-mask-8.png)
[/frame]
[frame]
duration=100
image_mod=~MASK(masks/teleport-mask-9.png)
[/frame]
[frame]
duration=200
image="misc/blank-hex.png"
[/frame]
#enddef
#define TELEPORT_IN_ANIMATION
# Generalized silver mage teleport in (reappear) animation
#
# For example, to apply a teleport animation to a custom unit definition:
#![animation]
#! apply_to=post_teleport
#! {TELEPORT_IN_ANIMATION}
#![/animation]
start_time=-1200
teleport_sparkle_1_start_time=-1200
teleport_sparkle_2_start_time=-1000
teleport_sparkle_3_start_time=-800
[teleport_sparkle_1_frame]
duration=800
halo=halo/teleport-[9,8,1~9].png
halo_x=10
halo_y=-30~30
[/teleport_sparkle_1_frame]
[teleport_sparkle_2_frame]
duration=800
halo=halo/teleport-[9,8,1~9].png
halo_x=0
halo_y=-40~40
[/teleport_sparkle_2_frame]
[teleport_sparkle_3_frame]
duration=800
halo=halo/teleport-[9,8,1~9].png
halo_x=-10
halo_y=-30~30
[/teleport_sparkle_3_frame]
[frame]
duration=200
image="misc/blank-hex.png"
[/frame]
[frame]
duration=100
image_mod=~MASK(masks/teleport-mask-9.png)
[/frame]
[frame]
duration=100
image_mod=~MASK(masks/teleport-mask-8.png)
[/frame]
[frame]
duration=100
image_mod=~MASK(masks/teleport-mask-7.png)
[/frame]
[frame]
duration=100
image_mod=~MASK(masks/teleport-mask-6.png)
[/frame]
[frame]
duration=100
image_mod=~MASK(masks/teleport-mask-5.png)
[/frame]
[frame]
duration=100
image_mod=~MASK(masks/teleport-mask-4.png)
[/frame]
[frame]
duration=100
image_mod=~MASK(masks/teleport-mask-3.png)
[/frame]
[frame]
duration=100
image_mod=~MASK(masks/teleport-mask-2.png)
[/frame]
[frame]
duration=100
image_mod=~MASK(masks/teleport-mask-1.png)
[/frame]
[frame]
duration=100
image_mod=~MASK(masks/teleport-mask-0.png)
[/frame]
#enddef
#define TELEPORT_EFFECT_OBJECT_ID _ID_
# Creates and assigns a temporary object which applies the generalized silver mage
# teleport animations to the unit with the matching ID
#
# For example, to apply teleport animations to the unit 'Bob':
#!{TELEPORT_EFFECT_OBJECT_ID Bob}
[object]
silent=yes
duration=turn
[filter]
id={_ID_}
[/filter]
[effect]
apply_to=new_animation
[animation]
apply_to=pre_teleport
{TELEPORT_OUT_ANIMATION}
[/animation]
[animation]
apply_to=post_teleport
{TELEPORT_IN_ANIMATION}
[/animation]
[/effect]
[/object]
#enddef
#define TELEPORT_EFFECT_OBJECT
# Creates and assigns a temporary object which applies the generalized silver mage
# teleport animations to the primary unit
#
# For example, to apply teleport animations to the unit that triggered a 'move_to' event:
#!{TELEPORT_EFFECT_OBJECT}
[object]
silent=yes
duration=turn
[effect]
apply_to=new_animation
[animation]
apply_to=pre_teleport
{TELEPORT_OUT_ANIMATION}
[/animation]
[animation]
apply_to=post_teleport
{TELEPORT_IN_ANIMATION}
[/animation]
[/effect]
[/object]
#enddef