vanilla-wow-addons – Blame information for rev 1
?pathlinks?
Rev | Author | Line No. | Line |
---|---|---|---|
1 | office | 1 | tinsert(CT_RABoss_ModsToLoad, "CT_RABoss_Razorgore_OnLoad"); |
2 | |||
3 | function CT_RABoss_Razorgore_OnLoad() |
||
4 | CT_RABoss_AddMod("Razorgore", "Displays warnings for the razorgore encounter.", 1, CT_RABOSS_LOCATIONS_BLACKWINGSLAIR); |
||
5 | CT_RABoss_AddEvent("Razorgore", "CHAT_MSG_MONSTER_YELL", CT_RABoss_Razorgore_EventHandler); |
||
6 | CT_RABoss_AddEvent("Razorgore", "CHAT_MSG_MONSTER_EMOTE", CT_RABoss_Razorgore_EventHandler); |
||
7 | |||
8 | CT_RABoss_AddDropDownButton("Razorgore", { CT_RABOSS_ANNOUNCE, CT_RABOSS_ANNOUNCE_INFO .. CT_RABOSS_REQ_LEADER_OR_PROM }, "CT_RABoss_ModInfo", "announce", "CT_RABoss_SetInfo"); |
||
9 | CT_RABoss_AddDropDownButton("Razorgore", "Display approximately how many eggs should be popped", "CT_RABoss_ModInfo", "displayapproxprogress", "CT_RABoss_SetInfo"); |
||
10 | CT_RABoss_AddDropDownButton("Razorgore", "Announce approximate progress to raid", "CT_RABoss_ModInfo", "announceapproxprogress", "CT_RABoss_SetInfo"); |
||
11 | end |
||
12 | |||
13 | function CT_RABoss_Razorgore_EventHandler(event) |
||
14 | if ( not CT_RABoss_Mods["Razorgore"] or not CT_RABoss_Mods["Razorgore"]["status"] or not CT_RABoss_Mods["Razorgore"].enabled ) then |
||
15 | return; |
||
16 | end |
||
17 | if ( event == "CHAT_MSG_MONSTER_YELL" and string.find(arg1, "breached the hatchery") ) then |
||
18 | CT_RABoss_Razorgore_StartEncounter(); |
||
19 | elseif ( event == "CHAT_MSG_MONSTER_YELL" and string.find(arg1, "device shall never torment me") ) then |
||
20 | -- CT_RABoss_Announce("Failed attempt", CT_RABoss_Mods["Razorgore"]["announce"]); |
||
21 | CT_RABoss_Razorgore_StopWarnings(); |
||
22 | elseif ( event == "CHAT_MSG_MONSTER_EMOTE" and string.find(arg1, "controlling power of the orb is drained") ) then |
||
23 | CT_RABoss_Announce("All eggs popped!", CT_RABoss_Mods["Razorgore"]["announce"]); |
||
24 | CT_RABoss_Razorgore_StopWarnings(); |
||
25 | end |
||
26 | end |
||
27 | |||
28 | function CT_RABoss_Razorgore_StartEncounter() |
||
29 | DEFAULT_CHAT_FRAME:AddMessage("Razorgore encounter started, use /rabrr to reset the timers."); |
||
30 | CT_RABoss_Announce("*** ATTACK THE ORB CONTROLLER! ENCOUNTER STARTED! ***", CT_RABoss_Mods["Razorgore"]["announce"]) |
||
31 | |||
32 | --Timex:AddSchedule("MyAddOn", 5, nil, nil, ace.print, ace, "Hello World!") |
||
33 | Timex:AddSchedule("CT_RABoss_Razorgore_A", 45, nil, nil, CT_RABoss_Razorgore_WarningA); |
||
34 | Timex:AddSchedule("CT_RABoss_Razorgore_WarningsStart", 63, nil, nil, CT_RABoss_Razorgore_StartWarnings); |
||
35 | -- Timex:AddSchedule("CT_RABoss_Razorgore_3", 78, nil, nil, CT_RABoss_Razorgore_Warning); |
||
36 | -- Timex:AddSchedule("CT_RABoss_Razorgore_4", 93, nil, nil, CT_RABoss_Razorgore_Warning); |
||
37 | -- Timex:AddSchedule("CT_RABoss_Razorgore_5", 108, nil, nil, CT_RABoss_Razorgore_Warning); |
||
38 | Timex:AddSchedule("CT_RABoss_Razorgore_B", 123, nil, nil, CT_RABoss_Razorgore_WarningB); |
||
39 | -- Timex:AddSchedule("CT_RABoss_Razorgore_7", 138, nil, nil, CT_RABoss_Razorgore_Warning); |
||
40 | -- Timex:AddSchedule("CT_RABoss_Razorgore_8", 153, nil, nil, CT_RABoss_Razorgore_Warning); |
||
41 | -- Timex:AddSchedule("CT_RABoss_Razorgore_9", 168, nil, nil, CT_RABoss_Razorgore_Warning); |
||
42 | Timex:AddSchedule("CT_RABoss_Razorgore_C", 183, nil, nil, CT_RABoss_Razorgore_WarningC); |
||
43 | -- Timex:AddSchedule("CT_RABoss_Razorgore_11", 198, nil, nil, CT_RABoss_Razorgore_Warning); |
||
44 | -- Timex:AddSchedule("CT_RABoss_Razorgore_12", 213, nil, nil, CT_RABoss_Razorgore_Warning); |
||
45 | -- Timex:AddSchedule("CT_RABoss_Razorgore_13", 228, nil, nil, CT_RABoss_Razorgore_Warning); |
||
46 | Timex:AddSchedule("CT_RABoss_Razorgore_D", 243, nil, nil, CT_RABoss_Razorgore_WarningD); |
||
47 | -- Timex:AddSchedule("CT_RABoss_Razorgore_15", 258, nil, nil, CT_RABoss_Razorgore_Warning); |
||
48 | -- Timex:AddSchedule("CT_RABoss_Razorgore_16", 273, nil, nil, CT_RABoss_Razorgore_Warning); |
||
49 | -- Timex:AddSchedule("CT_RABoss_Razorgore_17", 288, nil, nil, CT_RABoss_Razorgore_Warning); |
||
50 | Timex:AddSchedule("CT_RABoss_Razorgore_E", 303, nil, nil, CT_RABoss_Razorgore_WarningE); |
||
51 | -- Timex:AddSchedule("CT_RABoss_Razorgore_19", 318, nil, nil, CT_RABoss_Razorgore_Warning); |
||
52 | Timex:AddSchedule("CT_RABoss_Razorgore_F", 333, nil, nil, CT_RABoss_Razorgore_WarningF); |
||
53 | -- Timex:AddSchedule("CT_RABoss_Razorgore_21", 348, nil, nil, CT_RABoss_Razorgore_Warning); |
||
54 | Timex:AddSchedule("CT_RABoss_Razorgore_G", 363, nil, nil, CT_RABoss_Razorgore_WarningG); |
||
55 | end |
||
56 | |||
57 | function CT_RABoss_Razorgore_StartWarnings() |
||
58 | CT_RABoss_Razorgore_Warning(); |
||
59 | Timex:AddSchedule("CT_RABoss_Razorgore_Spawns", 15, true, nil, CT_RABoss_Razorgore_Warning); |
||
60 | end |
||
61 | |||
62 | function CT_RABoss_Razorgore_Warning() |
||
63 | CT_RABoss_Announce("*** Spawns in 2 seconds ***", CT_RABoss_Mods["Razorgore"]["announce"]); |
||
64 | end |
||
65 | |||
66 | |||
67 | function CT_RABoss_Razorgore_WarningA() |
||
68 | CT_RABoss_Announce("*** Get into Position - Spawns in 5 seconds ***", CT_RABoss_Mods["Razorgore"]["announce"]); |
||
69 | end |
||
70 | |||
71 | function CT_RABoss_Razorgore_WarningB() |
||
72 | if (CT_RABoss_Mods["Razorgore"]["displayapproxprogress"]) then |
||
73 | CT_RABoss_Announce("(hopefully 9 eggs down)", CT_RABoss_Mods["Razorgore"]["announceapproxprogress"]); |
||
74 | end |
||
75 | end |
||
76 | |||
77 | function CT_RABoss_Razorgore_WarningC() |
||
78 | if (CT_RABoss_Mods["Razorgore"]["displayapproxprogress"]) then |
||
79 | CT_RABoss_Announce("(hopefully 14 eggs down)", CT_RABoss_Mods["Razorgore"]["announceapproxprogress"]); |
||
80 | end |
||
81 | end |
||
82 | |||
83 | function CT_RABoss_Razorgore_WarningD() |
||
84 | if (CT_RABoss_Mods["Razorgore"]["displayapproxprogress"]) then |
||
85 | CT_RABoss_Announce("(hopefully 19 eggs down)", CT_RABoss_Mods["Razorgore"]["announceapproxprogress"]); |
||
86 | end |
||
87 | end |
||
88 | |||
89 | function CT_RABoss_Razorgore_WarningE() |
||
90 | if (CT_RABoss_Mods["Razorgore"]["displayapproxprogress"]) then |
||
91 | CT_RABoss_Announce("(hopefully 24 eggs down)", CT_RABoss_Mods["Razorgore"]["announceapproxprogress"]); |
||
92 | end |
||
93 | end |
||
94 | |||
95 | function CT_RABoss_Razorgore_WarningF() |
||
96 | if (CT_RABoss_Mods["Razorgore"]["displayapproxprogress"]) then |
||
97 | CT_RABoss_Announce("(hopefully 27 eggs down)", CT_RABoss_Mods["Razorgore"]["announceapproxprogress"]); |
||
98 | end |
||
99 | end |
||
100 | |||
101 | function CT_RABoss_Razorgore_WarningG() |
||
102 | if (CT_RABoss_Mods["Razorgore"]["displayapproxprogress"]) then |
||
103 | CT_RABoss_Announce("(hopefully Razorgore up - 30 eggs down)", CT_RABoss_Mods["Razorgore"]["announce"]); |
||
104 | end |
||
105 | end |
||
106 | |||
107 | function CT_RABoss_Razorgore_StopWarnings() |
||
108 | CT_RABoss_Announce("Razorgore encounter timers reset"); |
||
109 | DEFAULT_CHAT_FRAME:AddMessage("Razorgore encounter timers reset"); |
||
110 | |||
111 | Timex:DeleteSchedule("CT_RABoss_Razorgore_A"); |
||
112 | Timex:DeleteSchedule("CT_RABoss_Razorgore_B"); |
||
113 | Timex:DeleteSchedule("CT_RABoss_Razorgore_C"); |
||
114 | Timex:DeleteSchedule("CT_RABoss_Razorgore_D"); |
||
115 | Timex:DeleteSchedule("CT_RABoss_Razorgore_E"); |
||
116 | Timex:DeleteSchedule("CT_RABoss_Razorgore_F"); |
||
117 | Timex:DeleteSchedule("CT_RABoss_Razorgore_G"); |
||
118 | Timex:DeleteSchedule("CT_RABoss_Razorgore_WarningsStart"); |
||
119 | Timex:DeleteSchedule("CT_RABoss_Razorgore_Spawns"); |
||
120 | end |
||
121 | |||
122 | -- Slash command to start the timers |
||
123 | CT_RA_RegisterSlashCmd("/rabossrazorgorestart", "Starts the razorgore timers", 15, "RABOSSRAZORGORESTART", function(msg) |
||
124 | CT_RABoss_Razorgore_StartEncounter(); |
||
125 | end, "/rabrs"); |
||
126 | |||
127 | -- Slash command to reset the timers |
||
128 | CT_RA_RegisterSlashCmd("/rabossrazorgorereset", "Resets the razorgore timers", 15, "RABOSSRAZORGORERESET", function(msg) |
||
129 | CT_RABoss_Razorgore_StopWarnings(); |
||
130 | end, "/rabrr"); |