mirror of
https://github.com/mod-playerbots/azerothcore-wotlk.git
synced 2026-02-17 17:24:33 +00:00
refactor(Scripts/Ashenvale): Move Naga Brazier script to SAI (#17733)
This commit is contained in:
@@ -0,0 +1,6 @@
|
||||
--
|
||||
UPDATE `gameobject_template` SET `AIName` = 'SmartGameObjectAI', `ScriptName` = '' WHERE `entry` = 178247;
|
||||
|
||||
DELETE FROM `smart_scripts` WHERE (`entryorguid` = 178247) AND (`source_type` = 1) AND (`id` IN (0));
|
||||
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
|
||||
(178247, 1, 0, 0, 64, 0, 100, 0, 0, 0, 0, 0, 0, 0, 223, 0, 0, 0, 0, 0, 0, 19, 12717, 10, 0, 0, 0, 0, 0, 0, 'Naga Brazier - On Gossip Hello - Do Action ID 0');
|
||||
@@ -53,7 +53,9 @@ enum Muglash
|
||||
NPC_WRATH_SEAWITCH = 3715,
|
||||
|
||||
NPC_VORSHA = 12940,
|
||||
NPC_MUGLASH = 12717
|
||||
NPC_MUGLASH = 12717,
|
||||
|
||||
ACTION_EXTINGUISH_BLAZIER = 0
|
||||
};
|
||||
|
||||
Position const FirstNagaCoord[3] =
|
||||
@@ -88,6 +90,15 @@ public:
|
||||
_isBrazierExtinguished = false;
|
||||
}
|
||||
|
||||
void DoAction(int32 actionId) override
|
||||
{
|
||||
if (actionId == ACTION_EXTINGUISH_BLAZIER)
|
||||
{
|
||||
Talk(SAY_MUG_BRAZIER_WAIT);
|
||||
_isBrazierExtinguished = true;
|
||||
}
|
||||
}
|
||||
|
||||
void JustEngagedWith(Unit* /*who*/) override
|
||||
{
|
||||
if (Player* player = GetPlayerForEscort())
|
||||
@@ -202,7 +213,6 @@ public:
|
||||
private:
|
||||
uint32 eventTimer;
|
||||
uint8 waveId;
|
||||
public:
|
||||
bool _isBrazierExtinguished;
|
||||
};
|
||||
|
||||
@@ -212,30 +222,7 @@ public:
|
||||
}
|
||||
};
|
||||
|
||||
class go_naga_brazier : public GameObjectScript
|
||||
{
|
||||
public:
|
||||
go_naga_brazier() : GameObjectScript("go_naga_brazier") { }
|
||||
|
||||
bool OnGossipHello(Player* /*player*/, GameObject* go) override
|
||||
{
|
||||
if (Creature* creature = GetClosestCreatureWithEntry(go, NPC_MUGLASH, INTERACTION_DISTANCE * 2))
|
||||
{
|
||||
if (npc_muglash::npc_muglashAI* pEscortAI = CAST_AI(npc_muglash::npc_muglashAI, creature->AI()))
|
||||
{
|
||||
creature->AI()->Talk(SAY_MUG_BRAZIER_WAIT);
|
||||
|
||||
pEscortAI->_isBrazierExtinguished = true;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
void AddSC_ashenvale()
|
||||
{
|
||||
new npc_muglash();
|
||||
new go_naga_brazier();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user