setPylonLoadout: Difference between revisions
 (MP update)  | 
				Lou Montana (talk | contribs)  m (Some wiki formatting)  | 
				||
| Line 11: | Line 11: | ||
|descr= Adds/overrides loadout to a vehicle pylon. {{hl|TransportPylonsComponent}} in vehicle config and {{hl|pylonWeapon}} in the magazine config are required to run.  | |descr= Adds/overrides loadout to a vehicle pylon. {{hl|TransportPylonsComponent}} in vehicle config and {{hl|pylonWeapon}} in the magazine config are required to run.  | ||
{{Feature|  | {{Feature|informative|This command also adds the corresponding weapon if the vehicle does not have one, but will not remove one that is no longer used.}}  | ||
{{Feature|  | |||
|mp= {{Feature|important|  | |||
This command should run locally to the vehicle itself or it will cause desync issue! (especially upon the locality change, e.g getting in the vehicle).  | |||
See {{Link|#Example 4}} for an MP-compatible usage.  | |||
}}  | |||
|s1= vehicle [[setPylonLoadout]] [pylon, magazine, forced, turret]  | |s1= vehicle [[setPylonLoadout]] [pylon, magazine, forced, turret]  | ||
| Line 18: | Line 22: | ||
|p1= vehicle: [[Object]]  | |p1= vehicle: [[Object]]  | ||
|p2= pylon: [[Number]] or [[String]] - pylon index (index starts from 1) or pylon name (see   | |p2= pylon: [[Number]] or [[String]] - pylon index (index starts from 1) or pylon name (see {{Link|#Example 1}})  | ||
|p3= magazine: [[String]] - magazine name  | |p3= magazine: [[String]] - magazine name  | ||
|p4= forced: [[Boolean]] - (Optional, default [[false]]) [[true]] to force incompatible magazine  | |p4= forced: [[Boolean]] - (Optional, default [[false]]) [[true]] to force an incompatible magazine  | ||
|p5= turret: [[Array]] - (Optional, default <sqf inline>[]</sqf>) turret path  | |p5= turret: [[Array]] - (Optional, default <sqf inline>[]</sqf>) turret path  | ||
| Line 32: | Line 36: | ||
|x2= Make all of your pylon weapons Twin Cannon 30 mm:  | |x2= Make all of your pylon weapons Twin Cannon 30 mm:  | ||
<sqf>  | <sqf>  | ||
private _vehicle = vehicle player;  | |||
private _pylonsIndices = getAllPylonsInfo _vehicle select { _x select 0 };  | |||
};  | {  | ||
	_vehicle setPylonLoadout [_x, "PylonWeapon_300Rnd_20mm_shells", true];  | |||
} forEach _pylonsIndices;  | |||
</sqf>  | </sqf>  | ||
| Line 40: | Line 46: | ||
<sqf>  | <sqf>  | ||
[] spawn {  | [] spawn {  | ||
	private _allPylonMagazines = "getText (_x >> 'pylonWeapon') != ''" configClasses (configFile >> "CfgMagazines");  | |||
	private _vehicle = vehicle player;  | |||
	private _pylonsIndices = getAllPylonsInfo _vehicle select { _x select 0 };  | |||
	{  | 	{  | ||
		private _configName = configName _x;  | |||
		{  | |||
		};  | 			_vehicle setPylonLoadout [_x, _configName, true];  | ||
		hint   | 		} forEach _pylonsIndices;  | ||
		hint _configName;  | |||
		sleep 1.5;  | 		sleep 1.5;  | ||
	} forEach   | 	} forEach _allPylonMagazines;  | ||
};  | };  | ||
</sqf>  | </sqf>  | ||
|x4= MP compatible usage:  | |x4= MP compatible usage:  | ||
<sqf>  | <sqf>[myPlane, [1, "PylonWeapon_300Rnd_20mm_shells", true]] remoteExec ["setPylonLoadout", myPlane];</sqf>  | ||
[myPlane, [1, "PylonWeapon_300Rnd_20mm_shells", true]]   | |||
</sqf>  | |||
|seealso= [[Arma 3: Vehicle Loadouts]] [[getCompatiblePylonMagazines]] [[getPylonMagazines]] [[setAmmoOnPylon]] [[ammoOnPylon]] [[animatePylon]] [[animateBay]] [[setPylonsPriority]]  | |seealso= [[Arma 3: Vehicle Loadouts]] [[getCompatiblePylonMagazines]] [[getPylonMagazines]] [[setAmmoOnPylon]] [[ammoOnPylon]] [[animatePylon]] [[animateBay]] [[setPylonsPriority]]  | ||
| Line 61: | Line 71: | ||
|user= POLPOX  | |user= POLPOX  | ||
|timestamp= 20200430130100  | |timestamp= 20200430130100  | ||
|text= ''turret'' must be   | |text= ''turret'' must be <sqf inline>[]</sqf> if you wanted to equip the magazine to the pilot. <sqf inline>[-1]</sqf> returns false and fails unlike other turret-related commands.  | ||
}}  | }}  | ||
Revision as of 00:06, 2 February 2024
Description
- Description:
 - Adds/overrides loadout to a vehicle pylon. TransportPylonsComponent in vehicle config and pylonWeapon in the magazine config are required to run.
 - Multiplayer:
 - Groups:
 - Vehicle Loadouts
 
Syntax
- Syntax:
 - vehicle setPylonLoadout [pylon, magazine, forced, turret]
 - Parameters:
 - vehicle: Object
 - pylon: Number or String - pylon index (index starts from 1) or pylon name (see Example 1)
 - magazine: String - magazine name
 - forced: Boolean - (Optional, default false) true to force an incompatible magazine
 - turret: Array - (Optional, default []) turret path
 - Return Value:
 - Boolean - true on success
 
Examples
- Example 1:
 - Example 2:
 - Make all of your pylon weapons Twin Cannon 30 mm:
 - Example 3:
 - Showcase all possible magazines:
[] spawn { private _allPylonMagazines = "getText (_x >> 'pylonWeapon') != ''" configClasses (configFile >> "CfgMagazines"); private _vehicle = vehicle player; private _pylonsIndices = getAllPylonsInfo _vehicle select { _x select 0 }; { private _configName = configName _x; { _vehicle setPylonLoadout [_x, _configName, true]; } forEach _pylonsIndices; hint _configName; sleep 1.5; } forEach _allPylonMagazines; };
 - Example 4:
 - MP compatible usage:
 
Additional Information
- See also:
 - Arma 3: Vehicle Loadouts getCompatiblePylonMagazines getPylonMagazines setAmmoOnPylon ammoOnPylon animatePylon animateBay setPylonsPriority
 
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 
- Posted on Apr 30, 2020 - 13:01 (UTC)
 - turret must be [] if you wanted to equip the magazine to the pilot. [-1] returns false and fails unlike other turret-related commands.