!! I think I may have come up with a solution finally, I'll need to test it abit more but its working so far.
here it is
checkbox
Lua Code:
setFunc = function(val)
SimpleXPBar.AWSV.general.account_wide = val
if SimpleXPBar.AWSV.general.account_wide then
SimpleXPBar.CurSV = ZO_SavedVars:NewAccountWide("SimpleXPBar_Settings", "2", nil, SimpleXPBar.AWSV)
SimpleXPBar.CurSV = SimpleXPBar.AWSV
else
SimpleXPBar.CurSV = ZO_SavedVars:New("SimpleXPBar_Settings", "1", nil, SimpleXPBar.CharSV)
SimpleXPBar.CurSV = SimpleXPBar.CharSV
end
end
At playerload
Lua Code:
SimpleXPBar.AWSV = ZO_SavedVars:NewAccountWide("SimpleXPBar_Settings", "2", nil, SimpleXPBar.default_settings)
SimpleXPBar.CharSV = ZO_SavedVars:New("SimpleXPBar_Settings", "1", nil, SimpleXPBar.default_settings)
if SimpleXPBar.AWSV.general.account_wide then
SimpleXPBar.CurSV = ZO_SavedVars:NewAccountWide("SimpleXPBar_Settings", "2", nil, SimpleXPBar.AWSV)
else
SimpleXPBar.CurSV = ZO_SavedVars:New("SimpleXPBar_Settings", "1", nil, SimpleXPBar.CharSV)
end
In this case I don't need a deepcopy it seems, since ZO_SavedVars will copy values from the
default arg.