Skip to main content

The "vngen_option_create_ext" Function

Syntax#

vngen_option_create_ext(id, text, sprite, spr_hover, spr_select, xorig, yorig, x, y, z, tx, ty, scaling, font, color, trans_in, trans_out, duration, ease);
ArgumentTypeDescription
idreal/stringThe unique identifier to use for the new option
textstringThe option text to display over the background (or "" for none)
spritespriteThe sprite to display as a button background
spr_hoverspriteThe sprite to display as a background when hovered (or keyword none for default)
spr_selectspriteThe sprite to display as a background when selected (or keyword none for default)
xorigreal/macroThe horizontal sprite offset, or origin point, relative to the top-left corner
yorigreal/macroThe vertical sprite offset, or origin point, relative to the top-left corner
xrealThe horizontal position to display the option, relative to the option block offset
yrealThe vertical position to display the option, relative to the option block offset
zrealThe drawing depth and list order of the option, relative to other options only
txreal/macroThe horizontal position to display text, relative to the option sprite top-left corner (or keyword auto for center)
tyreal/macroThe vertical position to display text, relative to the option sprite top-left corner (or keyword auto for center)
scalinginteger/macroSets the automatic scaling mode for the option
fontfontThe font to draw text in, where fnt_default is default
colorcolorThe default color to draw text in, where c_white is default
trans_inscriptSets the transition animation to perform when created
trans_outscriptSets the transition animation to perform when destroyed
durationrealSets the duration of the transition animations, in seconds
easeinteger/macroSets the ease override for the transition scripts

Description#

Creates a new option with extra features which will be displayed until any option in the current option block has been selected. The chosen option ID will be recorded as the selected choice. Options can selected by mouse/touch, or by other input devices with vngen_option_nav and vngen_option_select.

Unlike other entities, option z-index determines not just drawing depth, but also navigation order. Options with lower z-index will be considered lower in the list of options. If z-index is equal between two or more options, navigation order will automatically be set by reverse creation order, but this may or may not be visually correct. Therefore, it is recommended to always set z-index explicitly. The actual values used are inconsequential so long as they are ordered from highest to lowest.

Note that although this script is an action, it cannot be executed outside of a vngen_option block. In this way, an entire option block can be thought of as a single action.

See Included Animations and Macros & Keywords for a list of available transition animations and ease modes.

Example#

if vngen_event() {
if vngen_option("op_choice", 0, 0, 0.5, 0.5) {
vngen_option_create_ext("op1", "Option 1", spr_option, spr_option_hover, spr_option_select, orig_center, orig_center, 0, 0, -1, 72, 12, scale_none, fnt_Arial, c_white, trans_slide_right, trans_slide_left, 1, ease_elastic_out);
vngen_option_create_ext("op2", "Option 2", spr_option, spr_option_hover, spr_option_select, orig_center, orig_center, 0, 50, -2, 72, 12, scale_none, fnt_Arial, c_white, trans_slide_right, trans_slide_left, 1.5, ease_elastic_out);
}
}