From 0468c70dfe91794ad272594323dd7feb611d0a93 Mon Sep 17 00:00:00 2001 From: Shauren Date: Wed, 28 Mar 2018 22:01:22 +0200 Subject: Core/Maps: Implemented getting area id from gameobject spawns Yes, you can now spawn LK platform anywhere and it will treat you as inside Icecrown Citadel (cherry picked from commit 42f9deb21ec68e169f7ed1c8cf14092f144b22da) --- src/server/scripts/Commands/cs_list.cpp | 2 +- src/server/scripts/Commands/cs_misc.cpp | 2 +- src/server/scripts/Commands/cs_tele.cpp | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) (limited to 'src/server/scripts/Commands') diff --git a/src/server/scripts/Commands/cs_list.cpp b/src/server/scripts/Commands/cs_list.cpp index e3925b284f6..855389ae868 100644 --- a/src/server/scripts/Commands/cs_list.cpp +++ b/src/server/scripts/Commands/cs_list.cpp @@ -716,7 +716,7 @@ public: uint32 respawnZoneId = 0; if (SpawnData const* edata = data->ToSpawnData()) { - respawnZoneId = map->GetZoneId(edata->spawnPoint); + respawnZoneId = map->GetZoneId(edata->phaseMask, edata->spawnPoint); if (range) { if (!player->IsInDist(edata->spawnPoint, range)) diff --git a/src/server/scripts/Commands/cs_misc.cpp b/src/server/scripts/Commands/cs_misc.cpp index f7fb8525475..2afbd4f367a 100644 --- a/src/server/scripts/Commands/cs_misc.cpp +++ b/src/server/scripts/Commands/cs_misc.cpp @@ -292,7 +292,7 @@ public: zoneX, zoneY, groundZ, floorZ, haveMap, haveVMap, haveMMap); LiquidData liquidStatus; - ZLiquidStatus status = map->GetLiquidStatus(object->GetPositionX(), object->GetPositionY(), object->GetPositionZ(), MAP_ALL_LIQUIDS, &liquidStatus, object->GetCollisionHeight()); + ZLiquidStatus status = map->GetLiquidStatus(object->GetPhaseMask(), object->GetPositionX(), object->GetPositionY(), object->GetPositionZ(), MAP_ALL_LIQUIDS, &liquidStatus, object->GetCollisionHeight()); if (status) handler->PSendSysMessage(LANG_LIQUID_STATUS, liquidStatus.level, liquidStatus.depth_level, liquidStatus.entry, liquidStatus.type_flags, status); diff --git a/src/server/scripts/Commands/cs_tele.cpp b/src/server/scripts/Commands/cs_tele.cpp index 0b4479513a5..2800c186f28 100644 --- a/src/server/scripts/Commands/cs_tele.cpp +++ b/src/server/scripts/Commands/cs_tele.cpp @@ -194,7 +194,7 @@ public: CharacterDatabaseTransaction dummy; Player::SavePositionInDB(WorldLocation(tele->mapId, tele->position_x, tele->position_y, tele->position_z, tele->orientation), - sMapMgr->GetZoneId(tele->mapId, tele->position_x, tele->position_y, tele->position_z), target_guid, dummy); + sMapMgr->GetZoneId(PHASEMASK_NORMAL, tele->mapId, tele->position_x, tele->position_y, tele->position_z), target_guid, dummy); } return true; -- cgit v1.2.3