mirror of
https://github.com/brues-code/pfUI.git
synced 2026-10-07 14:10:01 +00:00
roll: use cmatch parser and squash item patterns
This commit is contained in:
+9
-7
@@ -2,11 +2,13 @@ pfUI:RegisterModule("roll", "vanilla:tbc", function ()
|
||||
pfUI.roll = CreateFrame("Frame", "pfLootRoll", UIParent)
|
||||
pfUI.roll.frames = {}
|
||||
|
||||
pfUI.roll.LOOT_ROLL_GREED = string.gsub(string.gsub(LOOT_ROLL_GREED, "%%s|Hitem:%%d:%%d:%%d:%%d|h%[%%s%]|h%%s", "(.+)"), "%%s", "(.+)")
|
||||
pfUI.roll.LOOT_ROLL_NEED = string.gsub(string.gsub(LOOT_ROLL_NEED, "%%s|Hitem:%%d:%%d:%%d:%%d|h%[%%s%]|h%%s", "(.+)"), "%%s", "(.+)")
|
||||
pfUI.roll.LOOT_ROLL_PASSED = string.gsub(string.gsub(LOOT_ROLL_PASSED, "%%s|Hitem:%%d:%%d:%%d:%%d|h%[%%s%]|h%%s", "(.+)"), "%%s", "(.+)")
|
||||
-- squash vanilla item placeholders
|
||||
local LOOT_ROLL_GREED = string.gsub(LOOT_ROLL_GREED, "%%s|Hitem:%%d:%%d:%%d:%%d|h%[%%s%]|h%%s", "%%s")
|
||||
local LOOT_ROLL_NEED = string.gsub(LOOT_ROLL_NEED, "%%s|Hitem:%%d:%%d:%%d:%%d|h%[%%s%]|h%%s", "%%s")
|
||||
local LOOT_ROLL_PASSED = string.gsub(LOOT_ROLL_PASSED, "%%s|Hitem:%%d:%%d:%%d:%%d|h%[%%s%]|h%%s", "%%s")
|
||||
|
||||
local _, _, everyone, _ = strfind(LOOT_ROLL_ALL_PASSED, pfUI.roll.LOOT_ROLL_PASSED);
|
||||
-- try to detect the everyone string
|
||||
local _, _, everyone, _ = strfind(LOOT_ROLL_ALL_PASSED, LOOT_ROLL_PASSED);
|
||||
pfUI.roll.blacklist = { YOU, everyone }
|
||||
|
||||
pfUI.roll.cache = {}
|
||||
@@ -14,19 +16,19 @@ pfUI:RegisterModule("roll", "vanilla:tbc", function ()
|
||||
pfUI.roll.scan = CreateFrame("Frame", "pfLootRollMonitor", UIParent)
|
||||
pfUI.roll.scan:RegisterEvent("CHAT_MSG_LOOT")
|
||||
pfUI.roll.scan:SetScript("OnEvent", function()
|
||||
local _, _, player, item = strfind(arg1, pfUI.roll.LOOT_ROLL_GREED);
|
||||
local player, item = cmatch(arg1, LOOT_ROLL_GREED);
|
||||
if player and item then
|
||||
pfUI.roll:AddCache(item, player, "GREED")
|
||||
return
|
||||
end
|
||||
|
||||
local _, _, player, item = strfind(arg1, pfUI.roll.LOOT_ROLL_NEED);
|
||||
local player, item = cmatch(arg1, LOOT_ROLL_NEED);
|
||||
if player and item then
|
||||
pfUI.roll:AddCache(item, player, "NEED")
|
||||
return
|
||||
end
|
||||
|
||||
local _, _, player, item = strfind(arg1, pfUI.roll.LOOT_ROLL_PASSED);
|
||||
local player, item = cmatch(arg1, LOOT_ROLL_PASSED);
|
||||
if player and item then
|
||||
pfUI.roll:AddCache(item, player, "PASS")
|
||||
return
|
||||
|
||||
Reference in New Issue
Block a user