refactor(Scripts/Ashenvale): Move Naga Brazier script to SAI (#17733)

This commit is contained in:
Andrew
2023-11-16 13:58:42 -03:00
committed by GitHub
parent 055e2dc5ab
commit deff0ac587
2 changed files with 18 additions and 25 deletions

View File

@@ -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');

View File

@@ -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();
}