Tag: WoW API docs |
No edit summary Tag: WoW API docs |
||
(7 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
{{wowapi}} |
{{wowapi}} |
||
Loads a LoadOnDemand addon. |
Loads a LoadOnDemand addon. |
||
− | loaded, reason = LoadAddOn( |
+ | loaded, reason = LoadAddOn(addonInfo) |
− | = LoadAddOn(name) |
||
==Arguments== |
==Arguments== |
||
− | ; |
+ | ;addonInfo : <span class="apitype">number</span>|<span class="apitype">string</span> - The index or name of the AddOn in the user's AddOn list; Note that you cannot access Blizzard AddOns when using an index. |
− | ;name : <span class="apitype">string</span> - The name of the AddOn to be queried. |
||
==Returns== |
==Returns== |
||
Line 13: | Line 11: | ||
==Details== |
==Details== |
||
⚫ | |||
* Requires the addon to have the [[TOC_format#LoadOnDemand|LoadOnDemand]] TOC field specified. |
* Requires the addon to have the [[TOC_format#LoadOnDemand|LoadOnDemand]] TOC field specified. |
||
## LoadOnDemand: 1 |
## LoadOnDemand: 1 |
||
⚫ | |||
===Reasons=== |
===Reasons=== |
||
Line 77: | Line 75: | ||
{{#invoke:API_info/navbox|main|AddOn}} |
{{#invoke:API_info/navbox|main|AddOn}} |
||
<!-- emmylua |
<!-- emmylua |
||
− | ---@param |
+ | ---@param addonInfo number|string index or name |
---@return boolean loaded |
---@return boolean loaded |
||
---@return string? reason |
---@return string? reason |
||
− | function LoadAddOn( |
+ | function LoadAddOn(addonInfo) end |
--> |
--> |
Revision as of 21:29, 21 November 2021
Automated updating of API pages at this location, to reflect patch changes, has ceased from 10.1.7 onwards. |
Loads a LoadOnDemand addon.
loaded, reason = LoadAddOn(addonInfo)
Arguments
- addonInfo
- number|string - The index or name of the AddOn in the user's AddOn list; Note that you cannot access Blizzard AddOns when using an index.
Returns
- loaded
- boolean - If the AddOn was loaded.
- reason
- string? - Locale-independent reason why the AddOn could not be loaded e.g.
"DISABLED"
, otherwise returnsnil
if the addon was loaded.
Details
- Requires the addon to have the LoadOnDemand TOC field specified.
## LoadOnDemand: 1
- LoadOnDemand addons are useful for reducing loading screen times by loading only when necessary, like with the different DeadlyBossMods addons/submodules.
Reasons
These have corresponding globalstrings when prefixed with "ADDON_"
[1]
ADDON_BANNED = "Banned" -- Addon is banned by the client
ADDON_CORRUPT = "Corrupt" -- The addon's file(s) are corrupt
ADDON_DEMAND_LOADED = "Only loadable on demand"
ADDON_DISABLED = "Disabled" -- Addon is disabled on the character select screen
ADDON_INCOMPATIBLE = "Incompatible" -- The addon is not compatible with the current TOC version
ADDON_INSECURE = "Insecure"
ADDON_INTERFACE_VERSION = "Out of date"
ADDON_MISSING = "Missing" -- The addon is physically not there
ADDON_NOT_AVAILABLE = "Not Available"
ADDON_UNKNOWN_ERROR = "Unknown load problem"
ADDON_DEP_BANNED = "Dependency banned" -- Addon's dependency is banned by the client
ADDON_DEP_CORRUPT = "Dependency corrupt" -- The addon's dependency cannot load because its file(s) are corrupt
ADDON_DEP_DEMAND_LOADED = "Dependency only loadable on demand"
ADDON_DEP_DISABLED = "Dependency disabled" -- The addon cannot load without its dependency enabled
ADDON_DEP_INCOMPATIBLE = "Dependency incompatible" -- The addon cannot load if its dependency cannot load
ADDON_DEP_INSECURE = "Dependency insecure"
ADDON_DEP_INTERFACE_VERSION = "Dependency out of date"
ADDON_DEP_MISSING = "Dependency missing" -- The addon's dependency is physically not there
Example
- Attempts to load a LoadOnDemand addon. If the addon is disabled, it will try to enable it first.
local function TryLoadAddOn(name)
local loaded, reason = LoadAddOn(name)
if not loaded then
if reason == "DISABLED" then
EnableAddOn(name, true) -- enable for all characters on the realm
LoadAddOn(name)
else
local failed_msg = format("%s - %s", reason, _G["ADDON_"..reason])
error(ADDON_LOAD_FAILED:format(name, failed_msg))
end
end
end
TryLoadAddOn("SomeAddOn")
-- Couldn't load SomeAddOn: MISSING - Missing
- Manually loads and shows the Blizzard Achievement UI addon.
/run LoadAddOn("Blizzard_AchievementUI"); AchievementFrame_ToggleAchievementFrame();
Patch changes
- Patch 1.8.0 (2005-10-10): Prior to the 1.8 patch, this could be used to load addons which were not on-demand if they were disabled at start up and then enabled during the play session. The 1.8 patch restricted this to ONLY addons which are truly marked on demand in their .toc files with
## LoadOnDemand: 1
See also
References
|