Difference between revisions of "moveInTurret"

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "\|seealso= *\[\[([^ ]+)\]\], \[\[([^ ]+)\]\]" to "|seealso= $1 $2")
m (Some wiki formatting)
(20 intermediate revisions by the same user not shown)
Line 22: Line 22:
 
|gr1= Turrets
 
|gr1= Turrets
  
|descr= Moves the soldier into the vehicle's turret. (Immediately, without animation). ''turret path'' is an array of positions inside a turret, or positions inside a turret of a turret.<br>
+
|descr= Moves the soldier into the vehicle's turret. (Immediately, without animation).
[0] means first turret, [1] means second turret.<br>
 
[0,0] means first turret's first turret.<br>
 
[0,1] means first turret's second turret.<br>
 
[1,0] means second turret's first turret, etc.
 
 
{{Feature|informative|See [[AI Group Vehicle Management]] for more information.}}
 
{{Feature|informative|See [[AI Group Vehicle Management]] for more information.}}
  
Line 32: Line 28:
  
 
|p1= unitName: [[Object]]
 
|p1= unitName: [[Object]]
 +
 
|p2= vehicle: [[Object]]
 
|p2= vehicle: [[Object]]
|p3= turretPath: [[Array]] - see Description.
+
 
 +
|p3= turretPath: [[Array]] format [[Turret Path]]
  
 
|r1= [[Nothing]]
 
|r1= [[Nothing]]
  
|x1= <code>_soldierOne [[moveInTurret]] [_tank, [0, 0]];</code>
+
|x1= <sqf>_soldierOne moveInTurret [_tank, [0, 0]];</sqf>
  
|seealso= [[allTurrets]] [[fullCrew]], [[assignAsTurret]], [[moveInAny]], [[moveInCargo]], [[moveInCommander]], [[moveInDriver]], [[moveInGunner]], [[assignAsCargo]], [[assignAsCommander]], [[assignAsDriver]], [[assignAsGunner]], [[ArmA:_Actions#GetInTurret|GetInTurret]]
+
|seealso= [[allTurrets]] [[fullCrew]] [[assignAsTurret]] [[moveInAny]] [[moveInCargo]] [[moveInCommander]] [[moveInDriver]] [[moveInGunner]] [[assignAsCargo]] [[assignAsCommander]] [[assignAsDriver]] [[assignAsGunner]] [[ArmA:_Actions#GetInTurret|GetInTurret]]
 
}}
 
}}
  
