View Single Post
12/20/14, 03:17 AM   #10
votan
 
votan's Avatar
AddOn Author - Click to view addons
Join Date: Oct 2014
Posts: 577
Hi alltogether,

as far as I understood we need a registered/whitelisted variable name and an addon it belongs to, right?
Why not using a build-in variable? I would suggest to write a generic framework (Maybe as part of LibStub?)

This is working Proof of Concept code:
Lua Code:
  1. local varDefaults = { Test = "1234" }
  2. local asv
  3.  
  4. SLASH_COMMANDS["/test1"] = function() asv.Test = GetTimeStamp() end
  5. SLASH_COMMANDS["/test2"] = function() d(asv.Test) end
  6.  
  7. local function OnAddOnLoaded(event, addonName)
  8.   if addonName == "ZO_Ingame" then
  9.     EVENT_MANAGER:UnregisterForEvent("CommonAddonLibrary", EVENT_ADD_ON_LOADED)
  10.     asv = ZO_SavedVars:NewAccountWide("ZO_Ingame_SavedVariables", 1, "CommonAddonLibrary", varDefaults)
  11.   end
  12. end
  13.  
  14. EVENT_MANAGER:RegisterForEvent("CommonAddonLibrary", EVENT_ADD_ON_LOADED, OnAddOnLoaded)

Edit: The root section (here CommonAddonLibrary) should have a very unique name, handled by the framework only. Addon authors using the framework can register sub-sections, only. To avoid conflict with names used by ZO.

Last edited by votan : 12/20/14 at 07:48 AM.
  Reply With Quote