KDScriptCustom HUD elements

KDQuestArrow

ParameterTypeDescriptionDefault value
quest_arrowbooleanwhether to initially display the quest arrow(see below)
quest_arrow_goalintegerdisable arrow once this objective is completed-1 (none)
quest_arrow_rangerealmaximum distance from the player, in DromEd units, at which the arrow is shown0.0 (infinite)
quest_arrow_obscuredbooleanwhether to show the arrow even when the object is not visible (obscured by something)false
quest_arrow_imagestringpath to a bitmap or name of a symbol (see below)@arrow
quest_arrow_textstringname of a text string or special string (see below)@name
quest_arrow_colorcolorcolor of any symbol or text drawn#ffffff (white)
quest_arrow_shadowbooleanwhether to draw a shadow behind the symbol/texttrue

KDQuestArrow displays an image, a symbol, and/or text on screen that tracks the position of the object is is placed on. The arrow might be used to direct the player towards an objective, point out an important area or object, or give brief additional information. This is a custom HUD element script; see the custom HUD elements documentation for more details.

The quest_arrow parameter determines whether the arrow is initially enabled (visible) or not. By default, the arrow starts enabled (true) unless it is or has been contained by the player (or the starting point). The arrow can be turned on or off during the mission by sending this object a QuestArrowOn or QuestArrowOff message. If the quest_arrow_goal parameter is set, the arrow is enabled only when that objective is incomplete and visible. Additionally, the arrow is automatically turned off in any of the following events: the object is contained by the player (put in inventory); the object is slain (even if it is not destroyed); the AI object is knocked out.

Even if the quest arrow is enabled, it will only be drawn if its distance from the player is less than or equal to quest_arrow_range (if that parameter is greater than zero). By default, it will also not be drawn if the player cannot see the object. If the quest_arrow_obscured parameter is true, however, the arrow will be displayed even if the object is not visible (is obscured by other objects or terrain). The direction of the object must still be within the player's current field of view.

The quest_arrow_image parameter determines how the quest arrow appears. If it is set to one of the predefined symbols, the named symbol will be drawn. Otherwise, this parameter should be a relative path to a bitmap image that will represent the arrow. The bitmap should be relatively small but may have a full alpha channel. Animations and context-sensitive choice of images are not yet supported. If the image cannot be loaded, an @arrow will be drawn instead.

The quest_arrow_text parameter determines what text, if any, is displayed next to the arrow image. This parameter does not contain the text itself; it is either one of the special values listed below or the name of a string in the strings\hud.str file.

@none
No text is displayed (image only).
@name
The object's name, as defined in the Inventory→Object Name property, is displayed.
@description
The object's description, as defined in the Inventory→Long Description property, is displayed.
@objective
The short description of the objective identified in the quest_arrow_goal parameter is displayed. *

The @objective value for quest_arrow_text is available in T2 (TMA) only. It is not available in DromEd game mode, TG, or T1 (TDP), where the arrow will not display any text for this value.

Any named symbol or text will be drawn in the color specified in the quest_arrow_color parameter. If the quest_arrow_shadow parameter is true, the symbol and/or text will have a thin black shadow drawn behind it for increased visibility.

This script is part of the KDScript module. Copyright © 2012–2013 Kevin Daughtridge. See introduction for details.