activateAddons: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - " \| *([^=\| ]+) * \|p1=" to " |s1= $1 |p1=")
No edit summary
 
(10 intermediate revisions by one other user not shown)
Line 1: Line 1:
{{RV|type=command
{{RV|type=command


| ofpe
|game1= ofpe
| 1.00
|version1= 1.00


|game2= arma1
|game2= arma1
Line 21: Line 21:
|gr1= Mods and Addons
|gr1= Mods and Addons


| Activates the listed addons. The list of active addons is initialized during this function.
|descr= Activates the listed addons.


|s1= '''activateAddons''' [addon1, ...]
|s1= [[activateAddons]] addonsList


|p1= [addon1, ...]: [[Array]]
|p1= addonsList: [[Array]] of [[String]]s


|r1=[[Nothing]]
|r1= [[Nothing]]


|x1= <code>[[activateAddons]] ["BISOFP"];</code>
|x1= <sqf>activateAddons ["BISOFP"];</sqf>


|seealso= [[unitAddons]], [[activatedAddons]]
|seealso= [[unitAddons]] [[activatedAddons]]
}}
}}


<dl class="command_description">
{{Note
|user= WGL.Q
|timestamp= 20090121123700
|text= Be aware that addon's string is the {{hl|CfgPatches}} class of the desired addon to preload.
}}
 
{{Note
|user= UNN
|timestamp= 20090510111700
|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]].
}}
 
{{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;


<dt></dt>
// To avoid double checks
<dd class="notedate">Posted on Jan 21, 2009 - 12:37</dd>
if(isNil"var_addonCheckedClasses") then {var_addonCheckedClasses = createHashMap;};
<dt class="note">[[User:WGL.Q|WGL.Q]]</dt>
if(_class in var_addonCheckedClasses) exitWith {};
<dd class="note">
Be aware that "Addon1" is the cfgPatches class of the desired addon to preload.
<dd class="notedate">Posted on May 10, 2009 - 11:17</dd>
<dt class="note">[[User:UNN|UNN]]</dt>
<dd class="note">
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]]. [[User:UNN|UNN]]
</dl>


{{GameCategory|ofpe|Scripting Commands}}
// Finding missing addons
{{GameCategory|arma1|Scripting Commands}}
private _needed = unitAddons _class apply {toLower _x};
{{GameCategory|arma2|Scripting Commands}}
private _active = activatedAddons;
{{GameCategory|arma3|Scripting Commands}}
private _missing = _needed - (_needed arrayIntersect _active);
{{GameCategory|tkoh|Scripting Commands}}
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

Hover & click on the images for description

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
WGL.Q - c
Posted on Jan 21, 2009 - 12:37 (UTC)
Be aware that addon's string is the CfgPatches class of the desired addon to preload.
UNN - c
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.
samatra - c
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.
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]; };
Usage would be "Land_BurntGarbage_01_F" call fnc_prepareClassAddons.