DroppableItem
From The Battle for Wesnoth Wiki
Droppable Item
X=the starting X-location for the object
Y=the starting Y-location for the object
XVAR=the variable to store the item's current X-location in
YVAR=the variable to store the item's current Y-location in
NAME=the name of the object
IMAGE=the image of the object
#define DROPPABLE_ITEM X Y XVAR YVAR NAME IMAGE ADDITIONAL_FILTERS [label] x={X} y={Y} text="{NAME}" [/label] [event] name=prestart {VARIABLE {XVAR} {X}} {VARIABLE {YVAR} {Y}} [item] x=${XVAR} y=${YVAR} image={IMAGE} [/item] [event] name=die first_time_only=no [store_unit] [filter] x=$x1 y=$y1 [/filter] variable=itemstore [/store_unit] [if] [variable] name=itemstore.variables.{XVAR} equals=on [/variable] [then] {VARIABLE_OP {XVAR} to_variable x1} {VARIABLE_OP {YVAR} to_variable y1} [item] x=$x1 y=$y1 image={IMAGE} [/item] [/then] [/if] [/event] [event] name=moveto first_time_only=no [filter] x=${XVAR} y=${YVAR} {ADDITIONAL_FILTERS} [/filter] [removeitem] x=${XVAR} y=${YVAR} [/removeitem] [store_unit] variable=itemstore [filter] x=${XVAR} y=${YVAR} [/filter] [/store_unit] {VARIABLE itemstore.variables.{XVAR} on} [unstore_unit] variable=itemstore [/unstore_unit] [unit_overlay] x=${XVAR} y=${YVAR} image={IMAGE} [/unit_overlay] [object] name={NAME} image={IMAGE} duration=forever cannot_use_message="-cannot use message-" [filter] x=${XVAR} y=${YVAR} [/filter] #enddef #All this should be between the usage of the DROPPABLE_ITEM macro and its /DROPPABLE_ITEM # description="-the description-" # [effect] # blahblahblah=somethingorother # [/effect] #define /DROPPABLE_ITEM XVAR YVAR [/object] {VARIABLE {XVAR} 0} {VARIABLE {YVAR} 0} [/event] [/event] #enddef