]> Dogcows Code - chaz/carfire/blobdiff - CarFire/CarFire/CarFire/Game.cs
Moved a couple lines...
[chaz/carfire] / CarFire / CarFire / CarFire / Game.cs
index 56507110fac10ba1c10502be051f1cf11545dc1f..9a44ff37f16629945ff18469cf4e862935903167 100644 (file)
@@ -15,8 +15,7 @@ namespace CarFire
     public class GameState\r
     {\r
         #region Public Properties\r
     public class GameState\r
     {\r
         #region Public Properties\r
-        private const int hitMonsterScore = 20;\r
-        private const int killMonsterScore = 100;\r
+        \r
         public int HitMonsterScore { get { return hitMonsterScore; } }\r
         public int KillMonsterScore { get { return killMonsterScore; } }\r
 \r
         public int HitMonsterScore { get { return hitMonsterScore; } }\r
         public int KillMonsterScore { get { return killMonsterScore; } }\r
 \r
@@ -31,7 +30,6 @@ namespace CarFire
         public List<Projectile> mProjectiles = new List<Projectile>();\r
         public Player[] mCharacters;\r
         public Display mDisplay;\r
         public List<Projectile> mProjectiles = new List<Projectile>();\r
         public Player[] mCharacters;\r
         public Display mDisplay;\r
-        public AI AIData;\r
         #endregion\r
 \r
 \r
         #endregion\r
 \r
 \r
@@ -161,7 +159,8 @@ namespace CarFire
 \r
 \r
         #region Private Variables\r
 \r
 \r
         #region Private Variables\r
-\r
+        private const int hitMonsterScore = 20;\r
+        private const int killMonsterScore = 100;\r
         int mNumberOfPlayers;\r
         public Point[] mMouseLocation;\r
         public bool[] mMouseButton;\r
         int mNumberOfPlayers;\r
         public Point[] mMouseLocation;\r
         public bool[] mMouseButton;\r
@@ -309,6 +308,15 @@ namespace CarFire
         public void AdvanceLevel()\r
         {\r
             // TODO: Load the next map, etc...\r
         public void AdvanceLevel()\r
         {\r
             // TODO: Load the next map, etc...\r
+            //TODO somehow get next map\r
+            State.Entities.Clear();\r
+            String nextMap = State.Map.Next;\r
+            State.Map = mContentManager.Load<Map>("Maps/"+nextMap);\r
+            for (int i = 0; i < State.mCharacters.Length; i++)\r
+            {\r
+                State.mCharacters[i].Coordinates = State.Map.GetStartingPositionForPlayer(i + 1);\r
+            }\r
+            State.Entities = State.Map.GetAllEntities(this);\r
         }\r
 \r
         /// <summary>\r
         }\r
 \r
         /// <summary>\r
@@ -324,21 +332,6 @@ namespace CarFire
         public Game()\r
         {\r
            \r
         public Game()\r
         {\r
            \r
-        }\r
-        /// <summary>\r
-        /// This method should be called whenever the players want to move to a new map.\r
-        /// Not implemented yet.  Need some way to get next map.\r
-        /// </summary>\r
-        public void startNewMap()\r
-        {\r
-            //TODO somehow get next map\r
-            State.Entities.Clear();\r
-            //State.Map = State.Map.getNextMap();\r
-            for (int i = 0; i < State.mCharacters.Length; i++)\r
-            {\r
-                State.mCharacters[i].Coordinates = State.Map.GetStartingPositionForPlayer(i + 1);\r
-            }\r
-            State.Entities = State.Map.GetAllEntities(this);\r
         }\r
         public void LoadContent(ContentManager contentManager)\r
         {\r
         }\r
         public void LoadContent(ContentManager contentManager)\r
         {\r
@@ -428,10 +421,10 @@ namespace CarFire
             Map.Tilemap = tilemap;\r
 \r
             // Load the first map.\r
             Map.Tilemap = tilemap;\r
 \r
             // Load the first map.\r
-            State.Map = mContentManager.Load<Map>("Maps/colosseum");\r
+            State.Map = mContentManager.Load<Map>("Maps/colosseumClosed");\r
             State.Entities = State.Map.GetAllEntities(this);\r
 \r
             State.Entities = State.Map.GetAllEntities(this);\r
 \r
-            //State.AIData = new AI(this);\r
+            mAIData = new AI(this);\r
 \r
             /*\r
             mPlayers.Clear();\r
 \r
             /*\r
             mPlayers.Clear();\r
@@ -499,7 +492,23 @@ namespace CarFire
         {\r
             State.AdvanceFrame(mInputs, elapsedTime.Milliseconds);  // Apply the inputs, advance game state.\r
             State.mDisplay.Update(elapsedTime, mThisPlayerID);\r
         {\r
             State.AdvanceFrame(mInputs, elapsedTime.Milliseconds);  // Apply the inputs, advance game state.\r
             State.mDisplay.Update(elapsedTime, mThisPlayerID);\r
-            State.Entities.ForEach(delegate(IEntity e) { e.Update(elapsedTime); });\r
+            State.Entities.ForEach(delegate(IEntity e) \r
+            {\r
+                IMonster m = e as IMonster;\r
+                if (m != null)\r
+                {\r
+                    if (State.mCharacters[0] != null && mAIData.spaceVisible(e.Coordinates, State.mCharacters[0].Coordinates))\r
+                    {\r
+                        m.Chasing(State.mCharacters[0].Coordinates);\r
+                    }\r
+                    else\r
+                    {\r
+                        m.DefaultAction();\r
+                    }\r
+                }\r
+                e.Update(elapsedTime); \r
+            });\r
+            //State.Entities.ForEach(delegate(IEntity e) { e.Update(elapsedTime); });\r
             mInputs = new NextInputs(State.NumberOfPlayers);  // Start with inputs cleared on the next frame.\r
             //mDisplay.Update(elapsedTime);\r
             return State.FrameNumber;\r
             mInputs = new NextInputs(State.NumberOfPlayers);  // Start with inputs cleared on the next frame.\r
             //mDisplay.Update(elapsedTime);\r
             return State.FrameNumber;\r
@@ -546,7 +555,7 @@ namespace CarFire
         #region Private Variables\r
 \r
         SpriteFont menu;\r
         #region Private Variables\r
 \r
         SpriteFont menu;\r
-\r
+        AI mAIData;\r
         ContentManager mContentManager;\r
         NextInputs mInputs;\r
 \r
         ContentManager mContentManager;\r
         NextInputs mInputs;\r
 \r
This page took 0.020817 seconds and 4 git commands to generate.