View Single Post
06/01/20, 04:07 PM   #1
Unleash101
Join Date: Jun 2020
Posts: 6
Variable in the table returns nil

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:
  1. myAddon = {
  2.     name            = "myAddon",           -- Matches folder and Manifest file names.
  3.     version         = "1.0",                -- A nuisance to match to the Manifest.
  4.     author          = "Unleash101",
  5.     color           = "DDFFEE",             -- Used in menu titles and so on.
  6.     menuName        = "My Addon",          -- A UNIQUE identifier for menu object.
  7. }
  8.  
  9. -- Default settings.
  10. myAddon.defaultVars = {
  11.     firstLoad = true,                   -- First time the addon is loaded ever.
  12.     accountWide = false,                -- Load settings from account savedVars, instead of character.
  13.     greetingmes = true,
  14.     debugmes = false,
  15. }
  16.  
  17. myAddon.savedVars = {
  18.     firstLoad = true,                   -- First time the addon is loaded ever.
  19.     accountWide = false,                -- Load settings from account savedVars, instead of character.
  20.     --DEBUG
  21.     greetingmes = false,
  22.     debugmes = false,
  23. }
  24. --Vars
  25. local SGM_SavedVars = "myAddonvars";
  26. -- Wraps text with a color.
  27. function myAddon.Colorize(text, color)
  28.     -- Default to addon's .color.
  29.     if not color then color = myAddon.color end
  30.  
  31.     text = string.format('|c%s%s|r', color, text)
  32.  
  33.     return text
  34. end
  35.  
  36. function myAddon.showUserGUI(extra)
  37.     d("Work!");
  38.     if extra == "help" then
  39.         d("Help")
  40.     end
  41.  
  42. end
  43. SLASH_COMMANDS["/test101"] = myAddon.showUserGUI
  44.  
  45. -- Only show the loading message on first load ever.
  46. function myAddon.Activated(e)
  47.     EVENT_MANAGER:UnregisterForEvent(myAddon.name, EVENT_PLAYER_ACTIVATED)
  48.     --d(GetString(SI_DEBUG_MESSAGE))\
  49.     d(myAddon.name)
  50.    
  51. end
  52. -- When player is ready, after everything has been loaded.
  53. EVENT_MANAGER:RegisterForEvent(myAddon.name, EVENT_PLAYER_ACTIVATED, myAddon.Activated)
  54.  
  55. function myAddon.OnAddOnLoaded(event, addonName)
  56.    if addonName ~= myAddon.name then return end
  57.    EVENT_MANAGER:UnregisterForEvent(myAddon.name, EVENT_ADD_ON_LOADED)
  58.  
  59.     -- Load saved variables.
  60.     myAddon.characterSavedVars = ZO_SavedVars:New(SGM_SavedVars, 1, nil, myAddon.savedVars)
  61.     myAddon.accountSavedVars = ZO_SavedVars:NewAccountWide(SGM_SavedVars, 1, nil, myAddon.savedVars)
  62.  
  63.     if not myAddon.characterSavedVars.accountWide then
  64.         myAddon.savedVars = myAddon.characterSavedVars
  65.     else
  66.         myAddon.savedVars = myAddon.accountSavedVars
  67.     end
  68.    
  69. end
  70. -- When any addon is loaded, but before UI (Chat) is loaded.
  71. EVENT_MANAGER:RegisterForEvent(myAddon.name, EVENT_ADD_ON_LOADED, myAddon.OnAddOnLoaded)
  Reply With Quote