agents: Difference between revisions
Jump to navigation
Jump to search
m (see also) |
Lou Montana (talk | contribs) m (Some wiki formatting) |
||
(64 intermediate revisions by 6 users not shown) | |||
Line 1: | Line 1: | ||
{{ | {{RV|type=command | ||
| arma2 |= | |game1= arma2 | ||
|version1= 1.00 | |||
|1. | |game2= arma2oa | ||
|version2= 1.50 | |||
| | |game3= tkoh | ||
|version3= 1.00 | |||
| | |game4= arma3 | ||
|version4= 0.50 | |||
| | |gr1= Teams | ||
| | |gr2= Object Detection | ||
| | |descr= Return a list of agents in the current mission. | ||
| [[ | |s1= [[agents]] | ||
|r1= [[Array]] of [[Team Member]]s | |||
|x1= < | |x1= <sqf>{ agent _x moveTo position player } forEach agents;</sqf> | ||
|seealso= [[teams]] [[agent]] [[createAgent]] [[isAgent]] [[forEachMemberAgent]] [[entities]] [[allCurators]] [[allGroups]] [[allDead]] [[playableUnits]] [[switchableUnits]] [[vehicles]] [[allUnitsUAV]] [[allDeadMen]] | |||
}} | |||
| | {{Note | ||
|user= Rocket | |||
|timestamp= 20120404104800 | |||
|text= Note that agents returns a reference to the agent itself, not the object. For example: <sqf>{ alive _x } count agents;</sqf> would return an error | |||
But you can assign the agent a reference using [[setVariable]], and then reference it, for example: <sqf>{ alive (_x getVariable ["agentObject", objNull]) } count agents;</sqf> would return the number of agents still alive - BUT you would need to define "agentObject" after you create the agent, for example: | |||
<sqf>_agent = createAgent [_type, _position, [], _radius, "NONE"];_agent setVariable["agentObject",_agent,true];</sqf> | |||
}} | |||
| | {{Note | ||
|user= Killzone_Kid | |||
|timestamp= 20130801215500 | |||
|text= Alternatively, to get object from agent reference use [[agent]] command. | |||
}} | }} | ||
{{Note | |||
|user= PierreMGI | |||
|timestamp= 20200526141000 | |||
|text= In debug console, pointing at an agent: | |||
< | <sqf> | ||
cursorObject; // seems to refer to an agent (ex.: Agent 0xcbce41c0), but it is an object | |||
teamMember cursorObject; // returns the same value Agent 0xcbce41c0, but now it is the agent | |||
cursorObject in agents; // will return false (even if you can read the value Agent 0xcbce41c0 in the agents array) | |||
teamMember cursorObject in agents; // returns true. TeamMember allows to refer to the agent under the cursorObject | |||
agent teamMember cursorObject isEqualTo cursorObject; // true, same object. | |||
</sqf> | |||
}} | |||
Latest revision as of 22:48, 13 May 2023
Description
- Description:
- Return a list of agents in the current mission.
- Groups:
- TeamsObject Detection
Syntax
- Syntax:
- agents
- Return Value:
- Array of Team Members
Examples
- Example 1:
Additional Information
- See also:
- teams agent createAgent isAgent forEachMemberAgent entities allCurators allGroups allDead playableUnits switchableUnits vehicles allUnitsUAV allDeadMen
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 Apr 04, 2012 - 10:48 (UTC)
-
Note that agents returns a reference to the agent itself, not the object. For example: would return an error
But you can assign the agent a reference using setVariable, and then reference it, for example: would return the number of agents still alive - BUT you would need to define "agentObject" after you create the agent, for example:_agent = createAgent [_type, _position, [], _radius, "NONE"];_agent setVariable["agentObject",_agent,true];
- Posted on Aug 01, 2013 - 21:55 (UTC)
- Alternatively, to get object from agent reference use agent command.
- Posted on May 26, 2020 - 14:10 (UTC)
-
In debug console, pointing at an agent:
cursorObject; // seems to refer to an agent (ex.: Agent 0xcbce41c0), but it is an object teamMember cursorObject; // returns the same value Agent 0xcbce41c0, but now it is the agent cursorObject in agents; // will return false (even if you can read the value Agent 0xcbce41c0 in the agents array) teamMember cursorObject in agents; // returns true. TeamMember allows to refer to the agent under the cursorObject agent teamMember cursorObject isEqualTo cursorObject; // true, same object.