diff options
| author | Treeston <treeston.mmoc@gmail.com> | 2017-06-08 00:25:06 +0200 |
|---|---|---|
| committer | Shauren <shauren.trinity@gmail.com> | 2017-06-08 00:25:06 +0200 |
| commit | f6c849729b27b77228704b595de3adaf24da2c10 (patch) | |
| tree | b9f7e1ae9c6db0aa367c353ebd2a3f5dddf860d1 /src/common/Collision/Models | |
| parent | 1660bb7d27d6f42b49012a6b57e3c2b2eab20fd3 (diff) | |
[3.3.5] Get zone/area IDs from vmap data in the liquid update (#19840)
* Add new method Map::getFullVMapDataForPosition to get area info and liquid info in a single vmap lookup
* Use this lookup in Map:: relocation methods to update m_areaId and m_zoneId fields on WorldObject
* Adjust GetZoneId/GetAreaId on WorldObject to always return these cached fields
* Clean up liquid state handling on Unit and Player
* Hand floor's Z coord up through GetFullTerrainStatusForPosition, use it to update a new field in WorldObject, and use that to feed a new GetFloorZ call on WorldObject.
Closes #16489
Diffstat (limited to 'src/common/Collision/Models')
| -rw-r--r-- | src/common/Collision/Models/WorldModel.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/common/Collision/Models/WorldModel.cpp b/src/common/Collision/Models/WorldModel.cpp index 19b40b6de18..d04bcf4d241 100644 --- a/src/common/Collision/Models/WorldModel.cpp +++ b/src/common/Collision/Models/WorldModel.cpp @@ -531,6 +531,7 @@ namespace VMAP groupTree.intersectPoint(p, callback); if (callback.hit != groupModels.end()) { + info.rootId = RootWMOID; info.hitModel = &(*callback.hit); dist = callback.zDist; return true; |
