Hello!
I am learning to create add-ons and ran into a problem.
When I try to get a variable from any table, I get nil
Even if I try to get the variable myAddon.name
Lua Code:
myAddon = {
name = "myAddon", -- Matches folder and Manifest file names.
version = "1.0", -- A nuisance to match to the Manifest.
author = "Unleash101",
color = "DDFFEE", -- Used in menu titles and so on.
menuName = "My Addon", -- A UNIQUE identifier for menu object.
}
-- Default settings.
myAddon.defaultVars = {
firstLoad = true, -- First time the addon is loaded ever.
accountWide = false, -- Load settings from account savedVars, instead of character.
greetingmes = true,
debugmes = false,
}
myAddon.savedVars = {
firstLoad = true, -- First time the addon is loaded ever.
accountWide = false, -- Load settings from account savedVars, instead of character.
--DEBUG
greetingmes = false,
debugmes = false,
}
--Vars
local SGM_SavedVars = "myAddonvars";
-- Wraps text with a color.
function myAddon.Colorize(text, color)
-- Default to addon's .color.
if not color then color = myAddon.color end
text = string.format('|c%s%s|r', color, text)
return text
end
function myAddon.showUserGUI(extra)
d("Work!");
if extra == "help" then
d("Help")
end
end
SLASH_COMMANDS["/test101"] = myAddon.showUserGUI
-- Only show the loading message on first load ever.
function myAddon.Activated(e)
EVENT_MANAGER:UnregisterForEvent(myAddon.name, EVENT_PLAYER_ACTIVATED)
--d(GetString(SI_DEBUG_MESSAGE))\
d(myAddon.name)
end
-- When player is ready, after everything has been loaded.
EVENT_MANAGER:RegisterForEvent(myAddon.name, EVENT_PLAYER_ACTIVATED, myAddon.Activated)
function myAddon.OnAddOnLoaded(event, addonName)
if addonName ~= myAddon.name then return end
EVENT_MANAGER:UnregisterForEvent(myAddon.name, EVENT_ADD_ON_LOADED)
-- Load saved variables.
myAddon.characterSavedVars = ZO_SavedVars:New(SGM_SavedVars, 1, nil, myAddon.savedVars)
myAddon.accountSavedVars = ZO_SavedVars:NewAccountWide(SGM_SavedVars, 1, nil, myAddon.savedVars)
if not myAddon.characterSavedVars.accountWide then
myAddon.savedVars = myAddon.characterSavedVars
else
myAddon.savedVars = myAddon.accountSavedVars
end
end
-- When any addon is loaded, but before UI (Chat) is loaded.
EVENT_MANAGER:RegisterForEvent(myAddon.name, EVENT_ADD_ON_LOADED, myAddon.OnAddOnLoaded)