Scripts/Stratholme: Move Freed Soul AI to database and a small addition

- They should follow players until they despawn
This commit is contained in:
Nyeriah
2014-09-07 01:08:42 -03:00
parent 37c5adc36f
commit 2dc45fafe6
2 changed files with 8 additions and 33 deletions

View File

@@ -0,0 +1,5 @@
SET @ENTRY := 11136; -- Freed Soul
UPDATE `creature_template` SET `AIName` = 'SmartAI', `ScriptName` = '' WHERE `entry` = @ENTRY;
DELETE FROM `smart_scripts` WHERE `entryorguid` = @ENTRY AND `source_type` = 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`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(@ENTRY, 0, 0, 0, 11, 0, 100, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Freed Soul - On Respawn - Say Line 0');

View File

@@ -80,38 +80,6 @@ public:
};
/*######
## npc_freed_soul
######*/
enum FreedSoul
{
SAY_ZAPPED = 0
};
class npc_freed_soul : public CreatureScript
{
public:
npc_freed_soul() : CreatureScript("npc_freed_soul") { }
CreatureAI* GetAI(Creature* creature) const override
{
return new npc_freed_soulAI(creature);
}
struct npc_freed_soulAI : public ScriptedAI
{
npc_freed_soulAI(Creature* creature) : ScriptedAI(creature) { }
void Reset() override
{
Talk(SAY_ZAPPED);
}
void EnterCombat(Unit* /*who*/) override { }
};
};
/*######
## npc_restless_soul
######*/
@@ -181,6 +149,9 @@ public:
void JustSummoned(Creature* summoned) override
{
summoned->CastSpell(summoned, SPELL_SOUL_FREED, false);
if (Player* player = ObjectAccessor::GetPlayer(*me, Tagger))
summoned->GetMotionMaster()->MoveFollow(player, 0.0f, 0.0f);
}
void JustDied(Unit* /*killer*/) override
@@ -318,7 +289,6 @@ public:
void AddSC_stratholme()
{
new go_gauntlet_gate();
new npc_freed_soul();
new npc_restless_soul();
new npc_spectral_ghostly_citizen();
}