fireAtTarget: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
mNo edit summary
m (Text replacement - "↵↵</sqf>" to " </sqf>")
 
(109 intermediate revisions by 11 users not shown)
Line 1: Line 1:
{{Command|= Comments
{{RV|type=command
____________________________________________________________________________________________


| arma2oa |= Game name
|game1= arma2oa
|version1= 1.50


|1.51|= Game version
|game2= tkoh
____________________________________________________________________________________________
|version2= 1.00


| Remotely forces a unit to fire the given weapon. |= Description
|game3= arma3
____________________________________________________________________________________________
|version3= 0.50


| [[Script]] <nowiki>=</nowiki> sourceVehicle '''fireAtTarget''' [targetVehicle,weaponClassName] |= Syntax
|gr1= Unit Control


|p1= sourceVehicle: [[Object]] - source vehicle to fire from |= Parameter 1
|gr2= Weapons
|p2= targetVehicle: [[Object]] - target vehicle to fire at |= Parameter 2
|p3= WeaponClassName: [[String]] - weapon classname, optional paramater |= Parameter 3


| [[Script]] - script handle, which can be used to determine (via [[scriptDone]]) when the called script has finished.|= Return value
|descr= Remotely forces a unit to fire the given weapon. See also [[BIS_fnc_fire]].
____________________________________________________________________________________________
 
|x1= <pre>_handle = this fireAtTarget [groundtarget1,HellfireLauncher];</pre> |= Example 1
|x2= <pre>_handle = Igla_AA_pod_TK_EP1 fireAtTarget [_helicopter,currentweapon Igla_AA_pod_TK_EP1];</pre> |= Example 2
|x2= <pre>_handle = Igla_AA_pod_TK_EP1 fireAtTarget [helicopter];</pre> |= Example 3
____________________________________________________________________________________________


| [[fire]], [[laserTarget|laserTarget targetVehicle]] |= See also
|s1= sourceVehicle [[fireAtTarget]] [targetVehicle, weaponMuzzleName]


|p1= sourceVehicle: [[Object]] - source vehicle to fire from
|p2= targetVehicle: [[Object]] - target vehicle to fire at
|p3= weaponMuzzleName: [[String]] - (Optional) weapon muzzle classname, optional parameter
|r1= [[Boolean]] - [[true]] if fired, [[false]] if not
|x1= <sqf>_handle = this fireAtTarget [groundtarget1, "HellfireLauncher"];</sqf>
|x2= <sqf>_handle = Igla_AA_pod_TK_EP1 fireAtTarget [_helicopter, currentWeapon Igla_AA_pod_TK_EP1];</sqf>
|x3= <sqf>_handle = Igla_AA_pod_TK_EP1 fireAtTarget [helicopter];</sqf>
|seealso= [[fire]] [[doFire]] [[commandFire]] [[canFire]] [[forceWeaponFire]] [[commandArtilleryFire]] [[commandSuppressiveFire]] [[doArtilleryFire]] [[doSuppressiveFire]] [[isManualFire]] [[aimedAtTarget]] [[BIS_fnc_fire]]
}}
{{Note
|user= Dwarden
|timestamp= 20100916081700
|text= Most likely only for missiles and for interaction with player only.
}}
}}


