wesnoth/data/core/macros/items.cfg
Steve Cotton a1d92d466e Prose: the Storm Trident's description uses "merfolk" (issue #2936)
Also update Dead Water's copy of it to use race= instead of a
list of unit types (as done for the core object in 613dd431).
2018-06-15 21:01:28 +02:00

576 lines
15 KiB
INI
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#textdomain wesnoth
#
# Macros for items and objects
#
#define ITM_WISHINGWELL X Y
[item]
x={X}
y={Y}
image=scenery/well.png
[/item]
[event]
name=moveto
first_time_only=no
[filter]
x={X}
y={Y}
[/filter]
[message]
speaker=narrator
message= _ "You have come across a wishing well. What would you like to wish for?"
image=scenery/well.png
[option]
label= _ "A swift victory"
[command]
[gold]
amount=-1
side=1
[/gold]
[message]
speaker=unit
message= _ "With this golden coin, I wish that this battle end in a swift and safe victory."
[/message]
[/command]
[/option]
[option]
label= _ "Lots of gold"
[command]
[gold]
side=$side_number
amount=-1
[/gold]
[message]
speaker=unit
message= _ "I wish this single gold coin be returned ten-fold to me."
[/message]
[/command]
[/option]
[option]
label= _ "Peace throughout Wesnoth."
[command]
[gold]
side=$side_number
amount=-1
[/gold]
[message]
speaker=unit
message= _ "The only thing worth wishing for is peace throughout the land."
[/message]
[/command]
[/option]
[option]
label= _ "Dont make a wish."
[/option]
[/message]
[/event]
#enddef
#define PICKUPPABLE_ITEM ID X Y CAN_TAKE_FILTER_WML IMAGE TEXT TAKE_IT_STRING LEAVE_IT_STRING CANNOT_TAKE_TEXT OBJECT_WML
# This places an item on the map which can be picked up once, but allows the
# player to choose whether the unit stepping on it should take it or not.
# The "object" doesn't necessarily need to be an [object], any action works.
#
# An example which shows the:
# ! {PICKUPPABLE_ITEM ring_of_hp 8 12 race=human items/ring-red.png
# ! _"$unit.name finds a pretty ring. Should he pick it up?"
# ! _"ring of HP^Take it"
# ! _"ring of HP^Leave it"
# ! _"$unit.name finds a pretty ring. But only a human can take it!" (
# ! [object]
# ! name= _ "Ring of HP"
# ! image=items/ring-red.png
# ! description= _ "This ring grants the wearer +10 max hp!"
# !
# ! [effect]
# ! apply_to=hitpoints
# ! increase_total=10
# ! [/effect]
# ! [/object]
# ! )}
[item]
x,y={X},{Y}
image={IMAGE}
[/item]
[event]
name=moveto
first_time_only=no
[filter]
x,y={X},{Y}
[/filter]
[if]
[have_unit]
x,y={X},{Y}
{CAN_TAKE_FILTER_WML}
[/have_unit]
[variable]
name=item_{ID}_picked_up
not_equals=yes
[/variable]
[then]
[message]
speaker=narrator
message={TEXT}
image={IMAGE}
[option]
label={TAKE_IT_STRING}
[command]
{OBJECT_WML}
[remove_item]
x,y={X},{Y}
image={IMAGE}
[/remove_item]
[set_variable]
name=item_{ID}_picked_up
value=yes
[/set_variable]
[/command]
[/option]
[option]
label={LEAVE_IT_STRING}
[command]
[allow_undo]
[/allow_undo]
[/command]
[/option]
[/message]
[/then]
[else]
[if]
[variable]
name=item_{ID}_picked_up
not_equals=yes
[/variable]
[then]
[message]
speaker=narrator
message={CANNOT_TAKE_TEXT}
image={IMAGE}
side_for=$side_number
# the above is used to prevent an AI side from
# accidentally triggering this dialog
[/message]
[/then]
[/if]
[allow_undo]
[/allow_undo]
[/else]
[/if]
[/event]
[event]
name=victory
[clear_variable]
name=item_{ID}_picked_up
[/clear_variable]
[/event]
#enddef
#define OBJ_POTION_HEALING X Y ID
[item]
x={X}
y={Y}
image=items/potion-red.png
[/item]
[event]
name=moveto
first_time_only=no
[filter]
x={X}
y={Y}
[/filter]
[object]
id={ID}
name= _ "Potion of Healing"
image=items/potion-red.png
duration=scenario
description= _ "A feeling of well-being overwhelms the drinker."
cannot_use_message= _ "You are not worthy of healing."
[filter]
x={X}
y={Y}
[/filter]
[then]
[remove_item]
x,y={X},{Y}
[/remove_item]
[/then]
[effect]
apply_to=hitpoints
increase=10%
[/effect]
[/object]
[/event]
#enddef
#define OBJ_POTION_POISON X Y ID
[item]
x={X}
y={Y}
image=items/potion-yellow.png
[/item]
[event]
name=moveto
first_time_only=no
[filter]
x={X}
y={Y}
[/filter]
[object]
id={ID}
name= _ "Poison"
image=items/potion-yellow.png
duration=scenario
description= _ "Poison is seeping through the veins of this unit at this very moment."
[filter]
x={X}
y={Y}
[/filter]
[then]
[remove_item]
x,y={X},{Y}
[/remove_item]
[/then]
[effect]
apply_to=status
add=poisoned
[/effect]
[/object]
[/event]
#enddef
#define OBJ_POTION_HOLY X Y ID
{PICKUPPABLE_ITEM {ID} {X} {Y} (
side=1
[has_attack]
range=melee
[not]
type=arcane
[/not]
[/has_attack]
) items/holy-water.png
_"Sprinkling this water on melee weapons grants them the <i>arcane</i> damage type until the end of the current scenario. Should $unit.name use it?"
_"holy water^Take it"
_"holy water^Leave it"
_"$unit.name has no need for this Holy Water! Let another take it." (
[object]
name= _ "Holy Water"
image=items/holy-water.png
duration=scenario
description= _ "This water will make melee weapons have the <i>arcane</i> damage type until the end of the current scenario."
[effect]
apply_to=attack
range=melee
set_type=arcane
[/effect]
[/object]
[sound]
name={SOUND_LIST:HOLY}
[/sound]
)}
#enddef
#define OBJ_POTION_STRONG X Y ID
[item]
x={X}
y={Y}
image=items/potion-red.png
[/item]
[event]
name=moveto
first_time_only=no
[filter]
x={X}
y={Y}
[/filter]
[object]
id={ID}
name= _ "Potion of Strength"
image=items/potion-red.png
duration=scenario
description= _ "Strength is given to the drinker."
[filter]
x={X}
y={Y}
[/filter]
[then]
[remove_item]
x,y={X},{Y}
[/remove_item]
[/then]
[effect]
apply_to=attack
range=melee
increase_damage=1
[/effect]
[effect]
apply_to=hitpoints
increase_total=2
heal_full=yes
[/effect]
[/object]
[/event]
#enddef
#define OBJ_POTION_DECAY X Y ID
[item]
x={X}
y={Y}
image=items/potion-blue.png
[/item]
[event]
name=moveto
first_time_only=no
[filter]
x={X}
y={Y}
[/filter]
[object]
id={ID}
name= _ "Potion of Decay"
image=items/potion-blue.png
duration=scenario
description= _ "This poor unit drank something really bad."
[filter]
x={X}
y={Y}
[/filter]
[then]
[remove_item]
x,y={X},{Y}
[/remove_item]
[/then]
[effect]
apply_to=hitpoints
increase=-10%
[/effect]
[/object]
[/event]
#enddef
#define OBJ_RING_REGENERATION X Y ID
[item]
x={X}
y={Y}
image=items/ring-red.png
[/item]
[event]
name=moveto
first_time_only=no
[filter]
x={X}
y={Y}
[/filter]
[object]
id={ID}
name= _ "Ring of Regeneration"
image=items/ring-red.png
duration=forever
description= _ "This ring will heal the bearer a little each turn."
[filter]
x={X}
y={Y}
[/filter]
[then]
[remove_item]
x,y={X},{Y}
[/remove_item]
[/then]
[effect]
apply_to=new_ability
[abilities]
{ABILITY_REGENERATES}
[/abilities]
[/effect]
[/object]
[/event]
#enddef
#define OBJ_RING_SLOW X Y ID
[item]
x={X}
y={Y}
image=items/ring-brown.png
[/item]
[event]
name=moveto
first_time_only=no
[filter]
x={X}
y={Y}
[/filter]
[object]
id={ID}
name= _ "Ring of Slowness"
image=items/ring-brown.png
duration=forever
description= _ "The bearer of this ring is slowed."
[filter]
x={X}
y={Y}
[/filter]
[then]
[remove_item]
x,y={X},{Y}
[/remove_item]
[/then]
[effect]
apply_to=status
add=slowed
[/effect]
[/object]
[/event]
#enddef
#define OBJ_STAFF_SPEED X Y ID
[item]
x={X}
y={Y}
image=items/staff.png
[/item]
[event]
name=moveto
first_time_only=no
[filter]
x={X}
y={Y}
[/filter]
[object]
id={ID}
name= _ "Staff of Swiftness"
image=items/staff.png
duration=forever
description= _ "This staff will grant the bearer swift movement."
cannot_use_message= _ "Only magical beings can wield such an object."
[filter]
x={X}
y={Y}
[/filter]
[then]
[remove_item]
x,y={X},{Y}
[/remove_item]
[/then]
[effect]
apply_to=movement
increase=2
[/effect]
[/object]
[/event]
#enddef
#wmllint: markcheck off
#define LIGHTNING_ANIMATION NAME_STRING DIRECTION_NUMBER
#"Effect generating a new animation that throws lightning in a specified direction."
[effect]
apply_to=new_animation
id={NAME_STRING}_{DIRECTION_NUMBER}
[attack_anim]
[filter_attack]
name={NAME_STRING}
[/filter_attack]
{LIGHTNING_BOLT {DIRECTION_NUMBER}}
{SOUND:HIT_AND_MISS lightning.ogg lightning-miss.ogg -200}
[/attack_anim]
[/effect]
#enddef
#define OBJ_TRIDENT_STORM X Y ID
{PICKUPPABLE_ITEM {ID} {X} {Y} (
race=merman
[not]
[has_attack]
name="storm trident"
[/has_attack]
[/not]
) items/storm-trident.png
_"Should $unit.name pick up the trident?"
_"storm trident^Take it"
_"storm trident^Leave it"
_"$unit.name cannot use this Storm Trident! Let one of the merfolk who can wield it have it." (
[object]
name= _ "Storm Trident"
image=items/storm-trident.png
duration=forever
description= _ "This trident gives merfolk the power to throw lightning at their enemies."
[effect]
apply_to=new_attack
name="storm trident"
description= _ "storm trident"
icon=attacks/lightning.png
type=fire
range=ranged
[specials]
{WEAPON_SPECIAL_MAGICAL}
[/specials]
damage=14
number=2
[/effect]
{LIGHTNING_ANIMATION "storm trident" 1}
{LIGHTNING_ANIMATION "storm trident" 2}
{LIGHTNING_ANIMATION "storm trident" 3}
[/object]
)}
#enddef
#wmllint: markcheck on
#define SCEPTRE_OF_FIRE_EFFECT
[effect]
apply_to=new_attack
name=sceptre of fire
description= _ "sceptre of fire"
icon=attacks/fireball.png
type=fire
range=ranged
[specials]
{WEAPON_SPECIAL_MAGICAL}
[/specials]
damage=15
number=4
[/effect]
[effect]
apply_to=new_animation
id="sceptre of fire"
[attack_anim]
[filter_attack]
name=sceptre of fire
[/filter_attack]
{MISSILE_FRAME_FIREBALL_XY 0 0}
start_time=-200
[frame]
sound=fire.wav
[/frame]
[/attack_anim]
[/effect]
#enddef