setVariable: Difference between revisions
Jump to navigation
Jump to search
m (problems) |
(some formatting) |
||
Line 12: | Line 12: | ||
|gr2= Variables | |gr2= Variables | ||
| Set variable to given value in the variable space of given element. | | Set variable to given value in the variable space of given element. | ||
To remove a variable, set it to [[nil]] (e.g. {{Inline code|[[player]] [[setVariable]] ["varname", [[nil]]<nowiki>]</nowiki>;}}).<br> | * To remove a variable, set it to [[nil]] (e.g. {{Inline code|[[player]] [[setVariable]] ["varname", [[nil]]<nowiki>]</nowiki>;}}).<br><br> | ||
When variable is set on [[Task]], it is not actually set on task itself, but on FSM attached to the task. So if there is no FSM [[setVariable]] will not work.<br> | * When variable is set on [[Task]], it is not actually set on task itself, but on FSM attached to the task. So if there is no FSM [[setVariable]] will not work.<br> | ||
When variable is set on [[Location]], it works only with locations created with [[createLocation]].<br> | * When variable is set on [[Location]], it works only with locations created with [[createLocation]].<br><br> | ||
All supported variable types: | * All supported variable types: | ||
* [[Namespace]] | ** [[Namespace]], [[Object]], [[Group]], [[Team Member]], [[Task]] (FSM Task), [[Location]] ([[createLocation | scripted]] only) | ||
** [[Control]] and [[Display]] {{Since|arma3|1.55.133553}} | |||
{{Feature|arma3|In Arma 3 it is possible to broadcast [[nil]] value!}} | |||
* [[Control]] | |||
{{Feature|arma3|In Arma 3 it is possible to broadcast [[nil]] value}} | |||
Line 37: | Line 30: | ||
| varspace [[setVariable]] [name, value] | | varspace [[setVariable]] [name, value] | ||
|p1= varspace: [[Namespace]], [[Object]], [[Group]], [[ | |p1= varspace: [[Namespace]], [[Object]], [[Group]], [[Team Member]], [[Task]], [[Location]], [[Control]], [[Display]] - variable space in which variable can be set | ||
|p2= [name, value]: [[Array]] | |p2= [name, value]: [[Array]] | ||
|p3= name: [[String]] - variable name | |p3= name: [[String]] - variable name |
Revision as of 15:57, 29 January 2021
Description
- Description:
- Description needed
- Multiplayer:
- The variable space of the object is local to each client and by default changes are not broadcast.
Since Arma 2: If the public parameter for supported types is true, the value will be synchronized also for a JIP player. - Problems:
- Groups:
- MultiplayerVariables
Syntax
- Syntax:
- Syntax needed
- Parameters:
- varspace: Namespace, Object, Group, Team Member, Task, Location, Control, Display - variable space in which variable can be set
- [name, value]: Array
- name: String - variable name
- value: Anything - variable value
- Return Value:
- Return value needed
Alternative Syntax
- Syntax:
- varspace setVariable [name, value, public]
- Parameters:
- varspace: missionNamespace, Object or Group - variable space in which variable can be set
- [name, value, public]: Array
- name: String - variable name
- value: Anything - variable value (if public is true, check publicVariable for what types are supported for broadcast)
- public: Boolean, Number or Array of Numbers
- Boolean - when true, the variable broadcast is global and persistent GEGlobal
- Number - the variable is set only on the client of given owner (clientOwner) id, or if id is negative, the variable is set on every client except the given one
- Array of Numbers - array of owner (clientOwner) ids
- Return Value:
- Nothing
Examples
- Example 1:
_myTruck setVariable ["myPublicVariable", 123, true];
- Example 2:
_myTruck setVariable ["myLocalVariable", ["321", _var], false];
- Example 3:
missionNamespace setVariable ["myName", "KK"]; hint myName; //KK
- Example 4:
- Get current value of a variable and if it is undefined, define it and get the defined value:
private _var = missionNamespace getVariable "varName"; if (isNil "_var") then { missionNamespace setVariable ["varName", 123]; _var = 123; }; // _var here will contain current value of the variable varName
Additional Information
- See also:
- See also needed
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
- Posted on December 9, 2015 - 20:18 (UTC)
- Commy2
- This command does not work with CfgAmmo or CfgNonAIVehicles objects, like bullets, mines or butterflies.