wesnoth/data/core/macros/image-utils.cfg
2010-03-01 18:50:37 +00:00

236 lines
5.8 KiB
INI

#textdomain wesnoth
# Utility macros for images, overlays, and display effects.
# These don't depend on any other macros. Please don't change this.
#define MAGENTA_IS_THE_TEAM_COLOR
# A macro to define a common set of magenta color values which different
# units can be color shifted by using the team color system.
flag_rgb=magenta
#enddef
#define COLOR_HEAL
green=255
#enddef
#define COLOR_HARM
red=255
#enddef
#define COLOR_WHITE
red=255
green=255
blue=255
#enddef
#define IS_HERO
# Embed this into a unit declaration to add a hero icon to the unit.
overlays="misc/hero-icon.png"
#enddef
#define IS_LOYAL
# Embed this into a unit declaration to add a loyalty icon to the unit.
overlays="misc/loyal-icon.png"
#enddef
#define NEW_JOURNEY X Y
# Make a new journey mark on a tracking map
[image]
x,y={X},{Y}
file=misc/new-journey.png
delay=500
centered=yes
[/image]
#enddef
#define OLD_JOURNEY X Y
# Make an old journey mark on a tracking map
[image]
x,y={X},{Y}
file=misc/dot-white.png
centered=yes
[/image]
#enddef
#define NEW_BATTLE X Y
# Make a new battle mark on a tracking map
[image]
x,y={X},{Y}
file=misc/new-battle.png
delay=500
centered=yes
[/image]
#enddef
#define OLD_BATTLE X Y
# Make an old battle mark on a tracking map
[image]
x,y={X},{Y}
file=misc/cross-white.png
centered=yes
[/image]
#enddef
#define NEW_REST X Y
# Make a new rest mark on a tracking map
[image]
x,y={X},{Y}
file=misc/flag-red.png
delay=500
centered=yes
[/image]
#enddef
#define OLD_REST X Y
# Make an old rest mark on a tracking map
[image]
x,y={X},{Y}
file=misc/flag-white.png
centered=yes
[/image]
#enddef
#define PLACE_IMAGE IMAGE X Y
# Place an image at a specified location on the map.
[item]
x={X}
y={Y}
image={IMAGE}
[/item]
#enddef
#define REMOVE_IMAGE X Y
# Removes a previously set image from a tile.
#
# Example:
#! {REMOVE_IMAGE 14 5}
[removeitem]
x,y={X},{Y}
[/removeitem]
#enddef
#define TEAM_COLOR_OVERRIDE FILTER TEAMCOLOR_ID
# Override the team color of filtered units.
[object]
silent=yes
[filter]
{FILTER}
[/filter]
[effect]
apply_to=image_mod
add=RC(magenta>{TEAMCOLOR_ID})
[/effect]
[/object]
#enddef
#define MAKE_HERO ID_STRING
# Give an existing unit a hero overlay
[store_unit]
[filter]
id={ID_STRING}
[/filter]
variable=hero_store
kill=no
[/store_unit]
[unit_overlay]
x=$hero_store.x
y=$hero_store.y
image=misc/hero-icon.png
[/unit_overlay]
{CLEAR_VARIABLE hero_store}
#enddef
#define UNMAKE_HERO ID_STRING
# Remove the hero overlay from a unit
[store_unit]
[filter]
id={ID_STRING}
[/filter]
variable=hero_store
kill=no
[/store_unit]
[remove_unit_overlay]
x=$hero_store.x
y=$hero_store.y
image=misc/hero-icon.png
[/remove_unit_overlay]
{CLEAR_VARIABLE hero_store}
#enddef
#define ANIMATED_CAMPFIRE X Y
# Embed this at scenario toplevel, not within an event.
# Note that it will freeze while dialogue popups are onscreen.
[terrain_graphics]
x={X}
y={Y}
[tile]
x=0
y=0
[image]
layer=0
name="../scenery/fire1:140,../scenery/fire2:140,../scenery/fire3:140,../scenery/fire4:140,../scenery/fire5:140,../scenery/fire6:140,../scenery/fire7:140,../scenery/fire8:140"
[/image]
[/tile]
[/terrain_graphics]
#enddef
#define ANIMATED_BRAZIER X Y
# Embed this at scenario toplevel, not within an event.
# Note that it will freeze while dialogue popups are onscreen.
[terrain_graphics]
x={X}
y={Y}
[tile]
x=0
y=0
[image]
layer=0
name="../items/brazier-lit1:140,../items/brazier-lit2:140,../items/brazier-lit3:140,../items/brazier-lit4:140,../items/brazier-lit5:140,../items/brazier-lit6:140,../items/brazier-lit7:140,../items/brazier-lit8:140"
[/image]
[/tile]
[/terrain_graphics]
#enddef
#define FLAG_VARIANT NAME
# Enable the specified flag variant: knalgan, loyalist, or undead.
# Use within a [side] block; only affects that side.
# wmlscope: start ignoring
flag=flags/{NAME}-flag-1.png:150,flags/{NAME}-flag-2.png:150,flags/{NAME}-flag-3.png:150,flags/{NAME}-flag-4.png:150
flag_icon=flags/{NAME}-flag-icon.png
# wmlscope: stop ignoring
flag_rgb=flag_green
#enddef
#define ANIMATED_MAUSOLEUM X Y
# Embed this at scenario toplevel, not within an event.
# Note that it will freeze while dialogue popups are onscreen.
[terrain_graphics]
x={X}
y={Y}
[tile]
x=0
y=0
set_flag=mausoleum
[/tile]
[/terrain_graphics]
[terrain_graphics]
map="
, *
* , *
, 1
* , *
, *"
[tile]
pos=1
has_flag=mausoleum
[/tile]
[image]
layer=0
center=92,138
name="../scenery/mausoleum01:140,../scenery/mausoleum02:140,../scenery/mausoleum03:140,../scenery/mausoleum04:140,../scenery/mausoleum05:140,../scenery/mausoleum06:140,../scenery/mausoleum07:140,../scenery/mausoleum08:140,../scenery/mausoleum09:140,../scenery/mausoleum10:140,../scenery/mausoleum11:140,../scenery/mausoleum12:140,../scenery/mausoleum13:140,../scenery/mausoleum14:140,../scenery/mausoleum15:140,../scenery/mausoleum16:140,../scenery/mausoleum17:140,../scenery/mausoleum18:140"
[/image]
[/terrain_graphics]
#enddef