From fbe0b8efebca3bc2662b477bdf45627f9783d6c2 Mon Sep 17 00:00:00 2001 From: Shauren Date: Sun, 24 Jul 2022 18:56:40 +0200 Subject: Core/Maps: Removed MapInstanced - no longer neccessary for grid data reference counting (moved to TerrainInfo) --- .../MovementGenerators/FlightPathMovementGenerator.cpp | 12 ++++++++---- .../MovementGenerators/FlightPathMovementGenerator.h | 2 +- src/server/game/Movement/Waypoints/WaypointManager.cpp | 1 - 3 files changed, 9 insertions(+), 6 deletions(-) (limited to 'src/server/game/Movement') diff --git a/src/server/game/Movement/MovementGenerators/FlightPathMovementGenerator.cpp b/src/server/game/Movement/MovementGenerators/FlightPathMovementGenerator.cpp index a58b6b7f824..b34809b2f51 100644 --- a/src/server/game/Movement/MovementGenerators/FlightPathMovementGenerator.cpp +++ b/src/server/game/Movement/MovementGenerators/FlightPathMovementGenerator.cpp @@ -19,7 +19,7 @@ #include "DB2Stores.h" #include "GameEventSender.h" #include "Log.h" -#include "MapManager.h" +#include "Map.h" #include "MovementDefines.h" #include "MoveSpline.h" #include "MoveSplineInit.h" @@ -132,7 +132,7 @@ bool FlightPathMovementGenerator::DoUpdate(Player* owner, uint32 /*diff*/) break; if (_currentNode == _preloadTargetNode) - PreloadEndGrid(); + PreloadEndGrid(owner); _currentNode += departureEvent ? 1 : 0; departureEvent = !departureEvent; @@ -284,14 +284,18 @@ void FlightPathMovementGenerator::InitEndGridInfo() _preloadTargetNode = 0; else _preloadTargetNode = nodeCount - 3; + + while (_path[_preloadTargetNode]->ContinentID != _endMapId) + ++_preloadTargetNode; + _endGridX = _path[nodeCount - 1]->Loc.X; _endGridY = _path[nodeCount - 1]->Loc.Y; } -void FlightPathMovementGenerator::PreloadEndGrid() +void FlightPathMovementGenerator::PreloadEndGrid(Player* owner) { // Used to preload the final grid where the flightmaster is - Map* endMap = sMapMgr->FindBaseNonInstanceMap(_endMapId); + Map* endMap = owner->GetMap(); // Load the grid if (endMap) diff --git a/src/server/game/Movement/MovementGenerators/FlightPathMovementGenerator.h b/src/server/game/Movement/MovementGenerators/FlightPathMovementGenerator.h index 7252b1effe1..10bbab589e2 100644 --- a/src/server/game/Movement/MovementGenerators/FlightPathMovementGenerator.h +++ b/src/server/game/Movement/MovementGenerators/FlightPathMovementGenerator.h @@ -54,7 +54,7 @@ class FlightPathMovementGenerator : public MovementGeneratorMedium