diff options
author | UbitUmarov | 2015-08-23 04:55:18 +0100 |
---|---|---|
committer | UbitUmarov | 2015-08-23 04:55:18 +0100 |
commit | e8a75151fa7d17f7862a45112508d9d93654869b (patch) | |
tree | 6248e4122c058ef31d01cbae5b316c38c36b3e8e /OpenSim | |
parent | fix region range compare (diff) | |
download | opensim-SC_OLD-e8a75151fa7d17f7862a45112508d9d93654869b.zip opensim-SC_OLD-e8a75151fa7d17f7862a45112508d9d93654869b.tar.gz opensim-SC_OLD-e8a75151fa7d17f7862a45112508d9d93654869b.tar.bz2 opensim-SC_OLD-e8a75151fa7d17f7862a45112508d9d93654869b.tar.xz |
more on world map
Diffstat (limited to 'OpenSim')
-rw-r--r-- | OpenSim/Region/CoreModules/World/WorldMap/WorldMapModule.cs | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/OpenSim/Region/CoreModules/World/WorldMap/WorldMapModule.cs b/OpenSim/Region/CoreModules/World/WorldMap/WorldMapModule.cs index 1ebde68..1bbd9fe 100644 --- a/OpenSim/Region/CoreModules/World/WorldMap/WorldMapModule.cs +++ b/OpenSim/Region/CoreModules/World/WorldMap/WorldMapModule.cs | |||
@@ -999,7 +999,8 @@ namespace OpenSim.Region.CoreModules.World.WorldMap | |||
999 | /// <param name="maxY"></param> | 999 | /// <param name="maxY"></param> |
1000 | public void RequestMapBlocks(IClientAPI remoteClient, int minX, int minY, int maxX, int maxY, uint flag) | 1000 | public void RequestMapBlocks(IClientAPI remoteClient, int minX, int minY, int maxX, int maxY, uint flag) |
1001 | { | 1001 | { |
1002 | //m_log.ErrorFormat("[YYY] RequestMapBlocks {0}={1}={2}={3} {4}", minX, minY, maxX, maxY, flag); | 1002 | m_log.DebugFormat("[WoldMapModule] RequestMapBlocks {0}={1}={2}={3} {4}", minX, minY, maxX, maxY, flag); |
1003 | /* this flag does not seem to mean what his says | ||
1003 | if ((flag & 0x10000) != 0) // user clicked on qthe map a tile that isn't visible | 1004 | if ((flag & 0x10000) != 0) // user clicked on qthe map a tile that isn't visible |
1004 | { | 1005 | { |
1005 | List<MapBlockData> response = new List<MapBlockData>(); | 1006 | List<MapBlockData> response = new List<MapBlockData>(); |
@@ -1049,8 +1050,9 @@ namespace OpenSim.Region.CoreModules.World.WorldMap | |||
1049 | else | 1050 | else |
1050 | { | 1051 | { |
1051 | // normal mapblock request. Use the provided values | 1052 | // normal mapblock request. Use the provided values |
1053 | */ | ||
1052 | GetAndSendBlocks(remoteClient, minX, minY, maxX, maxY, flag); | 1054 | GetAndSendBlocks(remoteClient, minX, minY, maxX, maxY, flag); |
1053 | } | 1055 | // } |
1054 | } | 1056 | } |
1055 | 1057 | ||
1056 | protected virtual List<MapBlockData> GetAndSendBlocks(IClientAPI remoteClient, int minX, int minY, int maxX, int maxY, uint flag) | 1058 | protected virtual List<MapBlockData> GetAndSendBlocks(IClientAPI remoteClient, int minX, int minY, int maxX, int maxY, uint flag) |
@@ -1123,6 +1125,21 @@ namespace OpenSim.Region.CoreModules.World.WorldMap | |||
1123 | // (maxX + 4) * (int)Constants.RegionSize, | 1125 | // (maxX + 4) * (int)Constants.RegionSize, |
1124 | // (minY - 4) * (int)Constants.RegionSize, | 1126 | // (minY - 4) * (int)Constants.RegionSize, |
1125 | // (maxY + 4) * (int)Constants.RegionSize); | 1127 | // (maxY + 4) * (int)Constants.RegionSize); |
1128 | |||
1129 | //mb it means this | ||
1130 | if(regions.Count == 0 && (flag & 0x10000) != 0) | ||
1131 | { | ||
1132 | MapBlockData block = new MapBlockData(); | ||
1133 | block.X = (ushort)minX; | ||
1134 | block.Y = (ushort)minY; | ||
1135 | block.MapImageId = UUID.Zero; | ||
1136 | block.Access = (byte)SimAccess.Down; // means 'simulator is offline' | ||
1137 | allBlocks.Add(block); | ||
1138 | mapBlocks.Add(block); | ||
1139 | remoteClient.SendMapBlock(mapBlocks, flag & 0xffff); | ||
1140 | return allBlocks; | ||
1141 | } | ||
1142 | |||
1126 | foreach (GridRegion r in regions) | 1143 | foreach (GridRegion r in regions) |
1127 | { | 1144 | { |
1128 | MapBlockData block = new MapBlockData(); | 1145 | MapBlockData block = new MapBlockData(); |