public override void Init() { #region Setup Display #region Canvas playCanvas = new Canvas(); playCanvas.Width = Constants.ScreenWidth; playCanvas.Height = Constants.ScreenHeight; playCanvas.VerticalAlignment = System.Windows.VerticalAlignment.Top; playCanvas.HorizontalAlignment = System.Windows.HorizontalAlignment.Left; playCanvas.MouseLeftButtonDown += MouseDownClick; width = Constants.ScreenWidth - 50; height = Constants.ScreenHeight; #endregion #region Background background = new Background(Constants.GameBackgroundPath); playCanvas.Background = background.GetBrush(); #endregion #region Setup Panel gp = new GamePanel(this.game); gp.HorizontalAlignment = HorizontalAlignment.Right; gp.VerticalAlignment = VerticalAlignment.Center; gp.Margin = new Thickness(Constants.ScreenWidth - 60, 0, 20, 0); gp.shootButton.Click += Shoot; #endregion #endregion #region Setup Assets cross = new PointerCross(); cm = new CollisionManager(width, height); rn = new Randomizer(); #region amount if (Constants.ObjectSize * AmountOfShips <= (Constants.ObjectSize/2 + Constants.ObjectSize * (2 * AmountOfShips))+Constants.ObjectSize/2) { amount = AmountOfShips; } else { amount = 6; } playerAmount = amount; enemyAmount = amount; #endregion #region Setup Coordinates pCoordinates = new int[amount][]; eCoordinates = new int[amount][]; for (int i = 0; i < amount; i++) { pCoordinates[i] = new int[2]; eCoordinates[i] = new int[2]; pCoordinates[i][0] = 100; pCoordinates[i][1] = (Constants.ObjectSize/2 + Constants.ObjectSize * (2 * i)); eCoordinates[i][0] = width - 100; eCoordinates[i][1] = Constants.ObjectSize + Constants.ObjectSize*(2*i); } #endregion gameobjects = new List<GameObject>(); players = new Player[amount]; enemies = new Computer[amount]; #endregion #region Setup Ships SetupShips(); GameObject.SetGameState(this); player = true; computer = false; #endregion #region Setup Controls ai = new AI(this); game.PlayTime.Start(); #endregion }
public override void Init() { #region Setup Display #region Window menuScreen = new Canvas(); menuScreen.Height = Constants.ScreenHeight; menuScreen.Width = Constants.ScreenWidth; menuScreen.HorizontalAlignment = System.Windows.HorizontalAlignment.Left; menuScreen.VerticalAlignment = System.Windows.VerticalAlignment.Top; background = new Background(Constants.MenuBackgroundPath); menuScreen.Background = background.GetBrush(); title = new Title(); title.Margin = new Thickness(Constants.ScreenWidth / 2 -430, Constants.ScreenHeight / 2 - 320, 0, 0); title.HorizontalAlignment = System.Windows.HorizontalAlignment.Center; title.VerticalAlignment = System.Windows.VerticalAlignment.Center; #endregion #region Panel buttons = new MenuPanel(this); buttons.Margin = new Thickness(Constants.ScreenWidth / 2 - buttons.width / 2, Constants.ScreenHeight - (buttons.height * 1.5), 0, 0); #endregion #endregion #region Setup Decoration #region Random r = new Randomizer(); angle = new Randomizer(r.Next()); speed = new Randomizer(r.Next() * angle.Next()); xpos = new Randomizer(r.Next() * speed.Next()); ypos = new Randomizer(r.Next() * xpos.Next()); Constants.SelectedEnemy = xpos.Next(0, 1); Constants.SelectedShip = ypos.Next(0, 1); #endregion #region Create decor int amount = r.Next(10, 20); int pamount = amount / 2; int eamount = amount - pamount; players = new Player[pamount]; enemies = new Computer[eamount]; list = new List<GameObject>(); for (int i = 0; i < players.Length; i++) { players[i] = new Player(xpos.Next(128, Constants.ScreenWidth - 128), ypos.Next(64, Constants.ScreenHeight - 64), i); players[i].SetAngle(angle.Next(0, 360)); players[i].SetSpeed(speed.Next(3, 6)); players[i].UpdateMovement(); list.Add(players[i]); } for (int i = 0; i < enemies.Length; i++) { enemies[i] = new Computer(xpos.Next(128, Constants.ScreenWidth - 128), ypos.Next(64, Constants.ScreenHeight - 64), i); enemies[i].SetAngle(angle.Next(0, 360)); enemies[i].SetSpeed(speed.Next(3, 6)); enemies[i].UpdateMovement(); list.Add(enemies[i]); } #endregion Constants.SelectedEnemy = 0; Constants.SelectedShip = 0; #endregion }