BIS fnc fire: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - " \| *p([0-9]{1,2}) *= *(.+) * + \| *(\[\[Bool.+) * " to " |p$1=$2 |r1=$3 ")
m (Text replacement - "|arg= global|eff= global" to "|arg= global |eff= global")
 
(7 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{RV|type=function
{{RV|type=function


| arma3
|game1= arma3
 
|version1= 1.74
|1.74


|gr1= Weapons
|gr1= Weapons
Line 11: Line 10:
|gr3= Combat
|gr3= Combat


|arg= global|eff= global
|arg= global
|eff= global


| Makes a unit or a vehicle fire given muzzle. Make sure that there is some ammo to fire, and, in case of a unit, the weapon with given muzzle is already selected. It can be used to fire pretty much any muzzle on unit or vehicle from anywhere. Available weapons could usually be found with [[weapons]], [[weaponsTurret]] and [[allTurrets]] commands.
|descr= Makes a unit or a vehicle fire given muzzle. Make sure that there is some ammo to fire, and, in case of a unit, the weapon with given muzzle is already selected. It can be used to fire pretty much any muzzle on unit or vehicle from anywhere. Available weapons could usually be found with [[weapons]], [[weaponsTurret]] and [[allTurrets]] commands.


|mp= The function is global, it is not to be used in unit fields.
|mp= The function is global, it is not to be used in unit fields.
Line 19: Line 19:
|pr= unit will not fire its weapon from FFV position. This is due to [[forceWeaponFire]] command ignoring units in FFV.
|pr= unit will not fire its weapon from FFV position. This is due to [[forceWeaponFire]] command ignoring units in FFV.


|s1=[entity, muzzle, turret] call [[BIS_fnc_fire]]
|s1= [entity, muzzle, turret] call [[BIS_fnc_fire]]


|p1= entity: [[Object]] - unit or vehicle
|p1= entity: [[Object]] - unit or vehicle
|p2= muzzle: [[String]] -  muzzle name of the muzzle to fire
|p2= muzzle: [[String]] -  muzzle name of the muzzle to fire
|p3= turret (Optional): [[Array]] - turret path of the turret with given muzzle (vehicles only)


|r1=[[Boolean]] - in SP and on hosted server in MP or [[Nothing]] on client in MP. When boolean, [[true]] if all checks have passed and muzzle should have fired, [[false]] if there was a problem, like:
|p3= turret: [[Array]] - (Optional) turret path of the turret with given muzzle (vehicles only)
 
|r1= [[Boolean]] - in SP and on hosted server in MP or [[Nothing]] on client in MP. When boolean, [[true]] if all checks have passed and muzzle should have fired, [[false]] if there was a problem, like:
* no ammo
* no ammo
* non-existing muzzle
* non-existing muzzle
Line 31: Line 33:
* the weapon has no unit operating it
* the weapon has no unit operating it


|x1= <code>marshall = "B_APC_Wheeled_01_cannon_F" [[createVehicle]] [[position]] [[player]];
|x1= <sqf>
[[createVehicleCrew]] marshall;
marshall = "B_APC_Wheeled_01_cannon_F" createVehicle position player;
createVehicleCrew marshall;


[marshall, "HE"] [[call]] [[BIS_fnc_fire]]; {{cc|fires HE muzzle of the main cannon}}
[marshall, "HE"] call BIS_fnc_fire; // fires HE muzzle of the main cannon
[marshall, "AP"] [[call]] [[BIS_fnc_fire]]; {{cc|fires AP muzzle of the main cannon}}
[marshall, "AP"] call BIS_fnc_fire; // fires AP muzzle of the main cannon
[marshall, "autocannon_40mm_CTWS"] [[call]] [[BIS_fnc_fire]]; {{cc|fires HE muzzle, because it is default}}
[marshall, "autocannon_40mm_CTWS"] call BIS_fnc_fire; // fires HE muzzle, because it is default
[marshall, "LMG_M200_body"] [[call]] [[BIS_fnc_fire]]; {{cc|fires machine gun}}
[marshall, "LMG_M200_body"] call BIS_fnc_fire; // fires machine gun
[marshall, "SmokeLauncher"] [[call]] [[BIS_fnc_fire]]; {{cc|fires smoke launcher}}
[marshall, "SmokeLauncher"] call BIS_fnc_fire; // fires smoke launcher
[marshall, "TruckHorn"] [[call]] [[BIS_fnc_fire]]; {{cc|beeps the horn}}</code>
[marshall, "TruckHorn"] call BIS_fnc_fire; // beeps the horn
</sqf>


|x2= <code>[bob, "SmokeShellMuzzle"] [[call]] [[BIS_fnc_fire]]{{cc|bob throws smoke grenade, if he has one}}
|x2= <sqf>
[bob, "HandGrenadeMuzzle"] [[call]] [[BIS_fnc_fire]]; {{cc|bob throws hand grenade, if he has one}}</code>
[bob, "SmokeShellMuzzle"] call BIS_fnc_fire;  // bob throws smoke grenade, if he has one
[bob, "HandGrenadeMuzzle"] call BIS_fnc_fire; // bob throws hand grenade, if he has one
</sqf>


|x3= <code>blackfoot = "B_Heli_Attack_01_dynamicLoadout_F" [[createVehicle]] [[position]] [[player]];
|x3= <sqf>
[[createVehicleCrew]] blackfoot;
blackfoot = "B_Heli_Attack_01_dynamicLoadout_F" createVehicle position player;
createVehicleCrew blackfoot;


[blackfoot, "missiles_DAGR"]  [[call]] [[BIS_fnc_fire]]; {{cc|fires missiles}}
[blackfoot, "missiles_DAGR"]  call BIS_fnc_fire; // fires missiles
[blackfoot, "missiles_ASRAAM"] [[call]] [[BIS_fnc_fire]]; {{cc|fires missiles}}
[blackfoot, "missiles_ASRAAM"] call BIS_fnc_fire; // fires missiles
[blackfoot, "gatling_20mm"]    [[call]] [[BIS_fnc_fire]]; {{cc|fires machine gun}}
[blackfoot, "gatling_20mm"]    call BIS_fnc_fire; // fires machine gun
[blackfoot, "CMFlareLauncher"] [[call]] [[BIS_fnc_fire]]; {{cc|fires chaff}}</code>
[blackfoot, "CMFlareLauncher"] call BIS_fnc_fire; // fires chaff
</sqf>


|x4= <code><nowiki>[</nowiki>[[vehicle]] mortargunner, "mortar_82mm"] [[call]] [[BIS_fnc_fire]]; // mortargunner fires mortar</code>
|x4= <sqf>[vehicle mortargunner, "mortar_82mm"] call BIS_fnc_fire; // mortargunner fires mortar</sqf>


|seealso= [[fire]], [[fireAtTarget]], [[forceWeaponFire]]
|seealso= [[fire]] [[fireAtTarget]] [[forceWeaponFire]]
}}
}}

