//====================================================================== void Start() { // Instantiate controllers. ShipCtrl ship = new ShipCtrl(this.shipView); this.inputMngr.ship = ship; game = new GameCtrl(this.gameView, ship); // Start everything. game.StartGame(); }
public void CanFinishLevelAfterSaucerDead() { var gameView = Substitute.For <IGameView> (); gameView.LevelFinished(Arg.Invoke()); GameCtrl game = new GameCtrl( gameView, Substitute.For <IShipCtrl> () ); game.StartGame(); Assert.AreEqual(game.GameState.Level, 1); game.SpawnSaucer(); for (int i = 0; i < this.TotalAsteroids(1); i++) { game.AsteroidList [0].Destroyed(); } game.Saucer.Destroyed(); Assert.AreEqual(game.GameState.Level, 2); }
public void CanSpawnAsteroidsWithNewLevel() { var gameView = Substitute.For <IGameView> (); gameView.LevelFinished(Arg.Invoke()); GameCtrl game = new GameCtrl( gameView, Substitute.For <IShipCtrl> () ); game.StartGame(); Assert.AreEqual(game.GameState.Level, 1); Assert.AreEqual(game.AsteroidList.Count, 4); for (int i = 0; i < this.TotalAsteroids(1); i++) { game.AsteroidList [0].Destroyed(); } Assert.AreEqual(game.GameState.Level, 2); Assert.AreEqual(game.AsteroidList.Count, 5); }