<h3 style="display:none">Notes</h3>
{{Note
<dl class="command_description">
|user= ffur2007slx2_5
<!-- Note Section BEGIN -->
|timestamp= 20140408165000
<dd class="note">
|text= ({{arma3}} 1.14) Source vehicle is only limited to manned vehicle while any other types won’t be able to active [[fireAtTarget]] handle, e.g.
Most likely only for missiles and for interaction with player only.
<sqf>
</dd>
_handle = _infantryUnit fireAtTarget [_infantryTarget, weapons _infantryUnit select 0];
// false & no bullet shoot
</sqf>
Target has no limitation and can be any object:
<sqf>
_handle = (vehicle _veh) fireAtTarget [objNull, weapons (vehicle _veh) select 0];
// true & a bullet shoot
</sqf>
Handle returns false if weapon class name is inaccurate, e.g.
<sqf>
_handle = (vehicle _veh) fireAtTarget [ObjNull, "UnknownWeapon"];
// false & no bullet shoot
</sqf>
Handle still returns true even though the vehicle is unavailable to shoot any bullet:
<sqf>
_weapon = weapons (vehicle _veh) select 0;
(vehicle _veh) setAmmo [_weapon, 0];
_handle = (vehicle _veh) fireAtTarget [objNull, _weapon];
// true & no bullet shoot
</sqf>
 
=== Difference ===
 
{{{!}} class="wikitable sortable"
 
! command
! Source
! Target
! Behavior
! Workaround templets
 
{{!}}-
{{!}} [[fire]]
{{!}} Either unit or manned vehicle
{{!}} {{n/a}}
{{!}} Fired aiming at air for infantry rifle
{{!}} Together with [[selectWeapon]],
suggested to work with "throw","put" weapon type
for infantry, or vehicle entity indeed.
 
{{!}}-
{{!}} [[fireAtTarget]]
{{!}} Manned vehicle only
{{!}} Any object
{{!}} Normal shoot, won’t aim at target automatically
{{!}}
<sqf>
_veh doWatch _target;
waitUntil { _veh aimedAtTarget [_target] > 0 };
_veh fireAtTarget [_target];
</sqf>
 
{{!}}-
{{!}} [[forceWeaponFire]]
{{!}} Either unit or manned aircraft (weapon operator)
{{!}} {{n/a}}
{{!}} Normal shoot, can change fire mode
{{!}}
<sqf>
// e.g. unit won't shoot until he is facing the target
_unit doWatch _tar;
waitUntil {
_dir = direction _unit;
_relative = [_unit,_tar] call BIS_fnc_relativeDirTo;
if (_dir == _relative) exitWith {
_unit forceWeaponFire [currentWeapon _unit, "single"];
};
false
};
</sqf>
{{!}}-
{{!}} [[doFire]]
{{!}} Unit only
{{!}} Either unit or vehicle
{{!}} automatic aiming and shooting
{{!}} No special example.


<!-- Note Section END -->
{{!}}-
</dl>
{{!}} [[commandFire]]
{{!}} Unit only
{{!}} Either unit or vehicle
{{!}} automatic aiming and shooting
{{!}} No special example.


<h3 style="display:none">Bottom Section</h3>
{{!}}-
{{!}} [[Arma 3: Actions#USEWEAPON{{!}}action ["UseWeapon"]]]
{{!}} Either unit or manned vehicle
{{!}} {{n/a}}
{{!}} unexpected behavior
{{!}} {{n/a}}


[[Category:ArmA 2 OA: New Scripting Commands List|{{uc:{{PAGENAME}}}}]]
{{!}}}
[[Category:Scripting Commands ArmA2|{{uc:{{PAGENAME}}}}]]
|game= arma3
[[Category:Scripting Commands|{{uc:{{PAGENAME}}}}]]
|version= 1.14
}}

Latest revision as of 19:48, 3 September 2024

Hover & click on the images for description

Description

Description:
Remotely forces a unit to fire the given weapon. See also BIS_fnc_fire.
Groups:
Unit ControlWeapons

Syntax

Syntax:
sourceVehicle fireAtTarget [targetVehicle, weaponMuzzleName]
Parameters:
sourceVehicle: Object - source vehicle to fire from
targetVehicle: Object - target vehicle to fire at
weaponMuzzleName: String - (Optional) weapon muzzle classname, optional parameter
Return Value:
Boolean - true if fired, false if not

Examples

Example 1:
_handle = this fireAtTarget [groundtarget1, "HellfireLauncher"];
Example 2:
_handle = Igla_AA_pod_TK_EP1 fireAtTarget [_helicopter, currentWeapon Igla_AA_pod_TK_EP1];
Example 3:
_handle = Igla_AA_pod_TK_EP1 fireAtTarget [helicopter];

Additional Information

See also:
fire doFire commandFire canFire forceWeaponFire commandArtilleryFire commandSuppressiveFire doArtilleryFire doSuppressiveFire isManualFire aimedAtTarget BIS_fnc_fire

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
Dwarden - c
Posted on Sep 16, 2010 - 08:17 (UTC)
Most likely only for missiles and for interaction with player only.
ffur2007slx2_5 - c
Posted on Apr 08, 2014 - 16:50 (UTC)

(Arma 3 1.14) Source vehicle is only limited to manned vehicle while any other types won’t be able to active fireAtTarget handle, e.g.

_handle = _infantryUnit fireAtTarget [_infantryTarget, weapons _infantryUnit select 0]; // false & no bullet shoot
Target has no limitation and can be any object:
_handle = (vehicle _veh) fireAtTarget [objNull, weapons (vehicle _veh) select 0]; // true & a bullet shoot
Handle returns false if weapon class name is inaccurate, e.g.
_handle = (vehicle _veh) fireAtTarget [ObjNull, "UnknownWeapon"]; // false & no bullet shoot
Handle still returns true even though the vehicle is unavailable to shoot any bullet:
_weapon = weapons (vehicle _veh) select 0; (vehicle _veh) setAmmo [_weapon, 0]; _handle = (vehicle _veh) fireAtTarget [objNull, _weapon]; // true & no bullet shoot

Difference

command Source Target Behavior Workaround templets
fire Either unit or manned vehicle N/A Fired aiming at air for infantry rifle Together with selectWeapon,

suggested to work with "throw","put" weapon type for infantry, or vehicle entity indeed.

fireAtTarget Manned vehicle only Any object Normal shoot, won’t aim at target automatically

_veh doWatch _target; waitUntil { _veh aimedAtTarget [_target] > 0 }; _veh fireAtTarget [_target];

forceWeaponFire Either unit or manned aircraft (weapon operator) N/A Normal shoot, can change fire mode

// e.g. unit won't shoot until he is facing the target _unit doWatch _tar; waitUntil { _dir = direction _unit; _relative = [_unit,_tar] call BIS_fnc_relativeDirTo; if (_dir == _relative) exitWith { _unit forceWeaponFire [currentWeapon _unit, "single"]; }; false };

doFire Unit only Either unit or vehicle automatic aiming and shooting No special example.
commandFire Unit only Either unit or vehicle automatic aiming and shooting No special example.
action ["UseWeapon"] Either unit or manned vehicle N/A unexpected behavior N/A