private void gameUpdateRunning() { gameTime.update(gameUpdateSpeed); foreach (var item in gameObstacles) { item.update(gameUpdateSpeed); if (GameUtils.isColliding(item, snake)) { snake.passData(new GameData(GameState.Dead)); } } lock (snakeFood) { foreach (var item in snakeFood) { if (GameUtils.isColliding(item, snake)) { player.Play(); snake.passData(new GameData(GameState.Grow)); snake.passData(new GameData(GameState.SpeedUp)); snakeFood.Clear(); snakeFood.Add(GameUtils.getRandomSnakeFoodObject()); gameScore.passData(new GameData(GameState.Score)); score++; } } } if (highScore < score) { highScore = score; } snake.update(gameUpdateSpeed); gameScore.update(gameUpdateSpeed); if (snake.getStates().Contains(GameState.Dead)) { Thread.Sleep(1000); modelState = GameState.Menu; initGameData(); initMenu(); } }
public bool isColliding(IGameObject objectToTest) { return(GameUtils.isColliding(this, objectToTest)); }