diff options
author | Teravus Ovares (Dan Olivares) | 2009-10-13 22:03:00 -0400 |
---|---|---|
committer | Teravus Ovares (Dan Olivares) | 2009-10-13 22:03:53 -0400 |
commit | 31a61bbeec5aae6b679ffa53e2966420e774f301 (patch) | |
tree | 19f53c8e089953c5559a311e8836c9ee3880e9a9 /OpenSim/Region/CoreModules | |
parent | Better handling of missing assets. (diff) | |
download | opensim-SC-31a61bbeec5aae6b679ffa53e2966420e774f301.zip opensim-SC-31a61bbeec5aae6b679ffa53e2966420e774f301.tar.gz opensim-SC-31a61bbeec5aae6b679ffa53e2966420e774f301.tar.bz2 opensim-SC-31a61bbeec5aae6b679ffa53e2966420e774f301.tar.xz |
* Fixes some prim crossings on megaregions with regions beyond the 512m mark
* There's a slight chance that this could cause a problem with regular prim crossings.. but hopefully not. Revert if it does.
Diffstat (limited to 'OpenSim/Region/CoreModules')
-rw-r--r-- | OpenSim/Region/CoreModules/World/Land/RegionCombinerModule.cs | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/OpenSim/Region/CoreModules/World/Land/RegionCombinerModule.cs b/OpenSim/Region/CoreModules/World/Land/RegionCombinerModule.cs index 05d19a2..6499915 100644 --- a/OpenSim/Region/CoreModules/World/Land/RegionCombinerModule.cs +++ b/OpenSim/Region/CoreModules/World/Land/RegionCombinerModule.cs | |||
@@ -343,7 +343,9 @@ namespace OpenSim.Region.CoreModules.World.Land | |||
343 | 343 | ||
344 | lock (scene.WestBorders) | 344 | lock (scene.WestBorders) |
345 | { | 345 | { |
346 | scene.WestBorders[0].BorderLine.Z += (int) Constants.RegionSize; //auto teleport West | 346 | |
347 | |||
348 | scene.WestBorders[0].BorderLine.Z = (int)((scene.RegionInfo.RegionLocX - conn.RegionScene.RegionInfo.RegionLocX) * (int)Constants.RegionSize); //auto teleport West | ||
347 | 349 | ||
348 | // Trigger auto teleport to root region | 350 | // Trigger auto teleport to root region |
349 | scene.WestBorders[0].TriggerRegionX = conn.RegionScene.RegionInfo.RegionLocX; | 351 | scene.WestBorders[0].TriggerRegionX = conn.RegionScene.RegionInfo.RegionLocX; |
@@ -410,7 +412,7 @@ namespace OpenSim.Region.CoreModules.World.Land | |||
410 | conn.RegionScene.WestBorders[0].BorderLine.Y += (int)Constants.RegionSize; | 412 | conn.RegionScene.WestBorders[0].BorderLine.Y += (int)Constants.RegionSize; |
411 | lock (scene.SouthBorders) | 413 | lock (scene.SouthBorders) |
412 | { | 414 | { |
413 | scene.SouthBorders[0].BorderLine.Z += (int) Constants.RegionSize; //auto teleport south | 415 | scene.SouthBorders[0].BorderLine.Z = (int)((scene.RegionInfo.RegionLocY - conn.RegionScene.RegionInfo.RegionLocY) * (int)Constants.RegionSize); //auto teleport south |
414 | scene.SouthBorders[0].TriggerRegionX = conn.RegionScene.RegionInfo.RegionLocX; | 416 | scene.SouthBorders[0].TriggerRegionX = conn.RegionScene.RegionInfo.RegionLocX; |
415 | scene.SouthBorders[0].TriggerRegionY = conn.RegionScene.RegionInfo.RegionLocY; | 417 | scene.SouthBorders[0].TriggerRegionY = conn.RegionScene.RegionInfo.RegionLocY; |
416 | } | 418 | } |
@@ -481,7 +483,7 @@ namespace OpenSim.Region.CoreModules.World.Land | |||
481 | 483 | ||
482 | lock (scene.SouthBorders) | 484 | lock (scene.SouthBorders) |
483 | { | 485 | { |
484 | scene.SouthBorders[0].BorderLine.Z += (int) Constants.RegionSize; //auto teleport south | 486 | scene.SouthBorders[0].BorderLine.Z = (int)((scene.RegionInfo.RegionLocY - conn.RegionScene.RegionInfo.RegionLocY) * (int)Constants.RegionSize); //auto teleport south |
485 | scene.SouthBorders[0].TriggerRegionX = conn.RegionScene.RegionInfo.RegionLocX; | 487 | scene.SouthBorders[0].TriggerRegionX = conn.RegionScene.RegionInfo.RegionLocX; |
486 | scene.SouthBorders[0].TriggerRegionY = conn.RegionScene.RegionInfo.RegionLocY; | 488 | scene.SouthBorders[0].TriggerRegionY = conn.RegionScene.RegionInfo.RegionLocY; |
487 | } | 489 | } |
@@ -503,7 +505,7 @@ namespace OpenSim.Region.CoreModules.World.Land | |||
503 | 505 | ||
504 | lock (scene.WestBorders) | 506 | lock (scene.WestBorders) |
505 | { | 507 | { |
506 | scene.WestBorders[0].BorderLine.Z += (int) Constants.RegionSize; //auto teleport West | 508 | scene.WestBorders[0].BorderLine.Z = (int)((scene.RegionInfo.RegionLocX - conn.RegionScene.RegionInfo.RegionLocX) * (int)Constants.RegionSize); //auto teleport West |
507 | scene.WestBorders[0].TriggerRegionX = conn.RegionScene.RegionInfo.RegionLocX; | 509 | scene.WestBorders[0].TriggerRegionX = conn.RegionScene.RegionInfo.RegionLocX; |
508 | scene.WestBorders[0].TriggerRegionY = conn.RegionScene.RegionInfo.RegionLocY; | 510 | scene.WestBorders[0].TriggerRegionY = conn.RegionScene.RegionInfo.RegionLocY; |
509 | } | 511 | } |