<dl class="command_description">
+
{{Note
 +
|user= Kronzky
 +
|timestamp= 20080306203100
 +
|text= To find out which turrets are available on a vehicle ('''edit:''' before [[allTurrets]]), and what the syntax is, you can use {{Link|http://kronzky.info/turrets/index.htm|this little script}}.
 +
<!-- in case kronzky.info disappears :(
 +
<sqf>
 +
_cfg = configFile >> "CfgVehicles" >> typeof _veh >> "turrets";
 +
_tc = count _cfg;
 +
if (_tc>0) then {
 +
_mtc = count _cfg; // number of main turrets
 +
_out = _out + format["Main Turrets: %1\n",count _cfg];
 +
 +
for "_mti" from 0 to _mtc-1 do {
 +
_mt = (_cfg select _mti);
 +
_st = _mt >> "turrets";
 +
_stc = count _st; // sub-turrets in current main one
 +
_out = _out + format["Turret #%1, %2: [%1]\n",_mti,configName(_mt)];
 +
_weaps = getArray(_mt >> "weapons");
 +
_out = _out + format[" Weapons:\n"];
 +
{_out = _out + format["  %1\n",_x]}forEach _weaps;
 +
_aid = player addAction [format["MoveIn: %1 [%2]",configName(_mt),_mti],"vehinfo.sqf",[_veh,_mti,-1]];
 +
_actionIDs=_actionIDs + [_aid];
 +
for "_sti" from 0 to _stc-1 do {
 +
_stp = (_st select _sti);
 +
_out = _out + format["Turret #%1, %2: [%1,%3]\n",_mti,configName(_stp),_sti];
 +
_weaps = getArray(_stp >> "weapons");
 +
_out = _out + format[" Weapons:\n"];
 +
{_out = _out + format["  %1\n",_x]}forEach _weaps;
 +
_aid = player addAction [format["MoveIn: %1 [%2,%3]",configName(_stp),_mti,_sti],"vehinfo.sqf",[_veh,_mti,_sti]];
 +
_actionIDs=_actionIDs + [_aid];
 +
};
 +
};
 +
};
 +
</sqf>
 +
-->
 +
}}
  
<dt><dt>
+
{{Note
<dd class="notedate">Posted on March 6, 2008</dd>
+
|user= hcpookie
<dt class="note">[[User:Kronzky|Kronzky]]</dt>
+
|timestamp= 20140213015600
<dd class="note">To find out which turrets are available on a vehicle, and what the syntax is, you can use [http://kronzky.info/turrets/index.htm this little script].</dd>
+
|text= Examples for nested turrets:
  
<dt><dt>
+
MainTurret = <sqf>_soldierOne moveInTurret [_tank, [0]];</sqf>
<dd class="notedate">Posted on February 13, 2014</dd>
 
<dt class="note">[[User:hcpookie|hcpookie]]</dt>
 
<dd class="note">
 
Examples for nested turrets:
 
  
MainTurret = <code>_soldierOne [[moveInTurret]] [_tank, [0]]</code>
+
CommanderTurret = <sqf>_soldierOne moveInTurret [_tank, [0, 0]];</sqf>
 
 
CommanderTurret = <code>_soldierOne [[moveInTurret]] [_tank, [0, 0]]</code>
 
  
 
... where:
 
... where:
Line 82: Line 109:
 
};
 
};
 
</syntaxhighlight>
 
</syntaxhighlight>
</dd>
+
}}
  
<dt><dt>
+
{{Note
<dd class="notedate">Posted on March 18, 2014</dd>
+
|user= Killzone_Kid
<dt class="note">[[User:Killzone_Kid|Killzone_Kid]]</dt>
+
|timestamp= 20140319000700
<dd class="note">Here is a small function to find available ''turret paths'' for a given vehicle. It will only search 2 levels deep, hence called ''commonTurrets'':
+
|text= Here is a small function to find available ''turret paths'' for a given vehicle. It will only search 2 levels deep, hence called ''commonTurrets'':
<code>KK_fnc_commonTurrets = {
+
<sqf>
[[private]] ["_arr","_trts"];
+
KK_fnc_commonTurrets = {
 +
private ["_arr","_trts"];
 
_arr = [];
 
_arr = [];
_trts = [[configFile]] / "CfgVehicles" / [[typeOf]] _this / "Turrets";
+
_trts = configFile / "CfgVehicles" / typeOf _this / "Turrets";
[[for]] "_i" [[from]] 0 [[to]] [[count]] _trts - 1 [[do]] {
+
for "_i" from 0 to count _trts - 1 do {
_arr [[set]] [<nowiki/>[[count]] _arr, [_i]];
+
_arr set [count _arr, [_i]];
[[for]] "_j" [[from]] 0 [[to]] [[count]] (
+
for "_j" from 0 to count (
_trts / [[configName]] (_trts [[select]] _i) / "Turrets"
+
_trts / configName (_trts select _i) / "Turrets"
) - 1 [[do]] {
+
) - 1 do {
_arr [[set]] [<nowiki/>[[count]] _arr, [_i, _j]];
+
_arr set [count _arr, [_i, _j]];
 
};
 
};
 
};
 
};
 
_arr
 
_arr
};</code>
+
};
 +
</sqf>
 
Example call:
 
Example call:
<code>[[hint]] [[str]] ([[vehicle]] [[player]] [[call]] KK_fnc_commonTurrets); //[[0],[0,0]]</code>
+
<sqf>hint str (vehicle player call KK_fnc_commonTurrets); // [[0],[0,0]]</sqf>
 
See also [[allTurrets]]
 
See also [[allTurrets]]
</dd>
+
}}
 
 
</dl>
 

Revision as of 10:44, 8 August 2022

Hover & click on the images for description

Description

Description:
Moves the soldier into the vehicle's turret. (Immediately, without animation).
See AI Group Vehicle Management for more information.
Groups:
Turrets

Syntax

Syntax:
unitName moveInTurret [vehicle, turretPath]
Parameters:
unitName: Object
vehicle: Object
turretPath: Array format Turret Path
Return Value:
Nothing

Examples

Example 1:
_soldierOne moveInTurret [_tank, [0, 0]];

Additional Information

See also:
allTurrets fullCrew assignAsTurret moveInAny moveInCargo moveInCommander moveInDriver moveInGunner assignAsCargo assignAsCommander assignAsDriver assignAsGunner GetInTurret

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
Kronzky
Posted on Mar 06, 2008 - 20:31 (UTC)
To find out which turrets are available on a vehicle (edit: before allTurrets), and what the syntax is, you can use this little script.
hcpookie
Posted on Feb 13, 2014 - 01:56 (UTC)
Examples for nested turrets: MainTurret =
_soldierOne moveInTurret [_tank, [0]];
CommanderTurret =
_soldierOne moveInTurret [_tank, [0, 0]];
... where: MainTurret is the standard BIS MainTurret... e.g:
class Turrets 
{
	class MainTurret {};
};

CommanderTurret is the standard BIS CommanderTurret located on the MainTurret... e.g:

class Turrets 
{
	class MainTurret
	{
		class Turrets 
		{
			class CommanderTurret {};
		};
	};
};
Killzone_Kid
Posted on Mar 19, 2014 - 00:07 (UTC)
Here is a small function to find available turret paths for a given vehicle. It will only search 2 levels deep, hence called commonTurrets:
KK_fnc_commonTurrets = { private ["_arr","_trts"]; _arr = []; _trts = configFile / "CfgVehicles" / typeOf _this / "Turrets"; for "_i" from 0 to count _trts - 1 do { _arr set [count _arr, [_i]]; for "_j" from 0 to count ( _trts / configName (_trts select _i) / "Turrets" ) - 1 do { _arr set [count _arr, [_i, _j]]; }; }; _arr };
Example call:
hint str (vehicle player call KK_fnc_commonTurrets); // [[0],[0,0]]
See also allTurrets