public override void Update(GameTime gameTime) { foreach (IController controller in controllers) { controller.Update(); } foreach (AbsObject gameObject in layers[1].Objects) { if (gameObject._objectsToAdd.Any()) { foreach (AbsObject newObject in gameObject._objectsToAdd) { gameObjectsToAdd.Add(newObject); } } if (gameObject.deleteThis) { gameObjectsToRemove.Add(gameObject); } else if (gameObject != null) { gameObject.Update(gameTime); } } collision.Update(layers[1].Objects); layers[1].Objects.AddRange(gameObjectsToAdd); layers[1].Objects = layers[1].Objects.Except(gameObjectsToRemove).ToList(); camera.LookAt(avatar.Position); avatar.movementState.Update(); hud.Update(gameTime); if (hud.lives_remaining == 0) { GameStateManager.GetInstance().Add(new GameOverGameState(graphics, hud, graphicsManager)); } else if (avatar.Position.X >= 3168 && avatar.Position.X < 4000) { GameStateManager.GetInstance().Add(new WinningGameState(graphics, hud, avatar.Position.Y, graphicsManager)); } }
/// <summary> /// This is called when the game should draw itself. /// </summary> /// <param name="gameTime">Provides a snapshot of timing values.</param> protected override void Draw(GameTime gameTime) { GameStateManager.GetInstance().Draw(spriteBatch); base.Draw(gameTime); }
/// <summary> /// UnloadContent will be called once per game and is the place to unload /// game-specific content. /// </summary> protected override void UnloadContent() { GameStateManager.GetInstance().UnloadContent(); }
public void Execute() { GameStateManager.GetInstance().Add(new PlayState(graphics, graphicsManager)); }
public void Execute() { audio.PlaySound("restart"); GameStateManager.GetInstance().Remove(); GameStateManager.GetInstance().Add(new DoodleJumpState(_graphics, graphicsManager)); }
public void Execute() { name.name = new string(name.arr); GameStateManager.GetInstance().Remove(); GameStateManager.GetInstance().Add(new LeaderBoardState(graph, name, gman, _audio)); }
public void Execute() { GameStateManager.GetInstance().Clear(); }