playableUnits: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "\|seealso= *\[\[([^ ]+)\]\], \[\[([^ ]+)\]\]" to "|seealso= $1 $2")
m (Text replacement - "<code>([^ ]*)\[\[([a-zA-Z][a-zA-Z0-9_]+)\]\]([^ ]*)<\/code>" to "<code>$1$2$3</code>")
Line 25: Line 25:
|r1= [[Array]]
|r1= [[Array]]


|x1= <code>{ [[Magic Variables#x|_x]] [[groupChat]] "I'm a playable unit."; } [[forEach]] [[playableUnits]];</code>
|x1= <code>{ [[Magic Variables#x|_x]] groupChat "I'm a playable unit."; } [[forEach]] [[playableUnits]];</code>
|x2= <code>_playableInGroup = [[units]] [[group]] [[player]] [[arrayIntersect]] [[playableUnits]];</code>
|x2= <code>_playableInGroup = units [[group]] [[player]] [[arrayIntersect]] [[playableUnits]];</code>
|x3= <code>_nonPlayableInGroup = [[units]] [[group]] [[player]] - [[playableUnits]];</code>
|x3= <code>_nonPlayableInGroup = units [[group]] [[player]] - [[playableUnits]];</code>


|seealso= [[playableSlotsNumber]] [[allPlayers]] [[allCurators]] [[allGroups]] [[allDead]] [[switchableUnits]] [[vehicles]] [[allUnitsUAV]] [[allDeadMen]] [[isPlayer]] [[playersNumber]]
|seealso= [[playableSlotsNumber]] [[allPlayers]] [[allCurators]] [[allGroups]] [[allDead]] [[switchableUnits]] [[vehicles]] [[allUnitsUAV]] [[allDeadMen]] [[isPlayer]] [[playersNumber]]

Revision as of 11:12, 12 May 2022

Hover & click on the images for description

Description

Description:
Returns a list of playable units in a multiplayer game (occupied by both AI or players), created on the following sides east/opfor, west/blufor, resistance/independent and civilian only. Does not contain units of sideLogic.
This command returns an empty array in Singleplayer; use switchableUnits instead.
This command does not include dead players awaiting for respawn.
Groups:
MultiplayerObject Detection

Syntax

Syntax:
playableUnits
Return Value:
Array

Examples

Example 1:
{ _x groupChat "I'm a playable unit."; } forEach playableUnits;
Example 2:
_playableInGroup = units group player arrayIntersect playableUnits;
Example 3:
_nonPlayableInGroup = units group player - playableUnits;

Additional Information

See also:
playableSlotsNumber allPlayers allCurators allGroups allDead switchableUnits vehicles allUnitsUAV allDeadMen isPlayer playersNumber

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 23, 2014 - 23:13 (UTC)
DreadedEntity
To get a list of all player-controlled units: _allPlayers = []; { if (isPlayer _x) then { _allPlayers pushBack _x; }; } forEach playableUnits;
Posted on August 16, 2015 - 10:05 (UTC)
FR Starfox64
playableUnits will not return dead players, use allPlayers instead.
Posted on February 14, 2017 - 22:05 (UTC)
Pierre MGI
Using the Editor (multiplayer attributes) for unchecking "enable AI", or disabling AI(s) in lobby, will make playableUnits as a public variable, updated by each JIP on disabled slot. So, if all slots are disabled AI, playableUnits is same as allPlayers
Furthermore, in this case, non-played slot (playable and disabled AI) units simply don't exist!
i.e. If you name 8 playable units: u1..u8, then 2 players in game: u3 & u6
playableUnits will return [u3,u6], and true for isNil "u1", isNil "u2"... until another player takes the slot.