Latest revision as of 01:28, 11 September 2023

Hover & click on the images for description

Description

Description:
Makes a unit or a vehicle fire given muzzle. Make sure that there is some ammo to fire, and, in case of a unit, the weapon with given muzzle is already selected. It can be used to fire pretty much any muzzle on unit or vehicle from anywhere. Available weapons could usually be found with weapons, weaponsTurret and allTurrets commands.
Execution:
call
Multiplayer:
The function is global, it is not to be used in unit fields.
Problems:
unit will not fire its weapon from FFV position. This is due to forceWeaponFire command ignoring units in FFV.
Groups:
WeaponsObject ManipulationCombat

Syntax

Syntax:
[entity, muzzle, turret] call BIS_fnc_fire
Parameters:
entity: Object - unit or vehicle
muzzle: String - muzzle name of the muzzle to fire
turret: Array - (Optional) turret path of the turret with given muzzle (vehicles only)
Return Value:
Boolean - in SP and on hosted server in MP or Nothing on client in MP. When boolean, true if all checks have passed and muzzle should have fired, false if there was a problem, like:
  • no ammo
  • non-existing muzzle
  • the muzzle is on a weapon that is not selected
  • the weapon has no unit operating it

Examples

Example 1:
marshall = "B_APC_Wheeled_01_cannon_F" createVehicle position player; createVehicleCrew marshall; [marshall, "HE"] call BIS_fnc_fire; // fires HE muzzle of the main cannon [marshall, "AP"] call BIS_fnc_fire; // fires AP muzzle of the main cannon [marshall, "autocannon_40mm_CTWS"] call BIS_fnc_fire; // fires HE muzzle, because it is default [marshall, "LMG_M200_body"] call BIS_fnc_fire; // fires machine gun [marshall, "SmokeLauncher"] call BIS_fnc_fire; // fires smoke launcher [marshall, "TruckHorn"] call BIS_fnc_fire; // beeps the horn
Example 2:
[bob, "SmokeShellMuzzle"] call BIS_fnc_fire; // bob throws smoke grenade, if he has one [bob, "HandGrenadeMuzzle"] call BIS_fnc_fire; // bob throws hand grenade, if he has one
Example 3:
blackfoot = "B_Heli_Attack_01_dynamicLoadout_F" createVehicle position player; createVehicleCrew blackfoot; [blackfoot, "missiles_DAGR"] call BIS_fnc_fire; // fires missiles [blackfoot, "missiles_ASRAAM"] call BIS_fnc_fire; // fires missiles [blackfoot, "gatling_20mm"] call BIS_fnc_fire; // fires machine gun [blackfoot, "CMFlareLauncher"] call BIS_fnc_fire; // fires chaff
Example 4:
[vehicle mortargunner, "mortar_82mm"] call BIS_fnc_fire; // mortargunner fires mortar

Additional Information

See also:
fire fireAtTarget forceWeaponFire

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