aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Framework
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Framework')
-rw-r--r--OpenSim/Framework/Util.cs13
1 files changed, 10 insertions, 3 deletions
diff --git a/OpenSim/Framework/Util.cs b/OpenSim/Framework/Util.cs
index 821f1a0..3f676f9 100644
--- a/OpenSim/Framework/Util.cs
+++ b/OpenSim/Framework/Util.cs
@@ -471,10 +471,17 @@ namespace OpenSim.Framework
471 /// <param name="oldy">Old region y-coord</param> 471 /// <param name="oldy">Old region y-coord</param>
472 /// <param name="newy">New region y-coord</param> 472 /// <param name="newy">New region y-coord</param>
473 /// <returns></returns> 473 /// <returns></returns>
474 public static bool IsOutsideView(uint oldx, uint newx, uint oldy, uint newy) 474 public static bool IsOutsideView(float drawdist, uint oldx, uint newx, uint oldy, uint newy)
475 { 475 {
476 // Eventually this will be a function of the draw distance / camera position too. 476 int dd = (int)((drawdist + Constants.RegionSize - 1) / Constants.RegionSize);
477 return (((int)Math.Abs((int)(oldx - newx)) > 1) || ((int)Math.Abs((int)(oldy - newy)) > 1)); 477
478 int startX = (int)oldx - dd;
479 int startY = (int)oldy - dd;
480
481 int endX = (int)oldx + dd;
482 int endY = (int)oldy + dd;
483
484 return (newx < startX || endX < newx || newy < startY || endY < newy);
478 } 485 }
479 486
480 public static string FieldToString(byte[] bytes) 487 public static string FieldToString(byte[] bytes)