setMissileTargetPos: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
(some observations)
m (Fix code)
 
(43 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{Command|=
{{RV|type=command
____________________________________________________________________________________________


| arma3 |Game=
|game1= arma3
|version1= 1.92


|1.92|Game Version =(number surrounded by NO SPACES)
|gr1= Object Manipulation


|arg= |Multiplayer Arguments =("local" or "global")
|gr2= Weapons


|eff= |Multiplayer Effects =("local" or "global")
|descr= Sets a guided munition target position.
The munition must have {{hl|manualControl}} config entry to use this command.
The target position has to be inside the missile's configured targeting cone for the command to work.


|exec= |Multiplayer Execution =("server" or empty)
|s1= munition [[setMissileTargetPos]] position
____________________________________________________________________________________________
 
| Sets a guided missile target position. Doesn't work for all types of missiles. The target position has to be inside configured missile targeting cone for command to work. |Description=
____________________________________________________________________________________________
 
| munition [[setMissileTargetPos]] position |Syntax=


|p1= munition: [[Object]]
|p1= munition: [[Object]]


|p2= position: [[PositionAGL]]  
|p2= position: [[Array]] format [[Position#PositionATL|PositionATL]]  


| [[Nothing]] |Return Value=
|r1= [[Nothing]]
____________________________________________________________________________________________


|x1= <code>missile1 [[setMissileTargetPos]] [[unitAimPosition]] tank1;</code> |Example 1=
|x1= <sqf>missile1 setMissileTargetPos unitAimPosition tank1;</sqf>
____________________________________________________________________________________________


|mp= - |Multiplayer Behaviour=
|x2= <sqf>
private _missile = createVehicle ["M_Scalpel_AT", player modelToWorld [0,0,100], [], 0, "CAN_COLLIDE"];
_missile setMissileTargetPos (player modelToWorld [0,100,0]);
</sqf>


| [[missileTargetPos]] [[setMissileTarget]] [[missileTarget]] |See Also=
|seealso= [[missileTargetPos]] [[setMissileTarget]] [[missileTarget]]
}}
}}


<dl class="command_description">
{{Note
<!-- BEGIN Note Section -->
|user= Benargee
<!-- For example:
|timestamp= 20200413060400
<dd class="notedate">Posted on Month Day, Year - Time (UTC)</dd>
|text= To get list of compatible missiles with <syntaxhighlight lang="cpp" inline>manualControl = 1</syntaxhighlight>, use the below script and paste the clipboard results to a text editor.
<dt class="note">'''[[User:User Name|User Name]]'''</dt>
<sqf>
<dd class="note">This is an example note. It is true and verifiable, and contains a little code snippet.
private _cfgCount = count (configfile >> "CfgAmmo");
<code>[[if]] ([[_this]] == anExample) [[then]] { [[hint]] "Leave it here for others to read"; };</code></dd>
private _pasteStr = "";
-->
<!-- END Note Section -->
</dl>


<h3 style="display:none">Bottom Section</h3>
for "_x" from 0 to (_cfgCount - 1) do {
<!-- Appropriate categories go here -->
_cfg = (configFile >> "CfgAmmo") select _x;
_ammoClassName = configName _cfg;
private _manCtrl = getNumber (configFile >> "CfgAmmo" >> _ammoClassName >> "manualControl");
if (_manCtrl > 0) then {
_pasteStr = _pasteStr + _ammoClassName + endl;
};
};


[[Category:Scripting Commands Arma 3|{{uc:{{PAGENAME}}}}]]
copyToClipboard _pasteStr;
[[Category:Scripting Commands|{{uc:{{PAGENAME}}}}]]
</sqf>
}}
 
{{Note
|user= Lou Montana
|timestamp= 20220812220600
|text= Tested with a player-controlled AH-99 firing DAGR, a civilian helicopter named {{hl|heli}} above water/land, and the following code:
<sqf>
if (!isNil "EH") then
{
vehicle player removeEventHandler ["Fired", EH];
};
EH = vehicle player addEventHandler ["Fired", {
params ["_unit", "_weapon", "_muzzle", "_mode", "_ammo", "_magazine", "_missile", "_gunner"];
_missile setMissileTargetPos getPosATL heli; // changing here getPosATL / getPosASL / getPos
systemChat str [_missile, missileTarget _missile, missileTargetPos _missile];
}];
</sqf>
}}

Latest revision as of 22:08, 12 August 2022

Hover & click on the images for description

Description

Description:
Sets a guided munition target position. The munition must have manualControl config entry to use this command. The target position has to be inside the missile's configured targeting cone for the command to work.
Groups:
Object ManipulationWeapons

Syntax

Syntax:
munition setMissileTargetPos position
Parameters:
munition: Object
position: Array format PositionATL
Return Value:
Nothing

Examples

Example 1:
missile1 setMissileTargetPos unitAimPosition tank1;
Example 2:
private _missile = createVehicle ["M_Scalpel_AT", player modelToWorld [0,0,100], [], 0, "CAN_COLLIDE"]; _missile setMissileTargetPos (player modelToWorld [0,100,0]);

Additional Information

See also:
missileTargetPos setMissileTarget missileTarget

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
Benargee - c
Posted on Apr 13, 2020 - 06:04 (UTC)
To get list of compatible missiles with manualControl = 1, use the below script and paste the clipboard results to a text editor.
private _cfgCount = count (configfile >> "CfgAmmo"); private _pasteStr = ""; for "_x" from 0 to (_cfgCount - 1) do { _cfg = (configFile >> "CfgAmmo") select _x; _ammoClassName = configName _cfg; private _manCtrl = getNumber (configFile >> "CfgAmmo" >> _ammoClassName >> "manualControl"); if (_manCtrl > 0) then { _pasteStr = _pasteStr + _ammoClassName + endl; }; }; copyToClipboard _pasteStr;
Lou Montana - c
Posted on Aug 12, 2022 - 22:06 (UTC)
Tested with a player-controlled AH-99 firing DAGR, a civilian helicopter named heli above water/land, and the following code:
if (!isNil "EH") then { vehicle player removeEventHandler ["Fired", EH]; }; EH = vehicle player addEventHandler ["Fired", { params ["_unit", "_weapon", "_muzzle", "_mode", "_ammo", "_magazine", "_missile", "_gunner"]; _missile setMissileTargetPos getPosATL heli; // changing here getPosATL / getPosASL / getPos systemChat str [_missile, missileTarget _missile, missileTargetPos _missile]; }];