📄 ruinsofahnqiraj.lua
字号:
tinsert(CT_RABoss_ModsToLoad, "CT_RABoss_Rajaxx_OnLoad");
tinsert(CT_RABoss_ModsToLoad, "CT_RABoss_Moam_OnLoad");
tinsert(CT_RABoss_ModsToLoad, "CT_RABoss_Buru_OnLoad");
tinsert(CT_RABoss_ModsToLoad, "CT_RABoss_Ayamiss_OnLoad");
tinsert(CT_RABoss_ModsToLoad, "CT_RABoss_Ossirian_OnLoad");
tinsert(CT_RABoss_ModsToLoad, "CT_RABoss_Guardian_OnLoad");
-- General Rajaxx
function CT_RABoss_Rajaxx_OnLoad()
CT_RABoss_AddMod("拉贾克斯", CT_RABOSS_RAJAXX_INFO, 1, CT_RABOSS_LOCATIONS_RUINSOFAHNQIRAJ );
CT_RABoss_AddEvent("拉贾克斯", "CHAT_MSG_MONSTER_YELL", CT_RABoss_Rajaxx_EventHandler);
CT_RABoss_AddDropDownButton("拉贾克斯", { CT_RABOSS_ANNOUNCE, CT_RABOSS_ANNOUNCE_INFO .. CT_RABOSS_REQ_LEADER_OR_PROM }, "CT_RABoss_ModInfo", "announce", "CT_RABoss_SetInfo");
end
function CT_RABoss_Rajaxx_EventHandler(event)
if ( not CT_RABoss_Mods["拉贾克斯"] or not CT_RABoss_Mods["拉贾克斯"]["status"] or not CT_RABoss_Mods["拉贾克斯"].enabled ) then
return;
end
if ( arg2 == CT_RABOSS_RAJAXX_LIEUTENANT or arg2 == CT_RABOSS_NAMES["拉贾克斯"] ) then
if ( string.find(arg1, CT_RABOSS_RAJAXX_WAVE_DETECT1) ) then
CT_RABoss_Announce(string.format(CT_RABOSS_RAJAXX_WAVE_ALERT, 1), CT_RABoss_Mods["拉贾克斯"]["announce"]);
elseif ( string.find(arg1, CT_RABOSS_RAJAXX_WAVE_DETECT3) ) then
CT_RABoss_Announce(string.format(CT_RABOSS_RAJAXX_WAVE_ALERT, 3), CT_RABoss_Mods["拉贾克斯"]["announce"]);
elseif ( string.find(arg1, CT_RABOSS_RAJAXX_WAVE_DETECT4) ) then
CT_RABoss_Announce(string.format(CT_RABOSS_RAJAXX_WAVE_ALERT, 4), CT_RABoss_Mods["拉贾克斯"]["announce"]);
elseif ( string.find(arg1, CT_RABOSS_RAJAXX_WAVE_DETECT5) ) then
CT_RABoss_Announce(string.format(CT_RABOSS_RAJAXX_WAVE_ALERT, 5), CT_RABoss_Mods["拉贾克斯"]["announce"]);
elseif ( string.find(arg1, CT_RABOSS_RAJAXX_WAVE_DETECT6) ) then
CT_RABoss_Announce(string.format(CT_RABOSS_RAJAXX_WAVE_ALERT, 6), CT_RABoss_Mods["拉贾克斯"]["announce"]);
elseif ( string.find(arg1, CT_RABOSS_RAJAXX_WAVE_DETECT7) ) then
CT_RABoss_Announce(string.format(CT_RABOSS_RAJAXX_WAVE_ALERT, 7), CT_RABoss_Mods["拉贾克斯"]["announce"]);
elseif ( string.find(arg1, CT_RABOSS_RAJAXX_WAVE_DETECT8) ) then
CT_RABoss_Announce(CT_RABOSS_RAJAXX_FINALWAVE_ALERT, CT_RABoss_Mods["拉贾克斯"]["announce"]);
end
end
if ( arg2 == CT_RABOSS_RAJAXX_TUUBID ) then
local _, _, playerName = string.find(arg1, CT_RABOSS_RAJAXX_KILL_DETECT);
if ( playerName ) then
CT_RABoss_Announce(string.format(CT_RABOSS_RAJAXX_KILL_ALERT, playerName), CT_RABoss_Mods["拉贾克斯"]["announce"]);
CT_RABoss_PlaySound(3);
end
end
end
-- Moam
function CT_RABoss_Moam_OnLoad()
CT_RABoss_AddMod("莫阿姆", CT_RABOSS_MOAM_INFO, 1, CT_RABOSS_LOCATIONS_RUINSOFAHNQIRAJ);
CT_RABoss_AddEvent("莫阿姆", "CHAT_MSG_MONSTER_EMOTE", CT_RABoss_Moam_EventHandler);
CT_RABoss_AddEvent("莫阿姆", "CHAT_MSG_SPELL_AURA_GONE_OTHER", CT_RABoss_Moam_EventHandler);
CT_RABoss_AddDropDownButton("莫阿姆", { CT_RABOSS_ANNOUNCE, CT_RABOSS_ANNOUNCE_INFO .. CT_RABOSS_REQ_LEADER_OR_PROM }, "CT_RABoss_ModInfo", "announce", "CT_RABoss_SetInfo");
CT_RABoss_AddDropDownButton("莫阿姆", { CT_RABOSS_MOAM_TIMER, CT_RABOSS_MOAM_TIMER_INFO }, "CT_RABoss_ModInfo", "timerStone", "CT_RABoss_SetInfo");
end
function CT_RABoss_Moam_EventHandler(event)
if ( not CT_RABoss_Mods["莫阿姆"] or not CT_RABoss_Mods["莫阿姆"]["status"] or not CT_RABoss_Mods["莫阿姆"].enabled ) then
return;
end
-- Stone event pre-alerts
if ( event == "CHAT_MSG_MONSTER_EMOTE" and string.find(arg1, CT_RABOSS_MOAM_BEGIN) and arg2 == CT_RABOSS_NAMES["莫阿姆"] and CT_RABoss_Mods["莫阿姆"]["timerStone"] ) then
CT_RABoss_Announce(format(CT_RABOSS_MOAM_STONE_PREALERT, "90"), CT_RABoss_Mods["莫阿姆"]["announce"]);
CT_RABoss_PlaySound(3);
CT_RABoss_Schedule("CT_RABoss_Moam_EventHandler", 30, "priorWarning");
CT_RABoss_VisualTimer.addTimer("MoamTrans", 90, CT_RABOSS_MOAM_TRANS_TIMER);
elseif ( event == "priorWarning" and CT_RABoss_Mods["莫阿姆"]["timerStone"] ) then
CT_RABoss_Announce(format(CT_RABOSS_MOAM_STONE_PREALERT, "60"), CT_RABoss_Mods["莫阿姆"]["announce"]);
CT_RABoss_PlaySound(3);
CT_RABoss_Schedule("CT_RABoss_Moam_EventHandler", 20, "priorWarning2");
elseif ( event == "priorWarning2" and CT_RABoss_Mods["莫阿姆"]["timerStone"] ) then
CT_RABoss_Announce(format(CT_RABOSS_MOAM_STONE_PREALERT, "40"), CT_RABoss_Mods["莫阿姆"]["announce"]);
CT_RABoss_PlaySound(3);
CT_RABoss_Schedule("CT_RABoss_Moam_EventHandler", 30, "priorWarning3");
elseif ( event == "priorWarning3" and CT_RABoss_Mods["莫阿姆"]["timerStone"] ) then
CT_RABoss_Announce(format(CT_RABOSS_MOAM_STONE_PREALERT, "10"), CT_RABoss_Mods["莫阿姆"]["announce"]);
CT_RABoss_PlaySound(3);
end
-- Stone alert
if ( event == "CHAT_MSG_MONSTER_EMOTE" and string.find(arg1, CT_RABOSS_MOAM_STONE_DETECT) and arg2 == CT_RABOSS_NAMES["莫阿姆"] and CT_RABoss_Mods["莫阿姆"]["timerStone"] ) then
CT_RABoss_Mods["莫阿姆"]["transWarn"] = false;
CT_RABoss_Announce(CT_RABOSS_MOAM_STONE_ALERT, CT_RABoss_Mods["莫阿姆"]["announce"]);
CT_RABoss_PlaySound(3);
--CT_RABoss_UnSchedule("CT_RABoss_Moam_EventHandler");
CT_RABoss_Schedule("CT_RABoss_Moam_EventHandler", 30, "priorWarning4");
CT_RABoss_VisualTimer.addTimer("MoamStone", 90, CT_RABOSS_MOAM_STONE_TIMER);
elseif ( event == "priorWarning4" and not CT_RABoss_Mods["莫阿姆"]["transWarn"] and CT_RABoss_Mods["莫阿姆"]["timerStone"] ) then
CT_RABoss_Announce(format(CT_RABOSS_MOAM_TRANS_PREALERT, "60"), CT_RABoss_Mods["莫阿姆"]["announce"]);
CT_RABoss_PlaySound(3);
CT_RABoss_Schedule("CT_RABoss_Moam_EventHandler", 20, "priorWarning5");
elseif ( event == "priorWarning5" and not CT_RABoss_Mods["莫阿姆"]["transWarn"] and CT_RABoss_Mods["莫阿姆"]["timerStone"] ) then
CT_RABoss_Announce(format(CT_RABOSS_MOAM_TRANS_PREALERT, "40"), CT_RABoss_Mods["莫阿姆"]["announce"]);
CT_RABoss_PlaySound(3);
CT_RABoss_Schedule("CT_RABoss_Moam_EventHandler", 30, "priorWarning6");
elseif ( event == "priorWarning6" and not CT_RABoss_Mods["莫阿姆"]["transWarn"] and CT_RABoss_Mods["莫阿姆"]["timerStone"] ) then
CT_RABoss_Announce(format(CT_RABOSS_MOAM_TRANS_PREALERT, "10"), CT_RABoss_Mods["莫阿姆"]["announce"]);
CT_RABoss_PlaySound(3);
end
-- Retransformation alert
if ( event == "CHAT_MSG_SPELL_AURA_GONE_OTHER" and arg1 == CT_RABOSS_MOAM_STONE_FADE_DETECT and CT_RABoss_Mods["莫阿姆"]["timerStone"] ) then
CT_RABoss_Mods["莫阿姆"]["transWarn"] = true;
CT_RABoss_UnSchedule("CT_RABoss_Moam_EventHandler");
CT_RABoss_Announce(CT_RABOSS_MOAM_TRANS_ALERT, CT_RABoss_Mods["莫阿姆"]["announce"]);
CT_RABoss_PlaySound(3);
CT_RABoss_VisualTimer.removeTimer("MoamTrans");
CT_RABoss_VisualTimer.removeTimer("MoamStone");
end
end
-- Buru
function CT_RABoss_Buru_OnLoad()
CT_RABoss_AddMod("吞咽者布鲁", CT_RABOSS_BURU_INFO, 1, CT_RABOSS_LOCATIONS_RUINSOFAHNQIRAJ );
CT_RABoss_AddEvent("吞咽者布鲁", "CHAT_MSG_MONSTER_EMOTE", CT_RABoss_Buru_EventHandler);
CT_RABoss_AddDropDownButton("吞咽者布鲁", { CT_RABOSS_ANNOUNCE, CT_RABOSS_ANNOUNCE_INFO .. CT_RABOSS_REQ_LEADER_OR_PROM }, "CT_RABoss_ModInfo", "announce", "CT_RABoss_SetInfo");
CT_RABoss_AddDropDownButton("吞咽者布鲁", { CT_RABOSS_BURU_TELL_TARGET, CT_RABOSS_BURU_TELL_TARGET_INFO }, "CT_RABoss_ModInfo", "sendTell", "CT_RABoss_SetInfo");
end
function CT_RABoss_Buru_EventHandler(event)
if ( not CT_RABoss_Mods["吞咽者布鲁"] or not CT_RABoss_Mods["吞咽者布鲁"]["status"] or not CT_RABoss_Mods["吞咽者布鲁"].enabled ) then
return;
end
if ( event == "CHAT_MSG_MONSTER_EMOTE" and arg2 == CT_RABOSS_NAMES["吞咽者布鲁"] ) then
local _, _, sPlayer = string.find(arg1, CT_RABOSS_BURU_EYE_DETECT);
if ( sPlayer ) then
local playerName = UnitName("player");
CT_RABoss_Announce(string.format(CT_RABOSS_BURU_EYE_ALERT, sPlayer), CT_RABoss_Mods["吞咽者布鲁"]["announce"]);
if ( sPlayer ~= playerName and CT_RABoss_Mods["吞咽者布鲁"]["sendTell"] and CT_RA_Level >= 1 ) then
SendChatMessage(CT_RABOSS_BURU_EYE_ALERT_YOU, "WHISPER", nil, sPlayer);
end
CT_RABoss_PlaySound(2);
end
end
end
-- Ayamiss the Hunter
function CT_RABoss_Ayamiss_OnLoad()
CT_RABoss_AddMod("狩猎者阿亚米斯", CT_RABOSS_AYAMISS_INFO, 1, CT_RABOSS_LOCATIONS_RUINSOFAHNQIRAJ );
CT_RABoss_AddEvent("狩猎者阿亚米斯", "CHAT_MSG_SPELL_PERIODIC_SELF_DAMAGE", CT_RABoss_Ayamiss_EventHandler);
CT_RABoss_AddEvent("狩猎者阿亚米斯", "CHAT_MSG_SPELL_PERIODIC_FRIENDLYPLAYER_DAMAGE", CT_RABoss_Ayamiss_EventHandler);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -