public SpectatorPlayerState(Player _player)
        {
            player = _player;

            cameraPosition = nullPosition;
            cameraView = nullView;
            cameraUp = nullUp;

            index = 0;

            controls = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/spectator_mode"), new Vector2(27, 433));

            cameraPositionOffset = new Vector3(0, 15, -50);
            cameraLookAt = new Vector3(0, 0, 1000);

            // Find a team to start on
            Random random = new Random(System.DateTime.Now.Millisecond);
            if (random.Next() % 2 == 0)
            {
                currentTeam = Ship.Team.Esxolus;
            }
            else
            {
                currentTeam = Ship.Team.Halk;
            }

            follow = null;
        }
        public DestroyTargetEvent(List<SceneObject> _targets)
            : base()
        {
            targets = _targets;
            HasPosition = true;

            objectiveText = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/current_objective_box"), new Vector2(632, 33));

            Positions = new List<Vector3>();
            for (int i = 0; i < targets.Count; i++)
            {
                Positions.Add(targets[i].Position);
            }
        }
        public TeamSelectPlayerState(Player _player)
        {
            selectedTeam = Team.Auto;

            currentState = state.team_select;

            nextState = null;

            player = _player;
            player.TeamNotSet = true;

            cameraPosition = new Vector3(0, 75000, 0);
            cameraView = new Vector3(0, 0, 0);
            cameraUp = new Vector3(0, 0, 1);

            player.PlayerCamera.setViewMatrix(cameraPosition, cameraView, cameraUp);

            player.PlayerHUD.InitializeGraphics();

            player.PlayerShip = null;

            switch ( Space394Game.GameInstance.NumberOfPlayers)
            {
                case 1:
                    box = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/team_select"), new Vector2(142, 418));
                    break;
                case 2:
                    box = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/team_select"), new Vector2(142, 418));
                    break;
                case 3:
                    box = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/team_select"), new Vector2(142, 418));
                    break;
                case 4:
                    box = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/team_select"), new Vector2(142, 418));
                    break;

            }

            esxolus = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/team_select_esx"), new Vector2(142, 281));
            halk = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/team_select_halk"), new Vector2(538, 280));
            auto = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/team_select_auto"), new Vector2(352, 272));
            spectate = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/team_select_spectate"), new Vector2(343, 348));

            esxolusLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/team_select_esx_lit"), new Vector2(142, 281));
            halkLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/team_select_halk_lit"), new Vector2(538, 280));
            autoLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/team_select_auto_lit"), new Vector2(352, 272));
            spectateLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/team_select_spectate_lit"), new Vector2(343, 348));

            LogCat.updateValue("PlayerState", "TeamSelect");
        }
        /*private float victoryTTL;
        private const float VICTORY_TTL = 3.0f;

        private Vector2 pressStartPosition;
        private AutoTexture2D pressStartTexture;*/
        public ScoreboardPlayerState(Player _player)
        {
            player = _player;

            player.PlayerShip = null;

            cameraPosition = new Vector3(0, 75000, 0);
            cameraView = new Vector3(0, 0, 0);
            cameraUp = new Vector3(0, 0, 1);

            if (player.TeamNotSet)
            {
                if (((GameScene)Space394Game.GameInstance.CurrentScene).getSpawnPointsRemaining(SceneObjects.Ship.Team.Halk) <= 0)
                {
                    victoryTexture = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/victory_esxolus"), Vector2.Zero);
                }
                else
                {
                    victoryTexture = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/victory_halk"), Vector2.Zero);
                }
            }
            else if (player.CurrentTeam == SceneObjects.Ship.Team.Esxolus)
            {
                if (((GameScene)Space394Game.GameInstance.CurrentScene).getSpawnPointsRemaining(_player.CurrentTeam) <= 0)
                {
                    victoryTexture = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/defeat_esxolus"), Vector2.Zero);
                }
                else
                {
                    victoryTexture = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/victory_esxolus"), Vector2.Zero);
                }
            }
            else
            {
                if (((GameScene)Space394Game.GameInstance.CurrentScene).getSpawnPointsRemaining(_player.CurrentTeam) <= 0)
                {
                    victoryTexture = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/defeat_halk"), Vector2.Zero);
                }
                else
                {
                    victoryTexture = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/victory_halk"), Vector2.Zero);
                }
            }

            player.PlayerCamera.setViewMatrix(cameraPosition, cameraView, cameraUp);

            LogCat.updateValue("PlayerState", "Scoreboard");
        }
        public SpawnSelectPlayerState(Player _player)
        {
            index = 0;
            currentShip = ShipType.None;

            modelPosition = new Vector3(0.1f, 0.0f, 1.0f);

            player = _player;

            player.PlayerShip = null;

            if (player.CurrentTeam == Ship.Team.Esxolus)
            {
                assaultFighter = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/esxolus_assault"), Vector2.Zero);
                interceptor = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/esxolus_interceptor"), Vector2.Zero);
                bomber = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/esxolus_bomber"), Vector2.Zero);
                spawnSelectTexture = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/spawn_esx"), new Vector2(142, 418));
                //preparingToLaunch = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/
            }
            else
            {
                assaultFighter = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/halk_assault"), Vector2.Zero);
                interceptor = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/halk_interceptor"), Vector2.Zero);
                bomber = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/halk_bomber"), Vector2.Zero);
                spawnSelectTexture = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/spawn_halk"), new Vector2(142, 418));
            }
            spawnSelectPressA = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/spawn_press_a"), new Vector2(249, 388));
            modelRotation = 0;

            rememberedSpawnShipNumber = getSpawnShips().Count;

            preparedToLaunch = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/spawn_countdown_prep"), new Vector2(278, 113));
            launchIn = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/spawn_countdown_launch"), new Vector2(343, 113));
            one = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/spawn_countdown_1"), new Vector2(361, 167));
            two = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/spawn_countdown_2"), new Vector2(361, 167));
            three = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/spawn_countdown_3"), new Vector2(361, 167));
            four = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/spawn_countdown_4"), new Vector2(361, 167));
            five = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/spawn_countdown_5"), new Vector2(361, 167));
            back = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/back"), new Vector2(25, 435));

            while (index < getSpawnShips().Count
                && getSpawnShips()[index].ShipTeam != player.CurrentTeam) // They must have a ship, but just in case
            {
                index++;
            }

            LogCat.updateValue("PlayerState", "SpawnSelect");
        }
        public TurningAroundPlayerState(Player _player)
        {
            LogCat.updateValue("PlayerState", "TurningAround");

            player = _player;

            player.PlayerShip.CollisionBase.Active = true;

            player.PlayerHUDActive = true;

            alphaIn = true;
            alpha = 0.0f;

            reentrySphere = new CollisionSphere(Vector3.Zero, REENTRY_RADIUS);
            reentrySphere.Active = true;

            cameraPositionOffset = new Vector3(0, 15, -50);
            cameraLookAt = new Vector3(0, 0, 1000000);

            Texture2D graphic = ContentLoadManager.loadTexture("Textures/ReturningToBattleFieldMessage");
            returningGraphicPosition = new Vector2(400, 100);
            returningGraphicPosition.X -= graphic.Width / 2;
            returningGraphic = new AutoTexture2D(graphic, returningGraphicPosition);
        }
        public override void Initialize()
        {
            SoundManager.StopMusic();

            overlay = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/credits_overlay"), Vector2.Zero);

            gameTitleFont = Space394Game.GameInstance.Content.Load<SpriteFont>("Fonts/CreditsGameTitleFont");
            titleFont = Space394Game.GameInstance.Content.Load<SpriteFont>("Fonts/CreditsTitleFont");
            font = Space394Game.GameInstance.Content.Load<SpriteFont>("Fonts/CreditsFont");

            List<string> sortList = new List<string>();

            gps_membersList = new List<string>();
            foreach (string s in grubby_paw_studios_members)
            {
                sortList.Add(s);
            }

            while (sortList.Count > 0)
            {
                int j = random.Next() % sortList.Count;
                gps_membersList.Add(sortList[j]);
                sortList.RemoveAt(j);
            }

            audio_contributorsList = new List<string>();
            foreach (string s in audio_contributors)
            {
                sortList.Add(s);
            }

            while (sortList.Count > 0)
            {
                int j = random.Next() % sortList.Count;
                audio_contributorsList.Add(sortList[j]);
                sortList.RemoveAt(j);
            }

            createdList = new List<string>();
            foreach (string s in created)
            {
                sortList.Add(s);
            }

            while (sortList.Count > 0)
            {
                int j = random.Next() % sortList.Count;
                createdList.Add(sortList[j]);
                sortList.RemoveAt(j);
            }

            playtestersList = new List<string>();
            foreach (string s in playtesters)
            {
                sortList.Add(s);
            }

            while (sortList.Count > 0)
            {
                int j = random.Next() % sortList.Count;
                playtestersList.Add(sortList[j]);
                sortList.RemoveAt(j);
            }

            thankeeList = new List<string>();
            foreach (string s in special_thankees)
            {
                sortList.Add(s);
            }

            while (sortList.Count > 0)
            {
                int j = random.Next() % sortList.Count;
                thankeeList.Add(sortList[j]);
                sortList.RemoveAt(j);
            }

            base.Initialize();
        }
        public override void Initialize()
        {
            mainMenuTexture = ContentLoadManager.loadTexture("Textures/Screens/start");

            stars = ContentLoadManager.loadTexture("Textures/Screens/stars_background");

            Texture2D pressStartTexture = ContentLoadManager.loadTexture("Textures/Screens/text_press_start");
            pressStartPosition = new Vector2(400 - pressStartTexture.Width / 2, 400);
            pressStart = new AutoTexture2D(pressStartTexture, pressStartPosition);

            drawStart = false;
            pressStartFadeDelay = PRESS_START_FADE_DELAY;
            pressStartFade = 0;
            fade = 0;
            fadeDelay = MAX_DELAY;
            fadeIn = true;
            delaySet = false;

            shownStart = false;

            Space394Game.GameInstance.clearPlayers();

            SoundManager.StartMenuMusic();

            base.Initialize();
        }
        public override void Initialize()
        {
            textPosition = new Vector2(100, 400);

            stars = ContentLoadManager.loadTexture("Textures/Screens/stars_background_alt");
            background = ContentLoadManager.loadTexture("Textures/Screens/player_start_grid");

            Texture2D pressStartToJoinTexture = ContentLoadManager.loadTexture("Textures/Screens/text_start_to_join");
            Texture2D pressConfirmWhenReadyTexture = ContentLoadManager.loadTexture("Textures/Screens/text_a_when_ready");
            Texture2D readyTexture = ContentLoadManager.loadTexture("Textures/Screens/text_ready");
            Texture2D pressStartToBeginTexture = ContentLoadManager.loadTexture("Textures/Screens/text_start_match");

            int width = pressStartToJoinTexture.Width / 2;
            joinTextPositions = new Vector2[] {
                new Vector2(200-width, 100),
                new Vector2(600-width, 100),
                new Vector2(200-width, 340),
                new Vector2(600-width, 340) };

            width = pressConfirmWhenReadyTexture.Width / 2;
            pressReadyTextPositions = new Vector2[] {
                new Vector2(200-width, 50),
                new Vector2(600-width, 50),
                new Vector2(200-width, 290),
                new Vector2(600-width, 290) };

            width = readyTexture.Width / 2;
            readyTextPositions = new Vector2[] {
                new Vector2(200-width, 50),
                new Vector2(600-width, 50),
                new Vector2(200-width, 290),
                new Vector2(600-width, 290) };

            pressStartToBeginPosition = new Vector2(400 - pressStartToBeginTexture.Width / 2, 240 - pressStartToBeginTexture.Height / 2);

            pressStartToJoin = new AutoTexture2D(pressStartToJoinTexture, joinTextPositions[0]);
            pressConfirmWhenReady = new AutoTexture2D(pressConfirmWhenReadyTexture, pressReadyTextPositions[0]);
            ready = new AutoTexture2D(readyTexture, readyTextPositions[0]);

            pressStartToBegin = new AutoTexture2D(pressStartToBeginTexture, pressStartToBeginPosition);

            controller1 = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/xbox_player_1_icon"), Vector2.Zero);
            controller2 = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/xbox_player_2_icon"), Vector2.Zero);
            controller3 = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/xbox_player_3_icon"), Vector2.Zero);
            controller4 = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/xbox_player_4_icon"), Vector2.Zero);
            keyboard = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/keyboard_icon"), Vector2.Zero);

            font = Space394Game.GameInstance.Content.Load<SpriteFont>("Fonts\\DefaultFont");

            nextScene = Space394Game.sceneEnum.LoadingScene;

            controllerPositions = new Vector2[] {
                new Vector2(200, 135),
                new Vector2(600, 135),
                new Vector2(200, 375),
                new Vector2(600, 375) };

            base.Initialize();

            /*for (int i = 0; i < Space394Game.GameInstance.Controllers.Length-2; i++)
            {
                Space394Game.GameInstance.increasePlayers((int)Space394Game.GameInstance.Controllers[i].PlayerNumber);
                readyToExit = true;
            }*/
        }
        public override void Initialize()
        {
            if (System.DateTime.Now.Millisecond % 2 == 0)
            {
                mainMenuTexture = ContentLoadManager.loadTexture("Textures/Screens/main_esx");
                skirmishTexture = ContentLoadManager.loadTexture("Textures/Screens/skirmish_esx");
                extrasTexture = ContentLoadManager.loadTexture("Textures/Screens/extras_esx");

                campaignPosition = new Vector2(280, 120);
                skirmishPosition = new Vector2(286, 181);
                settingsPosition = new Vector2(278, 237);
                extrasPosition = new Vector2(269, 290);
                exitPosition = new Vector2(254, 340);

                campaign = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/main_esx_campaign"), campaignPosition);
                skirmish = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/main_esx_skirmish"), skirmishPosition);
                settings = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/main_esx_settings"), settingsPosition);
                extras = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/main_esx_extras"), extrasPosition);
                exit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/main_esx_exit"), exitPosition);

                campaignLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/main_esx_campaign_lit"), campaignPosition);
                skirmishLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/main_esx_skirmish_lit"), skirmishPosition);
                settingsLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/main_esx_settings_lit"), settingsPosition);
                extrasLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/main_esx_extras_lit"), extrasPosition);
                exitLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/main_esx_exit_lit"), exitPosition);

                engagementPosition = new Vector2(286, 181);
                contentionPosition = new Vector2(278, 237);
                dissidencePosition = new Vector2(269, 290);

                engagement = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/skirmish_esx_engagement"), engagementPosition);
                contention = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/skirmish_esx_contention"), contentionPosition);
                dissidence = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/skirmish_esx_dissidence"), dissidencePosition);

                engagementLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/skirmish_esx_engagement_lit"), engagementPosition);
                contentionLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/skirmish_esx_contention_lit"), contentionPosition);
                dissidenceLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/skirmish_esx_dissidence_lit"), dissidencePosition);

                devPosition = new Vector2(280, 120);
                artPosition = new Vector2(286, 181);
                trailerPosition = new Vector2(278, 237);
                creditsPosition = new Vector2(269, 290);

                dev = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/extras_esx_dev_int"), devPosition);
                art = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/extras_esx_art"), artPosition);
                trailer = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/extras_esx_trailer"), trailerPosition);
                credits = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/extras_esx_credits"), creditsPosition);

                devLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/extras_esx_dev_int_lit"), devPosition);
                artLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/extras_esx_art_lit"), artPosition);
                trailerLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/extras_esx_trailer_lit"), trailerPosition);
                creditsLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/extras_esx_credits_lit"), creditsPosition);

                farLeftTopShipPosition = new Vector2(482, 145);
                leftTopShipPosition = new Vector2(530, 145);
                middleTopShipPosition = new Vector2(578, 145);
                rightTopShipPosition = new Vector2(626, 145);
                farRightTopShipPosition = new Vector2(673, 145);

                farLeftBottomShipPosition = new Vector2(484, 277);
                leftBottomShipPosition = new Vector2(531, 277);
                middleBottomShipPosition = new Vector2(579, 277);
                rightBottomShipPosition = new Vector2(627, 277);
                farRightBottomShipPosition = new Vector2(675, 277);

                topShip = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/skirmish_esx_cap_top"), middleTopShipPosition);
                bottomShip = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/skirmish_halk_cap_bottom"), middleBottomShipPosition);

                foreach (Player player in Space394Game.GameInstance.Controllers)
                {
                    player.CurrentTeam = Ship.Team.Esxolus;
                }
            }
            else
            {
                mainMenuTexture = ContentLoadManager.loadTexture("Textures/Screens/main_halk");
                skirmishTexture = ContentLoadManager.loadTexture("Textures/Screens/skirmish_halk");
                extrasTexture = ContentLoadManager.loadTexture("Textures/Screens/extras_halk");

                campaignPosition = new Vector2(380, 121);
                skirmishPosition = new Vector2(377, 182);
                settingsPosition = new Vector2(393, 239);
                extrasPosition = new Vector2(414, 290);
                exitPosition = new Vector2(451, 341);

                campaign = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/main_halk_campaign"), campaignPosition);
                skirmish = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/main_halk_skirmish"), skirmishPosition);
                settings = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/main_halk_settings"), settingsPosition);
                extras = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/main_halk_extras"), extrasPosition);
                exit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/main_halk_exit"), exitPosition);

                campaignLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/main_halk_campaign_lit"), campaignPosition);
                skirmishLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/main_halk_skirmish_lit"), skirmishPosition);
                settingsLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/main_halk_settings_lit"), settingsPosition);
                extrasLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/main_halk_extras_lit"), extrasPosition);
                exitLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/main_halk_exit_lit"), exitPosition);

                engagementPosition = new Vector2(350, 182);
                contentionPosition = new Vector2(371, 239);
                dissidencePosition = new Vector2(377, 290);

                engagement = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/skirmish_halk_engagement"), engagementPosition);
                contention = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/skirmish_halk_contention"), contentionPosition);
                dissidence = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/skirmish_halk_dissidence"), dissidencePosition);

                engagementLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/skirmish_halk_engagement_lit"), engagementPosition);
                contentionLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/skirmish_halk_contention_lit"), contentionPosition);
                dissidenceLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/skirmish_halk_dissidence_lit"), dissidencePosition);

                devPosition = new Vector2(283, 121);
                artPosition = new Vector2(301, 182);
                trailerPosition = new Vector2(352, 239);
                creditsPosition = new Vector2(405, 290);

                dev = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/extras_halk_dev_int"), devPosition);
                art = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/extras_halk_art"), artPosition);
                trailer = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/extras_halk_trailer"), trailerPosition);
                credits = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/extras_halk_credits"), creditsPosition);

                devLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/extras_halk_dev_int_lit"), devPosition);
                artLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/extras_halk_art_lit"), artPosition);
                trailerLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/extras_halk_trailer_lit"), trailerPosition);
                creditsLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/extras_halk_credits_lit"), creditsPosition);

                farLeftTopShipPosition = new Vector2(75, 152);
                leftTopShipPosition = new Vector2(123, 152);
                middleTopShipPosition = new Vector2(171, 152);
                rightTopShipPosition = new Vector2(219, 152);
                farRightTopShipPosition = new Vector2(266, 152);

                farLeftBottomShipPosition = new Vector2(75, 271);
                leftBottomShipPosition = new Vector2(122, 271);
                middleBottomShipPosition = new Vector2(170, 271);
                rightBottomShipPosition = new Vector2(218, 271);
                farRightBottomShipPosition = new Vector2(266, 271);

                topShip = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/skirmish_halk_cap_top"), middleTopShipPosition);
                bottomShip = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/skirmish_esx_cap_bottom"), middleBottomShipPosition);

                foreach (Player player in Space394Game.GameInstance.Controllers)
                {
                    player.CurrentTeam = Ship.Team.Halk;
                }
            }

            buttons = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/menu_buttons"), new Vector2(25, 435));

            drawButtons = false;
            buttonsFadeDelay = BUTTON_FADE_DELAY;
            pressButtonFade = 0;
            fade = 0;
            fadeDelay = MAX_DELAY;
            fadeIn = true;
            delaySet = false;

            Space394Game.GameInstance.clearPlayers();

            if (!SoundManager.PlayingMusic)
            {
                SoundManager.StartMenuMusic();
            }
            else { }

            base.Initialize();
        }
        public PausedPlayerState(Player _player)
        {
            player = _player;

            pauseBackgroundEsx = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/menu_esx"), new Vector2(0, 0));
            pauseBackgroundHalk = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/menu_halk"), new Vector2(0, 0));
            optionsBackgroundEsx = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/options_esx"), new Vector2(0, 0));
            optionsBackgroundHalk = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/options_halk"), new Vector2(0, 0));
            destructBackgroundEsx = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/destruct_esx"), new Vector2(0, 0));
            destructBackgroundHalk = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/destruct_halk"), new Vector2(0, 0));
            leaveBackgroundEsx = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/leave_esx"), new Vector2(0, 0));
            leaveBackgroundHalk = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/leave_halk"), new Vector2(0, 0));

            resumeEsx = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/menu_esx_resume"), new Vector2(347, 165));
            resumeHalk = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/menu_halk_resume"), new Vector2(345, 168));
            optionsEsx = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/menu_esx_options"), new Vector2(347, 202));
            optionsHalk = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/menu_halk_options"), new Vector2(347, 204));
            voteEsx = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/menu_esx_vote"), new Vector2(338, 238));
            voteHalk = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/menu_halk_vote"), new Vector2(336, 240));
            destructEsx = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/menu_esx_destruct"), new Vector2(330, 274));
            destructHalk = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/menu_halk_destruct"), new Vector2(327, 277));
            leaveEsx = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/menu_esx_leave"), new Vector2(332, 310));
            leaveHalk = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/menu_halk_leave"), new Vector2(330, 312));
            yesEsx = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/destruct_esx_yes"), new Vector2(361, 246));
            yesHalk = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/destruct_halk_yes"), new Vector2(358, 247));
            noEsx = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/destruct_esx_no"), new Vector2(364, 282));
            noHalk = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/destruct_halk_no"), new Vector2(363, 284));
            settingsEsx = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/options_esx_settings"), new Vector2(345, 198));
            settingsHalk = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/options_halk_settings"), new Vector2(341, 201));
            controlsEsx = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/options_esx_controls"), new Vector2(343, 235));
            controlsHalk = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/options_halk_controls"), new Vector2(340, 237));
            profileEsx = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/options_esx_profile"), new Vector2(349, 271));
            profileHalk = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/options_halk_profile"), new Vector2(347, 273));

            resumeEsxLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/menu_esx_resume_lit"), new Vector2(347, 165));
            resumeHalkLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/menu_halk_resume_lit"), new Vector2(345, 168));
            optionsEsxLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/menu_esx_options_lit"), new Vector2(347, 202));
            optionsHalkLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/menu_halk_options_lit"), new Vector2(347, 204));
            voteEsxLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/menu_esx_vote_lit"), new Vector2(338, 238));
            voteHalkLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/menu_halk_vote_lit"), new Vector2(336, 240));
            destructEsxLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/menu_esx_destruct_lit"), new Vector2(330, 274));
            destructHalkLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/menu_halk_destruct_lit"), new Vector2(327, 277));
            leaveEsxLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/menu_esx_leave_lit"), new Vector2(332, 310));
            leaveHalkLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/menu_halk_leave_lit"), new Vector2(330, 312));
            yesEsxLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/destruct_esx_yes_lit"), new Vector2(361, 246));
            yesHalkLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/destruct_halk_yes_lit"), new Vector2(358, 247));
            noEsxLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/destruct_esx_no_lit"), new Vector2(364, 282));
            noHalkLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/destruct_halk_no_lit"), new Vector2(363, 284));
            settingsEsxLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/options_esx_settings_lit"), new Vector2(345, 198));
            settingsHalkLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/options_halk_settings_lit"), new Vector2(341, 201));
            controlsEsxLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/options_esx_controls_lit"), new Vector2(343, 235));
            controlsHalkLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/options_halk_controls_lit"), new Vector2(340, 237));
            profileEsxLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/options_esx_profile_lit"), new Vector2(349, 271));
            profileHalkLit = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/options_halk_profile_lit"), new Vector2(347, 273));

            controlsPC = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/controls_PC"), new Vector2(0, 0));
            controlsXBox = new AutoTexture2D(ContentLoadManager.loadTexture("Textures/Screens/controls_xbox"), new Vector2(0, 0));

            currentMenuState = menuState.main;
            currentMainState = mainState.resume;
            currentYesNoState = yesNoState.no;
            currentOptionsState = optionsState.controls;
            drawingControls = false;
            drawingOtherControls = false;
        }