From ca2379ee8388d9c04fbd3c6eae49b7407bde5b95 Mon Sep 17 00:00:00 2001 From: Diva Canto Date: Sat, 21 Jun 2014 15:38:38 -0700 Subject: [PATCH] Bug fix in map teleports in varregions. The cherry was missing from the ice-cream Sunday: the packet itself was hardcoding the size of the region... --- .../ClientStack/Linden/UDP/LLClientView.cs | 5 ++-- .../World/WorldMap/WorldMapModule.cs | 26 ------------------- 2 files changed, 2 insertions(+), 29 deletions(-) diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs index 44386c9ea9..bd0f5ca4f0 100644 --- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs @@ -1543,10 +1543,9 @@ namespace OpenSim.Region.ClientStack.LindenUDP mapReply.Data[i].Access = mapBlocks2[i].Access; mapReply.Data[i].Agents = mapBlocks2[i].Agents; - // TODO: hookup varregion sim size here mapReply.Size[i] = new MapBlockReplyPacket.SizeBlock(); - mapReply.Size[i].SizeX = 256; - mapReply.Size[i].SizeY = 256; + mapReply.Size[i].SizeX = mapBlocks2[i].SizeX; + mapReply.Size[i].SizeY = mapBlocks2[i].SizeY; } OutPacket(mapReply, ThrottleOutPacketType.Land); } diff --git a/OpenSim/Region/CoreModules/World/WorldMap/WorldMapModule.cs b/OpenSim/Region/CoreModules/World/WorldMap/WorldMapModule.cs index e4977cfdc0..2d28d6e5ef 100644 --- a/OpenSim/Region/CoreModules/World/WorldMap/WorldMapModule.cs +++ b/OpenSim/Region/CoreModules/World/WorldMap/WorldMapModule.cs @@ -1121,32 +1121,6 @@ namespace OpenSim.Region.CoreModules.World.WorldMap block.SizeX = (ushort)r.RegionSizeX; block.SizeY = (ushort)r.RegionSizeY; blocks.Add(block); - // If these are larger than legacy regions, create fake map entries for the covered - // regions. The map system only does legacy sized regions so we have to fake map - // entries for all the covered regions. - if (r.RegionSizeX > Constants.RegionSize || r.RegionSizeY > Constants.RegionSize) - { - for (int x = 0; x < r.RegionSizeX / Constants.RegionSize; x++) - { - for (int y = 0; y < r.RegionSizeY / Constants.RegionSize; y++) - { - if (x == 0 && y == 0) - continue; - block = new MapBlockData - { - Access = r.Access, - MapImageId = r.TerrainImage, - Name = r.RegionName, - X = (ushort)((r.RegionLocX / Constants.RegionSize) + x), - Y = (ushort)((r.RegionLocY / Constants.RegionSize) + y), - SizeX = (ushort)r.RegionSizeX, - SizeY = (ushort)r.RegionSizeY - }; - //Child piece, so ignore it - blocks.Add(block); - } - } - } } return blocks; }