|
@ -72,24 +72,6 @@ namespace SemiColinGames { |
|
|
get { return tileHeight * TileSize; } |
|
|
get { return tileHeight * TileSize; } |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
readonly string worldString = @"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
X |
|
|
|
|
|
. |
|
|
|
|
|
X <======> <==X X <=> <XX> XX . |
|
|
|
|
|
XXX . |
|
|
|
|
|
XXXX . |
|
|
|
|
|
XXXXX . |
|
|
|
|
|
X <X=X> <> <> <X> = <> X X X X <> X X XX X <=X> XXXXXX . |
|
|
|
|
|
<> [] [] XX XX XXX XX XXXXXXX |
|
|
|
|
|
<> [] [] [] XXX XXX XXXX XXX <> <> XXXXXXXX |
|
|
|
|
|
[]12345678[]123456[]123456789[]1234567890 123456 123456 12345 1234 12345 1234 123XXXX XXXX1234XXXXX XXXX1234[]123 1234567[]XXXXXXXXX12345678 |
|
|
|
|
|
====================> <====..========..======..=========..=========> <=============> <==============================================================> <=======..==============..============================== |
|
|
|
|
|
....................] [............................................] [.............] [..............................................................] [.......................................................";
|
|
|
|
|
|
|
|
|
|
|
|
private static readonly Dictionary<char, Terrain> charToTerrain = |
|
|
private static readonly Dictionary<char, Terrain> charToTerrain = |
|
|
new Dictionary<char, Terrain>() { |
|
|
new Dictionary<char, Terrain>() { |
|
|
{ '=', Terrain.Grass }, |
|
|
{ '=', Terrain.Grass }, |
|
@ -102,9 +84,9 @@ namespace SemiColinGames { |
|
|
{ 'X', Terrain.Block } |
|
|
{ 'X', Terrain.Block } |
|
|
}; |
|
|
}; |
|
|
|
|
|
|
|
|
public World(Texture2D texture) { |
|
|
|
|
|
|
|
|
public World(Texture2D texture, string levelSpecification) { |
|
|
var tilesList = new List<Tile>(); |
|
|
var tilesList = new List<Tile>(); |
|
|
string[] worldDesc = worldString.Split('\n'); |
|
|
|
|
|
|
|
|
string[] worldDesc = levelSpecification.Split('\n'); |
|
|
tileWidth = worldDesc.AsQueryable().Max(a => a.Length); |
|
|
tileWidth = worldDesc.AsQueryable().Max(a => a.Length); |
|
|
tileHeight = worldDesc.Length; |
|
|
tileHeight = worldDesc.Length; |
|
|
Debug.WriteLine("world size: {0}x{1}", tileWidth, tileHeight); |
|
|
Debug.WriteLine("world size: {0}x{1}", tileWidth, tileHeight); |
|
|