diff options
| author | Lynx3d & Ambal <none@none> | 2011-04-02 20:36:27 +0200 |
|---|---|---|
| committer | Shauren <shauren.trinity@gmail.com> | 2011-04-02 20:36:27 +0200 |
| commit | 347098af14076b894fd7f18847d494c0b0e65dc6 (patch) | |
| tree | 6f3f48fa5ab1cce83a50eda24e4c297b477227e8 /src/server/collision/Models | |
| parent | a54713ec4bbfbfc619ef2ed5675722c2b61a7f47 (diff) | |
Core/Vmaps: Made code more safe and fixed problems in WmoLiquid::GetLiquidHeight()
Diffstat (limited to 'src/server/collision/Models')
| -rw-r--r-- | src/server/collision/Models/WorldModel.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/server/collision/Models/WorldModel.cpp b/src/server/collision/Models/WorldModel.cpp index f639b5fc3f4..325594fd6be 100644 --- a/src/server/collision/Models/WorldModel.cpp +++ b/src/server/collision/Models/WorldModel.cpp @@ -149,10 +149,12 @@ namespace VMAP { float tx_f = (pos.x - iCorner.x)/LIQUID_TILE_SIZE; uint32 tx = uint32(tx_f); - if (tx >= iTilesX) return false; + if (tx_f < 0.0f || tx >= iTilesX) + return false; float ty_f = (pos.y - iCorner.y)/LIQUID_TILE_SIZE; uint32 ty = uint32(ty_f); - if (ty >= iTilesY) return false; + if (ty_f < 0.0f || ty >= iTilesY) + return false; // check if tile shall be used for liquid level // checking for 0x08 *might* be enough, but disabled tiles always are 0x?F: |
