mirror of
https://github.com/AlexMacocian/MonoGame.Extended.git
synced 2026-07-21 01:39:32 +00:00
Merge pull request #67 from Layoric/tiled-isometric
Basic Tiled isometric support
This commit is contained in:
@@ -0,0 +1,76 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE map SYSTEM "http://mapeditor.org/dtd/1.0/map.dtd">
|
||||
<map version="1.0" orientation="isometric" width="40" height="40" tilewidth="64" tileheight="32">
|
||||
<tileset firstgid="1" name="Isometric Tileset" tilewidth="64" tileheight="128">
|
||||
<image source="isometric_tileset.png" width="128" height="128"/>
|
||||
<tile id="0">
|
||||
<properties>
|
||||
<property name="obstacle" value="1"/>
|
||||
</properties>
|
||||
</tile>
|
||||
</tileset>
|
||||
<layer name="Ground" width="40" height="40">
|
||||
<data encoding="csv">
|
||||
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,1,2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,2,1,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,2,1,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,2,1,2,1,1,2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,2,1,2,1,1,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,1,1,1,2,2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,1,1,1,2,1,1,2,1,0,0,0,0,0,2,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
1,1,2,2,2,2,1,1,0,0,2,0,0,0,0,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,2,2,2,2,1,0,0,0,0,0,0,0,0,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,2,2,2,2,2,0,0,0,0,0,0,0,2,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
1,1,2,2,2,2,2,2,1,0,0,0,0,0,2,0,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
1,1,1,2,2,2,2,2,1,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
1,1,1,1,2,2,2,2,2,2,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,1,0,0,1,1,1,2,2,2,0,0,0,0,0,2,0,0,2,2,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,1,0,0,2,1,2,2,2,2,2,0,0,0,0,0,0,0,2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,1,0,2,2,1,1,0,2,2,0,0,0,0,0,0,2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,1,1,2,2,2,1,1,0,2,0,0,0,0,0,0,0,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,1,2,2,2,2,2,1,2,0,0,0,0,0,0,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
1,2,2,2,1,2,1,2,2,2,1,1,2,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
1,1,1,2,2,1,1,1,2,2,2,1,1,2,2,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,1,1,0,1,0,1,2,2,2,1,2,2,2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,2,1,1,1,1,0,1,1,2,2,1,1,2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,2,2,2,1,1,1,2,1,2,2,2,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
0,0,0,2,2,2,2,2,2,2,2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,0,0,1,2,2,2,2,2,2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,0,1,1,2,2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,2,2,1,1,1,1,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,2,2,2,2,2,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2
|
||||
</data>
|
||||
</layer>
|
||||
<objectgroup color="#ffaa00" name="Objects" width="40" height="40">
|
||||
<object x="1261" y="428" width="141" height="74"/>
|
||||
<object type="npc" x="498" y="35" width="156" height="42"/>
|
||||
<object x="576" y="224" width="448" height="128"/>
|
||||
<object x="2183" y="747" width="228" height="96"/>
|
||||
<object name="fddsadsa" type="warp" x="960" y="416" width="192" height="96"/>
|
||||
<object x="1100" y="556" width="138" height="23"/>
|
||||
<object x="218" y="217">
|
||||
<polyline points="0,0 14,-90 36,3"/>
|
||||
</object>
|
||||
<object x="243" y="174">
|
||||
<polyline points="0,0 -17,0"/>
|
||||
</object>
|
||||
<object x="302" y="219">
|
||||
<polyline points="0,0 -2,-91 -36,-94 28,-91"/>
|
||||
</object>
|
||||
<object x="357" y="125">
|
||||
<polyline points="0,0 7,96 41,98"/>
|
||||
</object>
|
||||
</objectgroup>
|
||||
</map>
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 4.5 KiB |
@@ -1,6 +1,7 @@
|
||||
using System.Linq;
|
||||
using Microsoft.Xna.Framework.Content.Pipeline;
|
||||
using MonoGame.Extended.Content.Pipeline.Tiled;
|
||||
using MonoGame.Extended.Maps.Tiled;
|
||||
using NSubstitute;
|
||||
using NUnit.Framework;
|
||||
|
||||
@@ -28,6 +29,7 @@ namespace MonoGame.Extended.Content.Pipeline.Tests
|
||||
Assert.AreEqual("42", map.Properties[0].Value);
|
||||
Assert.AreEqual(1, map.Tilesets.Count);
|
||||
Assert.AreEqual(3, map.Layers.Count);
|
||||
Assert.AreEqual(TmxOrientation.Orthogonal,map.Orientation);
|
||||
|
||||
var tileset = map.Tilesets.First();
|
||||
Assert.AreEqual(1, tileset.FirstGid);
|
||||
@@ -71,7 +73,8 @@ namespace MonoGame.Extended.Content.Pipeline.Tests
|
||||
Assert.AreEqual("1", tileLayer1.Properties[0].Value);
|
||||
|
||||
Assert.AreEqual("customlayerprop2", tileLayer1.Properties[1].Name);
|
||||
Assert.AreEqual("2", tileLayer1.Properties[1].Value);}
|
||||
Assert.AreEqual("2", tileLayer1.Properties[1].Value);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TiledMapImporter_Xml_Test()
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System.Collections.Generic;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.IO;
|
||||
using Microsoft.Xna.Framework;
|
||||
@@ -20,6 +21,7 @@ namespace MonoGame.Extended.Content.Pipeline.Tiled
|
||||
writer.Write(map.Height);
|
||||
writer.Write(map.TileWidth);
|
||||
writer.Write(map.TileHeight);
|
||||
writer.Write(Convert.ToInt32(map.Orientation));
|
||||
WriteCustomProperties(writer, map.Properties);
|
||||
|
||||
writer.Write(map.Tilesets.Count);
|
||||
|
||||
@@ -9,7 +9,12 @@ namespace MonoGame.Extended.Maps.Tiled
|
||||
{
|
||||
public class TiledMap
|
||||
{
|
||||
public TiledMap(GraphicsDevice graphicsDevice, int width, int height, int tileWidth, int tileHeight)
|
||||
public TiledMap(GraphicsDevice graphicsDevice,
|
||||
int width,
|
||||
int height,
|
||||
int tileWidth,
|
||||
int tileHeight,
|
||||
TiledMapOrientation orientation = TiledMapOrientation.Orthogonal)
|
||||
{
|
||||
Width = width;
|
||||
Height = height;
|
||||
@@ -20,19 +25,21 @@ namespace MonoGame.Extended.Maps.Tiled
|
||||
_graphicsDevice = graphicsDevice;
|
||||
_layers = new List<TiledLayer>();
|
||||
_tilesets = new List<TiledTileset>();
|
||||
Orientation = orientation;
|
||||
}
|
||||
|
||||
private readonly List<TiledTileset> _tilesets;
|
||||
private readonly GraphicsDevice _graphicsDevice;
|
||||
private readonly List<TiledLayer> _layers;
|
||||
|
||||
public int Width { get; private set; }
|
||||
public int Height { get; private set; }
|
||||
public int TileWidth { get; private set; }
|
||||
public int TileHeight { get; private set; }
|
||||
public int Width { get; }
|
||||
public int Height { get; }
|
||||
public int TileWidth { get; }
|
||||
public int TileHeight { get; }
|
||||
public Color? BackgroundColor { get; set; }
|
||||
public TiledRenderOrder RenderOrder { get; set; }
|
||||
public TiledProperties Properties { get; private set; }
|
||||
public TiledMapOrientation Orientation { get; }
|
||||
|
||||
public IEnumerable<TiledLayer> Layers
|
||||
{
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
|
||||
namespace MonoGame.Extended.Maps.Tiled
|
||||
{
|
||||
public enum TiledMapOrientation
|
||||
{
|
||||
Orthogonal = 1,
|
||||
Isometric = 2,
|
||||
Staggered = 3
|
||||
}
|
||||
}
|
||||
@@ -16,7 +16,8 @@ namespace MonoGame.Extended.Maps.Tiled
|
||||
width: reader.ReadInt32(),
|
||||
height: reader.ReadInt32(),
|
||||
tileWidth: reader.ReadInt32(),
|
||||
tileHeight: reader.ReadInt32())
|
||||
tileHeight: reader.ReadInt32(),
|
||||
orientation: (TiledMapOrientation)reader.ReadInt32())
|
||||
{
|
||||
BackgroundColor = backgroundColor,
|
||||
RenderOrder = renderOrder
|
||||
|
||||
@@ -54,22 +54,59 @@ namespace MonoGame.Extended.Maps.Tiled
|
||||
{
|
||||
var region = _map.GetTileRegion(tile.Id);
|
||||
|
||||
if (region != null)
|
||||
{
|
||||
// not exactly sure why we need to compensate 1 pixel here. Could be a bug in MonoGame?
|
||||
var tx = tile.X * (_map.TileWidth - 1);
|
||||
var ty = tile.Y * (_map.TileHeight - 1);
|
||||
|
||||
_spriteBatch.Draw(region, new Rectangle(tx, ty, region.Width, region.Height), Color.White);
|
||||
}
|
||||
if(region == null) continue;
|
||||
|
||||
RenderLayer(_map, tile, region);
|
||||
}
|
||||
|
||||
_spriteBatch.End();
|
||||
}
|
||||
|
||||
|
||||
private void RenderLayer(TiledMap map, TiledTile tile, TextureRegion2D region)
|
||||
{
|
||||
switch (map.Orientation)
|
||||
{
|
||||
case TiledMapOrientation.Orthogonal:
|
||||
RenderOrthogonal(tile,region);
|
||||
break;
|
||||
case TiledMapOrientation.Isometric:
|
||||
RenderIsometric(tile, region);
|
||||
break;
|
||||
case TiledMapOrientation.Staggered:
|
||||
throw new NotImplementedException("Staggered maps are currently not supported");
|
||||
break;
|
||||
default:
|
||||
throw new ArgumentOutOfRangeException();
|
||||
}
|
||||
}
|
||||
|
||||
private void RenderOrthogonal(TiledTile tile, TextureRegion2D region)
|
||||
{
|
||||
// not exactly sure why we need to compensate 1 pixel here. Could be a bug in MonoGame?
|
||||
var tx = tile.X*(_map.TileWidth - 1);
|
||||
var ty = tile.Y*(_map.TileHeight - 1);
|
||||
|
||||
_spriteBatch.Draw(region, new Rectangle(tx, ty, region.Width, region.Height), Color.White);
|
||||
}
|
||||
|
||||
private void RenderIsometric(TiledTile tile, TextureRegion2D region)
|
||||
{
|
||||
var tx = (tile.X*(_map.TileWidth / 2)) - (tile.Y*(_map.TileWidth / 2))
|
||||
//Center
|
||||
+ (_map.Width * (_map.TileWidth/2))
|
||||
//Compensate Bug?
|
||||
- (_map.TileWidth / 2);
|
||||
|
||||
var ty = (tile.Y*(_map.TileHeight/2)) + (tile.X*(_map.TileHeight/2))
|
||||
//Compensate Bug?
|
||||
- (_map.TileWidth + _map.TileHeight);
|
||||
|
||||
_spriteBatch.Draw(region, new Rectangle(tx, ty, region.Width, region.Height), Color.White);
|
||||
}
|
||||
|
||||
public TiledTile GetTile(int x, int y)
|
||||
{
|
||||
return _tiles[x + y * Width];
|
||||
return _tiles[x + y*Width];
|
||||
}
|
||||
|
||||
private Func<IEnumerable<TiledTile>> GetRenderOrderFunction()
|
||||
@@ -115,7 +152,7 @@ namespace MonoGame.Extended.Maps.Tiled
|
||||
yield return GetTile(x, y);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private IEnumerable<TiledTile> GetTilesLeftUp()
|
||||
{
|
||||
for (var y = Height - 1; y >= 0; y--)
|
||||
|
||||
@@ -55,6 +55,7 @@
|
||||
<Compile Include="InputListeners\TouchListener.cs" />
|
||||
<Compile Include="InputListeners\InputListenerManager.cs" />
|
||||
<Compile Include="InputListeners\TouchListenerSettings.cs" />
|
||||
<Compile Include="Maps\Tiled\TiledMapOrientation.cs" />
|
||||
<Compile Include="Shapes\Circle.cs" />
|
||||
<Compile Include="Sprites\SpriteExtensions.cs" />
|
||||
<Compile Include="TextureAtlases\TextureAtlas.cs" />
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
/platform:Windows
|
||||
/config:
|
||||
/profile:Reach
|
||||
/compress:False
|
||||
|
||||
#-------------------------------- References --------------------------------#
|
||||
|
||||
@@ -21,7 +22,6 @@
|
||||
/processorParam:GenerateMipmaps=False
|
||||
/processorParam:PremultiplyAlpha=True
|
||||
/processorParam:ResizeToPowerOfTwo=False
|
||||
/processorParam:MakeSquare=False
|
||||
/processorParam:TextureFormat=Color
|
||||
/build:hills.png
|
||||
|
||||
@@ -36,7 +36,6 @@
|
||||
/processorParam:GenerateMipmaps=False
|
||||
/processorParam:PremultiplyAlpha=True
|
||||
/processorParam:ResizeToPowerOfTwo=False
|
||||
/processorParam:MakeSquare=False
|
||||
/processorParam:TextureFormat=Color
|
||||
/build:tmw_desert_spacing.png
|
||||
|
||||
@@ -48,7 +47,6 @@
|
||||
/processorParam:GenerateMipmaps=False
|
||||
/processorParam:PremultiplyAlpha=True
|
||||
/processorParam:ResizeToPowerOfTwo=False
|
||||
/processorParam:MakeSquare=False
|
||||
/processorParam:TextureFormat=Color
|
||||
/build:free-tileset.png
|
||||
|
||||
@@ -65,7 +63,6 @@
|
||||
/processorParam:GenerateMipmaps=False
|
||||
/processorParam:PremultiplyAlpha=True
|
||||
/processorParam:ResizeToPowerOfTwo=False
|
||||
/processorParam:MakeSquare=False
|
||||
/processorParam:TextureFormat=Color
|
||||
/build:test-tileset.png
|
||||
|
||||
@@ -82,7 +79,6 @@
|
||||
/processorParam:GenerateMipmaps=False
|
||||
/processorParam:PremultiplyAlpha=True
|
||||
/processorParam:ResizeToPowerOfTwo=False
|
||||
/processorParam:MakeSquare=False
|
||||
/processorParam:TextureFormat=Color
|
||||
/build:stump.png
|
||||
|
||||
@@ -119,7 +115,6 @@
|
||||
/processorParam:GenerateMipmaps=False
|
||||
/processorParam:PremultiplyAlpha=True
|
||||
/processorParam:ResizeToPowerOfTwo=False
|
||||
/processorParam:MakeSquare=False
|
||||
/processorParam:TextureFormat=Color
|
||||
/build:fireball.png
|
||||
|
||||
@@ -136,7 +131,6 @@
|
||||
/processorParam:GenerateMipmaps=False
|
||||
/processorParam:PremultiplyAlpha=True
|
||||
/processorParam:ResizeToPowerOfTwo=False
|
||||
/processorParam:MakeSquare=False
|
||||
/processorParam:TextureFormat=Color
|
||||
/build:zombie.png
|
||||
|
||||
@@ -153,7 +147,22 @@
|
||||
/processorParam:GenerateMipmaps=False
|
||||
/processorParam:PremultiplyAlpha=True
|
||||
/processorParam:ResizeToPowerOfTwo=False
|
||||
/processorParam:MakeSquare=False
|
||||
/processorParam:TextureFormat=Color
|
||||
/build:Fonts/courier-new-32_0.png
|
||||
|
||||
#begin isometric.tmx
|
||||
/importer:TiledMapImporter
|
||||
/processor:TiledMapProcessor
|
||||
/build:isometric.tmx
|
||||
|
||||
#begin isometric_tileset.png
|
||||
/importer:TextureImporter
|
||||
/processor:TextureProcessor
|
||||
/processorParam:ColorKeyColor=255,0,255,255
|
||||
/processorParam:ColorKeyEnabled=True
|
||||
/processorParam:GenerateMipmaps=False
|
||||
/processorParam:PremultiplyAlpha=True
|
||||
/processorParam:ResizeToPowerOfTwo=False
|
||||
/processorParam:TextureFormat=Color
|
||||
/build:isometric_tileset.png
|
||||
|
||||
|
||||
@@ -0,0 +1,58 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<map version="1.0" orientation="isometric" renderorder="right-down" width="40" height="40" tilewidth="64" tileheight="32" nextobjectid="11">
|
||||
<tileset firstgid="1" name="Isometric Tileset" tilewidth="64" tileheight="128" tilecount="2">
|
||||
<image source="isometric_tileset.png" width="128" height="128"/>
|
||||
<tile id="0">
|
||||
<properties>
|
||||
<property name="obstacle" value="1"/>
|
||||
</properties>
|
||||
</tile>
|
||||
</tileset>
|
||||
<imagelayer name="Background">
|
||||
<image source="hills.png"/>
|
||||
</imagelayer>
|
||||
<layer name="Ground" width="40" height="40">
|
||||
<data encoding="csv">
|
||||
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,1,2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,2,1,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,2,1,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,2,1,2,1,1,2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,2,1,2,1,1,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,1,1,1,2,2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,1,1,1,2,1,1,2,1,0,0,0,0,0,2,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
1,1,2,2,2,2,1,1,0,0,2,0,0,0,0,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,2,2,2,2,1,0,0,0,0,0,0,0,0,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,2,2,2,2,2,0,0,0,0,0,0,0,2,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
1,1,2,2,2,2,2,2,1,0,0,0,0,0,2,0,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
1,1,1,2,2,2,2,2,1,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
1,1,1,1,2,2,2,2,2,2,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,1,0,0,1,1,1,2,2,2,0,0,0,0,0,2,0,0,2,2,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,1,0,0,2,1,2,2,2,2,2,0,0,0,0,0,0,0,2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,1,0,2,2,1,1,0,2,2,0,0,0,0,0,0,2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,1,1,2,2,2,1,1,0,2,0,0,0,0,0,0,0,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,1,2,2,2,2,2,1,2,0,0,0,0,0,0,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
1,2,2,2,1,2,1,2,2,2,1,1,2,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
1,1,1,2,2,1,1,1,2,2,2,1,1,2,2,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,1,1,0,1,0,1,2,2,2,1,2,2,2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,2,1,1,1,1,0,1,1,2,2,1,1,2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,2,2,2,1,1,1,2,1,2,2,2,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
0,0,0,2,2,2,2,2,2,2,2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,0,0,1,2,2,2,2,2,2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,0,1,1,2,2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,2,2,1,1,1,1,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||
2,2,2,2,2,2,2,2,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2
|
||||
</data>
|
||||
</layer>
|
||||
</map>
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 4.5 KiB |
Reference in New Issue
Block a user