diff --git a/data/sql/updates/pending_db_world/rev_1737738749227497700.sql b/data/sql/updates/pending_db_world/rev_1737738749227497700.sql new file mode 100644 index 00000000000000..fc43d8344345b1 --- /dev/null +++ b/data/sql/updates/pending_db_world/rev_1737738749227497700.sql @@ -0,0 +1,16 @@ +UPDATE `creature_template` SET `ScriptName`='' AND `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'); diff --git a/src/server/scripts/Northrend/zone_zuldrak.cpp b/src/server/scripts/Northrend/zone_zuldrak.cpp index 9114f4b6bb8b41..3493ce2fa6d962 100644 --- a/src/server/scripts/Northrend/zone_zuldrak.cpp +++ b/src/server/scripts/Northrend/zone_zuldrak.cpp @@ -233,88 +233,6 @@ class go_finklestein_cauldron : public GameObjectScript } }; -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();