Add a translation system.

Add zhCN localization by Qcat.
If you want to help with localizing shootyepgp in other languages, create a fork and update the localization.lua file.
This commit is contained in:
Road-block
2017-12-23 18:14:33 +02:00
parent 985ccf68ed
commit 98560d192c
9 changed files with 538 additions and 190 deletions
+7 -12
View File
@@ -3,6 +3,7 @@ local D = AceLibrary("Dewdrop-2.0")
local C = AceLibrary("Crayon-2.0")
local BC = AceLibrary("Babble-Class-2.2")
local L = AceLibrary("AceLocale-2.2"):new("shootyepgp")
sepgp_bids = sepgp:NewModule("sepgp_bids", "AceDB-2.0", "AceEvent-2.0")
@@ -10,7 +11,7 @@ function sepgp_bids:OnEnable()
if not T:IsRegistered("sepgp_bids") then
T:Register("sepgp_bids",
"children", function()
T:SetTitle("shootyepgp bids")
T:SetTitle(L["shootyepgp bids"])
self:OnTooltipUpdate()
end,
"showTitleWhenDetached", true,
@@ -18,8 +19,8 @@ function sepgp_bids:OnEnable()
"cantAttach", true,
"menu", function()
D:AddLine(
"text", "Refresh",
"tooltipText", "Refresh window",
"text", L["Refresh"],
"tooltipText", L["Refresh window"],
"func", function() sepgp_bids:Refresh() end
)
end
@@ -77,17 +78,11 @@ function sepgp_bids:Toggle(forceShow)
end
function sepgp_bids:announceWinnerMS(name, pr)
--if GetNumRaidMembers()>0 then
sepgp:widestAudience(string.format("Winning Mainspec Bid: %s (%.03f PR)",name,pr))
--SendChatMessage(string.format("Winning Mainspec Bid: %s (%.03f PR)",name,pr),"RAID")
--end
sepgp:widestAudience(string.format(L["Winning Mainspec Bid: %s (%.03f PR)"],name,pr))
end
function sepgp_bids:announceWinnerOS(name, pr)
--if GetNumRaidMembers()>0 then
sepgp:widestAudience(string.format("Winning Offspec Bid: %s (%.03f PR)",name,pr))
--SendChatMessage(string.format("Winning Offspec Bid: %s (%.03f PR)",name,pr),"RAID")
--end
sepgp:widestAudience(string.format(L["Winning Offspec Bid: %s (%.03f PR)"],name,pr))
end
function sepgp_bids:countdownCounter()
@@ -214,4 +209,4 @@ function sepgp_bids:OnTooltipUpdate()
end
-- GLOBALS: sepgp_saychannel,sepgp_groupbyclass,sepgp_raidonly,sepgp_decay,sepgp_reservechannel,sepgp_main,sepgp_progress,sepgp_discount,sepgp_log,sepgp_dbver,sepgp_looted
-- GLOBALS: sepgp,sepgp_prices,sepgp_standings,sepgp_bids,sepgp_loot,sepgp_reserves,sepgp_logs
-- GLOBALS: sepgp,sepgp_prices,sepgp_standings,sepgp_bids,sepgp_loot,sepgp_reserves,sepgp_logs
+349
View File
@@ -0,0 +1,349 @@
local L = AceLibrary("AceLocale-2.2"):new("shootyepgp")
L:RegisterTranslations("enUS", function() return {
--["Term"] = true, -- Example
-- common
["Refresh"] = true,
["Refresh window"] = true,
["Clear"] = true,
["Name"] = true,
["Raid Only"] = true,
["Only show members in raid."] = true,
-- bids
["shootyepgp bids"] = true,
["Winning Mainspec Bid: %s (%.03f PR)"] = true,
["Winning Offspec Bid: %s (%.03f PR)"] = true,
-- logs
["shootyepgp logs"] = true,
["Clear Logs."] = true,
["Time"] = true,
["Action"] = true,
-- loot
["shootyepgp loot info"] = true,
["Clear Loot."] = true,
["Item"] = true,
["Binds"] = true,
["Looter"] = true,
["GP Action"] = true,
-- migrations
["Updated %d members to v3 storage."] = true,
-- reserves
["shootyepgp reserves"] = true,
["Countdown"] = true,
["Rank"] = true,
["OnAlt"] = true,
-- standings
["Ctrl-C to copy. Esc to close."] = true,
["Ctrl-V to paste data. Esc to close."] = true,
["Imported %d members."] = true,
["Imported %d members.\n"] = true,
["%s\nFailed to import:"] = true,
["shootyepgp standings"] = true,
["Group by class"] = true,
["Group members by class."] = true,
["Export"] = true,
["Export standings to csv."] = true,
["Import"] = true,
["Import standings from csv."] = true,
["ep"] = true,
["gp"] = true,
["pr"] = true,
IMPORT_WARNING = [[Warning:
Import overwrites all existing EPGP values.
Paste all the csv data here replacing this text,
then hit Import.
Results will print here when done.]],
-- shootyepgp
["{shootyepgp}Type \"+\" if on main, or \"+<YourMainName>\" (without quotes) if on alt within %dsec."] = true,
["|cffFF3333|Hshootybid:1:$ML|h[Mainspec/NEED]|h|r"] = true,
["|cff009900|Hshootybid:2:$ML|h[Offspec/GREED]|h|r"] = true,
["Bids"] = true,
["Show Bids Table."] = true,
["ClearLoot"] = true,
["Clear Loot Table."] = true,
["ClearLogs"] = true,
["Clear Logs Table."] = true,
["Standings"] = true,
["Show Standings Table."] = true,
["Restart"] = true,
["Restart shootyepgp if having startup problems."] = true,
["Standings"] = true,
["Show Standings Table."] = true,
["v%s Loaded."] = true,
["Alt Click/RClick/MClick"] = true,
["Call for: MS/OS/Both"] = true,
["gp:|cff32cd32%d|r gp_os:|cff20b2aa%d|r"] = true,
["pr:|cffff0000%.02f|r(%.02f) pr_os:|cffff0000%.02f|r(%.02f)"] = true,
["|cffff0000Finished|r"] = true,
["|cff00ff00%02d|r|cffffffffsec|r"] = true,
["Manually modified %s\'s note. EPGP was %s"] = true,
["|cffff0000Manually modified %s\'s note. EPGP was %s|r"] = true,
["Whisper me + for %s (mainspec)"] = true,
["Whisper me - for %s (offspec)"] = true,
["Whisper me + or - for %s (mainspec or offspec)"] = true,
["Click $MS or $OS for %s"] = true,
["or $OS "] = true,
["$MS or "] = true,
["You have received a %d EP penalty."] = true,
["You have been awarded %d EP."] = true,
["You have gained %d GP."] = true,
["%s%% decay to EP and GP."] = true,
["%d EP awarded to Raid."] = true,
["%d EP awarded to Reserves."] = true,
["New %s version available: |cff00ff00%s|r"] = true,
["Visit %s to update."] = true,
["New raid progress"] = true,
[", offspec price %"] = true,
["New offspec price %"] = true,
[", decay %"] = true,
["New decay %"] = true,
[" settings accepted from %s"] = true,
["Giving %d ep to all raidmembers"] = true,
["You aren't in a raid dummy"] = true,
["Giving %d ep to active reserves"] = true,
["Giving %d ep to %s"] = true,
["%s EP Penalty to %s."] = true,
["Giving %d gp to %s"] = true,
["Awarding %d GP to %s. (Previous: %d, New: %d)"] = true,
["%s\'s officernote is broken:%q"] = true,
["All EP and GP decayed by %d%%"] = true,
["All EP and GP decayed by %s%%"] = true,
["All GP has been reset to %d."] = true,
["All EP and GP has been reset to 0/%d."] = true,
["You now have: %d EP %d GP |cffffff00%.03f|r|cffff7f00PR|r."] = true,
["Close to EPGP Cap. Next Decay will change your |cffff7f00PR|r by |cffff0000%.4g|r."] = true,
["|cffffff00Click|r to toggle Standings.%s \n|cffffff00Right-Click|r for Options."] = true,
[" \n|cffffff00Ctrl+Click|r to toggle Reserves. \n|cffffff00Alt+Click|r to toggle Bids. \n|cffffff00Shift+Click|r to toggle Loot. \n|cffffff00Ctrl+Shift+Click|r to toggle Logs."] = true,
["Account EPs to %s."] = true,
["Account GPs to %s."] = true,
["shootyepgp options"] = true,
["+EPs to Member"] = true,
["Account EPs for member."] = true,
["+EPs to Raid"] = true,
["Award EPs to all raid members."] = true,
["+GPs to Member"] = true,
["Account GPs for member."] = true,
["+EPs to Reserves"] = true,
["Award EPs to all active Reserves."] = true,
["Enable Reserves"] = true,
["Participate in Standby Raiders List.\n|cffff0000Requires Main Character Name.|r"] = true,
["AFK Check Reserves"] = true,
["AFK Check Reserves List"] = true,
["Set Main"] = true,
["Set your Main Character for Reserve List."] = true,
["Raid Progress"] = true,
["Highest Tier the Guild is raiding.\nUsed to adjust GP Prices.\nUsed for suggested EP awards."] = true,
["4.Naxxramas"] = true,
["3.Temple of Ahn\'Qiraj"] = true,
["2.Blackwing Lair"] = true,
["1.Molten Core"] = true,
["Reporting channel"] = true,
["Channel used by reporting functions."] = true,
["Decay EPGP"] = true,
["Decays all EPGP by %s%%"] = true,
["Set Decay %"] = true,
["Set Decay percentage (Admin only)."] = true,
["Offspec Price %"] = true,
["Set Offspec Items GP Percent."] = true,
["Reset EPGP"] = true,
["Resets everyone\'s EPGP to 0/%d (Admin only)."] = true,
["Scanning %d members for EP/GP data. (%s)"] = true,
["|cffff0000%s|r trying to add %s to Reserves, but has already added a member. Discarding!"] = true,
["|cffff0000%s|r has already been added to Reserves. Discarding!"] = true,
["^{shootyepgp}Type"] = true,
["Clearing old Bids"] = true,
["%s not found in the guild or not max level!"] = true,
["Molten Core"] = true,
["Onyxia\'s Lair"] = true,
["Blackwing Lair"] = true,
["Ahn\'Qiraj"] = true,
["Naxxramas"] = true,
["There are %d loot drops stored. It is recommended to clear loot info before a new raid. Do you want to clear it now?"] = true,
["Show me"] = true,
["Loot info cleared"] = true,
["Loot info can be cleared at any time from the Tablet context menu or '/shooty clearloot' command"] = true,
["Set your main to be able to participate in Reserve List EPGP Checks."] = true,
["Reserves AFKCheck. Are you available? |cff00ff00%0d|rsec."] = true,
["|cffff0000Are you sure you want to Reset ALL EPGP?|r"] = true,
["Add MainSpec GP"] = true,
["Add OffSpec GP"] = true,
["Bank or D/E"] = true,
["%s looted %s. What do you want to do?"] = true,
["GP Actions"] = true,
["Remind me Later"] = true,
} end)
L:RegisterTranslations("zhCN", function() return {
--["Term"] = "术语", -- Example
-- common
["Refresh"] = "刷新",
["Refresh window"] = "刷新窗口",
["Clear"] = "清除",
["Name"] = "名字",
["Raid Only"] = "只显示团队",
["Only show members in raid."] = "只显示在团队里的成员.",
-- bids
["shootyepgp bids"] = "shootyepgp 竞拍",
["Winning Mainspec Bid: %s (%.03f PR)"] = "副天赋竞标获胜: %s (%.03f PR)",
["Winning Offspec Bid: %s (%.03f PR)"] = "副天赋竞标获胜: %s (%.03f PR)",
-- logs
["shootyepgp logs"] = "shootyepgp 日志",
["Clear Logs."] = "清除日志.",
["Time"] = "时间",
["Action"] = "行为",
-- loot
["shootyepgp loot info"] = "shootyepgp 拾取信息",
["Clear Loot."] = "清除拾取.",
["Item"] = "物品",
["Binds"] = "竞拍",
["Looter"] = "拾取人",
["GP Action"] = "GP 行为",
-- migrations
["Updated %d members to v3 storage."] = "更新 %d 成员到v3存储区.",
-- reserves
["shootyepgp reserves"] = "shootyepgp 替补成员",
["Countdown"] = "倒计时",
["Rank"] = "Rank",
["OnAlt"] = "OnAlt",
-- standings
["Ctrl-C to copy. Esc to close."] = "Ctrl-C 复制. Esc 退出.",
["Ctrl-V to paste data. Esc to close."] = "Ctrl-V 粘贴数据. Esc 退出.",
["Imported %d members."] = "导入 %d 成员.",
["Imported %d members.\n"] = "导入 %d 成员.\n",
["%s\nFailed to import:"] = "%s\n未能导入:",
["shootyepgp standings"] = "shootyepgp 名单列表",
["Group by class"] = "职业分组",
["Group members by class."] = "按职业分组.",
["Export"] = "导出",
["Export standings to csv."] = "导出排名到CSV文本.",
["Import"] = "导入",
["Import standings from csv."] = "从CSV文本里导入数据.",
["ep"] = "ep(贡献点)",
["gp"] = "gp(装备点)",
["pr"] = "pr(优先)",
IMPORT_WARNING = [[警告:
导入会覆盖所有现有的EPGP值.
粘贴这里的所有CSV数据替换文本,
然后再导入.
完成后打印结果.]],
-- shootyepgp
["{shootyepgp}Type \"+\" if on main, or \"+<YourMainName>\" (without quotes) if on alt within %dsec."] = "{shootyepgp}使用 \"+\" 如果你在大号上, 或者 \"+<YourMainName>\" (没有引号) 如果在小号 %d秒.",
["|cffFF3333|Hshootybid:1:$ML|h[Mainspec/NEED]|h|r"] = "|cffFF3333|Hshootybid:1:$ML|h[主天赋/需求]|h|r",
["|cff009900|Hshootybid:2:$ML|h[Offspec/GREED]|h|r"] = "|cff009900|Hshootybid:2:$ML|h[副天赋/贪婪]|h|r",
["Bids"] = "竞标",
["Show Bids Table."] = "显示竞标表.",
["ClearLoot"] = "清除拾取",
["Clear Loot Table."] = "清除拾取表.",
["ClearLogs"] = "清除日志",
["Clear Logs Table."] = "清除日志表.",
["Standings"] = "排名",
["Show Standings Table."] = "显示排名表.",
["Restart"] = "重新开始",
["Restart shootyepgp if having startup problems."] = "重新开始 shootyepgp,如果有启动问题.",
["Standings"] = "排名",
["Show Standings Table."] = "显示排名表.",
["v%s Loaded."] = "v%s 加载.",
["Alt Click/RClick/MClick"] = "Alt+左键/右键/中键",
["Call for: MS/OS/Both"] = "要求: MS/OS/Both",
["gp:|cff32cd32%d|r gp_os:|cff20b2aa%d|r"] = "gp:|cff32cd32%d|r 副天赋gp:|cff20b2aa%d|r",
["pr:|cffff0000%.02f|r(%.02f) pr_os:|cffff0000%.02f|r(%.02f)"] = "pr:|cffff0000%.02f|r(%.02f) 副天赋pr:|cffff0000%.02f|r(%.02f)",
["|cffff0000Finished|r"] = "|cffff0000完成|r",
["|cff00ff00%02d|r|cffffffffsec|r"] = "|cff00ff00%02d|r|cffffffff秒|r",
["Manually modified %s\'s note. EPGP was %s"] = "手动修改 %s\'s 记录. EPGP 是 %s",
["|cffff0000Manually modified %s\'s note. EPGP was %s|r"] = "|cffff0000手动修改 %s\'s 记录. EPGP 是 %s|r",
["Whisper me + for %s (mainspec)"] = "私聊我 + %s (主天赋)",
["Whisper me - for %s (offspec)"] = "私聊我 - %s (副天赋)",
["Whisper me + or - for %s (mainspec or offspec)"] = "私聊我 + 或者 - %s (主天赋或副天赋)",
["Click $MS or $OS for %s"] = "Click $MS 或 $OS for %s",
["or $OS "] = "或 $OS ",
["$MS or "] = "$MS 或 ",
["You have received a %d EP penalty."] = "你已经收到了 %d EP 处罚.",
["You have been awarded %d EP."] = "你被授予 %d EP.",
["You have gained %d GP."] = "你得到了 %d GP.",
["%s%% decay to EP and GP."] = "%s%% 递减EP和GP.",
["%d EP awarded to Raid."] = "%d EP 授予团队.",
["%d EP awarded to Reserves."] = "%d EP 授予替补队员.",
["New %s version available: |cff00ff00%s|r"] = "新的 %s 版本可用: |cff00ff00%s|r",
["Visit %s to update."] = "访问 %s 升级.",
["New raid progress"] = "新的RAID进度",
[", offspec price %"] = ", 副天赋价格 %",
["New offspec price %"] = "新的副天赋价格 %",
[", decay %"] = ", 递减 %",
["New decay %"] = "新的递减 %",
[" settings accepted from %s"] = " 设置接受从 %s",
["Giving %d ep to all raidmembers"] = "给予 %d ep 到所有团员",
["You aren't in a raid dummy"] = "你不在一个团队",
["Giving %d ep to active reserves"] = "给予 %d ep 在线的替补队员",
["Giving %d ep to %s"] = "给予 %d ep 给 %s",
["%s EP Penalty to %s."] = "%s EP 惩罚 %s.",
["Giving %d gp to %s"] = "给予 %d gp 给 %s",
["Awarding %d GP to %s. (Previous: %d, New: %d)"] = "奖励 %d GP 给 %s. (以前: %d, 新: %d)",
["%s\'s officernote is broken:%q"] = "%s\'s 官员备注无法执行:%q",
["All EP and GP decayed by %d%%"] = "所有EP和GP递减 %d%%",
["All EP and GP decayed by %s%%"] = "所有EP和GP递减 %s%%",
["All GP has been reset to %d."] = "所有GP已重置为 %d.",
["All EP and GP has been reset to 0/%d."] = "所有EP和GP已重置为 0/%d.",
["You now have: %d EP %d GP |cffffff00%.03f|r|cffff7f00PR|r."] = "你现在有: %d EP %d GP |cffffff00%.03f|r|cffff7f00PR|r.",
["Close to EPGP Cap. Next Decay will change your |cffff7f00PR|r by |cffff0000%.4g|r."] = "下次递减会改变你的 |cffff7f00PR|r 从 |cffff0000%.4g|r.",
["|cffffff00Click|r to toggle Standings.%s \n|cffffff00Right-Click|r for Options."] = "|cffffff00点击|r 切换名单.%s \n|cffffff00右键|r 设置.",
[" \n|cffffff00Ctrl+Click|r to toggle Reserves. \n|cffffff00Alt+Click|r to toggle Bids. \n|cffffff00Shift+Click|r to toggle Loot. \n|cffffff00Ctrl+Shift+Click|r to toggle Logs."] = " \n|cffffff00Ctrl+点击|r 切换到替补队员. \n|cffffff00Alt+点击|r 切换到竞拍. \n|cffffff00Shift+点击|r 切换到拾取. \n|cffffff00Ctrl+Shift+点击|r 切换到日志.",
["Account EPs to %s."] = "记账 EP 到 %s.",
["Account GPs to %s."] = "记账 GP 到 %s.",
["shootyepgp options"] = "shootyepgp 设置",
["+EPs to Member"] = "+EP给成员",
["Account EPs for member."] = "记账 EP 给成员.",
["+EPs to Raid"] = "+EP给团队",
["Award EPs to all raid members."] = "奖励 EP 给所有团队成员.",
["+GPs to Member"] = "+GP给成员",
["Account GPs for member."] = "记账 GP给成员.",
["+EPs to Reserves"] = "+EP给替补队员",
["Award EPs to all active Reserves."] = "奖励EP给所有在线的替补队员.",
["Enable Reserves"] = "激活替补成员",
["Participate in Standby Raiders List.\n|cffff0000Requires Main Character Name.|r"] = "参与在备用团队列表.\n|cffff0000要求大号名字.|r",
["AFK Check Reserves"] = "替补队员AFK检查",
["AFK Check Reserves List"] = "检查AFK的替补成员",
["Set Main"] = "设置大号",
["Set your Main Character for Reserve List."] = "设置你的大号人物为替补成员列表.",
["Raid Progress"] = "公会raid进度",
["Highest Tier the Guild is raiding.\nUsed to adjust GP Prices.\nUsed for suggested EP awards."] = "设置公会的最高raid进度.\n用于调整GP价格.\n用于自动调整推荐EP奖励值.",
["4.Naxxramas"] = "4.纳克萨玛斯",
["3.Temple of Ahn\'Qiraj"] = "3.安其拉神殿",
["2.Blackwing Lair"] = "2.黑翼之巢",
["1.Molten Core"] = "1.熔火之心",
["Reporting channel"] = "报告频道",
["Channel used by reporting functions."] = "报告功能使用的频道.",
["Decay EPGP"] = "递减 EPGP",
["Decays all EPGP by %s%%"] = "递减所有 EPGP 从 %s%%",
["Set Decay %"] = "设置递减 %",
["Set Decay percentage (Admin only)."] = "设置递减百分比 (只能管理员).",
["Offspec Price %"] = "副天赋价值 %",
["Set Offspec Items GP Percent."] = "设置副天赋物品 GP 百分比.",
["Reset EPGP"] = "重置 EPGP",
["Resets everyone\'s EPGP to 0/%d (Admin only)."] = "重置所有人的 EPGP 到 0/%d (只能管理员).",
["Scanning %d members for EP/GP data. (%s)"] = "扫描 %d 成员 EP/GP 数据. (%s)",
["|cffff0000%s|r trying to add %s to Reserves, but has already added a member. Discarding!"] = "|cffff0000%s|r 试图添加 %s 给替补成员, 但已经增加了一个成员。",
["|cffff0000%s|r has already been added to Reserves. Discarding!"] = "|cffff0000%s|r 已经添加到替补成员.",
["^{shootyepgp}Type"] = "^{shootyepgp}使用",
["Clearing old Bids"] = "结算之前的竞拍",
["%s not found in the guild or not max level!"] = "%s 没有在公会中找到或不是最高级别!",
["Molten Core"] = "熔火之心",
["Onyxia\'s Lair"] = "奥妮克希亚的巢穴",
["Blackwing Lair"] = "黑翼之巢",
["Ahn\'Qiraj"] = "安其拉",
["Naxxramas"] = "纳克萨玛斯",
["There are %d loot drops stored. It is recommended to clear loot info before a new raid. Do you want to clear it now?"] = "这个 %d 掉落是个战利品. 建议在新的RAID之前清除拾取物信息. 你现在想清除它吗?",
["Show me"] = "秀出來",
["Loot info cleared"] = "战利品信息清除",
["Loot info can be cleared at any time from the Tablet context menu or '/shooty clearloot' command"] = "拾取信息可以随时从小地图上下文菜单中清除,或者用 '/shooty clearloot' 命令",
["Set your main to be able to participate in Reserve List EPGP Checks."] = "设定你的主要人物到参与替补成员EPGP检查清单.",
["Reserves AFKCheck. Are you available? |cff00ff00%0d|rsec."] = "替补成员AFK检查. 你在吗? |cff00ff00%0d|r秒.",
["|cffff0000Are you sure you want to Reset ALL EPGP?|r"] = "|cffff0000您确定要重置全部 EPGP?|r",
["Add MainSpec GP"] = "添加主天赋 GP",
["Add OffSpec GP"] = "添加副天赋 GP",
["Bank or D/E"] = "公会银行或分解师",
["%s looted %s. What do you want to do?"] = "%s 拾取了 %s. 你想做什么?",
["GP Actions"] = "GP 操作",
["Remind me Later"] = "以后提醒我",
} end)
+9 -8
View File
@@ -2,6 +2,7 @@ local T = AceLibrary("Tablet-2.0")
local D = AceLibrary("Dewdrop-2.0")
local C = AceLibrary("Crayon-2.0")
local CP = AceLibrary("Compost-2.0")
local L = AceLibrary("AceLocale-2.2"):new("shootyepgp")
sepgp_logs = sepgp:NewModule("sepgp_logs", "AceDB-2.0")
sepgp_logs.tmp = CP:Acquire()
@@ -10,7 +11,7 @@ function sepgp_logs:OnEnable()
if not T:IsRegistered("sepgp_logs") then
T:Register("sepgp_logs",
"children", function()
T:SetTitle("shootyepgp logs")
T:SetTitle(L["shootyepgp logs"])
self:OnTooltipUpdate()
end,
"showTitleWhenDetached", true,
@@ -18,13 +19,13 @@ function sepgp_logs:OnEnable()
"cantAttach", true,
"menu", function()
D:AddLine(
"text", "Refresh",
"tooltipText", "Refresh window",
"text", L["Refresh"],
"tooltipText", L["Refresh window"],
"func", function() sepgp_logs:Refresh() end
)
D:AddLine(
"text", "Clear",
"tooltipText", "Clear Logs.",
"text", L["Clear"],
"tooltipText", L["Clear Logs."],
"func", function() sepgp_log = {} sepgp_logs:Refresh() end
)
end
@@ -103,8 +104,8 @@ end
function sepgp_logs:OnTooltipUpdate()
local cat = T:AddCategory(
"columns", 2,
"text", C:Orange("Time"), "child_textR", 1, "child_textG", 1, "child_textB", 1, "child_justify", "LEFT",
"text2", C:Orange("Action"), "child_text2R", 1, "child_text2G", 1, "child_text2B", 1, "child_justify2", "RIGHT"
"text", C:Orange(L["Time"]), "child_textR", 1, "child_textG", 1, "child_textB", 1, "child_justify", "LEFT",
"text2", C:Orange(L["Action"]), "child_text2R", 1, "child_text2G", 1, "child_text2B", 1, "child_justify2", "RIGHT"
)
local t = sepgp_logs:BuildLogsTable()
for i = 1, table.getn(t) do
@@ -117,4 +118,4 @@ function sepgp_logs:OnTooltipUpdate()
end
-- GLOBALS: sepgp_saychannel,sepgp_groupbyclass,sepgp_raidonly,sepgp_decay,sepgp_reservechannel,sepgp_main,sepgp_progress,sepgp_discount,sepgp_log,sepgp_dbver,sepgp_looted
-- GLOBALS: sepgp,sepgp_prices,sepgp_standings,sepgp_bids,sepgp_loot,sepgp_reserves,sepgp_logs
-- GLOBALS: sepgp,sepgp_prices,sepgp_standings,sepgp_bids,sepgp_loot,sepgp_reserves,sepgp_logs
+12 -11
View File
@@ -3,6 +3,7 @@ local D = AceLibrary("Dewdrop-2.0")
local C = AceLibrary("Crayon-2.0")
local BC = AceLibrary("Babble-Class-2.2")
local L = AceLibrary("AceLocale-2.2"):new("shootyepgp")
sepgp_loot = sepgp:NewModule("sepgp_loot", "AceDB-2.0")
@@ -10,7 +11,7 @@ function sepgp_loot:OnEnable()
if not T:IsRegistered("sepgp_loot") then
T:Register("sepgp_loot",
"children", function()
T:SetTitle("shootyepgp loot info")
T:SetTitle(L["shootyepgp loot info"])
self:OnTooltipUpdate()
end,
"showTitleWhenDetached", true,
@@ -18,13 +19,13 @@ function sepgp_loot:OnEnable()
"cantAttach", true,
"menu", function()
D:AddLine(
"text", "Refresh",
"tooltipText", "Refresh window",
"text", L["Refresh"],
"tooltipText", L["Refresh window"],
"func", function() sepgp_loot:Refresh() end
)
D:AddLine(
"text", "Clear",
"tooltipText", "Clear Loot.",
"text", L["Clear"],
"tooltipText", L["Clear Loot."],
"func", function() sepgp_looted = {} sepgp_loot:Refresh() end
)
end
@@ -96,11 +97,11 @@ end
function sepgp_loot:OnTooltipUpdate()
local cat = T:AddCategory(
"columns", 5,
"text", C:Orange("Time"), "child_textR", 1, "child_textG", 1, "child_textB", 1, "child_justify", "LEFT",
"text2", C:Orange("Item"), "child_text2R", 1, "child_text2G", 1, "child_text2B", 0, "child_justify2", "LEFT",
"text3", C:Orange("Binds"), "child_text3R", 0, "child_text3G", 1, "child_text3B", 0, "child_justify3", "CENTER",
"text4", C:Orange("Looter"), "child_text4R", 0, "child_text4G", 1, "child_text4B", 0, "child_justify4", "RIGHT",
"text5", C:Orange("GP Action"), "child_text5R", 0, "child_text5G", 1, "child_text5B", 0, "child_justify5", "RIGHT"
"text", C:Orange(L["Time"]), "child_textR", 1, "child_textG", 1, "child_textB", 1, "child_justify", "LEFT",
"text2", C:Orange(L["Item"]), "child_text2R", 1, "child_text2G", 1, "child_text2B", 0, "child_justify2", "LEFT",
"text3", C:Orange(L["Binds"]), "child_text3R", 0, "child_text3G", 1, "child_text3B", 0, "child_justify3", "CENTER",
"text4", C:Orange(L["Looter"]), "child_text4R", 0, "child_text4G", 1, "child_text4B", 0, "child_justify4", "RIGHT",
"text5", C:Orange(L["GP Action"]), "child_text5R", 0, "child_text5G", 1, "child_text5B", 0, "child_justify5", "RIGHT"
)
local t = self:BuildLootTable()
for i = 1, table.getn(t) do
@@ -117,4 +118,4 @@ function sepgp_loot:OnTooltipUpdate()
end
-- GLOBALS: sepgp_saychannel,sepgp_groupbyclass,sepgp_raidonly,sepgp_decay,sepgp_reservechannel,sepgp_main,sepgp_progress,sepgp_discount,sepgp_log,sepgp_dbver,sepgp_looted
-- GLOBALS: sepgp,sepgp_prices,sepgp_standings,sepgp_bids,sepgp_loot,sepgp_reserves,sepgp_logs
-- GLOBALS: sepgp,sepgp_prices,sepgp_standings,sepgp_bids,sepgp_loot,sepgp_reserves,sepgp_logs
+3 -2
View File
@@ -1,3 +1,4 @@
local L = AceLibrary("AceLocale-2.2"):new("shootyepgp")
function sepgp:v2tov3()
local count = 0
for i = 1, GetNumGuildMembers(1) do
@@ -14,9 +15,9 @@ function sepgp:v2tov3()
sepgp:update_epgp_v3(epv2,gpv2,i,name,officernote)
end
end
self:defaultPrint(string.format("Updated %d members to v3 storage.",count))
self:defaultPrint(string.format(L["Updated %d members to v3 storage."],count))
sepgp_dbver = 3
end
-- GLOBALS: sepgp_saychannel,sepgp_groupbyclass,sepgp_raidonly,sepgp_decay,sepgp_reservechannel,sepgp_main,sepgp_progress,sepgp_discount,sepgp_log,sepgp_dbver,sepgp_looted
-- GLOBALS: sepgp,sepgp_prices,sepgp_standings,sepgp_bids,sepgp_loot,sepgp_reserves,sepgp_logs
-- GLOBALS: sepgp,sepgp_prices,sepgp_standings,sepgp_bids,sepgp_loot,sepgp_reserves,sepgp_logs
+9 -8
View File
@@ -3,6 +3,7 @@ local D = AceLibrary("Dewdrop-2.0")
local C = AceLibrary("Crayon-2.0")
local BC = AceLibrary("Babble-Class-2.2")
local L = AceLibrary("AceLocale-2.2"):new("shootyepgp")
sepgp_reserves = sepgp:NewModule("sepgp_reserves", "AceDB-2.0")
@@ -10,7 +11,7 @@ function sepgp_reserves:OnEnable()
if not T:IsRegistered("sepgp_reserves") then
T:Register("sepgp_reserves",
"children", function()
T:SetTitle("shootyepgp reserves")
T:SetTitle(L["shootyepgp reserves"])
self:OnTooltipUpdate()
end,
"showTitleWhenDetached", true,
@@ -18,8 +19,8 @@ function sepgp_reserves:OnEnable()
"cantAttach", true,
"menu", function()
D:AddLine(
"text", "Refresh",
"tooltipText", "Refresh window",
"text", L["Refresh"],
"tooltipText", L["Refresh window"],
"func", function() sepgp_reserves:Refresh() end
)
end
@@ -94,14 +95,14 @@ function sepgp_reserves:OnTooltipUpdate()
"columns", 2
)
cdcat:AddLine(
"text", C:Orange("Countdown"),
"text", C:Orange(L["Countdown"]),
"text2", sepgp.timer.cd_text
)
local cat = T:AddCategory(
"columns", 3,
"text", C:Orange("Name"), "child_textR", 1, "child_textG", 1, "child_textB", 1, "child_justify", "LEFT",
"text2", C:Orange("Rank"), "child_text2R", 1, "child_text2G", 1, "child_text2B", 0, "child_justify2", "RIGHT",
"text3", C:Orange("OnAlt"), "child_text3R", 0, "child_text3G", 1, "child_text3B", 0, "child_justify3", "RIGHT"
"text", C:Orange(L["Name"]), "child_textR", 1, "child_textG", 1, "child_textB", 1, "child_justify", "LEFT",
"text2", C:Orange(L["Rank"]), "child_text2R", 1, "child_text2G", 1, "child_text2B", 0, "child_justify2", "RIGHT",
"text3", C:Orange(L["OnAlt"]), "child_text3R", 0, "child_text3G", 1, "child_text3B", 0, "child_justify3", "RIGHT"
)
local t = self:BuildReservesTable()
for i = 1, table.getn(t) do
@@ -116,4 +117,4 @@ function sepgp_reserves:OnTooltipUpdate()
end
-- GLOBALS: sepgp_saychannel,sepgp_groupbyclass,sepgp_raidonly,sepgp_decay,sepgp_reservechannel,sepgp_main,sepgp_progress,sepgp_discount,sepgp_log,sepgp_dbver,sepgp_looted
-- GLOBALS: sepgp,sepgp_prices,sepgp_standings,sepgp_bids,sepgp_loot,sepgp_reserves,sepgp_logs
-- GLOBALS: sepgp,sepgp_prices,sepgp_standings,sepgp_bids,sepgp_loot,sepgp_reserves,sepgp_logs
+121 -120
View File
@@ -6,6 +6,7 @@ local C = AceLibrary("Crayon-2.0")
local BC = AceLibrary("Babble-Class-2.2")
local DF = AceLibrary("Deformat-2.0")
local G = AceLibrary("Gratuity-2.0")
local L = AceLibrary("AceLocale-2.2"):new("shootyepgp")
sepgp.VARS = {
basegp = 100,
baseaward_ep = 100,
@@ -24,7 +25,7 @@ sepgp.VARS = {
bankde = "Bank-D/E",
reminder = C:Red("Unassigned"),
}
sepgp.VARS.reservecall = string.format("{shootyepgp}Type \"+\" if on main, or \"+<YourMainName>\" (without quotes) if on alt within %dsec.",sepgp.VARS.timeout)
sepgp.VARS.reservecall = string.format(L["{shootyepgp}Type \"+\" if on main, or \"+<YourMainName>\" (without quotes) if on alt within %dsec."],sepgp.VARS.timeout)
sepgp._playerName = (UnitName("player"))
local out = "|cff9664c8shootyepgp:|r %s"
local raidStatus,lastRaidStatus
@@ -37,8 +38,8 @@ local partyUnit,raidUnit = {},{}
local hexColorQuality = {}
local reserves_blacklist,bids_blacklist = {},{}
local bidlink = {
["ms"]="|cffFF3333|Hshootybid:1:$ML|h[Mainspec/NEED]|h|r",
["os"]="|cff009900|Hshootybid:2:$ML|h[Offspec/GREED]|h|r"
["ms"]=L["|cffFF3333|Hshootybid:1:$ML|h[Mainspec/NEED]|h|r"],
["os"]=L["|cff009900|Hshootybid:2:$ML|h[Offspec/GREED]|h|r"]
}
do
for i=1,40 do
@@ -54,40 +55,40 @@ end
local admincmd, membercmd = {type = "group", handler = sepgp, args = {
bids = {
type = "execute",
name = "Bids",
desc = "Show Bids Table.",
name = L["Bids"],
desc = L["Show Bids Table."],
func = function()
sepgp_bids:Toggle()
end,
},
clearloot = {
type = "execute",
name = "ClearLoot",
desc = "Clear Loot Table.",
name = L["ClearLoot"],
desc = L["Clear Loot Table."],
func = function()
sepgp_looted = {}
end,
},
clearlogs = {
type = "execute",
name = "ClearLogs",
desc = "Clear Logs Table.",
name = L["ClearLogs"],
desc = L["Clear Logs Table."],
func = function()
sepgp_log = {}
end,
},
show = {
type = "execute",
name = "Standings",
desc = "Show Standings Table.",
name = L["Standings"],
desc = L["Show Standings Table."],
func = function()
sepgp_standings:Toggle()
end,
},
restart = {
type = "execute",
name = "Restart",
desc = "Restart shootyepgp if having startup problems.",
name = L["Restart"],
desc = L["Restart shootyepgp if having startup problems."],
func = function()
sepgp:OnEnable()
end,
@@ -96,8 +97,8 @@ local admincmd, membercmd = {type = "group", handler = sepgp, args = {
{type = "group", handler = sepgp, args = {
show = {
type = "execute",
name = "Standings",
desc = "Show Standings Table.",
name = L["Standings"],
desc = L["Show Standings Table."],
func = function()
sepgp_standings:Toggle()
end,
@@ -308,7 +309,7 @@ function sepgp:delayedInit()
if (IsInGuild()) then
local guildName = (GetGuildInfo("player"))
if (guildName) and guildName ~= "" then
sepgp_reservechannel = string.format("%sReserves",(string.gsub(guildName," ","")))
sepgp_reservechannel = string.format("%sReserves",(string.gsub(guildName," ",""))) -- TODO: Check if channel names can have chinese characters
end
end
if sepgp_reservechannel == nil then sepgp_reservechannel = sepgp.VARS.reservechan end
@@ -336,7 +337,7 @@ function sepgp:delayedInit()
self:Hook("GuildRosterSetOfficerNote")
end
end
self:defaultPrint(string.format("v%s Loaded.",sepgp._versionString))
self:defaultPrint(string.format(L["v%s Loaded."],sepgp._versionString))
end
function sepgp:AddDataToTooltip(tooltip,itemlink,itemstring,is_master)
@@ -350,7 +351,7 @@ function sepgp:AddDataToTooltip(tooltip,itemlink,itemstring,is_master)
local line_limit, left1,right1
if (is_master) then
line_limit = 27
left1,right1 = C:Yellow("Alt Click/RClick/MClick"), C:Orange("Call for: MS/OS/Both")
left1,right1 = C:Yellow(L["Alt Click/RClick/MClick"]), C:Orange(L["Call for: MS/OS/Both"])
else
line_limit = 28
end
@@ -359,8 +360,8 @@ function sepgp:AddDataToTooltip(tooltip,itemlink,itemstring,is_master)
local pr,new_pr,new_pr_off = ep/gp, ep/(gp+price), ep/(gp+off_price)
local pr_delta = new_pr - pr
local pr_delta_off = new_pr_off - pr
local textRight = string.format("gp:|cff32cd32%d|r gp_os:|cff20b2aa%d|r",price,off_price)
local textRight2 = string.format("pr:|cffff0000%.02f|r(%.02f) pr_os:|cffff0000%.02f|r(%.02f)",pr_delta,new_pr,pr_delta_off,new_pr_off)
local textRight = string.format(L["gp:|cff32cd32%d|r gp_os:|cff20b2aa%d|r"],price,off_price)
local textRight2 = string.format(L["pr:|cffff0000%.02f|r(%.02f) pr_os:|cffff0000%.02f|r(%.02f)"],pr_delta,new_pr,pr_delta_off,new_pr_off)
if (tooltip:NumLines() < line_limit) then
tooltip:AddLine(" ")
tooltip:AddDoubleLine("|cff9664c8shootyepgp|r",textRight)
@@ -391,10 +392,10 @@ function sepgp:OnUpdate(elapsed)
if sepgp.timer.count_down <= 0 then
running_check = nil
sepgp.timer:Hide()
sepgp.timer.cd_text = "|cffff0000Finished|r"
sepgp.timer.cd_text = L["|cffff0000Finished|r"]
sepgp_reserves:Refresh()
else
sepgp.timer.cd_text = string.format("|cff00ff00%02d|r|cffffffffsec|r",sepgp.timer.count_down)
sepgp.timer.cd_text = string.format(L["|cff00ff00%02d|r|cffffffffsec|r"],sepgp.timer.count_down)
end
if lastUpdate > 0.5 then
lastUpdate = 0
@@ -411,8 +412,8 @@ function sepgp:GuildRosterSetOfficerNote(index,note,fromAddon)
local _,_,_,epgp,_ = string.find(note or "","(.*)({%d+:%d+})(.*)")
if oldepgp ~= nil then
if epgp == nil or epgp ~= oldepgp then
self:adminSay(string.format("Manually modified %s\'s note. EPGP was %s",name,oldepgp))
self:defaultPrint(string.format("|cffff0000Manually modified %s\'s note. EPGP was %s|r",name,oldepgp))
self:adminSay(string.format(L["Manually modified %s\'s note. EPGP was %s"],name,oldepgp))
self:defaultPrint(string.format(L["|cffff0000Manually modified %s\'s note. EPGP was %s|r"],name,oldepgp))
end
end
local safenote = string.gsub(note,"(.*)({%d+:%d+})(.*)",sanitizeNote)
@@ -470,11 +471,11 @@ function sepgp:LootFrameItem_OnClick(button,data)
local itemLink = GetLootSlotLink(slot)
if (itemLink) then
if button == "LeftButton" then
self:widestAudience(string.format("Whisper me + for %s (mainspec)",itemLink))
self:widestAudience(string.format(L["Whisper me + for %s (mainspec)"],itemLink))
elseif button == "RightButton" then
self:widestAudience(string.format("Whisper me - for %s (offspec)",itemLink))
self:widestAudience(string.format(L["Whisper me - for %s (offspec)"],itemLink))
elseif button == "MiddleButton" then
self:widestAudience(string.format("Whisper me + or - for %s (mainspec or offspec)",itemLink))
self:widestAudience(string.format(L["Whisper me + or - for %s (mainspec or offspec)"],itemLink))
end
end
end
@@ -502,13 +503,13 @@ function sepgp:ContainerFrameItemButton_OnClick(button,ignoreModifiers)
local bind = self:itemBinding(itemString) or ""
if (bind == self.VARS.boe) then
if button == "LeftButton" then
self:widestAudience(string.format("Whisper me + for %s (mainspec)",itemLink))
self:widestAudience(string.format(L["Whisper me + for %s (mainspec)"],itemLink))
return
elseif button == "RightButton" then
self:widestAudience(string.format("Whisper me - for %s (offspec)",itemLink))
self:widestAudience(string.format(L["Whisper me - for %s (offspec)"],itemLink))
return
elseif button == "MiddleButton" then
self:widestAudience(string.format("Whisper me + or - for %s (mainspec or offspec)",itemLink))
self:widestAudience(string.format(L["Whisper me + or - for %s (mainspec or offspec)"],itemLink))
return
end
end
@@ -560,16 +561,16 @@ end
function sepgp:bidPrint(link,masterlooter,need,greed,bid)
local mslink = string.gsub(bidlink["ms"],"$ML",masterlooter)
local oslink = string.gsub(bidlink["os"],"$ML",masterlooter)
local msg = string.format("Click $MS or $OS for %s",link)
local msg = string.format(L["Click $MS or $OS for %s"],link)
if (need and greed) then
msg = string.gsub(msg,"$MS",mslink)
msg = string.gsub(msg,"$OS",oslink)
elseif (need) then
msg = string.gsub(msg,"$MS",mslink)
msg = string.gsub(msg,"or $OS ","")
msg = string.gsub(msg,L["or $OS "],"")
elseif (greed) then
msg = string.gsub(msg,"$OS",oslink)
msg = string.gsub(msg,"$MS or ","")
msg = string.gsub(msg,L["$MS or "],"")
elseif (bid) then
msg = string.gsub(msg,"$MS",mslink)
msg = string.gsub(msg,"$OS",oslink)
@@ -637,25 +638,25 @@ function sepgp:addonComms(prefix,message,channel,sender)
if who == self._playerName then
if what == "EP" then
if amount < 0 then
msg = string.format("You have received a %d EP penalty.",amount)
msg = string.format(L["You have received a %d EP penalty."],amount)
else
msg = string.format("You have been awarded %d EP.",amount)
msg = string.format(L["You have been awarded %d EP."],amount)
end
elseif what == "GP" then
msg = string.format("You have gained %d GP.",amount)
msg = string.format(L["You have gained %d GP."],amount)
end
elseif who == "ALL" and what == "DECAY" then
msg = string.format("%s%% decay to EP and GP.",amount)
msg = string.format(L["%s%% decay to EP and GP."],amount)
elseif who == "RAID" and what == "AWARD" then
msg = string.format("%d EP awarded to Raid.",amount)
msg = string.format(L["%d EP awarded to Raid."],amount)
elseif who == "RESERVES" and what == "AWARD" then
msg = string.format("%d EP awarded to Reserves.",amount)
msg = string.format(L["%d EP awarded to Reserves."],amount)
elseif who == "VERSION" then
local out_of_date, version_type = self:parseVersion(self._versionString,what)
if (out_of_date) and self._newVersionNotification == nil then
self._newVersionNotification = true -- only inform once per session
self:defaultPrint(string.format("New %s version available: |cff00ff00%s|r",version_type,what))
self:defaultPrint(string.format("Visit %s to update.",self._websiteString))
self:defaultPrint(string.format(L["New %s version available: |cff00ff00%s|r"],version_type,what))
self:defaultPrint(string.format(L["Visit %s to update."],self._websiteString))
end
if (IsGuildLeader()) then
self:shareSettings()
@@ -667,29 +668,29 @@ function sepgp:addonComms(prefix,message,channel,sender)
local settings_notice
if progress and progress ~= sepgp_progress then
sepgp_progress = progress
settings_notice = "New raid progress"
settings_notice = L["New raid progress"]
end
if discount and discount ~= sepgp_discount then
sepgp_discount = discount
if (settings_notice) then
settings_notice = settings_notice..", offspec price %"
settings_notice = settings_notice..L[", offspec price %"]
else
settings_notice = "New offspec price %"
settings_notice = L["New offspec price %"]
end
end
if decay and decay ~= sepgp_decay then
sepgp_decay = decay
if (admin()) then
if (settings_notice) then
settings_notice = settings_notice..", decay %"
settings_notice = settings_notice..L[", decay %"]
else
settings_notice = "New decay %"
settings_notice = L["New decay %"]
end
end
end
if (settings_notice) and settings_notice ~= "" then
local sender_rank = string.format("%s(%s)",C:Colorize(BC:GetHexColor(class),sender),rank)
settings_notice = settings_notice..string.format(" settings accepted from %s",sender_rank)
settings_notice = settings_notice..string.format(L[" settings accepted from %s"],sender_rank)
self:defaultPrint(settings_notice)
end
end
@@ -856,11 +857,11 @@ function sepgp:award_raid_ep(ep) -- awards ep to raid members in zone
local name, rank, subgroup, level, class, fileName, zone, online, isDead = GetRaidRosterInfo(i)
self:givename_ep(name,ep)
end
self:simpleSay(string.format("Giving %d ep to all raidmembers",ep))
self:addToLog(string.format("Giving %d ep to all raidmembers",ep))
self:simpleSay(string.format(L["Giving %d ep to all raidmembers"],ep))
self:addToLog(string.format(L["Giving %d ep to all raidmembers"],ep))
local addonMsg = string.format("RAID;AWARD;%s",ep)
self:addonMessage(addonMsg,"RAID")
else UIErrorsFrame:AddMessage("You aren't in a raid dummy",1,0,0)end
else UIErrorsFrame:AddMessage(L["You aren't in a raid dummy"],1,0,0)end
end
function sepgp:award_reserve_ep(ep) -- awards ep to reserve list
@@ -869,8 +870,8 @@ function sepgp:award_reserve_ep(ep) -- awards ep to reserve list
local name, class, rank, alt = unpack(reserve)
self:givename_ep(name,ep)
end
self:simpleSay(string.format("Giving %d ep to active reserves",ep))
self:addToLog(string.format("Giving %d ep to active reserves",ep))
self:simpleSay(string.format(L["Giving %d ep to active reserves"],ep))
self:addToLog(string.format(L["Giving %d ep to active reserves"],ep))
local addonMsg = string.format("RESERVES;AWARD;%s",ep)
self:addonMessage(addonMsg,"GUILD")
sepgp.reserves = {}
@@ -883,9 +884,9 @@ function sepgp:givename_ep(getname,ep) -- awards ep to a single character
if not (admin()) then return end
local newep = ep + (self:get_ep_v3(getname) or 0) --DONE: update v3
self:update_ep_v3(getname,newep) --DONE: update v3
self:debugPrint(string.format("Giving %d ep to %s",ep,getname))
self:debugPrint(string.format(L["Giving %d ep to %s"],ep,getname))
if ep < 0 then -- inform admins and victim of penalties
local msg = string.format("%s EP Penalty to %s.",ep,getname)
local msg = string.format(L["%s EP Penalty to %s."],ep,getname)
self:adminSay(msg)
self:addToLog(msg)
local addonMsg = string.format("%s;%s;%s",getname,"EP",ep)
@@ -898,8 +899,8 @@ function sepgp:givename_gp(getname,gp) -- assigns gp to a single character
local oldgp = (self:get_gp_v3(getname) or sepgp.VARS.basegp) --DONE: update v3
local newgp = gp + oldgp
self:update_gp_v3(getname,newgp) --DONE: update v3
self:debugPrint(string.format("Giving %d gp to %s",gp,getname))
local msg = string.format("Awarding %d GP to %s. (Previous: %d, New: %d)",gp,getname,oldgp,math.max(sepgp.VARS.basegp,newgp))
self:debugPrint(string.format(L["Giving %d gp to %s"],gp,getname))
local msg = string.format(L["Awarding %d GP to %s. (Previous: %d, New: %d)"],gp,getname,oldgp,math.max(sepgp.VARS.basegp,newgp))
self:adminSay(msg)
self:addToLog(msg)
local addonMsg = string.format("%s;%s;%s",getname,"GP",gp)
@@ -915,7 +916,7 @@ function sepgp:decay_epgp_v2() -- decays entire roster's ep and gp
if ep == nil then
else
if gp == nil then
local msg = string.format("%s\'s officernote is broken:%q",name,tostring(gp))
local msg = string.format(L["%s\'s officernote is broken:%q"],name,tostring(gp))
self:debugPrint(msg)
self:adminSay(msg)
else
@@ -926,7 +927,7 @@ function sepgp:decay_epgp_v2() -- decays entire roster's ep and gp
end
end
end
local msg = string.format("All EP and GP decayed by %d%%",(1-sepgp_decay)*100)
local msg = string.format(L["All EP and GP decayed by %d%%"],(1-sepgp_decay)*100)
self:simpleSay(msg)
if not (sepgp_saychannel=="OFFICER") then self:adminSay(msg) end
self:addToLog(msg)
@@ -943,7 +944,7 @@ function sepgp:decay_epgp_v3()
self:update_epgp_v3(ep,gp,i,name,officernote)
end
end
local msg = string.format("All EP and GP decayed by %s%%",(1-sepgp_decay)*100)
local msg = string.format(L["All EP and GP decayed by %s%%"],(1-sepgp_decay)*100)
self:simpleSay(msg)
if not (sepgp_saychannel=="OFFICER") then self:adminSay(msg) end
local addonMsg = string.format("ALL;DECAY;%s",(1-(sepgp_decay or sepgp.VARS.decay))*100)
@@ -956,9 +957,9 @@ function sepgp:gp_reset_v2()
for i = 1, GetNumGuildMembers(1) do
GuildRosterSetOfficerNote(i, sepgp.VARS.basegp,true)
end
self:debugPrint(string.format("All GP has been reset to %d.",sepgp.VARS.basegp))
self:adminSay(string.format("All GP has been reset to %d.",sepgp.VARS.basegp))
self:addToLog(string.format("All GP has been reset to %d.",sepgp.VARS.basegp))
self:debugPrint(string.format(L["All GP has been reset to %d."],sepgp.VARS.basegp))
self:adminSay(string.format(L["All GP has been reset to %d."],sepgp.VARS.basegp))
self:addToLog(string.format(L["All GP has been reset to %d."],sepgp.VARS.basegp))
end
end
@@ -971,7 +972,7 @@ function sepgp:gp_reset_v3()
self:update_epgp_v3(0,sepgp.VARS.basegp,i,name,officernote)
end
end
local msg = "All EP and GP has been reset to 0/%d."
local msg = L["All EP and GP has been reset to 0/%d."]
self:debugPrint(string.format(msg,sepgp.VARS.basegp))
self:adminSay(string.format(msg,sepgp.VARS.basegp))
self:addToLog(string.format(msg,sepgp.VARS.basegp))
@@ -1001,11 +1002,11 @@ end
function sepgp:my_epgp_announce()
local ep,gp = (self:get_ep_v3(self._playerName) or 0), (self:get_gp_v3(self._playerName) or sepgp.VARS.basegp)
local pr = ep/gp
local msg = string.format("You now have: %d EP %d GP |cffffff00%.03f|r|cffff7f00PR|r.", ep,gp,pr)
local msg = string.format(L["You now have: %d EP %d GP |cffffff00%.03f|r|cffff7f00PR|r."], ep,gp,pr)
self:defaultPrint(msg)
local pr_decay, cap_ep, cap_pr = self:capcalc(ep,gp)
if pr_decay < 0 then
msg = string.format("Close to EPGP Cap. Next Decay will change your |cffff7f00PR|r by |cffff0000%.4g|r.",pr_decay)
msg = string.format(L["Close to EPGP Cap. Next Decay will change your |cffff7f00PR|r by |cffff0000%.4g|r."],pr_decay)
self:defaultPrint(msg)
end
end
@@ -1026,9 +1027,9 @@ sepgp.tooltipHiddenWhenEmpty = false
sepgp.hasIcon = "Interface\\Icons\\INV_Misc_Orb_04"
function sepgp:OnTooltipUpdate()
local hint = "|cffffff00Click|r to toggle Standings.%s \n|cffffff00Right-Click|r for Options."
local hint = L["|cffffff00Click|r to toggle Standings.%s \n|cffffff00Right-Click|r for Options."]
if (admin()) then
hint = string.format(hint," \n|cffffff00Ctrl+Click|r to toggle Reserves. \n|cffffff00Alt+Click|r to toggle Bids. \n|cffffff00Shift+Click|r to toggle Loot. \n|cffffff00Ctrl+Shift+Click|r to toggle Logs.")
hint = string.format(hint,L[" \n|cffffff00Ctrl+Click|r to toggle Reserves. \n|cffffff00Alt+Click|r to toggle Bids. \n|cffffff00Shift+Click|r to toggle Loot. \n|cffffff00Ctrl+Shift+Click|r to toggle Logs."])
else
hint = string.format(hint,"")
end
@@ -1082,10 +1083,10 @@ end
function sepgp:buildClassMemberTable(roster,epgp)
local desc,usage
if epgp == "ep" then
desc = "Account EPs to %s."
desc = L["Account EPs to %s."]
usage = "<EP>"
elseif epgp == "gp" then
desc = "Account GPs to %s."
desc = L["Account GPs to %s."]
usage = "<GP>"
end
local c = { }
@@ -1123,21 +1124,21 @@ function sepgp:buildMenu()
if not (options) then
options = {
type = "group",
desc = "shootyepgp options",
desc = L["shootyepgp options"],
handler = self,
args = { }
}
options.args["ep"] = {
type = "group",
name = "+EPs to Member",
desc = "Account EPs for member.",
name = L["+EPs to Member"],
desc = L["Account EPs for member."],
order = 10,
hidden = function() return not (admin()) end,
}
options.args["ep_raid"] = {
type = "text",
name = "+EPs to Raid",
desc = "Award EPs to all raid members.",
name = L["+EPs to Raid"],
desc = L["Award EPs to all raid members."],
order = 20,
get = "suggestedAwardEP",
set = function(v) sepgp:award_raid_ep(tonumber(v)) end,
@@ -1150,15 +1151,15 @@ function sepgp:buildMenu()
}
options.args["gp"] = {
type = "group",
name = "+GPs to Member",
desc = "Account GPs for member.",
name = L["+GPs to Member"],
desc = L["Account GPs for member."],
order = 30,
hidden = function() return not (admin()) end,
}
options.args["ep_reserves"] = {
type = "text",
name = "+EPs to Reserves",
desc = "Award EPs to all active Reserves.",
name = L["+EPs to Reserves"],
desc = L["Award EPs to all active Reserves."],
order = 40,
get = "suggestedAwardEP",
set = function(v) sepgp:award_reserve_ep(tonumber(v)) end,
@@ -1171,8 +1172,8 @@ function sepgp:buildMenu()
}
options.args["reserves"] = {
type = "toggle",
name = "Enable Reserves",
desc = "Participate in Standby Raiders List.\n|cffff0000Requires Main Character Name.|r",
name = L["Enable Reserves"],
desc = L["Participate in Standby Raiders List.\n|cffff0000Requires Main Character Name.|r"],
order = 50,
get = function() return (sepgp.reservesChannelID ~= nil) and (sepgp.reservesChannelID ~= 0) end,
set = function(v) sepgp:reservesToggle(v) end,
@@ -1180,16 +1181,16 @@ function sepgp:buildMenu()
}
options.args["afkcheck_reserves"] = {
type = "execute",
name = "AFK Check Reserves",
desc = "AFK Check Reserves List",
name = L["AFK Check Reserves"],
desc = L["AFK Check Reserves List"],
order = 60,
hidden = function() return not (admin()) end,
func = function() sepgp:afkcheck_reserves() end
}
options.args["set_main"] = {
type = "text",
name = "Set Main",
desc = "Set your Main Character for Reserve List.",
name = L["Set Main"],
desc = L["Set your Main Character for Reserve List."],
order = 70,
usage = "<MainChar>",
get = function() return sepgp_main end,
@@ -1197,8 +1198,8 @@ function sepgp:buildMenu()
}
options.args["raid_only"] = {
type = "toggle",
name = "Raid Only",
desc = "Only show members in raid.",
name = L["Raid Only"],
desc = L["Only show members in raid."],
order = 80,
get = function() return not not sepgp_raidonly end,
set = function(v)
@@ -1208,8 +1209,8 @@ function sepgp:buildMenu()
}
options.args["progress_tier"] = {
type = "text",
name = "Raid Progress",
desc = "Highest Tier the Guild is raiding.\nUsed to adjust GP Prices.\nUsed for suggested EP awards.",
name = L["Raid Progress"],
desc = L["Highest Tier the Guild is raiding.\nUsed to adjust GP Prices.\nUsed for suggested EP awards."],
order = 90,
get = function() return sepgp_progress end,
set = function(v)
@@ -1219,12 +1220,12 @@ function sepgp:buildMenu()
sepgp:shareSettings(true)
end
end,
validate = { ["T3"]="4.Naxxramas", ["T2.5"]="3.Temple of Ahn\'Qiraj", ["T2"]="2.Blackwing Lair", ["T1"]="1.Molten Core"},
validate = { ["T3"]=L["4.Naxxramas"], ["T2.5"]=L["3.Temple of Ahn\'Qiraj"], ["T2"]=L["2.Blackwing Lair"], ["T1"]=L["1.Molten Core"]},
}
options.args["report_channel"] = {
type = "text",
name = "Reporting channel",
desc = "Channel used by reporting functions.",
name = L["Reporting channel"],
desc = L["Channel used by reporting functions."],
order = 95,
hidden = function() return not (admin()) end,
get = function() return sepgp_saychannel end,
@@ -1233,22 +1234,22 @@ function sepgp:buildMenu()
}
options.args["decay"] = {
type = "execute",
name = "Decay EPGP",
desc = string.format("Decays all EPGP by %s%%",(1-(sepgp_decay or sepgp.VARS.decay))*100),
name = L["Decay EPGP"],
desc = string.format(L["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 --DONE: update v3
}
options.args["set_decay"] = {
type = "range",
name = "Set Decay %",
desc = "Set Decay percentage (Admin only).",
name = L["Set Decay %"],
desc = L["Set Decay percentage (Admin only)."],
order = 110,
usage = "<Decay>",
get = function() return (1.0-sepgp_decay) end,
set = function(v)
sepgp_decay = (1 - v)
options.args["decay"].desc = string.format("Decays all EPGP by %s%%",(1-sepgp_decay)*100)
options.args["decay"].desc = string.format(L["Decays all EPGP by %s%%"],(1-sepgp_decay)*100)
if (IsGuildLeader()) then
sepgp:shareSettings(true)
end
@@ -1262,8 +1263,8 @@ function sepgp:buildMenu()
}
options.args["set_discount"] = {
type = "range",
name = "Offspec Price %",
desc = "Set Offspec Items GP Percent.",
name = L["Offspec Price %"],
desc = L["Set Offspec Items GP Percent."],
order = 115,
get = function() return sepgp_discount end,
set = function(v)
@@ -1279,8 +1280,8 @@ function sepgp:buildMenu()
}
options.args["reset"] = {
type = "execute",
name = "Reset GP",
desc = string.format("Resets everyone\'s EPGP to 0/%d (Admin only).",sepgp.VARS.basegp),
name = L["Reset EPGP"],
desc = string.format(L["Resets everyone\'s EPGP to 0/%d (Admin only)."],sepgp.VARS.basegp),
order = 120,
hidden = function() return not (IsGuildLeader()) end,
func = function() StaticPopup_Show("SHOOTY_EPGP_CONFIRM_RESET") end
@@ -1288,7 +1289,7 @@ function sepgp:buildMenu()
end
if (needInit) or (needRefresh) then
local members = sepgp:buildRosterTable()
self:debugPrint(string.format("Scanning %d members for EP/GP data. (%s)",table.getn(members),(sepgp_raidonly and "Raid" or "Full")))
self:debugPrint(string.format(L["Scanning %d members for EP/GP data. (%s)"],table.getn(members),(sepgp_raidonly and "Raid" or "Full")))
options.args["ep"].args = sepgp:buildClassMemberTable(members,"ep")
options.args["gp"].args = sepgp:buildClassMemberTable(members,"gp")
if (needInit) then needInit = false end
@@ -1394,21 +1395,21 @@ function sepgp:captureReserveChatter(text, sender, _, _, _, _, _, _, channel)
reserves_blacklist[reserve_alt] = true
table.insert(sepgp.reserves,{reserve,reserve_class,reserve_rank,reserve_alt})
else
self:defaultPrint(string.format("|cffff0000%s|r trying to add %s to Reserves, but has already added a member. Discarding!",reserve_alt,reserve))
self:defaultPrint(string.format(L["|cffff0000%s|r trying to add %s to Reserves, but has already added a member. Discarding!"],reserve_alt,reserve))
end
else
if not reserves_blacklist[reserve] then
reserves_blacklist[reserve] = true
table.insert(sepgp.reserves,{reserve,reserve_class,reserve_rank})
else
self:defaultPrint(string.format("|cffff0000%s|r has already been added to Reserves. Discarding!",reserve))
self:defaultPrint(string.format(L["|cffff0000%s|r has already been added to Reserves. Discarding!"],reserve))
end
end
end
end
return
end
local q = string.find(text,"^{shootyepgp}Type")
local q = string.find(text,L["^{shootyepgp}Type"])
if (q) and not (running_check) then
if (not UnitInRaid("player")) or (not self:inRaid(sender)) then
StaticPopup_Show("SHOOTY_EPGP_RESERVE_AFKCHECK_RESPONCE")
@@ -1528,7 +1529,7 @@ end
function sepgp:clearBids(reset)
if reset~=nil then
self:debugPrint("Clearing old Bids")
self:debugPrint(L["Clearing old Bids"])
end
sepgp.bid_item = {}
sepgp.bids_main = {}
@@ -1741,7 +1742,7 @@ function sepgp:verifyGuildMember(name,silent)
end
end
if (name) and name ~= "" and not (silent) then
self:defaultPrint(string.format("%s not found in the guild or not max level!",name))
self:defaultPrint(string.format(L["%s not found in the guild or not max level!"],name))
end
return
end
@@ -1764,7 +1765,7 @@ function sepgp:lootMaster()
end
end
local raidZones = {["Molten Core"]="T1",["Onyxia\'s Lair"]="T1.5",["Blackwing Lair"]="T2",["Ahn'Qiraj"]="T2.5",["Naxxramas"]="T3"}
local raidZones = {[L["Molten Core"]]="T1",[L["Onyxia\'s Lair"]]="T1.5",[L["Blackwing Lair"]]="T2",[L["Ahn\'Qiraj"]]="T2.5",[L["Naxxramas"]]="T3"}
local zone_multipliers = {
["T3"] = {["T3"]=1,["T2.5"]=0.75,["T2"]=0.5,["T1.5"]=0.25,["T1"]=0.25},
["T2.5"] = {["T3"]=1,["T2.5"]=1,["T2"]=0.7,["T1.5"]=0.4,["T1"]=0.4},
@@ -1859,17 +1860,17 @@ end
-- Dialogs
-------------
StaticPopupDialogs["SHOOTY_EPGP_CLEAR_LOOT"] = {
text = "There are %d loot drops stored. It is recommended to clear loot info before a new raid. Do you want to clear it now?",
text = L["There are %d loot drops stored. It is recommended to clear loot info before a new raid. Do you want to clear it now?"],
button1 = TEXT(YES),
button2 = "Show me",
button2 = L["Show me"],
OnAccept = function()
sepgp_looted = {}
sepgp:defaultPrint("Loot info cleared")
sepgp:defaultPrint(L["Loot info cleared"])
end,
OnCancel = function(_,reason)
if reason == "clicked" then
sepgp_loot:Toggle(true)
sepgp:defaultPrint("Loot info can be cleared at any time from the Tablet context menu or '/shooty clearloot' command")
sepgp:defaultPrint(L["Loot info can be cleared at any time from the Tablet context menu or '/shooty clearloot' command"])
end
end,
timeout = 0,
@@ -1878,7 +1879,7 @@ StaticPopupDialogs["SHOOTY_EPGP_CLEAR_LOOT"] = {
hideOnEscape = 1
}
StaticPopupDialogs["SHOOTY_EPGP_SET_MAIN"] = {
text = "Set your main to be able to participate in Reserve List EPGP Checks.",
text = L["Set your main to be able to participate in Reserve List EPGP Checks."],
button1 = TEXT(ACCEPT),
button2 = TEXT(CANCEL),
hasEditBox = 1,
@@ -1919,7 +1920,7 @@ StaticPopupDialogs["SHOOTY_EPGP_RESERVE_AFKCHECK_RESPONCE"] = {
end,
OnUpdate = function(elapsed,dialog)
this._timeout = this._timeout - elapsed
getglobal(dialog:GetName().."Text"):SetText(string.format("Reserves AFKCheck. Are you available? |cff00ff00%0d|rsec.",this._timeout))
getglobal(dialog:GetName().."Text"):SetText(string.format(L["Reserves AFKCheck. Are you available? |cff00ff00%0d|rsec."],this._timeout))
if (this._timeout<=0) then
this._timeout = 0
dialog:Hide()
@@ -1936,7 +1937,7 @@ StaticPopupDialogs["SHOOTY_EPGP_RESERVE_AFKCHECK_RESPONCE"] = {
hideOnEscape = 1
}
StaticPopupDialogs["SHOOTY_EPGP_CONFIRM_RESET"] = {
text = "|cffff0000Are you sure you want to Reset ALL EPGP?|r",
text = L["|cffff0000Are you sure you want to Reset ALL EPGP?|r"],
button1 = TEXT(OKAY),
button2 = TEXT(CANCEL),
OnAccept = function()
@@ -1951,7 +1952,7 @@ StaticPopupDialogs["SHOOTY_EPGP_CONFIRM_RESET"] = {
local sepgp_auto_gp_menu = {
--{text = "Choose an Action", isTitle = true},
{text = "Add MainSpec GP", func = function()
{text = L["Add MainSpec GP"], func = function()
local dialog = StaticPopup_FindVisible("SHOOTY_EPGP_AUTO_GEARPOINTS")
if (dialog) then
local data = dialog.data
@@ -1964,7 +1965,7 @@ local sepgp_auto_gp_menu = {
sepgp_loot:Refresh()
end
end},
{text = "Add OffSpec GP", func = function()
{text = L["Add OffSpec GP"], func = function()
local dialog = StaticPopup_FindVisible("SHOOTY_EPGP_AUTO_GEARPOINTS")
if (dialog) then
local data = dialog.data
@@ -1977,7 +1978,7 @@ local sepgp_auto_gp_menu = {
sepgp_loot:Refresh()
end
end},
{text = "Bank or D/E", func = function()
{text = L["Bank or D/E"], func = function()
local dialog = StaticPopup_FindVisible("SHOOTY_EPGP_AUTO_GEARPOINTS")
if (dialog) then
local data = dialog.data
@@ -1990,9 +1991,9 @@ local sepgp_auto_gp_menu = {
end}
}
StaticPopupDialogs["SHOOTY_EPGP_AUTO_GEARPOINTS"] = {
text = "%s looted %s. What do you want to do?",
button1 = "GP Actions",
button2 = "Remind me Later",
text = L["%s looted %s. What do you want to do?"],
button1 = L["GP Actions"],
button2 = L["Remind me Later"],
OnAccept = function()
sepgp:EasyMenu(sepgp_auto_gp_menu, sepgp._menuFrame, this, 0, 0, "MENU")
return true
+5 -2
View File
@@ -1,12 +1,14 @@
## Interface: 11200
## Title: shootyepgp
## Title-zhCN: shootyepgp EPGP插件 V2.1
## Notes: Effort Points/Gear Points Loot System
## Notes-zhCN: 努力点/齿轮点拾取系统
## Author: Roadblock
## X-Website: https://github.com/Road-block/shootyepgp/releases/latest
## X-Category: Guild
## X-Credits: shooty
## X-Credits: shooty,Qcat(zhCN)
## Version: 3.31
## X-Alpha:
## X-Alpha: 3.31.1
## OptionalDeps: Ace2
## SavedVariables: sepgp_saychannel, sepgp_groupbyclass, sepgp_raidonly, sepgp_dbver, sepgp_debug
## SavedVariablesPerCharacter: sepgp_main, sepgp_log, sepgp_looted, sepgp_decay, sepgp_reservechannel, sepgp_progress, sepgp_discount
@@ -32,6 +34,7 @@ Libs\Tablet-2.0\Tablet-2.0.lua
Libs\Gratuity-2.0\Gratuity-2.0.lua
Libs\FuBarPlugin-2.0\FuBarPlugin-2.0.lua
localization.lua
shootyepgp.lua
migrations.lua
prices.lua
+23 -27
View File
@@ -3,6 +3,7 @@ local D = AceLibrary("Dewdrop-2.0")
local C = AceLibrary("Crayon-2.0")
local BC = AceLibrary("Babble-Class-2.2")
local L = AceLibrary("AceLocale-2.2"):new("shootyepgp")
sepgp_standings = sepgp:NewModule("sepgp_standings", "AceDB-2.0")
local shooty_export = CreateFrame("Frame", "shooty_exportframe", UIParent)
@@ -30,7 +31,7 @@ shooty_export.action:Hide()
shooty_export.action:SetScript("OnClick",function() sepgp_standings.import() end)
shooty_export.title = shooty_export:CreateFontString(nil,"OVERLAY")
shooty_export.title:SetPoint("TOP",0,-5)
shooty_export.title:SetFont("Fonts\\FRIZQT__.TTF", 12)
shooty_export.title:SetFont("Fonts\\ARIALN.TTF", 12)
shooty_export.title:SetWidth(200)
shooty_export.title:SetJustifyH("LEFT")
shooty_export.title:SetJustifyV("CENTER")
@@ -66,7 +67,7 @@ table.insert(UISpecialFrames,"shooty_exportframe")
function sepgp_standings:Export()
shooty_export.action:Hide()
shooty_export.title:SetText(C:Gold("Ctrl-C to copy. Esc to close."))
shooty_export.title:SetText(C:Gold(L["Ctrl-C to copy. Esc to close."]))
local t = {}
for i = 1, GetNumGuildMembers(1) do
local name, _, _, _, class, _, note, officernote, _, _ = GetGuildRosterInfo(i)
@@ -91,12 +92,7 @@ function sepgp_standings:Import()
if not IsGuildLeader() then return end
shooty_export.action:Show()
shooty_export.title:SetText(C:Red("Ctrl-V to paste data. Esc to close."))
shooty_export.AddSelectText([[Warning:
Import overwrites all existing EPGP values.
Paste all the csv data here replacing this text,
then hit Import.
Results will print here when done.]])
shooty_export.AddSelectText(L.IMPORT_WARNING)
shooty_export:Show()
end
@@ -126,9 +122,9 @@ function sepgp_standings.import()
t[name]=nil
end
end
sepgp:defaultPrint(string.format("Imported %d members.",count))
local report = string.format("Imported %d members.\n",count)
report = string.format("%s\nFailed to import:",report)
sepgp:defaultPrint(string.format(L["Imported %d members."],count))
local report = string.format(L["Imported %d members.\n"],count)
report = string.format(L["%s\nFailed to import:"],report)
for name,epgp in pairs(t) do
report = string.format("%s%s {%s:%s}\n",report,name,t[1],t[2])
end
@@ -140,7 +136,7 @@ function sepgp_standings:OnEnable()
if not T:IsRegistered("sepgp_standings") then
T:Register("sepgp_standings",
"children", function()
T:SetTitle("shootyepgp standings")
T:SetTitle(L["shootyepgp standings"])
self:OnTooltipUpdate()
end,
"showTitleWhenDetached", true,
@@ -148,31 +144,31 @@ function sepgp_standings:OnEnable()
"cantAttach", true,
"menu", function()
D:AddLine(
"text", "Raid Only",
"tooltipText", "Only show members in raid.",
"text", L["Raid Only"],
"tooltipText", L["Only show members in raid."],
"checked", sepgp_raidonly,
"func", function() sepgp_standings:ToggleRaidOnly() end
)
D:AddLine(
"text", "Group by class",
"tooltipText", "Group members by class.",
"text", L["Group by class"],
"tooltipText", L["Group members by class."],
"checked", sepgp_groupbyclass,
"func", function() sepgp_standings:ToggleGroupByClass() end
)
D:AddLine(
"text", "Refresh",
"tooltipText", "Refresh window",
"text", L["Refresh"],
"tooltipText", L["Refresh window"],
"func", function() sepgp_standings:Refresh() end
)
D:AddLine(
"text", "Export",
"tooltipText", "Export standings to csv.",
"text", L["Export"],
"tooltipText", L["Export standings to csv."],
"func", function() sepgp_standings:Export() end
)
if IsGuildLeader() then
D:AddLine(
"text", "Import",
"tooltipText", "Import standings from csv.",
"text", L["Import"],
"tooltipText", L["Import standings from csv."],
"func", function() sepgp_standings:Import() end
)
end
@@ -281,10 +277,10 @@ end
function sepgp_standings:OnTooltipUpdate()
local cat = T:AddCategory(
"columns", 4,
"text", C:Orange("Name"), "child_textR", 1, "child_textG", 1, "child_textB", 1, "child_justify", "LEFT",
"text2", C:Orange("ep"), "child_text2R", 1, "child_text2G", 1, "child_text2B", 1, "child_justify2", "RIGHT",
"text3", C:Orange("gp"), "child_text3R", 1, "child_text3G", 1, "child_text3B", 1, "child_justify3", "RIGHT",
"text4", C:Orange("pr"), "child_text4R", 1, "child_text4G", 1, "child_text4B", 0, "child_justify4", "RIGHT"
"text", C:Orange(L["Name"]), "child_textR", 1, "child_textG", 1, "child_textB", 1, "child_justify", "LEFT",
"text2", C:Orange(L["ep"]), "child_text2R", 1, "child_text2G", 1, "child_text2B", 1, "child_justify2", "RIGHT",
"text3", C:Orange(L["gp"]), "child_text3R", 1, "child_text3G", 1, "child_text3B", 1, "child_justify3", "RIGHT",
"text4", C:Orange(L["pr"]), "child_text4R", 1, "child_text4G", 1, "child_text4B", 0, "child_justify4", "RIGHT"
)
local t = self:BuildStandingsTable()
for i = 1, table.getn(t) do
@@ -310,4 +306,4 @@ function sepgp_standings:OnTooltipUpdate()
end
-- GLOBALS: sepgp_saychannel,sepgp_groupbyclass,sepgp_raidonly,sepgp_decay,sepgp_reservechannel,sepgp_main,sepgp_progress,sepgp_discount,sepgp_log,sepgp_dbver,sepgp_looted
-- GLOBALS: sepgp,sepgp_prices,sepgp_standings,sepgp_bids,sepgp_loot,sepgp_reserves,sepgp_logs
-- GLOBALS: sepgp,sepgp_prices,sepgp_standings,sepgp_bids,sepgp_loot,sepgp_reserves,sepgp_logs