diff options
Diffstat (limited to 'OpenSim/Region/CoreModules/World/Land')
-rw-r--r-- | OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs | 13 |
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) |