Scripts/Oculus: Implement a couple of missing texts
(cherry picked from commit 63c1e265aace363a1d889b1621c0cc3a9263e956)
This commit is contained in:
@@ -0,0 +1,4 @@
|
||||
UPDATE `creature_text` SET `TextRange` = 3 WHERE `entry` = 27656 AND `groupid` = 0;
|
||||
DELETE FROM `creature_text` WHERE `entry` = 27447 AND `groupid` = 4;
|
||||
INSERT INTO `creature_text` (`entry`, `groupid`, `id`, `text`, `type`, `language`, `probability`, `emote`, `duration`, `sound`, `BroadcastTextID`, `TextRange`, `comment`) VALUES
|
||||
(27447, 4, 0, 'Intruders, your victory will be short-lived. I am Commander Varos Cloudstrider. My drakes control the skies and protect this conduit. I will see to it personally that the Oculus does not fall into your hands!', 14, 0, 100, 0, 0, 13648, 31812, 3, 'Varos Cloudstrider SAY_VAROS_INTRO_TEXT');
|
||||
@@ -192,6 +192,7 @@ class instance_oculus : public InstanceMapScript
|
||||
FreeDragons();
|
||||
if (Creature* varos = instance->GetCreature(VarosGUID))
|
||||
varos->SetPhaseMask(1, true);
|
||||
events.ScheduleEvent(EVENT_VAROS_INTRO, 15000);
|
||||
}
|
||||
break;
|
||||
case DATA_VAROS:
|
||||
@@ -209,6 +210,7 @@ class instance_oculus : public InstanceMapScript
|
||||
{
|
||||
eregos->SetPhaseMask(1, true);
|
||||
GreaterWhelps();
|
||||
events.ScheduleEvent(EVENT_EREGOS_INTRO, 5000);
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -267,6 +269,28 @@ class instance_oculus : public InstanceMapScript
|
||||
}
|
||||
}
|
||||
|
||||
void Update(uint32 diff) override
|
||||
{
|
||||
events.Update(diff);
|
||||
|
||||
while (uint32 eventId = events.ExecuteEvent())
|
||||
{
|
||||
switch (eventId)
|
||||
{
|
||||
case EVENT_VAROS_INTRO:
|
||||
if (Creature* varos = instance->GetCreature(VarosGUID))
|
||||
varos->AI()->Talk(SAY_VAROS_INTRO_TEXT);
|
||||
break;
|
||||
case EVENT_EREGOS_INTRO:
|
||||
if (Creature* eregos = instance->GetCreature(EregosGUID))
|
||||
eregos->AI()->Talk(SAY_EREGOS_INTRO_TEXT);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void GreaterWhelps()
|
||||
{
|
||||
for (ObjectGuid guid : GreaterWhelpList)
|
||||
@@ -289,6 +313,8 @@ class instance_oculus : public InstanceMapScript
|
||||
ObjectGuid EregosCacheGUID;
|
||||
|
||||
GuidList GreaterWhelpList;
|
||||
|
||||
EventMap events;
|
||||
};
|
||||
|
||||
InstanceScript* GetInstanceScript(InstanceMap* map) const override
|
||||
|
||||
@@ -79,6 +79,18 @@ enum OculusSpells
|
||||
SPELL_DEATH_SPELL = 50415
|
||||
};
|
||||
|
||||
enum InstanceTexts
|
||||
{
|
||||
SAY_EREGOS_INTRO_TEXT = 0,
|
||||
SAY_VAROS_INTRO_TEXT = 4
|
||||
};
|
||||
|
||||
enum InstanceEvents
|
||||
{
|
||||
EVENT_VAROS_INTRO = 1,
|
||||
EVENT_EREGOS_INTRO
|
||||
};
|
||||
|
||||
enum Misc
|
||||
{
|
||||
POINT_MOVE_OUT = 1
|
||||
|
||||
Reference in New Issue
Block a user