BIS_fnc_holdActionAdd

From Bohemia Interactive Community
Jump to: navigation, search
Introduced with Arma 3 version 1.62
  Arguments of this scripting function don't have to be local to the client the function is executed onEffects of this scripting function are not broadcasted over the network and remain local to the client the function is executed on

Click on the images for descriptions

Introduced in

Game:
Arma 3
Version:
1.62

Description

Description:
Adds an action to an object which requires the user to hold a key to perform the action.

Syntax

Syntax:
[target, title, idleIcon, progressIcon, conditionShow, conditionProgress, codeStart, codeProgress, codeCompleted, codeInterrupted, arguments, duration, priority, removeCompleted, showUnconscious] call BIS_fnc_holdActionAdd
Parameters:
target: Object - Object the action is attached to
title: String - Title of the action shown in the action menu
idleIcon: String - Path of the idle icon shown on screen. See notes for a full list of vanilla icons.
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"];
  • _this select 0: Object - the object which the action is assigned to
  • _this select 1: Object - the unit that activated the action
  • _this select 2: Number - ID of the activated action (same as ID returned by addAction)
  • _this select 3: Array - arguments given to the function

codeProgress: Code - Code executed on every progress tick. Passed arguments are:

params ["_target", "_caller", "_actionId", "_arguments", "_progress", "_maxProgress"];
  • _this select 0: Object - the object which the action is assigned to
  • _this select 1: Object - the unit that activated the action
  • _this select 2: Number - ID of the activated action (same as ID returned by addAction)
  • _this select 3: Array - arguments given to the function
  • _this select 4: Number - currentProgress; progress goes from 1 to 24
  • _this select 5: 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 the scripts

duration: Number - action duration, a.k.a 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
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 [s] 0, // Priority true, // Remove on completion false // Show in unconscious state ] remoteExec ["BIS_fnc_holdActionAdd", 0, _myLaptop]; // MP compatible implementation

Additional Information

Execution:
call
Multiplayer:
-
See also:
BIS_fnc_holdActionRemoveBIS_fnc_holdKey

Notes

Only post proven facts here. Report bugs on the feedback tracker. Use the talk page or the forums for discussions.
Add New Note | How To

Notes

Bottom Section

Posted on November 4, 2017 - 13:40 (UTC)
Lou Montana
A list of all official icons so far (v1.76):
  • "\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_revive_ca.paa"
  • "\a3\ui_f\data\IGUI\Cfg\holdactions\holdAction_reviveMedic_ca.paa"
  • "\a3\ui_f\data\IGUI\Cfg\holdactions\holdAction_search_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_unbind_ca.paa"