activateAddons: Difference between revisions
Jump to navigation
Jump to search
Lou Montana (talk | contribs) m (Text replacement - "\|x([0-9])= *<code>([^<]*)<\/code>" to "|x$1= <sqf>$2</sqf>") |
No edit summary |
||
Line 45: | Line 45: | ||
|text= This command will activate addons that are referenced via scripts but not included in a missions required addons section. If executed from a configs init event with the [[call]] command, it will effectively override a missions required addons, preventing them from being activated (Appears to only happen in multi player). | |text= This command will activate addons that are referenced via scripts but not included in a missions required addons section. If executed from a configs init event with the [[call]] command, it will effectively override a missions required addons, preventing them from being activated (Appears to only happen in multi player). | ||
To activate the passed addons along with those defined in the mission.sqm, execute the command from a configs init event using [[spawn]] or [[execVM]]. | To activate the passed addons along with those defined in the mission.sqm, execute the command from a configs init event using [[spawn]] or [[execVM]]. | ||
}} | |||
{{Note | |||
|user= samatra | |||
|timestamp= 20220703084305 | |||
|text= Here is a handy function to call before you do [[createVehicle]] or other create* command during missing init scripts, which should activate missing addons without having to worry about re-adding previously added addons. | |||
<sqf> | |||
fnc_prepareClassAddons = { | |||
private _class = toLower _this; | |||
// To avoid double checks | |||
if(isNil"var_addonCheckedClasses") then {var_addonCheckedClasses = createHashMap;}; | |||
if(_class in var_addonCheckedClasses) exitWith {}; | |||
// Finding missing addons | |||
private _needed = unitAddons _class apply {toLower _x}; | |||
private _active = activatedAddons; | |||
private _missing = _needed - (_needed arrayIntersect _active); | |||
if(count _missing > 0) then { | |||
// Adding everything again, engine will figure it out itself | |||
_active append _missing; | |||
activateAddons _active; | |||
}; | |||
var_addonCheckedClasses set [_class, _needed]; | |||
}; | |||
</sqf> | |||
Usage would be <sqf inline>"Land_BurntGarbage_01_F" call fnc_prepareClassAddons</sqf>. | |||
}} | }} |
Latest revision as of 09:43, 3 July 2022
Description
- Description:
- Activates the listed addons.
- Groups:
- Mods and Addons
Syntax
- Syntax:
- activateAddons addonsList
- Parameters:
- addonsList: Array of Strings
- Return Value:
- Nothing
Examples
- Example 1:
- activateAddons ["BISOFP"];
Additional Information
- See also:
- unitAddons activatedAddons
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 Jan 21, 2009 - 12:37 (UTC)
- Be aware that addon's string is the CfgPatches class of the desired addon to preload.
- Posted on May 10, 2009 - 11:17 (UTC)
- This command will activate addons that are referenced via scripts but not included in a missions required addons section. If executed from a configs init event with the call command, it will effectively override a missions required addons, preventing them from being activated (Appears to only happen in multi player). To activate the passed addons along with those defined in the mission.sqm, execute the command from a configs init event using spawn or execVM.
- Posted on Jul 03, 2022 - 08:43 (UTC)
-
Here is a handy function to call before you do createVehicle or other create* command during missing init scripts, which should activate missing addons without having to worry about re-adding previously added addons.
Usage would be "Land_BurntGarbage_01_F" call fnc_prepareClassAddons.fnc_prepareClassAddons = { private _class = toLower _this; // To avoid double checks if(isNil"var_addonCheckedClasses") then {var_addonCheckedClasses = createHashMap;}; if(_class in var_addonCheckedClasses) exitWith {}; // Finding missing addons private _needed = unitAddons _class apply {toLower _x}; private _active = activatedAddons; private _missing = _needed - (_needed arrayIntersect _active); if(count _missing > 0) then { // Adding everything again, engine will figure it out itself _active append _missing; activateAddons _active; }; var_addonCheckedClasses set [_class, _needed]; };
Categories:
- Scripting Commands
- Introduced with Operation Flashpoint: Elite version 1.00
- Operation Flashpoint: Elite: New Scripting Commands
- Operation Flashpoint: Elite: Scripting Commands
- ArmA: Armed Assault: Scripting Commands
- Arma 2: Scripting Commands
- Arma 2: Operation Arrowhead: Scripting Commands
- Take On Helicopters: Scripting Commands
- Arma 3: Scripting Commands
- Command Group: Mods and Addons