BIS fnc holdActionAdd: Difference between revisions
Jump to navigation
Jump to search
Lou Montana (talk | contribs) m (Fix note) |
m (Added an icon from AOW (pointed out by Trager on Discord)) |
||
Line 11: | Line 11: | ||
|descr= Adds an action to an object which requires the user to hold a key to perform the action.<br> | |descr= Adds an action to an object which requires the user to hold a key to perform the action.<br> | ||
Available official icons as of {{arma3}} | Available official icons as of {{GVI|arma3|2.02}}: | ||
[[File:A3 HoldActionIcons v2.02.png|thumb| | <spoiler text="Show list"> | ||
[[File:A3 HoldActionIcons v2.02.png|thumb|Note: This image does not contain all available icons.|left|500px]] {{Clear}} | |||
Full list: | |||
* "\a3\Missions_F_Orange\Data\Img\Showcase_LawsOfWar\action_access_fm_CA.paa" | * "\a3\Missions_F_Orange\Data\Img\Showcase_LawsOfWar\action_access_fm_CA.paa" | ||
* "\a3\Missions_F_Orange\Data\Img\Showcase_LawsOfWar\action_end_sim_CA.paa" | * "\a3\Missions_F_Orange\Data\Img\Showcase_LawsOfWar\action_end_sim_CA.paa" | ||
Line 57: | Line 59: | ||
* "\a3\ui_f_orange\Data\CfgOrange\Missions\action_idap_ca.paa" | * "\a3\ui_f_orange\Data\CfgOrange\Missions\action_idap_ca.paa" | ||
* "\a3\ui_f_orange\Data\CfgOrange\Missions\action_nato_ca.paa" | * "\a3\ui_f_orange\Data\CfgOrange\Missions\action_nato_ca.paa" | ||
* "\a3\ui_f_aow\data\igui\cfg\holdactions\holdaction_charity_ca.paa" | |||
</spoiler> | </spoiler> | ||
Line 100: | Line 103: | ||
<syntaxhighlight lang="cpp">params ["_a0","_a1","_a2","_a3","_a4","_a5","_a6","_a7","_a8","_a9","_target","_title","_iconIdle","_iconProgress","_condShow","_condProgress","_codeStart","_codeProgress","_codeCompleted","_codeInterrupted","_duration","_removeCompleted"];</syntaxhighlight> where {{ic|_a0 - _a9}} can be custom arguments | <syntaxhighlight lang="cpp">params ["_a0","_a1","_a2","_a3","_a4","_a5","_a6","_a7","_a8","_a9","_target","_title","_iconIdle","_iconProgress","_condShow","_condProgress","_codeStart","_codeProgress","_codeCompleted","_codeInterrupted","_duration","_removeCompleted"];</syntaxhighlight> where {{ic|_a0 - _a9}} can be custom arguments | ||
|p12= duration: [[Number]] - action duration, | |p12= duration: [[Number]] - action duration, i.e. how much time it takes to complete the action | ||
|p13= priority: [[Number]] - priority value; actions are arranged in descending order according to this value | |p13= priority: [[Number]] - priority value; actions are arranged in descending order according to this value | ||
Line 109: | Line 112: | ||
|p16= showWindow: [[Boolean]] - (Optional, default [[true]]) show on screen; if false action needs to be selected from action menu to appear on screen | |p16= showWindow: [[Boolean]] - (Optional, default [[true]]) show on screen; if false action needs to be selected from action menu to appear on screen | ||
|r1= [[Number]] - Action ID | |||
|x1= <code>[<nowiki/>[[player]], "Kill", "", "", "[[true]]", "[[true]]", { [[hint]] "Started!" }, { [[systemChat]] [[str]] ([[Magic Variables#this|_this]] [[select]] 3) }, { [[player]] [[setDamage]] 1 }, { [[hint]] "Afraid of death?" }, [], 10, [[nil]], [[true]], [[false]]] [[call]] [[BIS_fnc_holdActionAdd]];</code> | |x1= <code>[<nowiki/>[[player]], "Kill", "", "", "[[true]]", "[[true]]", { [[hint]] "Started!" }, { [[systemChat]] [[str]] ([[Magic Variables#this|_this]] [[select]] 3) }, { [[player]] [[setDamage]] 1 }, { [[hint]] "Afraid of death?" }, [], 10, [[nil]], [[true]], [[false]]] [[call]] [[BIS_fnc_holdActionAdd]];</code> | ||
Line 124: | Line 129: | ||
{}, {{cc|Code executed on interrupted}} | {}, {{cc|Code executed on interrupted}} | ||
[], {{cc|Arguments passed to the scripts as _this select 3}} | [], {{cc|Arguments passed to the scripts as _this select 3}} | ||
12, {{cc|Action duration | 12, {{cc|Action duration in seconds}} | ||
0, {{cc|Priority}} | 0, {{cc|Priority}} | ||
[[true]], {{cc|Remove on completion}} | [[true]], {{cc|Remove on completion}} | ||
Line 130: | Line 135: | ||
] [[remoteExec]] ["[[BIS_fnc_holdActionAdd]]", 0, _myLaptop]; {{cc|MP compatible implementation}}</code> | ] [[remoteExec]] ["[[BIS_fnc_holdActionAdd]]", 0, _myLaptop]; {{cc|MP compatible implementation}}</code> | ||
|seealso= [[BIS_fnc_holdActionRemove]] [[BIS_fnc_holdKey]] | |||
|seealso= [[BIS_fnc_holdActionRemove]] | |||
}} | }} | ||
Revision as of 11:25, 13 January 2022
Description
- Description:
- Adds an action to an object which requires the user to hold a key to perform the action.
Available official icons as of 2.02:Full list:
- "\a3\Missions_F_Orange\Data\Img\Showcase_LawsOfWar\action_access_fm_CA.paa"
- "\a3\Missions_F_Orange\Data\Img\Showcase_LawsOfWar\action_end_sim_CA.paa"
- "\a3\Missions_F_Orange\Data\Img\Showcase_LawsOfWar\action_exit_CA.paa"
- "\a3\Missions_F_Orange\Data\Img\Showcase_LawsOfWar\action_start_sim_CA.paa"
- "\a3\Missions_F_Orange\Data\Img\Showcase_LawsOfWar\action_view_article_CA.paa"
- "\a3\data_f_destroyer\data\UI\IGUI\Cfg\holdactions\holdAction_loadVehicle_ca.paa"
- "\a3\data_f_destroyer\data\UI\IGUI\Cfg\holdactions\holdAction_unloadVehicle_ca.paa"
- "\a3\missions_f_oldman\data\img\holdactions\holdAction_box_ca.paa"
- "\a3\missions_f_oldman\data\img\holdactions\holdAction_follow_start_ca.paa"
- "\a3\missions_f_oldman\data\img\holdactions\holdAction_follow_stop_ca.paa"
- "\a3\missions_f_oldman\data\img\holdactions\holdAction_talk_ca.paa"
- "\a3\ui_f\data\IGUI\Cfg\holdactions\holdAction_connect_ca.paa"
- "\a3\ui_f\data\IGUI\Cfg\holdactions\holdAction_forceRespawn_ca.paa"
- "\a3\ui_f\data\IGUI\Cfg\holdactions\holdAction_hack_ca.paa"
- "\a3\ui_f\data\IGUI\Cfg\holdactions\holdAction_loaddevice_ca.paa"
- "\a3\ui_f\data\IGUI\Cfg\holdactions\holdAction_passleadership_ca.paa"
- "\a3\ui_f\data\IGUI\Cfg\holdactions\holdAction_requestleadership_ca.paa"
- "\a3\ui_f\data\IGUI\Cfg\holdactions\holdAction_reviveMedic_ca.paa"
- "\a3\ui_f\data\IGUI\Cfg\holdactions\holdAction_revive_ca.paa"
- "\a3\ui_f\data\IGUI\Cfg\holdactions\holdAction_search_ca.paa"
- "\a3\ui_f\data\IGUI\Cfg\holdactions\holdAction_secure_ca.paa"
- "\a3\ui_f\data\IGUI\Cfg\holdactions\holdAction_takeOff1_ca.paa"
- "\a3\ui_f\data\IGUI\Cfg\holdactions\holdAction_takeOff2_ca.paa"
- "\a3\ui_f\data\IGUI\Cfg\holdactions\holdAction_thumbsdown_ca.paa"
- "\a3\ui_f\data\IGUI\Cfg\holdactions\holdAction_thumbsup_ca.paa"
- "\a3\ui_f\data\IGUI\Cfg\holdactions\holdAction_unbind_ca.paa"
- "\a3\ui_f\data\IGUI\Cfg\holdactions\holdAction_unloaddevice_ca.paa"
- "\a3\ui_f_oldman\data\IGUI\Cfg\holdactions\attack_ca.paa"
- "\a3\ui_f_oldman\data\IGUI\Cfg\holdactions\destroy_ca.paa"
- "\a3\ui_f_oldman\data\IGUI\Cfg\holdactions\holdAction_market_ca.paa"
- "\a3\ui_f_oldman\data\IGUI\Cfg\holdactions\holdAction_sleep2_ca.paa"
- "\a3\ui_f_oldman\data\IGUI\Cfg\holdactions\holdAction_sleep_ca.paa"
- "\a3\ui_f_oldman\data\IGUI\Cfg\holdactions\map_ca.paa"
- "\a3\ui_f_oldman\data\IGUI\Cfg\holdactions\meet_ca.paa"
- "\a3\ui_f_oldman\data\IGUI\Cfg\holdactions\refuel_ca.paa"
- "\a3\ui_f_oldman\data\IGUI\Cfg\holdactions\repair_ca.paa"
- "\a3\ui_f_orange\Data\CfgOrange\Missions\action_aaf_ca.paa"
- "\a3\ui_f_orange\Data\CfgOrange\Missions\action_csat_ca.paa"
- "\a3\ui_f_orange\Data\CfgOrange\Missions\action_escape_ca.paa"
- "\a3\ui_f_orange\Data\CfgOrange\Missions\action_fia_ca.paa"
- "\a3\ui_f_orange\Data\CfgOrange\Missions\action_fragment_back_ca.paa"
- "\a3\ui_f_orange\Data\CfgOrange\Missions\action_fragment_ca.paa"
- "\a3\ui_f_orange\Data\CfgOrange\Missions\action_idap_ca.paa"
- "\a3\ui_f_orange\Data\CfgOrange\Missions\action_nato_ca.paa"
- "\a3\ui_f_aow\data\igui\cfg\holdactions\holdaction_charity_ca.paa"
- Execution:
- call
- Groups:
- Interaction
Syntax
- Syntax:
- [target, title, idleIcon, progressIcon, conditionShow, conditionProgress, codeStart, codeProgress, codeCompleted, codeInterrupted, arguments, duration, priority, removeCompleted, showUnconscious, showWindow] call BIS_fnc_holdActionAdd
- Parameters:
- target: Object - Object the action is attached to
- title: String - Title of the action shown in the action menu.It can contain Structured Text tags, such as
<t color='#FFAA00'>text</t>
- idleIcon: String - Path of the idle icon shown on screen
- progressIcon: String - Path of the progress icon shown on screen
- conditionShow: String - Condition for the action to be shown.
Special arguments passed to the code: _target (action-attached object), _this (caller/executing unit) - conditionProgress: String - Condition for the action to progress; if false is returned action progress is paused.
Special arguments passed to the code: _target, _caller, _id, _arguments - codeStart: Code - Code executed when action starts. Passed arguments are:
params ["_target", "_caller", "_actionId", "_arguments"];
- codeProgress: Code - Code executed on every progress tick. Passed arguments are:
params ["_target", "_caller", "_actionId", "_arguments", "_progress", "_maxProgress"];
- target: Object - the object which the action is assigned to
- caller: Object - the unit that activated the action
- actionId: Number - ID of the activated action (same as ID returned by addAction)
- arguments: Array - arguments given to the function
- progress: Number - currentProgress; progress goes from 1 to 24
- maxProgress: Number - max progress (24)
- codeCompleted: Code - code executed on completion. Passed arguments are:
params ["_target", "_caller", "_actionId", "_arguments"]; // same as codeStart
- codeInterrupted: Code - code executed on interrupted. Passed arguments are:
params ["_target", "_caller", "_actionId", "_arguments"]; // same as codeCompleted
- arguments: Array - arguments passed to codeStart, codeProgress, codeCompleted and codeInterrupted in format:
where
params ["_a0","_a1","_a2","_a3","_a4","_a5","_a6","_a7","_a8","_a9","_target","_title","_iconIdle","_iconProgress","_condShow","_condProgress","_codeStart","_codeProgress","_codeCompleted","_codeInterrupted","_duration","_removeCompleted"];
_a0 - _a9
can be custom arguments - duration: Number - action duration, i.e. how much time it takes to complete the action
- priority: Number - priority value; actions are arranged in descending order according to this value
- removeCompleted: Boolean - (Optional, default true) remove on completion
- showUnconscious: Boolean - (Optional, default false) show in unconscious state
- showWindow: Boolean - (Optional, default true) show on screen; if false action needs to be selected from action menu to appear on screen
- Return Value:
- Number - Action ID
Examples
- Example 1:
[player, "Kill", "", "", "true", "true", { hint "Started!" }, { systemChat str (_this select 3) }, { player setDamage 1 }, { hint "Afraid of death?" }, [], 10, nil, true, false] call BIS_fnc_holdActionAdd;
- Example 2:
[ _myLaptop, // Object the action is attached to "Hack Laptop", // Title of the action "\a3\ui_f\data\IGUI\Cfg\holdactions\holdAction_connect_ca.paa", // Idle icon shown on screen "\a3\ui_f\data\IGUI\Cfg\holdactions\holdAction_connect_ca.paa", // Progress icon shown on screen "_this distance _target < 3", // Condition for the action to be shown "_caller distance _target < 3", // Condition for the action to progress {}, // Code executed when action starts {}, // Code executed on every progress tick { _this call MY_fnc_hackingCompleted }, // Code executed on completion {}, // Code executed on interrupted [], // Arguments passed to the scripts as _this select 3 12, // Action duration in seconds 0, // Priority true, // Remove on completion false // Show in unconscious state ] remoteExec ["BIS_fnc_holdActionAdd", 0, _myLaptop]; // MP compatible implementation
Additional Information
- See also:
- BIS_fnc_holdActionRemove BIS_fnc_holdKey
Notes
-
Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note