diff options
6 files changed, 41 insertions, 4 deletions
diff --git a/data/sql/updates/db_world/2025_11_20_00.sql b/data/sql/updates/db_world/2025_11_20_00.sql new file mode 100644 index 0000000000..9e5bfd9873 --- /dev/null +++ b/data/sql/updates/db_world/2025_11_20_00.sql @@ -0,0 +1,14 @@ +-- DB update 2025_11_18_02 -> 2025_11_20_00 +-- +DELETE FROM `creature_summon_groups` WHERE `summonerId` = 29310 AND `summonerType` = 0 AND `groupId` = 2; +INSERT INTO `creature_summon_groups`(`summonerId`, `summonerType`, `groupId`, `entry`, `position_x`, `position_y`, `position_z`, `orientation`, `summonType`, `summonTime`, `Comment`) VALUES +(29310, 0, 2, 30111, 434.00433349609375, -702.8974609375, -17.9579715728759765, 3.124139308929443359, 8, 0, 'Jedoga Shadowseeker - Twilight Worshipper'), +(29310, 0, 2, 30111, 429.734161376953125, -712.18231201171875, -17.9568767547607421, 2.862339973449707031, 8, 0, 'Jedoga Shadowseeker - Twilight Worshipper'), +(29310, 0, 2, 30111, 388.307830810546875, -766.78399658203125, -17.9607582092285156, 2.094395160675048828, 8, 0, 'Jedoga Shadowseeker - Twilight Worshipper'), +(29310, 0, 2, 30111, 392.577484130859375, -765.63641357421875, -17.9589138031005859, 2.251474618911743164, 8, 0, 'Jedoga Shadowseeker - Twilight Worshipper'), +(29310, 0, 2, 30111, 381.83843994140625, -773.3897705078125, -17.9530143737792968, 1.762782573699951171, 8, 0, 'Jedoga Shadowseeker - Twilight Worshipper'), +(29310, 0, 2, 30111, 439.982635498046875, -699.070068359375, -17.9527797698974609, 3.193952560424804687, 8, 0, 'Jedoga Shadowseeker - Twilight Worshipper'), +(29310, 0, 2, 30111, 394.354156494140625, -760.810791015625, -17.9546241760253906, 2.443460941314697265, 8, 0, 'Jedoga Shadowseeker - Twilight Worshipper'), +(29310, 0, 2, 30111, 434.4365234375, -709.4752197265625, -17.961435317993164, 2.94960641860961914, 8, 0, 'Jedoga Shadowseeker - Twilight Worshipper'), +(29310, 0, 2, 30111, 387.0694580078125, -770.94964599609375, -17.957611083984375, 1.972222089767456054, 8, 0, 'Jedoga Shadowseeker - Twilight Worshipper'), +(29310, 0, 2, 30111, 427.302093505859375, -717.3992919921875, -17.9517745971679687, 2.705260276794433593, 8, 0, 'Jedoga Shadowseeker - Twilight Worshipper'); diff --git a/src/server/game/Handlers/VehicleHandler.cpp b/src/server/game/Handlers/VehicleHandler.cpp index 28b5a83a3c..4df63ad67f 100644 --- a/src/server/game/Handlers/VehicleHandler.cpp +++ b/src/server/game/Handlers/VehicleHandler.cpp @@ -50,7 +50,10 @@ void WorldSession::HandleDismissControlledVehicle(WorldPacket& recvData) mi.guid = guid; ReadMovementInfo(recvData, &mi); - _player->m_mover->m_movementInfo = mi; + if (_player->m_mover->IsRooted()) // for some reason client sends it without it even if rooted + mi.AddMovementFlag(MOVEMENTFLAG_ROOT); + + ProcessMovementInfo(mi, _player->m_mover, _player->m_mover->ToPlayer(), recvData); _player->ExitVehicle(); } diff --git a/src/server/scripts/Northrend/AzjolNerub/ahnkahet/ahnkahet.h b/src/server/scripts/Northrend/AzjolNerub/ahnkahet/ahnkahet.h index 8b1dd67366..c2ddd3b7e2 100644 --- a/src/server/scripts/Northrend/AzjolNerub/ahnkahet/ahnkahet.h +++ b/src/server/scripts/Northrend/AzjolNerub/ahnkahet/ahnkahet.h @@ -44,6 +44,7 @@ enum AhnKahetCreatures NPC_AMANITAR = 30258, // Teldaram and Jedoga encounter related NPC_JEDOGA_CONTROLLER = 30181, + NPC_TWILIGHT_WORSHIPPER = 30111 }; enum AhnkahetSpells diff --git a/src/server/scripts/Northrend/AzjolNerub/ahnkahet/boss_jedoga_shadowseeker.cpp b/src/server/scripts/Northrend/AzjolNerub/ahnkahet/boss_jedoga_shadowseeker.cpp index adc26fcc97..6392a738ed 100644 --- a/src/server/scripts/Northrend/AzjolNerub/ahnkahet/boss_jedoga_shadowseeker.cpp +++ b/src/server/scripts/Northrend/AzjolNerub/ahnkahet/boss_jedoga_shadowseeker.cpp @@ -90,6 +90,7 @@ enum SummonGroups { SUMMON_GROUP_OOC = 0, SUMMON_GROUP_OOC_TRIGGERS = 1, + SUMMON_GROUP_IC_WORSHIPPERS = 2 }; enum Points @@ -217,7 +218,7 @@ struct boss_jedoga_shadowseeker : public BossAI void JustSummoned(Creature* summon) override { - if (summon->GetEntry() == NPC_JEDOGA_CONTROLLER) + if (summon->EntryEquals(NPC_JEDOGA_CONTROLLER, NPC_TWILIGHT_WORSHIPPER)) { summons.Summon(summon); } @@ -326,6 +327,17 @@ struct boss_jedoga_shadowseeker : public BossAI _JustEngagedWith(); Talk(SAY_AGGRO); ReschedulleCombatEvents(); + + std::list<TempSummon*> tempSummons; + me->SummonCreatureGroup(SUMMON_GROUP_IC_WORSHIPPERS, &tempSummons); + if (!tempSummons.empty()) + { + for (TempSummon* summon : tempSummons) + { + if (summon) + summon->SetStandState(UNIT_STAND_STATE_KNEEL); + } + } } void KilledUnit(Unit* who) override diff --git a/src/server/scripts/Northrend/DraktharonKeep/boss_trollgore.cpp b/src/server/scripts/Northrend/DraktharonKeep/boss_trollgore.cpp index c75c8966b8..8380f1caae 100644 --- a/src/server/scripts/Northrend/DraktharonKeep/boss_trollgore.cpp +++ b/src/server/scripts/Northrend/DraktharonKeep/boss_trollgore.cpp @@ -130,6 +130,12 @@ public: if (!UpdateVictim()) return; + if (!CheckInRoom()) + { + EnterEvadeMode(EVADE_REASON_BOUNDARY); + return; + } + events.Update(diff); if (me->HasUnitState(UNIT_STATE_CASTING)) return; @@ -159,9 +165,9 @@ public: DoMeleeAttackIfReady(); } - bool CheckEvadeIfOutOfCombatArea() const override + bool CheckInRoom() override { - return me->GetHomePosition().GetExactDist2d(me) > 60.0f; + return (me->GetPositionY() >= -700.0f && me->GetPositionY() <= -628.0f); } private: diff --git a/src/server/scripts/Northrend/Ulduar/HallsOfStone/brann_bronzebeard.cpp b/src/server/scripts/Northrend/Ulduar/HallsOfStone/brann_bronzebeard.cpp index a783794652..f9612cf600 100644 --- a/src/server/scripts/Northrend/Ulduar/HallsOfStone/brann_bronzebeard.cpp +++ b/src/server/scripts/Northrend/Ulduar/HallsOfStone/brann_bronzebeard.cpp @@ -413,6 +413,7 @@ public: DoCast(me, 58506, false); me->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_STATE_READY_UNARMED); me->SendMovementFlagUpdate(); + me->SetImmuneToAll(true); break; case ACTION_START_SJONNIR_FIGHT: SetEscortPaused(false); |
