selectWeapon – Talk
Jump to navigation
Jump to search
Original BI comref states:
unit selectWeapon weapon
Description states:
Selects the given weapon. For weapon values see CfgWeapons.
Example states:
soldierOne selectWeapon "LAWLauncher"
Perhaps "M136" would have been better. ;)
Planck 23:49, 12 April 2007 (CEST)
Correct reading of a modes and muzzles weapon subclasses
I've idea about this code:
if (count _muzzles > 1) then { player selectWeapon (_muzzles select 0); } else { player selectWeapon _type; };
And if we have such a config we get semantic error:
class MySuperRifle : AK74 { // ... muzzles[] = {"MySuperRifleRealMuzzle"}; class MySuperRifleRealMuzzle : AK74 { // ... }; };
or such config:
class MySuperRifle : AK74 { // ... muzzles[] = {"MySuperRifleRealMuzzle", "this"}; class MySuperRifleRealMuzzle : AK74 { // ... }; };
So we must check such condition: ((_muzzles select 0) != "this"), but not the (count _muzzles > 1).
private [ "_weaponClassName", "_weaponConfig", "_muzzles", "_firstMuzzleName", "_realMuzzleName" ]; _weaponClassName = primaryWeapon player; if (_weaponClassName != "") then { _weaponConfig = configFile >> "CfgWeapons" >> _weaponClassName; _muzzles = getArray (_weaponConfig >> "muzzles"); if (count _muzzles > 0) then { _firstMuzzleName = _muzzles select 0; _realMuzzleName = ( if (_firstMuzzleName != "this") then { _firstMuzzleName } else { _weaponClassName } ); player selectWeapon _realMuzzleName; }; }
All of this is also true for reading "modes" subclasses
denisko.redisko (denvdmj) (talk) 07:04, 4 January 2015 (CET)