moveInTurret: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
mNo edit summary
m (Text replacement - "\] +\[" to "] [")
 
(94 intermediate revisions by 19 users not shown)
Line 1: Line 1:
[[Category:Scripting Commands|MOVEINTURRET]]
{{RV|type=command
[[Category:Scripting Commands ArmA|MOVEINTURRET]]


|game1= arma1
|version1= 1.00


<h2 style="color:#000066">'''''soldier'' moveInTurret ''[vehicle, turret path]'''''</h2>
|game2= arma2
|version2= 1.00


|game3= arma2oa
|version3= 1.50


'''Operand types:'''
|game4= tkoh
|version4= 1.00


'''soldier:''' [[Object]]
|game5= arma3
|version5= 0.50


'''[vehicle, turret path]:''' [[Array]]
|arg= local


'''Type of returned value:'''
|eff= global


[[Nothing]]
|gr1= Turrets


'''Compatibility:'''
|descr= Moves the soldier into the vehicle's turret. (Immediately, without animation).
{{Feature|informative|See [[AI Group Vehicle Management]] for more information.}}
{{Feature|important|If the unit is already in a vehicle, nothing will happen. You should use [[moveOut]] to move the unit out of his vehicle before trying to move him into a new (or same) vehicle.}}


Version 2.92 required.
|s1= unitName [[moveInTurret]] [vehicle, turretPath]


'''Description:'''
|p1= unitName: [[Object]]


Moves the soldier into the vehicle's turret. (Immediately, without animation).
|p2= vehicle: [[Object]]


|p3= turretPath: [[Array]] format [[Turret Path]]


'''Example:'''
|r1= [[Nothing]]


soldierOne '''moveInTurret''' [tank, [0, 0]]
|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]]
}}


'''turretPath''' [0,0] moves the soldier in the first turret of the first turret of a vehicle, [0, 2, 1] would move him to the second turret of the third turret of the first turret, [1] moves him to the second turret of a vehicle.
{{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>
-->
}}


Turret order has to be defined in the class [[CfgVehicles]] of the [[Config]].
{{Note
|user= hcpookie
|timestamp= 20140213015600
|text= Examples for nested turrets:
 
MainTurret = <sqf>_soldierOne moveInTurret [_tank, [0]];</sqf>
 
CommanderTurret = <sqf>_soldierOne moveInTurret [_tank, [0, 0]];</sqf>
 
... where:
 
MainTurret is the standard BIS MainTurret... e.g:
<syntaxhighlight lang="cpp">
class Turrets
{
class MainTurret {};
};
</syntaxhighlight>
 
CommanderTurret is the standard BIS CommanderTurret located on the MainTurret... e.g:
<syntaxhighlight lang="cpp">
class Turrets
{
class MainTurret
{
class Turrets
{
class CommanderTurret {};
};
};
};
</syntaxhighlight>
}}
 
{{Note
|user= Killzone_Kid
|timestamp= 20140319000700
|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'':
<sqf>
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
};
</sqf>
Example call:
<sqf>hint str (vehicle player call KK_fnc_commonTurrets); // [[0],[0,0]]</sqf>
See also [[allTurrets]]
}}

Latest revision as of 11:46, 5 May 2024

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.
If the unit is already in a vehicle, nothing will happen. You should use moveOut to move the unit out of his vehicle before trying to move him into a new (or same) vehicle.
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 - c
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 - c
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 - c
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