Browse Source

fix channel name parsing

dev
Jørgen Lien Sellæg 4 months ago
parent
commit
0fbfb60c9a
  1. 18
      TradeSkillMaster_AuctionDB/Modules/ChannelSync.lua

18
TradeSkillMaster_AuctionDB/Modules/ChannelSync.lua

@ -69,14 +69,18 @@ local function EnsureChannel()
end
local function GetChannelDisplayName(channelName, channelString, channelNumber, channelBaseName)
if channelBaseName and channelBaseName ~= "" then return channelBaseName end
if channelName and channelName ~= "" then return channelName end
if channelBaseName and channelBaseName ~= "" and not tonumber(channelBaseName) then
return channelBaseName
end
if channelName and channelName ~= "" and not tonumber(channelName) then
return channelName
end
if channelString and channelString ~= "" then
local parsed = channelString:match("^%d+%.%s*(.+)$")
if parsed then return parsed end
local numeric = tonumber(channelString)
if numeric then
return select(2, GetChannelName(numeric))
end
return channelString:match("^%d+%.%s*(.+)$") or channelString
if numeric then return select(2, GetChannelName(numeric)) end
return channelString
end
if channelNumber then
return select(2, GetChannelName(channelNumber))
@ -319,7 +323,7 @@ function ChannelSync:OnChannelMessage(_, msg, source, _, channelString, _, chann
local displayName = GetChannelDisplayName(channelName, channelString, channelNumber, channelBaseName)
if displayName ~= CHANNEL_NAME then
if strsub(msg or "", 1, #COMM_PREFIX) == COMM_PREFIX then
DebugPrint("Prefix received on channel '" .. tostring(displayName or channelNumber or channelString or channelName) .. "' (expected '" .. CHANNEL_NAME .. "').")
DebugPrint("Prefix received; displayName=" .. tostring(displayName) .. " channelNumber=" .. tostring(channelNumber) .. " channelString=" .. tostring(channelString) .. " channelName=" .. tostring(channelName) .. " channelBaseName=" .. tostring(channelBaseName))
end
return
end

Loading…
Cancel
Save