// Function New Game ( use for new-game-button & replace-ships-button) public void NewGame() { _comp.RemoveEvents(); _userCanvas.Children.Clear(); _compCanvas.Children.Clear(); _lifeUser.GetBoard(null); _lifeComp.GetBoard(null); _user = new Player(_userCanvas); _comp = new Enemy(_compCanvas, this); _autoShooter = new AutoShooter(this, _user); _lifeUser.GetBoard(_user); _lifeUser.Refresh(); _lifeUser.IsVisible = false; _lifeComp.GetBoard(_comp); _lifeComp.Refresh(); _lifeComp.IsVisible = false; _buttonsWinker.Stop(); _message.Text = "Press 'Start' to play..."; _buttonsWinker.Start(); _replaceShips.IsVisible = true; _startGame.IsVisible = true; }
// Constructor public GameManager(Canvas userCanvas, Canvas enemyCanvas, Canvas backgroundCanvas, TextBlock message) { _message = message; _message.Text = "Press 'Start' to play..."; _userCanvas = userCanvas; _compCanvas = enemyCanvas; _user = new Player(_userCanvas); _comp = new Enemy(_compCanvas, this); _autoShooter = new AutoShooter(this, _user); // Build Buttons int margin = 15; _newGame = new MyButton(backgroundCanvas, 15, 15, message); _newGame.Content.Text = "New game"; _newGame.Content.PointerEntered += Content_PointerEntered; _newGame.Content.PointerExited += Content_PointerExited; _newGame.Content.Tapped += NewGame_Tapped; _exit = new MyButton(backgroundCanvas, margin, (int)(backgroundCanvas.Width - margin - _newGame.Content.Width), message); _exit.Content.Text = "Exit"; _exit.Content.PointerEntered += Content_PointerEntered; _exit.Content.PointerExited += Content_PointerExited; _exit.Content.Tapped += Exit_Tapped; _replaceShips = new MyButton(backgroundCanvas, (int)(backgroundCanvas.Height - margin * 5), (margin * 9), message); _replaceShips.Content.Text = "Replace"; _replaceShips.Content.PointerEntered += Content_PointerEntered; _replaceShips.Content.PointerExited += Content_PointerExited; _replaceShips.Content.Tapped += NewGame_Tapped; _startGame = new MyButton(backgroundCanvas, (int)(backgroundCanvas.Height - margin * 5), (int)(margin * 11 + _replaceShips.Content.Width), message); _startGame.Content.Text = "Start"; _startGame.Content.PointerEntered += Content_PointerEntered; _startGame.Content.PointerExited += Content_PointerExited; _startGame.Content.Tapped += Start_Tapped; _buttonsWinker = new DispatcherTimer(); _buttonsWinker.Interval = new TimeSpan(0, 0, 1); _buttonsWinker.Tick += _buttonsWinker_Tick; _buttonsWinker.Start(); // Build LifeBars _lifeUser = new LifeBar(backgroundCanvas, (int)(backgroundCanvas.Height - margin * 5), (margin * 8), _user); _lifeUser.IsVisible = false; _lifeComp = new LifeBar(backgroundCanvas, (int)(backgroundCanvas.Height - margin * 5), (int)(backgroundCanvas.Width - (margin * 28)), _comp); _lifeComp.IsVisible = false; }