Fix migration to v3
Add some announces. Fix decay option description not updating on the fly.
This commit is contained in:
+9
-5
@@ -2,12 +2,16 @@ function sepgp:v2tov3()
|
||||
local count = 0
|
||||
for i = 1, GetNumGuildMembers(1) do
|
||||
local name, _, _, _, class, _, note, officernote, _, _ = GetGuildRosterInfo(i)
|
||||
local ep = sepgp:get_ep_v2(name,note)
|
||||
local gp = sepgp:get_gp_v2(name,officernote)
|
||||
if ep > 0 and gp >= sepgp.VARS.basegp then
|
||||
local epv2 = sepgp:get_ep_v2(name,note)
|
||||
local gpv2 = sepgp:get_gp_v2(name,officernote)
|
||||
local epv3 = sepgp:get_ep_v3(name,officernote)
|
||||
local gpv3 = sepgp:get_gp_v3(name,officernote)
|
||||
if (epv3 and gpv3) then
|
||||
-- do nothing, we've migrated already
|
||||
elseif (epv2 and gpv2) and (epv2 > 0 and gpv2 >= sepgp.VARS.basegp) then
|
||||
count = count + 1
|
||||
sepgp:update_epgp_v3(ep,gp,i,name,officernote)
|
||||
--self:debugPrint(string.format("%s{%d:%d}",name,ep,gp))
|
||||
-- self:defaultPrint(string.format("epv2:%s,gpv2:%s,i:%s,n:%s,o:%s",epv2,gpv2,i,name,officernote))
|
||||
sepgp:update_epgp_v3(epv2,gpv2,i,name,officernote)
|
||||
end
|
||||
end
|
||||
self:defaultPrint(string.format("Updated %d members to v3 storage.",count))
|
||||
|
||||
+23
-13
@@ -303,10 +303,11 @@ function sepgp:init_notes_v3(guild_index,name,officernote)
|
||||
officernote = string.gsub(officernote,"(.*)({%d+:%d+})(.*)",sanitizeNote)
|
||||
end
|
||||
GuildRosterSetOfficerNote(guild_index,officernote,true)
|
||||
return officernote
|
||||
end
|
||||
|
||||
function sepgp:update_epgp_v3(ep,gp,guild_index,name,officernote)
|
||||
self:init_notes_v3(guild_index,name,officernote)
|
||||
officernote = self:init_notes_v3(guild_index,name,officernote)
|
||||
local newnote
|
||||
if (ep) then
|
||||
ep = math.max(0,ep)
|
||||
@@ -445,18 +446,24 @@ end
|
||||
function sepgp:givename_ep(getname,ep) -- awards ep to a single character
|
||||
if not (admin()) then return end
|
||||
sepgp:debugPrint(string.format("Giving %d ep to %s",ep,getname))
|
||||
ep = ep + (sepgp:get_ep_v3(getname) or 0) --TODO: update v3
|
||||
sepgp:update_ep_v3(getname,ep) --TODO: update v3
|
||||
if ep < 0 then -- inform admins of penalties
|
||||
local msg = string.format("%s EP Penalty to %s.",ep,getname)
|
||||
sepgp:adminSay(msg)
|
||||
self:addToLog(msg)
|
||||
end
|
||||
ep = ep + (sepgp:get_ep_v3(getname) or 0) --DONE: update v3
|
||||
sepgp:update_ep_v3(getname,ep) --DONE: update v3
|
||||
end
|
||||
|
||||
function sepgp:givename_gp(getname,gp) -- assigns gp to a single character
|
||||
if not (admin()) then return end
|
||||
sepgp:debugPrint(string.format("Giving %d gp to %s",gp,getname))
|
||||
local oldgp = (sepgp:get_gp_v3(getname) or sepgp.VARS.basegp) --TODO: update v3
|
||||
local oldgp = (sepgp:get_gp_v3(getname) or sepgp.VARS.basegp) --DONE: update v3
|
||||
local newgp = gp + oldgp
|
||||
sepgp:adminSay(string.format("Awarding %d GP to %s. (Previous: %d, New: %d)",gp,getname,oldgp,newgp))
|
||||
self:addToLog(string.format("Awarding %d GP to %s. (Previous: %d, New: %d)",gp,getname,oldgp,newgp))
|
||||
sepgp:update_gp_v3(getname,newgp) --TODO: update v3
|
||||
local msg = string.format("Awarding %d GP to %s. (Previous: %d, New: %d)",gp,getname,oldgp,math.max(sepgp.VARS.basegp,newgp))
|
||||
sepgp:adminSay(msg)
|
||||
self:addToLog(msg)
|
||||
sepgp:update_gp_v3(getname,newgp) --DONE: update v3
|
||||
end
|
||||
|
||||
function sepgp:decay_epgp_v2() -- decays entire roster's ep and gp
|
||||
@@ -496,7 +503,7 @@ function sepgp:decay_epgp_v3()
|
||||
sepgp:update_epgp_v3(ep,gp,i,name,officernote)
|
||||
end
|
||||
end
|
||||
local msg = string.format("All EP and GP decayed by %d%%",(1-sepgp_decay)*100)
|
||||
local msg = string.format("All EP and GP decayed by %s%%",(1-sepgp_decay)*100)
|
||||
sepgp:simpleSay(msg)
|
||||
if not (sepgp_saychannel=="OFFICER") then sepgp:adminSay(msg) end
|
||||
self:addToLog(msg)
|
||||
@@ -739,10 +746,10 @@ function sepgp:buildMenu()
|
||||
options.args["decay"] = {
|
||||
type = "execute",
|
||||
name = "Decay EPGP",
|
||||
desc = string.format("Decays all EPGP by %d%%",(1-(sepgp_decay or sepgp.VARS.decay))*100),
|
||||
desc = string.format("Decays all EPGP by %s%%",(1-(sepgp_decay or sepgp.VARS.decay))*100),
|
||||
order = 100,
|
||||
hidden = function() return not (admin()) end,
|
||||
func = function() sepgp:decay_epgp_v3() end --TODO: update v3
|
||||
func = function() sepgp:decay_epgp_v3() end --DONE: update v3
|
||||
}
|
||||
options.args["set_decay"] = {
|
||||
type = "range",
|
||||
@@ -751,7 +758,10 @@ function sepgp:buildMenu()
|
||||
order = 110,
|
||||
usage = "<Decay>",
|
||||
get = function() return (1.0-sepgp_decay) end,
|
||||
set = function(v) sepgp_decay = (1 - v) end,
|
||||
set = function(v)
|
||||
sepgp_decay = (1 - v)
|
||||
options.args["decay"].desc = string.format("Decays all EPGP by %s%%",(1-sepgp_decay)*100)
|
||||
end,
|
||||
min = 0.01,
|
||||
max = 0.5,
|
||||
step = 0.01,
|
||||
@@ -998,8 +1008,8 @@ function sepgp:captureBid(text, sender)
|
||||
for i = 1, GetNumGuildMembers(1) do
|
||||
local name, _, _, _, class, _, note, officernote, _, _ = GetGuildRosterInfo(i)
|
||||
if name == sender then
|
||||
local ep = (self:get_ep_v3(name,officernote) or 0) --TODO: update v3
|
||||
local gp = (self:get_gp_v3(name,officernote) or sepgp.VARS.basegp) --TODO: update v3
|
||||
local ep = (self:get_ep_v3(name,officernote) or 0) --DONE: update v3
|
||||
local gp = (self:get_gp_v3(name,officernote) or sepgp.VARS.basegp) --DONE: update v3
|
||||
if (mskw_found) then
|
||||
bids_blacklist[sender] = true
|
||||
table.insert(sepgp.bids_main,{name,class,ep,gp,ep/gp})
|
||||
|
||||
+1
-1
@@ -3,7 +3,7 @@
|
||||
## Notes: Effort Points/Gear Points Loot System
|
||||
## Author: Roadblock
|
||||
## X-Credits: shooty for original version
|
||||
## Version: 3.0
|
||||
## Version: 3.1
|
||||
## OptionalDeps: Ace2
|
||||
## SavedVariables: sepgp_saychannel,sepgp_groupbyclass,sepgp_raidonly,sepgp_decay,sepgp_reservechannel,sepgp_main,sepgp_progress,sepgp_discount
|
||||
## SavedVariablesPerCharacter: sepgp_log, sepgp_dbver
|
||||
|
||||
+4
-4
@@ -105,8 +105,8 @@ function sepgp_standings:Export()
|
||||
local t = {}
|
||||
for i = 1, GetNumGuildMembers(1) do
|
||||
local name, _, _, _, class, _, note, officernote, _, _ = GetGuildRosterInfo(i)
|
||||
local ep = (sepgp:get_ep_v3(name,officernote) or 0) --TODO: update v3
|
||||
local gp = (sepgp:get_gp_v3(name,officernote) or sepgp.VARS.basegp) --TODO: update v3
|
||||
local ep = (sepgp:get_ep_v3(name,officernote) or 0) --DONE: update v3
|
||||
local gp = (sepgp:get_gp_v3(name,officernote) or sepgp.VARS.basegp) --DONE: update v3
|
||||
if ep > 0 then
|
||||
table.insert(t,{name,ep,gp,ep/gp})
|
||||
end
|
||||
@@ -176,8 +176,8 @@ function sepgp_standings:BuildStandingsTable()
|
||||
end
|
||||
for i = 1, GetNumGuildMembers(1) do
|
||||
local name, _, _, _, class, _, note, officernote, _, _ = GetGuildRosterInfo(i)
|
||||
local ep = (sepgp:get_ep_v3(name) or 0) --TODO: update v3
|
||||
local gp = (sepgp:get_gp_v3(name) or sepgp.VARS.basegp) --TODO: update v3
|
||||
local ep = (sepgp:get_ep_v3(name) or 0) --DONE: update v3
|
||||
local gp = (sepgp:get_gp_v3(name) or sepgp.VARS.basegp) --DONE: update v3
|
||||
if ep > 0 then
|
||||
if (sepgp_raidonly) and next(r) then
|
||||
if r[name] then
|
||||
|
||||
Reference in New Issue
Block a user