aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorUbitUmarov2017-01-07 12:18:44 +0000
committerUbitUmarov2017-01-07 12:18:44 +0000
commitf46d70ada5b0f81dbb134f9fe0d4c7d93a7e1b15 (patch)
tree9b2976a3ff6f328dede99c3c084f37a779aa723f
parentcoment out a flodding debug message (diff)
downloadopensim-SC_OLD-f46d70ada5b0f81dbb134f9fe0d4c7d93a7e1b15.zip
opensim-SC_OLD-f46d70ada5b0f81dbb134f9fe0d4c7d93a7e1b15.tar.gz
opensim-SC_OLD-f46d70ada5b0f81dbb134f9fe0d4c7d93a7e1b15.tar.bz2
opensim-SC_OLD-f46d70ada5b0f81dbb134f9fe0d4c7d93a7e1b15.tar.xz
try to work around some broken viewers math on handles
-rw-r--r--OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs13
1 files changed, 9 insertions, 4 deletions
diff --git a/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs b/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs
index 3a8d6b7..0122f47 100644
--- a/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs
+++ b/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs
@@ -1818,13 +1818,20 @@ namespace OpenSim.Region.CoreModules.World.Land
1818 uint wx; 1818 uint wx;
1819 uint wy; 1819 uint wy;
1820 Util.RegionHandleToWorldLoc(regionHandle, out wx, out wy); 1820 Util.RegionHandleToWorldLoc(regionHandle, out wx, out wy);
1821 wx += x;
1822 wy += y;
1823 GridRegion info = m_scene.GridService.GetRegionByPosition(scope, (int)wx, (int)wy); 1821 GridRegion info = m_scene.GridService.GetRegionByPosition(scope, (int)wx, (int)wy);
1824 if(info != null) 1822 if(info != null)
1825 { 1823 {
1826 wx -= (uint)info.RegionLocX; 1824 wx -= (uint)info.RegionLocX;
1827 wy -= (uint)info.RegionLocY; 1825 wy -= (uint)info.RegionLocY;
1826 wx += x;
1827 wy += y;
1828 // Firestorm devs have no ideia how to do handlers math
1829 // on all cases
1830 if(wx > info.RegionSizeX || wy > info.RegionSizeY)
1831 {
1832 wx = x;
1833 wy = y;
1834 }
1828 parcelID = Util.BuildFakeParcelID(info.RegionHandle, wx, wy); 1835 parcelID = Util.BuildFakeParcelID(info.RegionHandle, wx, wy);
1829 } 1836 }
1830 } 1837 }
@@ -1845,8 +1852,6 @@ namespace OpenSim.Region.CoreModules.World.Land
1845 parcelID = Util.BuildFakeParcelID(info.RegionHandle, x, y); 1852 parcelID = Util.BuildFakeParcelID(info.RegionHandle, x, y);
1846 } 1853 }
1847 } 1854 }
1848
1849
1850 } 1855 }
1851 } 1856 }
1852 catch (LLSD.LLSDParseException e) 1857 catch (LLSD.LLSDParseException e)