fix(DB/SAI) Quest Feedin' Da Goolz (12652) (#21264)

Co-authored-by: Hexadecimal <hd@hd.hd>
Co-authored-by: Jelle Meeus <sogladev@gmail.com>
This commit is contained in:
p-tkachuk 2025-02-16 00:26:27 +01:00 committed by GitHub
parent e3432102f7
commit 409ad14e14
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 16 additions and 83 deletions

View File

@ -0,0 +1,16 @@
UPDATE `creature_template` SET `ScriptName`='', `AIName` = 'SmartAI' WHERE (`entry` = 28591);
DELETE FROM `smart_scripts` WHERE (`entryorguid` = 28591) 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`, `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
(28591, 0, 0, 1, 11, 0, 100, 512, 0, 0, 0, 0, 0, 0, 64, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Ghoul Feeding KC Bunny - On Respawn - Store Targetlist'),
(28591, 0, 1, 2, 61, 0, 100, 512, 0, 0, 0, 0, 0, 0, 100, 1, 0, 0, 0, 0, 0, 19, 28565, 30, 0, 0, 0, 0, 0, 0, 'Ghoul Feeding KC Bunny - On Respawn - Send Target 1'),
(28591, 0, 2, 0, 61, 0, 100, 512, 0, 0, 0, 0, 0, 0, 45, 28591, 0, 0, 0, 0, 0, 19, 28565, 30, 0, 0, 0, 0, 0, 0, 'Ghoul Feeding KC Bunny - On Respawn - Set Data 28591 0'),
(28591, 0, 3, 4, 38, 0, 100, 1, 28565, 0, 0, 0, 0, 0, 11, 52030, 0, 0, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 0, 'Ghoul Feeding KC Bunny - On Data Set 28565 0 - Cast \'Kill Credit\' (No Repeat)'),
(28591, 0, 4, 5, 61, 0, 100, 513, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Ghoul Feeding KC Bunny - On Data Set 28565 0 - Despawn Instant (No Repeat)'),
(28591, 0, 5, 0, 61, 0, 100, 513, 0, 0, 0, 0, 0, 0, 41, 3000, 0, 0, 0, 0, 0, 20, 190656, 5, 0, 0, 0, 0, 0, 0, 'Ghoul Feeding KC Bunny - On Data Set 28565 0 - Despawn In 3000 ms (No Repeat)');
DELETE FROM `smart_scripts` WHERE (`entryorguid` = 28565) 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`, `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
(28565, 0, 0, 0, 38, 0, 100, 0, 28591, 0, 40000, 40000, 0, 0, 69, 1, 0, 0, 0, 0, 0, 12, 1, 0, 0, 0, 0, 0, 0, 0, 'Decaying Ghoul - On Data Set 28591 0 - Move To Stored'),
(28565, 0, 1, 2, 34, 0, 100, 512, 8, 1, 0, 0, 0, 0, 45, 28565, 0, 0, 0, 0, 0, 12, 1, 0, 0, 0, 0, 0, 0, 0, 'Decaying Ghoul - On Reached Point 1 - Set Data 28565 0'),
(28565, 0, 2, 0, 61, 0, 100, 512, 0, 0, 0, 0, 0, 0, 5, 7, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Decaying Ghoul - On Reached Point 1 - Play Emote 7');

View File

@ -233,88 +233,6 @@ public:
}
};
enum eFeedinDaGoolz
{
NPC_DECAYING_GHOUL = 28565,
GO_BOWL = 190656,
};
class npc_feedin_da_goolz : public CreatureScript
{
public:
npc_feedin_da_goolz() : CreatureScript("npc_feedin_da_goolz") { }
CreatureAI* GetAI(Creature* creature) const override
{
return new npc_feedin_da_goolzAI(creature);
}
struct npc_feedin_da_goolzAI : public NullCreatureAI
{
npc_feedin_da_goolzAI(Creature* creature) : NullCreatureAI(creature) { findTimer = 1; checkTimer = 0; }
uint32 findTimer;
uint32 checkTimer;
ObjectGuid ghoulFed;
void UpdateAI(uint32 diff) override
{
if (findTimer)
{
findTimer += diff;
if (findTimer >= 1000)
{
if (Creature* ghoul = me->FindNearestCreature(NPC_DECAYING_GHOUL, 30.0f, true))
{
ghoul->SetReactState(REACT_DEFENSIVE);
float o = me->GetAngle(ghoul);
ghoul->GetMotionMaster()->MovePoint(1, me->GetPositionX() + 2 * cos(o), me->GetPositionY() + 2 * std::sin(o), me->GetPositionZ());
checkTimer = 1;
findTimer = 0;
}
else
findTimer = 1;
}
return;
}
if (checkTimer)
{
checkTimer += diff;
if (checkTimer >= 1500)
{
checkTimer = 1;
if (!ghoulFed)
{
if (Creature* ghoul = me->FindNearestCreature(NPC_DECAYING_GHOUL, 3.0f, true))
{
ghoulFed = ghoul->GetGUID();
ghoul->HandleEmoteCommand(EMOTE_ONESHOT_EAT);
}
}
else
{
if (GameObject* bowl = me->FindNearestGameObject(GO_BOWL, 10.0f))
bowl->Delete();
if (Creature* ghoul = ObjectAccessor::GetCreature(*me, ghoulFed))
{
ghoul->SetReactState(REACT_AGGRESSIVE);
ghoul->GetMotionMaster()->MoveTargetedHome();
}
if (Unit* owner = me->ToTempSummon()->GetSummonerUnit())
if (Player* player = owner->ToPlayer())
player->KilledMonsterCredit(me->GetEntry());
me->DespawnOrUnsummon(1);
}
}
}
}
};
};
enum overlordDrakuru
{
SPELL_SHADOW_BOLT = 54113,
@ -953,7 +871,6 @@ void AddSC_zuldrak()
// Ours
new npc_finklestein();
new go_finklestein_cauldron();
new npc_feedin_da_goolz();
new npc_overlord_drakuru_betrayal();
new npc_drakuru_shackles();
new npc_captured_rageclaw();