assert( oRA, "oRA not found!") ------------------------------ -- Are you local? -- ------------------------------ local L = AceLibrary("AceLocale-2.2"):new("oRALRaidWarn") ---------------------------- -- Localization -- ---------------------------- L:RegisterTranslations("enUS", function() return { ["rw"] = true, ["raidwarningleader"] = true, ["Raidwarning"] = true, ["Options for raid warning."] = true, ["Leader/RaidWarn"] = true, ["Send"] = true, ["Send an RS Message."] = true, [""] = true, ["ToRaid"] = true, ["OldStyle"] = true, ["To Raid"] = true, ["Old Style"] = true, ["Send RS Messages to Raid as well."] = true, ["Use CTRA RS Messages instead of RaidWarning."] = true, } end ) L:RegisterTranslations("koKR", function() return { ["Raidwarning"] = "공격대경보", ["Options for raid warning."] = "공격대 경보에 관한 설정", ["Leader/RaidWarn"] = "공격대장/공격대경보", ["Send"] = "보내기", ["Send an RS Message."] = "RS메세지로 보내기", [""] = "<메세지>", ["ToRaid"] = "공격대", ["OldStyle"] = "옛날방식", ["To Raid"] = "공격대에 보내기", ["Old Style"] = "옛 방식 사용", ["Send RS Messages to Raid as well."] = "RS 메세지를 공격대 대화로도 표시합니다.", ["Use CTRA RS Messages instead of RaidWarning."] = "공격대 경보 대신에 공격대 도우미의 RS 메세지를 사용합니다.", } end ) L:RegisterTranslations("zhCN", function() return { ["rw"] = "rw", ["raidwarningleader"] = "raidwarningleader", ["Raidwarning"] = "团队报警", ["Options for raid warning."] = "团队警报选项.", ["Leader/RaidWarn"] = "Leader/RaidWarn", ["Send"] = "发送", ["Send an RS Message."] = "发送一条RS消息", [""] = "", ["ToRaid"] = "发送到RAID", ["OldStyle"] = "老样式", ["To Raid"] = "进行RAID", ["Old Style"] = "老样式", ["Send RS Messages to Raid as well."] = "RS同时发送一条消息到团队聊天频道", ["Use CTRA RS Messages instead of RaidWarning."] = "使用CTRA消息取代团队警报", } end ) L:RegisterTranslations("zhTW", function() return { ["rw"] = "rw", ["raidwarningleader"] = "raidwarningleader", ["Raidwarning"] = "團隊報警", ["Options for raid warning."] = "團隊警報選項", ["Leader/RaidWarn"] = "領隊/團隊報警", ["Send"] = "發送", ["Send an RS Message."] = "發送RS訊息", [""] = "<訊息>", ["ToRaid"] = "發送到團隊", ["OldStyle"] = "舊式風格", ["To Raid"] = "發送到團隊", ["Old Style"] = "舊式風格", ["Send RS Messages to Raid as well."] = "發送RS訊息時也發送到團隊頻道", ["Use CTRA RS Messages instead of RaidWarning."] = "使用團隊助手訊息取代團隊警報", } end ) L:RegisterTranslations("frFR", function() return { --["rw"] = true, --["raidwarningleader"] = true, ["Raidwarning"] = "Avertissement du raid", ["Options for raid warning."] = "Options concernant l'avertissement du raid.", ["Leader/RaidWarn"] = "Chef/AvertirRaid", ["Send"] = "Envoyer", ["Send an RS Message."] = "Envoye un message RS.", --[""] = true, --["ToRaid"] = true, --["OldStyle"] = true, ["To Raid"] = "Au raid", ["Old Style"] = "Ancienne m\195\169thode", ["Send RS Messages to Raid as well."] = "Envoye les messages RS \195\169galement au canal Raid.", ["Use CTRA RS Messages instead of RaidWarning."] = "Utilise les messages RS de CTRA au lieu de l'Avertissement Raid.", } end ) ---------------------------------- -- Module Declaration -- ---------------------------------- oRALRaidWarn = oRA:NewModule(L["raidwarningleader"]) oRALRaidWarn.defaults = { oldstyle = false, toraid = false, } oRALRaidWarn.leader = true oRALRaidWarn.name = L["Leader/RaidWarn"] oRALRaidWarn.consoleCmd = L["rw"] oRALRaidWarn.consoleOptions = { type = "group", desc = L["Options for raid warning."], name = L["Raidwarning"], args = { [L["Send"]] = { name = L["Send"], type = "text", desc = L["Send an RS Message."], usage = L[""], get = false, set = function(v) oRALRaidWarn:SendRS(v) end, validate = function(v) return string.find(v, "^(.+)$") end, disabled = function() return not oRA:IsModuleActive(oRALRaidWarn) or not oRALRaidWarn:IsValidRequest() end, }, [L["ToRaid"]] = { name = L["To Raid"], type = "toggle", desc = L["Send RS Messages to Raid as well."], get = function() return oRALRaidWarn.db.profile.toraid end, set = function(v) oRALRaidWarn.db.profile.toraid = v end, }, [L["OldStyle"]] = { name = L["Old Style"], type = "toggle", desc = L["Use CTRA RS Messages instead of RaidWarning."], get = function() return oRALRaidWarn.db.profile.oldstyle end, set = function(v) oRALRaidWarn.db.profile.oldstyle = v end, }, } } ------------------------------ -- Initialization -- ------------------------------ function oRALRaidWarn:OnEnable() self:RegisterShorthand("rs", function(msg) self:SendRS(msg) end ) end function oRALRaidWarn:OnDisable() self:UnregisterShorthand("rs") end ------------------------------ -- Command Handlers -- ------------------------------ function oRALRaidWarn:SendRS(msg) if not msg or not oRALRaidWarn:IsValidRequest() then return end if self.db.profile.oldstyle then self:SendMessage("MS ".. string.gsub(msg, "%%t", UnitName("target") or TARGET_TOKEN_NOT_FOUND) ) else SendChatMessage(msg, "RAID_WARNING") end if self.db.profile.toraid then SendChatMessage(msg, "RAID") end end