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")["Heigan the Unclean"]
6 local L = AceLibrary("AceLocale-2.2"):new("BigWigs"..boss)
7  
8 ----------------------------
9 -- Localization --
10 ----------------------------
11  
12 L:RegisterTranslations("enUS", function() return {
13 cmd = "Heigan",
14  
15 teleport_cmd = "teleport",
16 teleport_name = "Teleport Alert",
17 teleport_desc = "Warn for Teleports.",
18  
19 engage_cmd = "engage",
20 engage_name = "Engage Alert",
21 engage_desc = "Warn when Heigan is engaged.",
22  
23 -- [[ Triggers ]]--
24 starttrigger = "You are mine now.",
25 starttrigger2 = "You... are next.",
26 starttrigger3 = "I see you...",
27 teleport_trigger = "The end is upon you.",
28 die_trigger = "%s takes his last breath.",
29  
30 -- [[ Warnings ]]--
31 engage_message = "Heigan the Unclean engaged! 90 sec to teleport!",
32  
33 teleport_1min_message = "Teleport in 1 min",
34 teleport_30sec_message = "Teleport in 30 sec",
35 teleport_10sec_message = "Teleport in 10 sec!",
36 on_platform_message = "Teleport! On platform for %d sec!",
37  
38 to_floor_30sec_message = "Back in 30 sec",
39 to_floor_10sec_message = "Back in 10 sec!",
40 on_floor_message = "Back on the floor! 90 sec to next teleport!",
41  
42 -- [[ Bars ]]--
43 teleport_bar = "Teleport!",
44 back_bar = "Back on the floor!",
45  
46 -- [[ Dream Room Mobs ]] --
47 ["Eye Stalk"] = true,
48 ["Rotting Maggot"] = true,
49 } end )
50  
51 -- Korean Translation by gezta --
52 L:RegisterTranslations("koKR", function() return {
53  
54 teleport_name = "순간이동 경고",
55 teleport_desc = "순간이동에 대한 경고",
56  
57 engage_name = "전투개시 알림",
58 engage_desc = "헤이건 전투 개시 알림.",
59  
60 -- [[ Triggers ]]--
61 starttrigger = "이제 넌 내 것이다.",
62 starttrigger2 = "다음은... 너다.",
63 starttrigger3 = "네가 보인다...",
64 teleport_trigger = "여기가 너희 무덤이 되리라.",
65 die_trigger = "%s|1이;가; 마지막 숨을 거둡니다.", -- check
66  
67 -- [[ Warnings ]]--
68 engage_message = "부정의 헤이건, 단상으로 순간 이동까지 90초",
69  
70 teleport_1min_message = "순간이동 1 분전 !!!",
71 teleport_30sec_message = "순간이동 30초전 !!!",
72 teleport_10sec_message = "순간이동 10초전 !!!",
73 on_platform_message = "순간이동! %d초 후 내려옵니다. !!!",
74  
75 to_floor_30sec_message = "내려오기까지 30초 전 !!!",
76 to_floor_10sec_message = "내려오기까지 10초 전 !!!",
77 on_floor_message = "헤이건 단상 아래!! 90초 후에 순간이동 !!!",
78  
79 -- [[ Bars ]]--
80 teleport_bar = "순간이동!",
81 back_bar = "단상으로 이동!",
82  
83 -- [[ Dream Room Mobs ]] --
84 ["Eye Stalk"] = "추적자의 눈",
85 ["Rotting Maggot"] = "썩어가는 구더기",
86 } end )
87  
88 L:RegisterTranslations("deDE", function() return {
89 teleport_name = "Teleport",
90 teleport_desc = "Warnung vor Teleport.",
91  
92 starttrigger = "Ihr geh\195\182rt mir...",
93 starttrigger2 = "Ihr seid.... als n\195\164chstes dran.",
94 starttrigger3 = "Ihr entgeht mir nicht...",
95 teleport_trigger = "Euer Ende naht.",
96  
97 engage_message = "Heigan der Unsaubere angegriffen! 90 Sekunden bis Teleport!",
98 teleport_1min_message = "Teleport in 1 Minute",
99 teleport_30sec_message = "Teleport in 30 Sekunden",
100 teleport_10sec_message = "Teleport in 10 Sekunden",
101 on_floor_message = "Zur\195\188ck im Raum! N\195\164chster Teleport in 90 Sekunden!",
102 to_floor_30sec_message = "Zur\195\188ck im Raum in 30 Sekunden",
103 to_floor_10sec_message = "Zur\195\188ck im Raum in 10 Sekunden",
104 on_platform_message = "Teleport! Zur\195\188ck im Raum in %d Sekunden!",
105  
106 teleport_bar = "Teleport!",
107 back_bar = "R\195\188ckteleport!",
108 } end )
109  
110 L:RegisterTranslations("zhCN", function() return {
111 teleport_name = "传送警报",
112 teleport_desc = "传送警报",
113  
114 engage_name = "激活警报",
115 engage_desc = "希尔盖激活时警告",
116  
117 -- [[ Triggers ]]--
118 starttrigger = "你是我的了。",
119 starttrigger2 = "你……就是下一个。",
120 starttrigger3 = "我看到你了……",
121 teleport_trigger = "你的生命正走向终结。",
122 die_trigger = "%s咽下了最后一口气。",
123 -- [[ Warnings ]]--
124 engage_message = "希尔盖已激活 - 90秒后传送",
125 teleport_1min_message = "1分钟后传送",
126 teleport_30sec_message = "30秒后传送",
127 teleport_10sec_message = "10秒后传送",
128 on_floor_message = "希尔盖出现 - 90秒后再次传送",
129 to_floor_30sec_message = "30秒后希尔盖出现",
130 to_floor_10sec_message = "10秒后希尔盖出现",
131 on_platform_message = "传送发动! - %d秒后希尔盖出现!",
132 -- [[ Bars ]]--
133 teleport_bar = "传送!",
134 back_bar = "出现!",
135 -- [[ Dream Room Mobs ]] --
136 ["Eye Stalk"] = "眼柄",
137 ["Rotting Maggot"] = "腐烂之蛆",
138 } end )
139  
140 L:RegisterTranslations("zhTW", function() return {
141 --Heigan the Unclean 骯髒者海根
142 teleport_name = "傳送警報",
143 teleport_desc = "傳送警報",
144  
145 engage_name = "進入戰鬥警報",
146 engage_desc = "希爾蓋進入戰鬥警告",
147  
148 -- [[ Triggers ]]--
149 starttrigger = "你是我的了。",
150 starttrigger2 = "你……就是下一個。",
151 starttrigger3 = "我看到你了……",
152 teleport_trigger = "你的生命正走向終結。",
153 die_trigger = "%s咽下了最後一口氣。",
154 -- [[ Warnings ]]--
155 engage_message = "海根已進入戰鬥 - 90 秒後傳送",
156 teleport_1min_message = "1 分鐘後傳送",
157 teleport_30sec_message = "30 秒後傳送",
158 teleport_10sec_message = "10 秒後傳送",
159 on_floor_message = "海根出現 - 90 秒後再次傳送",
160 to_floor_30sec_message = "30 秒後海根出現",
161 to_floor_10sec_message = "10 秒後海根出現",
162 on_platform_message = "傳送發動! - %d 秒後海根出現!",
163 -- [[ Bars ]]--
164 teleport_bar = "傳送!",
165 back_bar = "出現!",
166 -- [[ Dream Room Mobs ]] --
167 ["Eye Stalk"] = "眼柄",
168 ["Rotting Maggot"] = "腐爛的蛆蟲",
169 } end )
170  
171 L:RegisterTranslations("frFR", function() return {
172 -- [[ Triggers ]]--
173 starttrigger = "Vous \195\170tes \195\160 moi, maintenant.",
174 starttrigger2 = "Tu es... le suivant.",
175 starttrigger3 = "Je vous vois...",
176 teleport_trigger = "Votre fin est venue.",
177 die_trigger = "%s rend son dernier soupir.",
178 } end )
179  
180 ----------------------------------
181 -- Module Declaration --
182 ----------------------------------
183  
184 BigWigsHeigan = BigWigs:NewModule(boss)
185 BigWigsHeigan.zonename = AceLibrary("Babble-Zone-2.2")["Naxxramas"]
186 BigWigsHeigan.enabletrigger = boss
187 BigWigsHeigan.wipemobs = { L["Eye Stalk"], L["Rotting Maggot"] }
188 BigWigsHeigan.toggleoptions = {"engage", "teleport", "bosskill"}
189 BigWigsHeigan.revision = tonumber(string.sub("$Revision: 17550 $", 12, -3))
190  
191 ------------------------------
192 -- Initialization --
193 ------------------------------
194  
195 function BigWigsHeigan:OnEnable()
196 self.toRoomTime = 45
197 self.toPlatformTime = 90
198 self:RegisterEvent("CHAT_MSG_MONSTER_YELL")
199 self:RegisterEvent("CHAT_MSG_MONSTER_EMOTE")
200 self:RegisterEvent("PLAYER_REGEN_ENABLED", "CheckForWipe")
201 self:RegisterEvent("CHAT_MSG_HOSTILE_DEATH", "GenericBossDeath")
202  
203 self:RegisterEvent("BigWigs_RecvSync")
204 self:TriggerEvent("BigWigs_ThrottleSync", "HeiganTeleport", 10)
205 end
206  
207 function BigWigsHeigan:CHAT_MSG_MONSTER_EMOTE( msg )
208 if msg == L["die_trigger"] then
209 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
210 self.core:ToggleModuleActive(self, false)
211 end
212 end
213  
214 function BigWigsHeigan:CHAT_MSG_MONSTER_YELL( msg )
215 if string.find(msg, L["starttrigger"]) or string.find(msg, L["starttrigger2"]) or string.find(msg, L["starttrigger3"]) then
216 if self.db.profile.engage then
217 self:TriggerEvent("BigWigs_Message", L["engage_message"], "Important")
218 end
219 if self.db.profile.teleport then
220 self:TriggerEvent("BigWigs_StartBar", self, L["teleport_bar"], self.toPlatformTime, "Interface\\Icons\\Spell_Arcane_Blink")
221 self:ScheduleEvent("bwheiganwarn1", "BigWigs_Message", self.toPlatformTime-60, L["teleport_1min_message"], "Attention")
222 self:ScheduleEvent("bwheiganwarn2", "BigWigs_Message", self.toPlatformTime-30, L["teleport_30sec_message"], "Urgent")
223 self:ScheduleEvent("bwheiganwarn3", "BigWigs_Message", self.toPlatformTime-10, L["teleport_10sec_message"], "Important")
224 end
225 elseif string.find(msg, L["teleport_trigger"]) then
226 self:TriggerEvent("BigWigs_SendSync", "HeiganTeleport")
227 end
228 end
229  
230 function BigWigsHeigan:BigWigs_RecvSync( sync )
231 if sync ~= "HeiganTeleport" then return end
232  
233 self:ScheduleEvent( self.BackToRoom, self.toRoomTime, self )
234  
235 if self.db.profile.teleport then
236 self:TriggerEvent("BigWigs_Message", string.format(L["on_platform_message"], self.toRoomTime), "Attention")
237 self:ScheduleEvent("bwheiganwarn2","BigWigs_Message", self.toRoomTime-30, L["to_floor_30sec_message"], "Urgent")
238 self:ScheduleEvent("bwheiganwarn3","BigWigs_Message", self.toRoomTime-10, L["to_floor_10sec_message"], "Important")
239 self:TriggerEvent("BigWigs_StartBar", self, L["back_bar"], self.toRoomTime, "Interface\\Icons\\Spell_Magic_LesserInvisibilty")
240 end
241 end
242  
243 function BigWigsHeigan:BackToRoom()
244 if self.db.profile.teleport then
245 self:TriggerEvent("BigWigs_Message", L["on_floor_message"], "Attention")
246 self:ScheduleEvent("bwheiganwarn2","BigWigs_Message", self.toPlatformTime-30, L["teleport_30sec_message"], "Urgent")
247 self:ScheduleEvent("bwheiganwarn3","BigWigs_Message", self.toPlatformTime-10, L["teleport_10sec_message"], "Important")
248 self:TriggerEvent("BigWigs_StartBar", self, L["teleport_bar"], self.toPlatformTime, "Interface\\Icons\\Spell_Arcane_Blink")
249 end
250 end
251