vanilla-wow-addons – Blame information for rev 1

Subversion Repositories:
Rev:
Rev Author Line No. Line
1 office 1 ------------------------------
2 -- Are you local? --
3 ------------------------------
4  
5 local boss = AceLibrary("Babble-Boss-2.2")["Majordomo Executus"]
6 local L = AceLibrary("AceLocale-2.2"):new("BigWigs"..boss)
7  
8 local Texture1 = "Interface\\Icons\\Spell_Frost_FrostShock"
9 local Texture2 = "Interface\\Icons\\Spell_Shadow_AntiShadow"
10 local aura
11  
12 ----------------------------
13 -- Localization --
14 ----------------------------
15  
16 L:RegisterTranslations("enUS", function() return {
17 disabletrigger = "Impossible! Stay your attack, mortals... I submit! I submit!",
18  
19 trigger1 = "gains Magic Reflection",
20 trigger2 = "gains Damage Shield",
21 trigger3 = "Magic Reflection fades",
22 trigger4 = "Damage Shield fades",
23  
24 warn1 = "Magic Reflection for 10 seconds!",
25 warn2 = "Damage Shield for 10 seconds!",
26 warn3 = "5 seconds until powers!",
27 warn4 = "Magic Reflection down!",
28 warn5 = "Damage Shield down!",
29 bosskill = "Majordomo Executus has been defeated!",
30  
31 bar1text = "Magic Reflection",
32 bar2text = "Damage Shield",
33 bar3text = "New powers",
34  
35 cmd = "Majordomo",
36  
37 magic_cmd = "magic",
38 magic_name = "Magic Reflection alert",
39 magic_desc = "Warn for Magic Reflection",
40  
41 dmg_cmd = "dmg",
42 dmg_name = "Damage Shields alert",
43 dmg_desc = "Warn for Damage Shields",
44 } end)
45  
46 L:RegisterTranslations("zhCN", function() return {
47 disabletrigger = "不可能!等一下",
48  
49 trigger1 = "获得了魔法反射的效果",
50 trigger2 = "获得了伤害反射护盾的效果",
51 trigger3 = "魔法反射效果从",
52 trigger4 = "伤害反射护盾效果从",
53  
54 warn1 = "魔法反射护盾,持续10秒!",
55 warn2 = "伤害反射护盾,持续10秒!",
56 warn3 = "5秒后再次释放反射护盾!",
57 warn4 = "魔法反射护盾已消失!",
58 warn5 = "伤害反射护盾已消失!",
59 bosskill = "管理者埃克索图斯被击败了!",
60  
61 bar1text = "魔法反射护盾",
62 bar2text = "伤害反射护盾",
63 bar3text = "新的反射护盾",
64  
65 magic_name = "魔法反射护盾警报",
66 magic_desc = "魔法反射护盾警报",
67  
68 dmg_name = "伤害反射护盾警报",
69 dmg_desc = "伤害反射护盾警报",
70 } end)
71  
72 L:RegisterTranslations("zhTW", function() return {
73 --Majordomo 管理者埃克索圖斯
74 disabletrigger = "不……不可能!等一下……我投降!我投降!",
75  
76 trigger1 = "獲得了魔法反射的效果",
77 trigger2 = "獲得了傷害護盾的效果",
78 trigger3 = "魔法反射效果從",
79 trigger4 = "傷害護盾效果從",
80  
81 warn1 = "== 法術停火 == 魔法反射,持續10秒",
82 warn2 = "== 近戰停火 == 傷害反射護盾,持續10秒",
83 warn3 = "5秒後施放效果!",
84 warn4 = "魔法反射已消失!",
85 warn5 = "傷害護盾已消失!",
86 bosskill = "管理者埃克索圖斯被擊敗了!",
87  
88 bar1text = "魔法反射",
89 bar2text = "傷害護盾",
90 bar3text = "新生力量",
91  
92 magic_name = "魔法反射警報",
93 magic_desc = "通報週期性施放的魔法反射",
94  
95 dmg_name = "傷害護盾警報",
96 dmg_desc = "通報週期性施放的傷害護盾",
97 } end)
98  
99 L:RegisterTranslations("koKR", function() return {
100 disabletrigger = "이럴 수가! 그만! 제발 그만! 내가 졌다! 내가 졌어!",
101  
102 trigger1 = "마법 반사 효과를 얻었습니다.",
103 trigger2 = "피해 보호막 효과를 얻었습니다.",
104 trigger3 = "마법 반사 효과가 사라졌습니다.",
105 trigger4 = "피해 보호막 효과가 사라졌습니다.",
106  
107 warn1 = "마법 보호막 - 10초간!",
108 warn2 = "피해 보호막 - 10초간!",
109 warn3 = "5초후 버프!",
110 warn4 = "마법 반사 사라짐!",
111 warn5 = "피해 보호 사라짐!",
112 bosskill = "청지기를 물리쳤습니다!",
113  
114 bar1text = "마법 반사",
115 bar2text = "피해 보호막",
116 bar3text = "새로운 버프",
117  
118 magic_name = "마법 보호막 경고",
119 magic_desc = "마법 보호막에 대한 경고",
120  
121 dmg_name = "피해 보호막 경고",
122 dmg_desc = "피해 보호막에 대한 경고",
123 } end)
124  
125 L:RegisterTranslations("deDE", function() return {
126 disabletrigger = "Haltet ein, Sterbliche",
127  
128 trigger1 = "bekommt 'Magiereflexion'",
129 trigger2 = "bekommt 'Schadensschild'",
130 trigger3 = "Magiereflexion schwindet von",
131 trigger4 = "Schadensschild schwindet von",
132  
133 warn1 = "Magiereflexion f\195\188r 10 Sekunden!",
134 warn2 = "Schadensschild f\195\188r 10 Sekunden!",
135 warn3 = "Schild in 5 Sekunden!",
136 warn4 = "Magiereflexion beendet!",
137 warn5 = "Schadensschild beendet!",
138 bosskill = "Majordomo Executus wurde besiegt!",
139  
140 bar1text = "Magiereflexion",
141 bar2text = "Schadensschild",
142 bar3text = "N\195\164chstes Schild",
143  
144 magic_name = "Magiereflexion",
145 magic_desc = "Warnung, wenn Magiereflexion aktiv.",
146  
147 dmg_name = "Schadensschild",
148 dmg_desc = "Warnung, wenn Schadensschild aktiv.",
149 } end)
150  
151 L:RegisterTranslations("frFR", function() return {
152 disabletrigger = "Impossible ! Arr\195\170tez votre attaque, mortels... Je me rends ! Je me rends !",
153 trigger1 = "gagne Renvoi de la magie",
154 trigger2 = "gagne Bouclier de d\195\169g\195\162ts",
155 trigger3 = "Renvoi de la magie sur .+ Attise%-flammes vient de se dissiper",
156 trigger4 = "Bouclier de d\195\169g\195\162ts sur .+ Attise%-flammes vient de se dissiper",
157  
158 warn1 = "Bouclier sorts pendant 10 secondes !",
159 warn2 = "Bouclier d\195\169g\195\162ts pendant 10 secondes !",
160 warn3 = "5 secondes avant le bouclier !",
161 warn4 = "Bouclier sorts termin\195\169 !",
162 warn5 = "Bouclier d\195\169g\195\162ts termin\195\169 !",
163 bosskill = "Le Chambellant Executus a \195\169t\195\169 vaincu !",
164  
165 bar1text = "Renvoi de la magie",
166 bar2text = "Bouclier de d\195\169g\195\162ts",
167 bar3text = "Nouveaux Bouclier",
168  
169 magic_name = "Alerte Bouclier de Sorts",
170 magic_desc = "Pr\195\169viens des boucliers de sorts.",
171  
172 dmg_name = "Alerte Bouclier de D\195\169g\195\162ts",
173 dmg_desc = "Pr\195\169viens des boucliers de d\195\169g\195\162ts.",
174 } end)
175  
176 ----------------------------------
177 -- Module Declaration --
178 ----------------------------------
179  
180 BigWigsMajordomo = BigWigs:NewModule(boss)
181 BigWigsMajordomo.zonename = AceLibrary("Babble-Zone-2.2")["Molten Core"]
182 BigWigsMajordomo.enabletrigger = boss
183 BigWigsMajordomo.toggleoptions = {"magic", "dmg", "bosskill"}
184 BigWigsMajordomo.revision = tonumber(string.sub("$Revision: 16639 $", 12, -3))
185  
186 ------------------------------
187 -- Initialization --
188 ------------------------------
189  
190 function BigWigsMajordomo:OnEnable()
191 self:RegisterEvent("CHAT_MSG_SPELL_PERIODIC_CREATURE_BUFFS")
192 self:RegisterEvent("CHAT_MSG_SPELL_AURA_GONE_OTHER")
193 self:RegisterEvent("CHAT_MSG_MONSTER_YELL")
194 aura = nil
195 end
196  
197 function BigWigsMajordomo:VerifyEnable(unit)
198 return UnitCanAttack("player", unit)
199 end
200  
201 ------------------------------
202 -- Event Handlers --
203 ------------------------------
204  
205 function BigWigsMajordomo:CHAT_MSG_MONSTER_YELL(msg)
206 if (msg == L["disabletrigger"]) then
207 if self.db.profile.bosskill then self:TriggerEvent("BigWigs_Message", string.format(AceLibrary("AceLocale-2.2"):new("BigWigs")["%s has been defeated"], self:ToString()), "Bosskill", nil, "Victory") end
208 self.core:ToggleModuleActive(self, false)
209 end
210 end
211  
212 function BigWigsMajordomo:CHAT_MSG_SPELL_PERIODIC_CREATURE_BUFFS(msg)
213 if (string.find(msg, L["trigger1"]) and not aura and self.db.profile.magic) then self:NewPowers(1)
214 elseif (string.find(msg, L["trigger2"]) and not aura and self.db.profile.dmg) then self:NewPowers(2) end
215 end
216  
217 function BigWigsMajordomo:CHAT_MSG_SPELL_AURA_GONE_OTHER(msg)
218 if ((string.find(msg, L["trigger3"]) or string.find(msg, L["trigger4"])) and aura) then
219 self:TriggerEvent("BigWigs_Message", aura == 1 and L["warn4"] or L["warn5"], "Attention")
220 aura = nil
221 end
222 end
223  
224 function BigWigsMajordomo:NewPowers(power)
225 aura = power
226 self:TriggerEvent("BigWigs_Message", power == 1 and L["warn1"] or L["warn2"], "Important")
227 self:TriggerEvent("BigWigs_StartBar", self, L["bar3text"], 30, "Interface\\Icons\\Spell_Frost_Wisp")
228 self:TriggerEvent("BigWigs_StartBar", self, power == 1 and L["bar1text"] or L["bar2text"], 10, power == 1 and Texture1 or Texture2)
229 self:ScheduleEvent("BigWigs_Message", 25, L["warn3"], "Urgent")
230 end