weaponsInfo: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
No edit summary
No edit summary
Line 26: Line 26:
* ammoCount: [[Number]] - magazine ammo count or -1
* ammoCount: [[Number]] - magazine ammo count or -1


|x1= Find weapon with FullAuto firemode and switch to it: <sqf>private _weapons = player weaponsInfo currentMuzzle player, true];
|x1= Find weapon with FullAuto firemode and switch to it: <sqf>private _weapons = player weaponsInfo [currentMuzzle player, true];
private _found = _weapons findIf { _x select 4 == "FullAuto" };
private _found = _weapons findIf { _x select 4 == "FullAuto" };
if (_found > -1) then { action ["SwitchWeapon", player, player, _weapons select _found select 0] };</sqf>
if (_found > -1) then { action ["SwitchWeapon", player, player, _weapons select _found select 0] };</sqf>

Revision as of 07:24, 31 March 2022

Hover & click on the images for description
Only available in Development branch(es) until its release with Arma 3 patch v2.10.

Description

Description:
Returns entity's weapons information including weapon index and firemode.
Groups:
Weapons

Syntax

Syntax:
unit weaponsInfo [weaponOrMuzzle, onlyLoaded]
Parameters:
unit: Object - person
weaponOrMuzzle: String - name of the weapon or muzzle (returns whichever matches first) or "" to return all weapons
onlyLoaded (Optional): Boolean - true to return loaded weapons only. Default false.
Return Value:
Array of Arrays (or an empty []) - weapons information in format [[weaponIndex, isSelected, weaponName, muzzleName, firemode, magazineName, ammoCount], ...] where:
  • weaponIndex: Number - internal weapon index (changes frequently) used with "SwitchWeapon" and "UseWeapon" actions
  • isSelected: Boolean - true if this weapon is currently selected
  • weaponName: String - weapon name
  • muzzleName: String - muzzle name
  • firemode: String - firemode that is set for this 'weaponIndex'
  • magazineName: String - name of the loaded magazine or ""
  • ammoCount: Number - magazine ammo count or -1

Examples

Example 1:
Find weapon with FullAuto firemode and switch to it:
private _weapons = player weaponsInfo [currentMuzzle player, true]; private _found = _weapons findIf { _x select 4 == "FullAuto" }; if (_found > -1) then { action ["SwitchWeapon", player, player, _weapons select _found select 0] };

Additional Information

See also:
weaponState weaponReloadingTime action

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