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 kri = AceLibrary("Babble-Boss-2.2")["Lord Kri"]
6 local yauj = AceLibrary("Babble-Boss-2.2")["Princess Yauj"]
7 local vem = AceLibrary("Babble-Boss-2.2")["Vem"]
8 local boss = AceLibrary("Babble-Boss-2.2")["The Bug Family"]
9  
10 local L = AceLibrary("AceLocale-2.2"):new("BigWigs"..boss)
11 local deaths = 0
12 local fearstatus
13  
14 ----------------------------
15 -- Localization --
16 ----------------------------
17  
18 L:RegisterTranslations("enUS", function() return {
19 cmd = "BugFamily",
20 fear_cmd = "fear",
21 fear_name = "Fear Alert",
22 fear_desc = "Warn for Fear",
23  
24 heal_cmd = "heal",
25 heal_name = "Heal Alert",
26 heal_desc = "Warn for Heal",
27  
28 healtrigger = "Princess Yauj begins to cast Great Heal.",
29 healwarn = "Casting heal!",
30  
31 feartrigger = "is afflicted by Fear%.",
32 fearbar = "AoE Fear",
33 fearwarn1 = "AoE Fear! Next in 20 Seconds!",
34 fearwarn2 = "AoE Fear in 5 Seconds!",
35 } end )
36  
37 L:RegisterTranslations("frFR", function() return {
38 fear_name = "Alerte Peur",
39 fear_desc = "Pr\195\169viens des Peurs de zone.",
40  
41 heal_name = "Alerte Soins",
42 heal_desc = "Pr\195\169viens lors de l'incantation de soins.",
43  
44 healtrigger = "Princesse Yauj commence \195\160 lancer Soins exceptionnels.",
45 healwarn = "Princesse Yauj commence \195\160 se soigner - Interrompez-la !",
46  
47 feartrigger = "subit les effets de Peur%.",
48 fearbar = "Peur de zone",
49 fearwarn1 = "Peur de zone ! prochain dans 20 secondes",
50 fearwarn2 = "Peur de zone dans 5 secondes !",
51 } end )
52  
53 L:RegisterTranslations("deDE", function() return {
54 fear_name = "Furcht",
55 fear_desc = "Warnung, wenn wenn Prinzessin Yauj AoE Furcht wirkt.",
56  
57 heal_name = "Heilung",
58 heal_desc = "Warnung, wenn Prinzessin Yauj versucht sich zu heilen.",
59  
60 healtrigger = "Prinzessin Yauj beginnt Gro\195\159es Heilen zu wirken.",
61 healwarn = "Prinzessin Yauj versucht sich zu heilen!",
62  
63 feartrigger = "ist von Furcht betroffen.",
64 fearbar = "AoE Furcht",
65 fearwarn1 = "AoE Furcht! N\195\164chste in 20 Sekunden!",
66 fearwarn2 = "AoE Furcht in 5 Sekunden!",
67 } end )
68  
69 L:RegisterTranslations("zhCN", function() return {
70 fear_name = "恐惧警报",
71 fear_desc = "敌人发动群体恐惧时发出警报",
72  
73 heal_name = "治疗警报",
74 heal_desc = "亚尔基公主施放治疗时发出警报",
75  
76 healtrigger = "亚尔基公主开始施放强效治疗术。",
77 healwarn = "亚尔基公主正在施放治疗 - 迅速打断!",
78  
79 feartrigger = "受到了恐惧效果的影响。",
80 fearbar = "群体恐惧",
81 fearwarn1 = "群体恐惧 - 20秒后再次发动",
82 fearwarn2 = "5秒后发动群体恐惧!",
83 } end )
84  
85 L:RegisterTranslations("zhTW", function() return {
86 -- Princess Yauj 亞爾基公主
87 fear_name = "恐懼警報",
88 fear_desc = "敵人發動群體恐懼時發出警報",
89  
90 heal_name = "治療警報",
91 heal_desc = "亞爾基公主施放治療時發出警報",
92  
93 healtrigger = "亞爾基公主開始施放強效治療術。",
94 healwarn = "正在施放治療! 打斷!",
95  
96 feartrigger = "受到恐懼術的傷害",
97 fearbar = "群體恐懼",
98 fearwarn1 = "群體恐懼 - 20 秒後再次發動",
99 fearwarn2 = "5 秒後群體恐懼!",
100 } end )
101  
102 L:RegisterTranslations("koKR", function() return {
103 fear_name = "공포 경고",
104 fear_desc = "공포에 대한 경고",
105  
106 heal_name = "치유 경고",
107 heal_desc = "치유에 대한 경고",
108  
109 healtrigger = "공주 야우즈|1이;가; 상급 치유|1을;를; 시전합니다.",
110 healwarn = "치유 시전 - 시전 방해!",
111  
112 feartrigger = "공포에 걸렸습니다.",
113 fearbar = "공포",
114 fearwarn1 = "공포 시전! 다음 시전 20초후!",
115 fearwarn2 = "5초후 공포!",
116 } end )
117  
118 ----------------------------------
119 -- Module Declaration --
120 ----------------------------------
121  
122 BigWigsBugFamily = BigWigs:NewModule(boss)
123 BigWigsBugFamily.zonename = AceLibrary("Babble-Zone-2.2")["Ahn'Qiraj"]
124 BigWigsBugFamily.enabletrigger = {kri, yauj, vem}
125 BigWigsBugFamily.toggleoptions = {"fear", "heal", "bosskill"}
126 BigWigsBugFamily.revision = tonumber(string.sub("$Revision: 16639 $", 12, -3))
127  
128 ------------------------------
129 -- Initialization --
130 ------------------------------
131  
132 function BigWigsBugFamily:OnEnable()
133 deaths = 0
134 fearstatus = nil
135 self:RegisterEvent("CHAT_MSG_COMBAT_HOSTILE_DEATH")
136 self:RegisterEvent("CHAT_MSG_SPELL_CREATURE_VS_CREATURE_BUFF")
137 self:RegisterEvent("PLAYER_REGEN_ENABLED", "CheckForWipe")
138 self:RegisterEvent("CHAT_MSG_SPELL_PERIODIC_PARTY_DAMAGE", "FearEvent")
139 self:RegisterEvent("CHAT_MSG_SPELL_PERIODIC_SELF_DAMAGE", "FearEvent")
140 self:RegisterEvent("CHAT_MSG_SPELL_PERIODIC_FRIENDLYPLAYER_DAMAGE", "FearEvent")
141 self:RegisterEvent("BigWigs_Message")
142 end
143  
144 ------------------------------
145 -- Event Handlers --
146 ------------------------------
147  
148 function BigWigsBugFamily:FearEvent(msg)
149 if not fearstatus and string.find(msg, L["feartrigger"]) and self.db.profile.fear then
150 fearstatus = true
151 self:TriggerEvent("BigWigs_StartBar", self, L["fearbar"], 20, "Interface\\Icons\\Spell_Shadow_Possession")
152 self:TriggerEvent("BigWigs_Message", L["fearwarn1"], "Important")
153 self:ScheduleEvent("BigWigs_Message", 15, L["fearwarn2"], "Urgent")
154 end
155 end
156  
157 function BigWigsBugFamily:BigWigs_Message(txt)
158 if fearstatus and txt == L["fearwarn2"] then fearstatus = nil end
159 end
160  
161 function BigWigsBugFamily:CHAT_MSG_COMBAT_HOSTILE_DEATH(msg)
162 if (msg == string.format(UNITDIESOTHER, kri) or msg == string.format(UNITDIESOTHER, yauj) or msg == string.format(UNITDIESOTHER, vem)) then
163 deaths = deaths + 1
164 if (deaths == 3) then
165 if self.db.profile.bosskill then self:TriggerEvent("BigWigs_Message", string.format(AceLibrary("AceLocale-2.2"):new("BigWigs")["%s has been defeated"], boss), "Bosskill", nil, "Victory") end
166 self.core:ToggleModuleActive(self, false)
167 end
168 end
169 end
170  
171 function BigWigsBugFamily:CHAT_MSG_SPELL_CREATURE_VS_CREATURE_BUFF(msg)
172 if msg == L["healtrigger"] and self.db.profile.heal then
173 self:TriggerEvent("BigWigs_Message", L["healwarn"], "Urgent")
174 end
175 end