diff options
author | Sergeanur <s.anureev@yandex.ua> | 2020-06-04 04:31:04 +0300 |
---|---|---|
committer | Sergeanur <s.anureev@yandex.ua> | 2020-06-04 04:31:04 +0300 |
commit | 12717917cc67c7fa854991b606b7ea71499ec602 (patch) | |
tree | ebfe654165164acaabdab8871dc3ced6bbef144d /src/core/Range3D.cpp | |
parent | 04de93796bf6b19e10d46cbca3db3d296dd1612f (diff) |
Restore original logic of CPed::WanderRange
Diffstat (limited to 'src/core/Range3D.cpp')
-rw-r--r-- | src/core/Range3D.cpp | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/core/Range3D.cpp b/src/core/Range3D.cpp index 14d2dbd2..7fa28d67 100644 --- a/src/core/Range3D.cpp +++ b/src/core/Range3D.cpp @@ -18,6 +18,13 @@ CRange3D::DebugShowRange(float, int) CVector CRange3D::GetRandomPointInRange() { - return CVector(CGeneral::GetRandomNumberInRange(min.x, max.x), CGeneral::GetRandomNumberInRange(min.y, max.y), - CGeneral::GetRandomNumberInRange(min.z, max.z)); + int distX = Abs(max.x - min.x); + int distY = Abs(max.y - min.y); + int distZ = Abs(max.z - min.z); + + float outX = CGeneral::GetRandomNumber() % distX + min.x; + float outY = CGeneral::GetRandomNumber() % distY + min.y; + float outZ = CGeneral::GetRandomNumber() % distZ + min.z; + + return CVector(outX, outY, outZ); } |