weaponsInfo: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (typo)
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: <code>[[private]] _weapons = [[player]] [[weaponsInfo]] <nowiki>[</nowiki>[[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] };</code>
if (_found > -1) then { action ["SwitchWeapon", player]], player, _weapons select _found select 0] };</sqf>


|seealso= [[weaponState]] [[weaponReloadingTime]]
|seealso= [[weaponState]] [[weaponReloadingTime]] [[action]]
}}
}}

Revision as of 13:40, 30 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