public MainPage() { this.InitializeComponent(); player = new Player(canvas); invaders = new Invaders(canvas); dispatcherTimer = new DispatcherTimer(); dispatcherTimer.Tick += Game; dispatcherTimer.Interval = TimeSpan.FromTicks(TimeSpan.TicksPerSecond / 60); dispatcherTimer.Start(); }
public Invaders[,] wczytaj_invaders() { for (int y = 0; y < tab_invaders.GetLength(0); y++) { for (int x = 0; x < tab_invaders.GetLength(1); x++) { if (y < 1) { tab_invaders[y, x] = new Invaders(textura_invaders2, new Rectangle((35 * x) + border, (35 * y) + border + 110, 20, 20)); } else if (y >= 1 && y < 3) { tab_invaders[y, x] = new Invaders(textura_invaders1, new Rectangle((35 * x) + border, (35 * y) + border + 110, 20, 20)); } else if (y >= 3 && y < 5) { tab_invaders[y, x] = new Invaders(textura_invaders3, new Rectangle((35 * x) + border, (35 * y) + border + 110, 20, 20)); } tab_visible_invaders[y, x] = "YES"; } } return(tab_invaders); }
public GamePage() { this.InitializeComponent(); //set preffered window size ApplicationView.PreferredLaunchViewSize = new Size(700, 500); ApplicationView.PreferredLaunchWindowingMode = ApplicationViewWindowingMode.PreferredLaunchViewSize; //initialize variable for gameplay playerLives = 3; playerGameScore = 0; level = 1; //initiate classes player = new Player(canvas, playerGameScore); invaders = new Invaders(canvas, level); sounds = new Sounds(grid); //start the game dispatch timer dispatcherTimer = new DispatcherTimer(); dispatcherTimer.Tick += Game; dispatcherTimer.Interval = TimeSpan.FromTicks(TimeSpan.TicksPerSecond / 30); dispatcherTimer.Start(); }
//game method that fires in dispatch timer private void Game(object sender, object e) { //check to see if player has died if (!invaders.playerAlive()) { //get the player score playerGameScore = player.getScore(); //handle how many lives player has left switch (playerLives) { case 3: life3.Visibility = Visibility.Collapsed; invaders.setPlayerAlive(true); break; case 2: life2.Visibility = Visibility.Collapsed; invaders.setPlayerAlive(true); break; case 1: dispatcherTimer.Stop(); life1.Visibility = Visibility.Collapsed; finalScoreBlock.Text = playerGameScore.ToString(); gameOverPanel.Visibility = Visibility.Visible; sounds.playGameOverSound(); return; } //loss of a life and reset player and alien grid playerLives--; canvas.Children.Clear(); invaders.rebuildInvaders(canvas); player = new Player(canvas, playerGameScore); } //new level upon killing of all aliens if (!invaders.invadersAreAlive()) { level++; invaders = new Invaders(canvas, level); } //call the draw methods of each player and alien classes passing in requirements invaders.Draw(canvas, player.getPlayer(), sounds); player.Draw(canvas, invaders.getInvaderGrid(), sounds); //update score textblock scoreBlock.Text = player.getScore().ToString(); }