vanilla-wow-addons – Rev 1

Subversion Repositories:
Rev:
------------------------------
--      Are you local?      --
------------------------------

local boss = AceLibrary("Babble-Boss-2.2")["Azuregos"]
local L = AceLibrary("AceLocale-2.2"):new("BigWigs"..boss)

----------------------------
--      Localization      --
----------------------------

L:RegisterTranslations("enUS", function() return {
        cmd = "Azuregos",

        teleport_cmd = "teleport",
        teleport_name = "Teleport Alert",
        teleport_desc = "Warn for teleport",

        shield_cmd = "shield",
        shield_name = "Shield Alert",
        shield_desc = "Warn for shield",

        trigger1 = "Come, little ones",
        trigger2 = "^Reflection fades from Azuregos",
        trigger3 = "^Azuregos gains Reflection",

        warn1 = "Teleport!",
        warn2 = "Magic Shield down!",
        warn3 = "Magic Shield UP!",

        shieldbar = "Magic Shield",
} end )

L:RegisterTranslations("deDE", function() return {
        teleport_name = "Teleport",
        teleport_desc = "Warnung f\195\188r Azuregos Teleport.",
        
        shield_name = "Magieschild",
        shield_desc = "Warnung, wenn Magieschild aktiv.",
        
        trigger1 = "Tretet mir",
        trigger2 = "Reflexion schwindet von Azuregos",
        trigger3 = "^Azuregos bekommt 'Reflexion'",

        warn1 = "Teleport!",
        warn2 = "Magieschild: Aus!",
        warn3 = "Magieschild: Aktiv!",  

        shieldbar = "Magieschild",
} end )

L:RegisterTranslations("frFR", function() return {
        teleport_name = "Alerte T\195\169l\195\169portation",
        teleport_desc = "Pr\195\169viens quans Azuregos t\195\169l\195\169porte quelqu'un.",

        shield_name = "Alerte Bouclier",
        shield_desc = "Pr\195\169viens quand Azuregos est prot\195\169g\195\169 par un bouclier magique.",

        trigger1 = "Venez m'affronter, mes petits !",
        trigger2 = "^Renvoi sur Azuregos vient de se dissiper.",
        trigger3 = "^Azuregos gagne Renvoi.",

        warn1 = "T\195\169l\195\169portation !",
        warn2 = "Bouclier magique dissip\195\169 !",
        warn3 = "Bouclier magique en place !",

        shieldbar = "Bouclier magique",
} end )

L:RegisterTranslations("zhCN", function() return {
        teleport_name = "传送警报",
        teleport_desc = "传送警报",
        
        shield_name = "护盾警报",
        shield_desc = "护盾警报",
        
        trigger1 = "来吧,小子。面对我!",
        trigger2 = "^反射效果从艾索雷葛斯身上消失",
        trigger3 = "^艾索雷葛斯获得了反射",

        warn1 = "传送发动!",
        warn2 = "魔法护盾消失!",
        warn3 = "魔法护盾开启 - 不要施放法术!",
        
        shieldbar = "魔法护盾",
} end )

L:RegisterTranslations("zhTW", function() return {
        teleport_name = "傳送警報",
        teleport_desc = "傳送警報",
        
        shield_name = "護盾警報",
        shield_desc = "護盾警報",
        
        trigger1 = "來吧,小子。面對我!",
        trigger2 = "^反射效果從艾索雷葛斯身上消失",
        trigger3 = "^艾索雷葛斯獲得了反射",

        warn1 = "傳送發動!",
        warn2 = "魔法護盾消失!",
        warn3 = "魔法護盾開啟 - 不要施放法術!",
        
        shieldbar = "魔法護盾",
} end )

L:RegisterTranslations("koKR", function() return {
        
        teleport_name = "소환 경고",
        teleport_desc = "소환에 대한 경고",
        
        shield_name = "보호막 경고",
        shield_desc = "보호막에 대한 경고",
        
        trigger1 = "오너라, 조무래기들아! 덤벼봐라!",
        trigger2 = "아주어고스의 몸에서 반사 효과가 사라졌습니다.",
        trigger3 = "아주어고스|1이;가; 반사 효과를",

        warn1 = "강제 소환!",
        warn2 = "마법 보호막 소멸!",
        warn3 = "마법 보호막 동작 - 마법 공격 금지!",

        shieldbar = "마법 보호막",
} end )

----------------------------------
--      Module Declaration      --
----------------------------------

BigWigsAzuregos = BigWigs:NewModule(boss)
BigWigsAzuregos.zonename = { AceLibrary("AceLocale-2.2"):new("BigWigs")["Outdoor Raid Bosses Zone"], AceLibrary("Babble-Zone-2.2")["Azshara"] }
BigWigsAzuregos.enabletrigger = boss
BigWigsAzuregos.toggleoptions = {"teleport", "shield", "bosskill"}
BigWigsAzuregos.revision = tonumber(string.sub("$Revision: 17179 $", 12, -3))

------------------------------
--      Initialization      --
------------------------------

function BigWigsAzuregos:OnEnable()
        self:RegisterEvent("CHAT_MSG_MONSTER_YELL")
        self:RegisterEvent("CHAT_MSG_SPELL_AURA_GONE_OTHER")
        self:RegisterEvent("CHAT_MSG_SPELL_PERIODIC_CREATURE_BUFFS")
        self:RegisterEvent("CHAT_MSG_COMBAT_HOSTILE_DEATH", "GenericBossDeath")
end

function BigWigsAzuregos:CHAT_MSG_MONSTER_YELL( msg )
        if self.db.profile.teleport and string.find(msg, L["trigger1"]) then
                self:TriggerEvent("BigWigs_Message", L["warn1"], "Important")
        end
end

function BigWigsAzuregos:CHAT_MSG_SPELL_AURA_GONE_OTHER( msg )
        if self.db.profile.shield and string.find(msg, L["trigger2"]) then
                self:TriggerEvent("BigWigs_Message", L["warn2"], "Attention")
        end
end

function BigWigsAzuregos:CHAT_MSG_SPELL_PERIODIC_CREATURE_BUFFS( msg )
        if self.db.profile.shield and string.find(arg1, L["trigger3"]) then
                self:TriggerEvent("BigWigs_Message", L["warn3"], "Important")
                self:TriggerEvent("BigWigs_StartBar", self, L["shieldbar"], 10, "Interface\\Icons\\Spell_Frost_FrostShock")
        end
end