public override void AddGameObjects()
        {
            GameObject spaceStation = new GameObject("Sprites/Space Objects/Space Stations/LargeSpaceStation", new Vector2(ScreenManager.Viewport.Width / 2, ScreenManager.Viewport.Height / 2));
            AddGameObjectEvent(0, spaceStation);

            PlayerShip playerShip = new PlayerShip("XML/Cut Scenes/Ships/UIN Ships/Barracuda", ScreenManager.ScreenCentre + new Vector2(0, 500));
            playerShip.AutoTurrets = true;
            playerShip.ManualSteering = false;
            AddGameObjectEvent(0, playerShip);
        }
        public override void AddGameObjects()
        {
            PlayerShip playerShip = new PlayerShip("XML/Cut Scenes/Ships/UIN Ships/Barracuda", new Vector2(ScreenManager.Viewport.Width / 2, 5 * ScreenManager.Viewport.Height / 6));
            AddGameObjectEvent(0, playerShip);
            AddMoveEvent(1, playerShip, new Vector2(ScreenManager.Viewport.Width / 2, ScreenManager.Viewport.Height / 2));
            AddMoveEvent(29, playerShip, new Vector2(3 * ScreenManager.Viewport.Width / 4, 5 * ScreenManager.Viewport.Height / 6));
            AddMoveEvent(42, playerShip, new Vector2(3 * ScreenManager.Viewport.Width / 4, ScreenManager.Viewport.Height / 4));
            AddMoveEvent(57, playerShip, new Vector2(5 * ScreenManager.Viewport.Width / 4, ScreenManager.Viewport.Height / 4));

            EnemyShip enemyShip;
            int enemyAppearanceOffset = 23;

            for (int i = 0; i < 5; i++)
            {
                for (int j = 0; j < Math.Round((double)(i + 1) / 2f, MidpointRounding.AwayFromZero); j++)
                {
                    enemyShip = new EnemyShip("XML/Cut Scenes/Ships/Pirate Ships/Gnat", new Vector2(1000 - 100 * (((i + 3) / 2) - j), -ScreenManager.Viewport.Height / 2), playerShip);
                    AddGameObjectEvent(enemyAppearanceOffset + i * 5, enemyShip);

                    enemyShip = new EnemyShip("XML/Cut Scenes/Ships/UIN Ships/Harpoon", new Vector2(1000 - 100 * (((i + 3) / 2) - j), -ScreenManager.Viewport.Height / 2), playerShip);
                    AddGameObjectEvent(enemyAppearanceOffset + i * 5, enemyShip);
                }
            }

            for (int i = 0; i < 3; i++)
            {
                enemyShip = new EnemyShip("XML/Cut Scenes/Ships/Pirate Ships/Gnat", new Vector2(-50, 50 + i * ScreenManager.Viewport.Height / 8), playerShip);
                AddGameObjectEvent(enemyAppearanceOffset + 42, enemyShip);

                enemyShip = new EnemyShip("XML/Cut Scenes/Ships/UIN Ships/Harpoon", new Vector2(-50, 50 + i * ScreenManager.Viewport.Height / 8), playerShip);
                AddGameObjectEvent(enemyAppearanceOffset + 44, enemyShip);

                enemyShip = new EnemyShip("XML/Cut Scenes/Ships/UIN Ships/Harpoon", new Vector2(-50, 50 + i * ScreenManager.Viewport.Height / 8), playerShip);
                AddGameObjectEvent(enemyAppearanceOffset + 45, enemyShip);
            }

            AddRemoveGameObjectEvent(69, playerShip);
        }
        public override void AddGameObjects()
        {
            PlayerShip playerShip;

            for (int i = 0; i < 3; i++)
            {
                playerShip = new PlayerShip("XML/Cut Scenes/Ships/UIN Ships/Dragonfly", new Vector2(ScreenManager.Viewport.Width / 2, 100 * (i + 1)));
                playerShip.SetRotation(3 * MathHelper.PiOver2);
                AddGameObjectEvent(2, playerShip);
                AddMoveEvent(58, playerShip, new Vector2(ScreenManager.Viewport.Width / 2 + (1 - i) * 100, ScreenManager.Viewport.Height / 10));
                AddMoveEvent(81, playerShip, new Vector2(ScreenManager.Viewport.Width / 2 + (1 - i) * 100, -100));
                AddRotationEvent(64, playerShip, 0);
            }

            for (int i = 0; i < 5; i++)
            {
                playerShip = new PlayerShip("XML/Cut Scenes/Ships/UIN Ships/Hurricane", new Vector2(3 * ScreenManager.Viewport.Width / 5, 100 * (i + 1)));
                playerShip.SetRotation(3 * MathHelper.PiOver2);
                AddGameObjectEvent(4, playerShip);
                AddMoveEvent(58, playerShip, new Vector2(ScreenManager.Viewport.Width / 4, ScreenManager.Viewport.Height / 2 + (2 - i) * 100));
                AddMoveEvent(64, playerShip, new Vector2(ScreenManager.Viewport.Width / 6, ScreenManager.Viewport.Height / 2 + (2 - i) * 100));
                AddRotationEvent(63, playerShip, 3 * MathHelper.PiOver2);
            }

            for (int i = 0; i < 5; i++)
            {
                playerShip = new PlayerShip("XML/Cut Scenes/Ships/UIN Ships/Tornado", new Vector2(ScreenManager.Viewport.Width / 2, ScreenManager.Viewport.Height - 100 * (i + 1)));
                playerShip.SetRotation(3 * MathHelper.PiOver2);
                AddGameObjectEvent(9, playerShip);
                AddMoveEvent(58, playerShip, new Vector2(3 * ScreenManager.Viewport.Width / 4, ScreenManager.Viewport.Height / 2 + (2 - i) * 100));
                AddMoveEvent(88, playerShip, new Vector2(5 * ScreenManager.Viewport.Width / 6, ScreenManager.Viewport.Height / 2 + (2 - i) * 100));
                AddRotationEvent(63, playerShip, MathHelper.PiOver2);
            }

            for (int i = 0; i < 3; i++)
            {
                playerShip = new PlayerShip("XML/Cut Scenes/Ships/UIN Ships/Tsunami", new Vector2(2 * ScreenManager.Viewport.Width / 5, ScreenManager.Viewport.Height - 100 * (i + 1)));
                playerShip.SetRotation(3 * MathHelper.PiOver2);
                AddGameObjectEvent(7, playerShip);
                AddMoveEvent(58, playerShip, new Vector2(ScreenManager.Viewport.Width / 2 + (1 - i) * 100, 9 * ScreenManager.Viewport.Height / 10));
                AddRotationEvent(63, playerShip, MathHelper.Pi);
            }

            playerShip = new PlayerShip("XML/Cut Scenes/Ships/UIN Ships/Austria", new Vector2(3 * ScreenManager.Viewport.Width / 4, ScreenManager.Viewport.Height / 10));
            playerShip.SetRotation(3 * MathHelper.PiOver2);
            AddGameObjectEvent(5, playerShip);
            AddMoveEvent(48, playerShip, new Vector2(ScreenManager.Viewport.Width / 4, ScreenManager.Viewport.Height / 7));
            AddRotationEvent(65, playerShip, 3 * MathHelper.PiOver2);

            playerShip = new PlayerShip("XML/Cut Scenes/Ships/UIN Ships/Austria", new Vector2(9 * ScreenManager.Viewport.Width / 10, ScreenManager.Viewport.Height / 4));
            playerShip.SetRotation(3 * MathHelper.PiOver2);
            AddGameObjectEvent(8, playerShip);
            AddMoveEvent(48, playerShip, new Vector2(ScreenManager.Viewport.Width / 4, 6 * ScreenManager.Viewport.Height / 7));
            AddRotationEvent(65, playerShip, 3 * MathHelper.PiOver2);

            playerShip = new PlayerShip("XML/Cut Scenes/Ships/UIN Ships/Eagle", new Vector2(3 * ScreenManager.Viewport.Width / 4, ScreenManager.Viewport.Height / 3));
            playerShip.SetRotation(3 * MathHelper.PiOver2);
            AddGameObjectEvent(2, playerShip);
            AddMoveEvent(48, playerShip, new Vector2(2 * ScreenManager.Viewport.Width / 5, 2 * ScreenManager.Viewport.Height / 7));
            AddRotationEvent(56, playerShip, 0);
            AddMoveEvent(150, playerShip, new Vector2(ScreenManager.Viewport.Width / 4, playerShip.Position.Y));

            playerShip = new PlayerShip("XML/Cut Scenes/Ships/UIN Ships/Eagle", new Vector2(3 * ScreenManager.Viewport.Width / 5, ScreenManager.Viewport.Height / 2 + 150));
            playerShip.SetRotation(3 * MathHelper.PiOver2);
            AddGameObjectEvent(10, playerShip);
            AddMoveEvent(48, playerShip, new Vector2(3 * ScreenManager.Viewport.Width / 5, 2 * ScreenManager.Viewport.Height / 7));
            AddRotationEvent(56, playerShip, 0);
            AddMoveEvent(150, playerShip, new Vector2(ScreenManager.Viewport.Width / 4, playerShip.Position.Y));

            playerShip = new PlayerShip("XML/Cut Scenes/Ships/UIN Ships/Hawk", new Vector2(7 * ScreenManager.Viewport.Width / 8, 3 * ScreenManager.Viewport.Height / 4));
            playerShip.SetRotation(3 * MathHelper.PiOver2);
            AddGameObjectEvent(4, playerShip);
            AddMoveEvent(48, playerShip, new Vector2(2 * ScreenManager.Viewport.Width / 5, 5 * ScreenManager.Viewport.Height / 7));
            AddRotationEvent(56, playerShip, MathHelper.Pi);
            AddMoveEvent(150, playerShip, new Vector2(ScreenManager.Viewport.Width / 4, playerShip.Position.Y));

            playerShip = new PlayerShip("XML/Cut Scenes/Ships/UIN Ships/Hawk", new Vector2(2 * ScreenManager.Viewport.Width / 3, 5 * ScreenManager.Viewport.Height / 6));
            playerShip.SetRotation(3 * MathHelper.PiOver2);
            AddGameObjectEvent(6, playerShip);
            AddMoveEvent(48, playerShip, new Vector2(3 * ScreenManager.Viewport.Width / 5, 5 * ScreenManager.Viewport.Height / 7));
            AddRotationEvent(56, playerShip, MathHelper.Pi);
            AddMoveEvent(150, playerShip, new Vector2(ScreenManager.Viewport.Width / 4, playerShip.Position.Y));

            EnemyShip enemyShip;

            for (int i = 0; i < 3; i++)
            {
                for (int j = 0; j < 3; j++)
                {
                    enemyShip = new EnemyShip("XML/Cut Scenes/Ships/Pirate Ships/Gnat", new Vector2(-500, ScreenManager.Viewport.Height / 2 + (1 - i) * 100), null);
                    AddGameObjectEvent(62 + j * 8, enemyShip);
                    AddMoveEvent(63 + j * 8, enemyShip, new Vector2(ScreenManager.Viewport.Width / 4, enemyShip.Position.Y));
                }
            }

            for (int i = 0; i < 3; i++)
            {
                for (int j = 0; j < 3; j++)
                {
                    enemyShip = new EnemyShip("XML/Cut Scenes/Ships/Pirate Ships/Gnat", new Vector2(ScreenManager.Viewport.Width / 2 + (1 - i) * 100, -500), null);
                    AddGameObjectEvent(78 + j * 8, enemyShip);
                    AddMoveEvent(79 + j * 8, enemyShip, new Vector2(enemyShip.Position.X, ScreenManager.Viewport.Height / 10));
                }
            }

            for (int i = 0; i < 3; i++)
            {
                for (int j = 0; j < 3; j++)
                {
                    enemyShip = new EnemyShip("XML/Cut Scenes/Ships/Pirate Ships/Gnat", new Vector2(ScreenManager.Viewport.Width + 500, ScreenManager.Viewport.Height / 2 + (1 - i) * 100), null);
                    AddGameObjectEvent(86 + j * 8, enemyShip);
                    AddMoveEvent(87 + j * 8, enemyShip, new Vector2(3 * ScreenManager.Viewport.Width / 4, enemyShip.Position.Y));
                }
            }

            for (int i = 0; i < 3; i++)
            {
                for (int j = 0; j < 3; j++)
                {
                    enemyShip = new EnemyShip("XML/Cut Scenes/Ships/Pirate Ships/Gnat", new Vector2(ScreenManager.Viewport.Width / 2 + (1 - i) * 100, ScreenManager.Viewport.Height + 500), null);
                    AddGameObjectEvent(86 + j * 8, enemyShip);
                    AddMoveEvent(87 + j * 8, enemyShip, new Vector2(enemyShip.Position.X, 9 * ScreenManager.Viewport.Height / 10));
                }
            }

            enemyShip = new EnemyShip("XML/Cut Scenes/Ships/Pirate Ships/Tyrant", new Vector2(-500, ScreenManager.Viewport.Height / 2 - 250), null);
            enemyShip.SetRotation(MathHelper.PiOver2);
            AddGameObjectEvent(153, enemyShip);
            AddMoveEvent(153, enemyShip, new Vector2(ScreenManager.Viewport.Width / 2, enemyShip.Position.Y));

            enemyShip = new EnemyShip("XML/Cut Scenes/Ships/Pirate Ships/Tyrant", new Vector2(-500, ScreenManager.Viewport.Height / 2 + 250), null);
            AddGameObjectEvent(153, enemyShip);
            enemyShip.SetRotation(MathHelper.PiOver2);
            AddMoveEvent(153, enemyShip, new Vector2(ScreenManager.Viewport.Width / 2, enemyShip.Position.Y));

            enemyShip = new EnemyShip("XML/Cut Scenes/Ships/Pirate Ships/Hulk", new Vector2(-300, ScreenManager.Viewport.Height / 2), null);
            AddGameObjectEvent(133, enemyShip);
            enemyShip.SetRotation(MathHelper.PiOver2);
            AddMoveEvent(133, enemyShip, new Vector2(ScreenManager.Viewport.Width / 2, enemyShip.Position.Y));
        }
        public override void AddGameObjects()
        {
            PlayerShip playerShip = new PlayerShip("XML/Cut Scenes/Ships/UIN Ships/Barracuda", new Vector2(ScreenManager.Viewport.Width / 2, 2000));
            AddGameObjectEvent(0, playerShip);
            AddMoveEvent(1, playerShip, new Vector2(playerShip.Position.X, 1400));
            AddMoveEvent(17, playerShip, new Vector2(playerShip.Position.X, ScreenManager.Viewport.Height / 2 + 500));

            ScreenManager.Camera.SetPosition(playerShip.Position);

            GameObject spaceStation = new GameObject("Sprites/Space Objects/Space Stations/LargeSpaceStation", new Vector2(ScreenManager.Viewport.Width / 2, ScreenManager.Viewport.Height / 2));
            AddGameObjectEvent(1, spaceStation);

            for (int i = 0; i < 3; i++)
            {
                playerShip = new PlayerShip("XML/Cut Scenes/Ships/UIN Ships/Dragonfly", new Vector2(200 * (i + 1) + ScreenManager.Viewport.Width / 2, 2300));
                AddGameObjectEvent(0, playerShip);
                AddMoveEvent(0, playerShip, new Vector2(playerShip.Position.X, 1300));
                AddMoveEvent(49, playerShip, new Vector2(-200, ScreenManager.Viewport.Height / 2));
                AddRemoveGameObjectEvent(55, playerShip);
            }

            for (int i = 0; i < 5; i++)
            {
                playerShip = new PlayerShip("XML/Cut Scenes/Ships/UIN Ships/Hurricane", new Vector2(150 * (2 - i) + ScreenManager.Viewport.Width / 2, 2000));
                AddGameObjectEvent(10, playerShip);
                AddMoveEvent(10, playerShip, new Vector2(80, 500 + 100 * (2 - i)));
                AddMoveEvent(51, playerShip, new Vector2(-200, ScreenManager.Viewport.Height / 2));
                AddRemoveGameObjectEvent(57, playerShip);
            }

            for (int i = 0; i < 5; i++)
            {
                playerShip = new PlayerShip("XML/Cut Scenes/Ships/UIN Ships/Tornado", new Vector2(150 * (2 - i) + ScreenManager.Viewport.Width / 2, 2000));
                AddGameObjectEvent(20, playerShip);
                AddMoveEvent(20, playerShip, new Vector2(ScreenManager.Viewport.Width - 100, 500 + 100 * (2 - i)));
                AddMoveEvent(53, playerShip, new Vector2(-200, ScreenManager.Viewport.Height / 2));
                AddRemoveGameObjectEvent(63, playerShip);
            }

            for (int i = 0; i < 3; i++)
            {
                playerShip = new PlayerShip("XML/Cut Scenes/Ships/UIN Ships/Tsunami", new Vector2(-100 * (i + 1) + ScreenManager.Viewport.Width / 2, 2000));
                AddGameObjectEvent(30, playerShip);
                AddMoveEvent(30, playerShip, new Vector2(playerShip.Position.X, 30));
                AddMoveEvent(55, playerShip, new Vector2(-200, ScreenManager.Viewport.Height / 2));
                AddRemoveGameObjectEvent(59, playerShip);
            }

            playerShip = new PlayerShip("XML/Cut Scenes/Ships/UIN Ships/Austria", new Vector2(ScreenManager.Viewport.Width / 2 - 500, ScreenManager.Viewport.Height / 2));
            playerShip.SetRotation(3 * MathHelper.PiOver2);
            AddGameObjectEvent(0, playerShip);
            AddMoveEvent(60, playerShip, new Vector2(-200, ScreenManager.Viewport.Height / 2));

            playerShip = new PlayerShip("XML/Cut Scenes/Ships/UIN Ships/Austria", new Vector2(ScreenManager.Viewport.Width / 2 + 500, ScreenManager.Viewport.Height / 2));
            playerShip.SetRotation(MathHelper.PiOver2);
            AddGameObjectEvent(0, playerShip);
            AddMoveEvent(60, playerShip, new Vector2(-200, ScreenManager.Viewport.Height / 2));

            float rootTwoRecip = (float)Math.Sin(MathHelper.PiOver4);

            playerShip = new PlayerShip("XML/Cut Scenes/Ships/UIN Ships/Eagle", new Vector2(ScreenManager.Viewport.Width / 2 - 450 * rootTwoRecip, ScreenManager.Viewport.Height / 2 + 450 * rootTwoRecip));
            playerShip.SetRotation(7 * MathHelper.PiOver4);
            AddGameObjectEvent(0, playerShip);
            AddMoveEvent(65, playerShip, new Vector2(-200, ScreenManager.Viewport.Height / 2));

            playerShip = new PlayerShip("XML/Cut Scenes/Ships/UIN Ships/Eagle", new Vector2(ScreenManager.Viewport.Width / 2 + 450 * rootTwoRecip, ScreenManager.Viewport.Height / 2 + 450 * rootTwoRecip));
            playerShip.SetRotation(MathHelper.PiOver4);
            AddGameObjectEvent(0, playerShip);
            AddMoveEvent(65, playerShip, new Vector2(-200, ScreenManager.Viewport.Height / 2));

            playerShip = new PlayerShip("XML/Cut Scenes/Ships/UIN Ships/Hawk", new Vector2(ScreenManager.Viewport.Width / 2 - 450 * rootTwoRecip, ScreenManager.Viewport.Height / 2 - 450 * rootTwoRecip));
            playerShip.SetRotation(5 * MathHelper.PiOver4);
            AddGameObjectEvent(0, playerShip);
            AddMoveEvent(70, playerShip, new Vector2(-200, ScreenManager.Viewport.Height / 2));

            playerShip = new PlayerShip("XML/Cut Scenes/Ships/UIN Ships/Hawk", new Vector2(ScreenManager.Viewport.Width / 2 + 450 * rootTwoRecip, ScreenManager.Viewport.Height / 2 - 450 * rootTwoRecip));
            playerShip.SetRotation(3 * MathHelper.PiOver4);
            AddGameObjectEvent(0, playerShip);
            AddMoveEvent(70, playerShip, new Vector2(-200, ScreenManager.Viewport.Height / 2));
        }
        private void BuyShipEvent(object sender, EventArgs e)
        {
            Button button = sender as Button;
            if (button != null)
            {
                string[] strings = button.Name.Split(' ');
                if (PlayerShip != null)
                {
                    ExtendedScreenManager.Session.AddMoney(-Convert.ToInt32(strings[1]) + PlayerShip.TotalWorth / 2);
                }
                else
                {
                    ExtendedScreenManager.Session.AddMoney(-Convert.ToInt32(strings[1]));
                }

                PlayerShip = new PlayerShip("XML/Ships/" + strings[0], Vector2.Zero);
                PlayerShip.LoadContent(ScreenManager.Content);
                DisplayCurrentShipInformation();

                Text currentMoney = (Text)GetScreenUIElement("Current Money");
                if (currentMoney != null)
                {
                    currentMoney.ChangeText(ExtendedScreenManager.Session.Money.ToString());
                }
            }
        }