X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=CarFire%2FCarFire%2FCarFire%2FMap.cs;h=0178e2ba7188884deceb6bc5a1432d323bebee3e;hb=60d05271b295d2ca94a0028059add525c1bbffb1;hp=1b8b5a89bc992a9279f324102379674ce0a5ef73;hpb=8f212205c32b283d9a7730e15044d706db2f08bf;p=chaz%2Fcarfire
diff --git a/CarFire/CarFire/CarFire/Map.cs b/CarFire/CarFire/CarFire/Map.cs
index 1b8b5a8..0178e2b 100644
--- a/CarFire/CarFire/CarFire/Map.cs
+++ b/CarFire/CarFire/CarFire/Map.cs
@@ -134,13 +134,11 @@ namespace CarFire
///
/// Get and set the tilemap with its associated texture and tile
/// character to coordinate mappings. This effects what the map looks
- /// like when it is drawn.
+ /// like when it is drawn. You will need to reset any map instances
+ /// after setting a new tilemap. You should also set a tilemap before
+ /// instantiating any maps.
///
- public Tilemap Tilemap
- {
- get { return mView.Tilemap; }
- set { mView.Tilemap = value; }
- }
+ public static Tilemap Tilemap;
///
/// Get and set the zoom of the map view. The default zoom is
@@ -364,6 +362,7 @@ namespace CarFire
Debug.Assert(grid != null);
Debug.Assert(entities != null);
Debug.Assert(metadata.GridWidth * metadata.GridHeight == grid.Length);
+ Debug.Assert(Tilemap != null);
mMetadata = metadata;
mCleanGrid = grid;
@@ -399,17 +398,17 @@ namespace CarFire
public bool IsCellOpen(int x, int y)
{
- // TODO: Still need to define characters for types of scenery.
- if (IsOnMap(x, y)) return mGrid[x, y] == ' ';
- return false;
+ if (!IsOnMap(x, y)) return false;
+ return (Tilemap.GetTileFlags(mGrid[x, y]) & TileFlags.Open) == TileFlags.Open;
}
//created by Brady for AI precalculations
public bool IsWall(int x, int y)
{
- if (IsOnMap(x, y)) return (mGrid[x, y] == '-' || mGrid[x, y] == '|' || mGrid[x, y] == '+' || mGrid[x, y] == '/' || mGrid[x, y] == '\\');
- return false;
+ if (!IsOnMap(x, y)) return false;
+ return (Tilemap.GetTileFlags(mGrid[x, y]) & TileFlags.Wall) == TileFlags.Wall;
}
+
public void SetCell(int x, int y, char tile)
{
if (IsOnMap(x, y))
@@ -520,7 +519,6 @@ namespace CarFire
class View
{
public Vector2 CenterCell;
- public Tilemap Tilemap;
public float Zoom;