示例#1
0
        /// <summary>
        /// Sets the visual string toggle state for each of the menu settings.
        /// </summary>
        public override void Set_Toggle_State()
        {
            // Remove all current items.
            Mod_Menu_Page_Strings.Clear();

            // Set Menu Status
            if (Program.Feature_Position_XYZ_Window_X.Get_Overlay_Status())
            {
                Mod_Menu_Page_Strings.Add(Tick_Enabled + " XYZ Position/Velocity Information Window");
            }
            else
            {
                Mod_Menu_Page_Strings.Add(Tick_Disabled + " XYZ Position/Velocity Information Window");
            }

            // Set Menu Status
            if (Program.Feature_Enhanced_Debug_Movement_Mode_X.Get_Free_Movement_Enable_Status())
            {
                Mod_Menu_Page_Strings.Add(Tick_Enabled + " Enhanced Debug Movement Mode");
            }
            else
            {
                Mod_Menu_Page_Strings.Add(Tick_Disabled + " Enhanced Debug Movement Mode");
            }

            // In case menu width changes.
            if (Program.Sonic_Heroes_Overlay.Ready_To_Render)
            {
                Set_Drawing_Properties();
            }
        }
        /// <summary>
        /// Sets the visual string toggle state for each of the menu settings.
        /// </summary>
        public override void Set_Toggle_State()
        {
            // Remove all current items.
            Mod_Menu_Page_Strings.Clear();

            // Append current menu toggle states.
            Mod_Menu_Page_Strings.Add("Minimal HUD Heads Up Display X Offset: " + Program.Feature_Minimal_HUD_X.Positioning_X_Position.ToString("0.00F"));
            Mod_Menu_Page_Strings.Add("Minimal HUD Heads Up Display Y Offset: " + Program.Feature_Minimal_HUD_X.Positioning_Y_Position.ToString("0.00F"));
            Mod_Menu_Page_Strings.Add("Minimal HUD Heads Up Display Distance Between Items: " + Program.Feature_Minimal_HUD_X.Positioning_Vertical_Offset.ToString("0.00F"));

            if (Program.Feature_Minimal_HUD_X.Enabled)
            {
                Mod_Menu_Page_Strings.Add(Tick_Enabled + " Minimal HUD");
            }
            else
            {
                Mod_Menu_Page_Strings.Add(Tick_Disabled + " Minimal HUD");
            }

            if (Program.Feature_Minimal_HUD_X.Enabled_HUD)
            {
                Mod_Menu_Page_Strings.Add(Tick_Enabled + " Disable HUD");
            }
            else
            {
                Mod_Menu_Page_Strings.Add(Tick_Disabled + " Disable HUD");
            }

            // In case menu width changes.
            if (Program.Sonic_Heroes_Overlay.Ready_To_Render)
            {
                Set_Drawing_Properties();
            }
        }
        /// <summary>
        /// Sets the visual string toggle state for each of the menu settings.
        /// </summary>
        public override void Set_Toggle_State()
        {
            // Remove all current items.
            Mod_Menu_Page_Strings.Clear();

            // Append current menu toggle states.
            Mod_Menu_Page_Strings.Add("Magnetic Barrier Base Suction Speed: " + Program.Feature_Magnetic_Barrier_X.Get_Base_Speed().ToString("0.00F"));
            Mod_Menu_Page_Strings.Add("Magnetic Barrier Distance Dropoff Speed: " + Program.Feature_Magnetic_Barrier_X.Get_Distance_Speed().ToString("0.000F"));

            if (Program.Feature_Magnetic_Barrier_X.Get_IsEnabled())
            {
                Mod_Menu_Page_Strings.Add(Tick_Enabled + " Magnetic Barrier");
            }
            else
            {
                Mod_Menu_Page_Strings.Add(Tick_Disabled + " Magnetic Barrier");
            }

            if (Program.Feature_Party_Mode_X.Get_ToggleState())
            {
                Mod_Menu_Page_Strings.Add(Tick_Enabled + " Party Mode");
            }
            else
            {
                Mod_Menu_Page_Strings.Add(Tick_Disabled + " Party Mode");
            }


            // In case menu width changes.
            if (Program.Sonic_Heroes_Overlay.Ready_To_Render)
            {
                Set_Drawing_Properties();
            }
        }
        /// <summary>
        /// Sets the visual string toggle state for each of the menu settings.
        /// </summary>
        public override void Set_Toggle_State()
        {
            // Remove all current items.
            Mod_Menu_Page_Strings.Clear();

            // Append current menu toggle states.
            Mod_Menu_Page_Strings.Add("Sonic's Physics Profile: " + Program.Feature_Physics_Swapper_X.Get_Current_Character_Assignment_Name(Feature_Physics_Swap.Characters_Heroes.Sonic));
            Mod_Menu_Page_Strings.Add("Knuckles' Physics Profile: " + Program.Feature_Physics_Swapper_X.Get_Current_Character_Assignment_Name(Feature_Physics_Swap.Characters_Heroes.Knuckles));
            Mod_Menu_Page_Strings.Add("Tails' Physics Profile: " + Program.Feature_Physics_Swapper_X.Get_Current_Character_Assignment_Name(Feature_Physics_Swap.Characters_Heroes.Tails));
            Mod_Menu_Page_Strings.Add("Shadow's Physics Profile: " + Program.Feature_Physics_Swapper_X.Get_Current_Character_Assignment_Name(Feature_Physics_Swap.Characters_Heroes.Shadow));
            Mod_Menu_Page_Strings.Add("Omega's Physics Profile: " + Program.Feature_Physics_Swapper_X.Get_Current_Character_Assignment_Name(Feature_Physics_Swap.Characters_Heroes.Omega));
            Mod_Menu_Page_Strings.Add("Rouge's Physics Profile: " + Program.Feature_Physics_Swapper_X.Get_Current_Character_Assignment_Name(Feature_Physics_Swap.Characters_Heroes.Rouge));
            Mod_Menu_Page_Strings.Add("Amy's Physics Profile: " + Program.Feature_Physics_Swapper_X.Get_Current_Character_Assignment_Name(Feature_Physics_Swap.Characters_Heroes.Amy));
            Mod_Menu_Page_Strings.Add("Big's Physics Profile: " + Program.Feature_Physics_Swapper_X.Get_Current_Character_Assignment_Name(Feature_Physics_Swap.Characters_Heroes.Big));
            Mod_Menu_Page_Strings.Add("Cream's Physics Profile: " + Program.Feature_Physics_Swapper_X.Get_Current_Character_Assignment_Name(Feature_Physics_Swap.Characters_Heroes.Cream));
            Mod_Menu_Page_Strings.Add("Espio's Physics Profile: " + Program.Feature_Physics_Swapper_X.Get_Current_Character_Assignment_Name(Feature_Physics_Swap.Characters_Heroes.Espio));
            Mod_Menu_Page_Strings.Add("Vector's Physics Profile: " + Program.Feature_Physics_Swapper_X.Get_Current_Character_Assignment_Name(Feature_Physics_Swap.Characters_Heroes.Vector));
            Mod_Menu_Page_Strings.Add("Charmy's Physics Profile: " + Program.Feature_Physics_Swapper_X.Get_Current_Character_Assignment_Name(Feature_Physics_Swap.Characters_Heroes.Charmy));

            // In case menu width changes.
            if (Program.Sonic_Heroes_Overlay.Ready_To_Render)
            {
                Set_Drawing_Properties();
            }
        }
示例#5
0
 /// <summary>
 /// Sets the menu text to be displayed.
 /// </summary>
 public void Set_Menu_Text(int Menu_Index_X, float Position_X, float Position_Y, float Position_Z)
 {
     Mod_Menu_Page_Strings.Clear();
     Mod_Menu_Page_Strings.Add(String.Format("Current Teleport: {0}/9", Menu_Index_X));
     Mod_Menu_Page_Strings.Add(String.Format("Location: {0},{1},{2}", Position_X.ToString("+00000;-00000;"), Position_Y.ToString("+00000;-00000;"), Position_Z.ToString("+00000;-00000;")));
     Mod_Menu_Page_Strings.Add("Toggle Free Movement Mode: DPAD UP");
     Mod_Menu_Page_Strings.Add("Free Movement Mode Raise/Lower: RT/LT");
     Mod_Menu_Page_Strings.Add("Free Movement Move Character: Left Stick");
     Mod_Menu_Page_Strings.Add("Save Current Position: DPAD LEFT");
     Mod_Menu_Page_Strings.Add("Load Position: DPAD RIGHT");
     Mod_Menu_Page_Strings.Add("Cycle Current Saved Location: DPAD DOWN");
 }
        /// <summary>
        /// Sets the visual string toggle state for each of the menu settings.
        /// </summary>
        public override void Set_Toggle_State()
        {
            // Remove all current items.
            Mod_Menu_Page_Strings.Clear();

            // Append current menu toggle states.
            if (Program.Feature_Toggle_Super_Metal_Characters_X.Get_SuperSonicEnabled())
            {
                Mod_Menu_Page_Strings.Add(Tick_Enabled + " Always Super Sonic");
            }
            else
            {
                Mod_Menu_Page_Strings.Add(Tick_Disabled + " Always Super Sonic");
            }

            if (Program.Feature_Toggle_Super_Metal_Characters_X.Get_SuperTailsEnabled())
            {
                Mod_Menu_Page_Strings.Add(Tick_Enabled + " Always Super Tails");
            }
            else
            {
                Mod_Menu_Page_Strings.Add(Tick_Disabled + " Always Super Tails");
            }

            if (Program.Feature_Toggle_Super_Metal_Characters_X.Get_SuperKnucklesEnabled())
            {
                Mod_Menu_Page_Strings.Add(Tick_Enabled + " Always Super Knuckles");
            }
            else
            {
                Mod_Menu_Page_Strings.Add(Tick_Disabled + " Always Super Knuckles");
            }

            if (Program.Feature_Toggle_Super_Metal_Characters_X.Get_MetalCharactersEnabled())
            {
                Mod_Menu_Page_Strings.Add(Tick_Enabled + " Metallic Characters Combination for 1P");
            }
            else
            {
                Mod_Menu_Page_Strings.Add(Tick_Disabled + " Metallic Characters Combination for 1P");
            }

            // In case menu width changes.
            if (Program.Sonic_Heroes_Overlay.Ready_To_Render)
            {
                Set_Drawing_Properties();
            }
        }
        /// <summary>
        /// Sets the visual string toggle state for each of the menu settings.
        /// </summary>
        public override void Set_Toggle_State()
        {
            // Remove all current items.
            Mod_Menu_Page_Strings.Clear();

            // Append current menu item names
            Mod_Menu_Page_Strings.Add("Select Level: " + Program.Feature_Force_Load_Level_X.Stage_Entry_List[Program.Feature_Force_Load_Level_X.Stage_Enum_Index].Stage_Name);
            Mod_Menu_Page_Strings.Add("Load Selected Level");
            Mod_Menu_Page_Strings.Add("Load Easy Menu");
            Mod_Menu_Page_Strings.Add("Toggle Built-in SET Editor");

            // In case menu width changes, update the screen.
            if (Program.Sonic_Heroes_Overlay.Ready_To_Render)
            {
                Set_Drawing_Properties();
            }
        }
示例#8
0
        /// <summary>
        /// Sets the visual string toggle state for each of the menu settings.
        /// </summary>
        public override void Set_Toggle_State()
        {
            // Remove all current items.
            Mod_Menu_Page_Strings.Clear();

            // Append current menu item names
            Mod_Menu_Page_Strings.Add("Current Sound Bank (" + Program.Feature_PAC_Clip_Player_X.Get_Current_PAC_Name() + ") : " + Program.Feature_PAC_Clip_Player_X.Get_Current_PAC_ID());
            Mod_Menu_Page_Strings.Add("Current Sound In Bank : " + Program.Feature_PAC_Clip_Player_X.Get_Current_PAC_Sound_ID());
            Mod_Menu_Page_Strings.Add("Switch Music Track : " + Program.Feature_ADX_Player_X.Get_Current_ADX_Track_Name());
            Mod_Menu_Page_Strings.Add("Switch AFS Sound-Set! : " + Program.Feature_AFS_Utilities_X.Get_Current_AFS_Name());
            Mod_Menu_Page_Strings.Add("Switch Character Speech Sound Bank : " + Program.Feature_PAC_Clip_Player_X.Get_Current_Bank3_PAC_Name());

            // Is XYZ Enabled? Print Y/N
            if (Program.Feature_Toggle_Character_Chatter_X.Get_CharacterChatter())
            {
                Mod_Menu_Page_Strings.Add(Tick_Enabled + " Character Action Sounds");
            }
            else
            {
                Mod_Menu_Page_Strings.Add(Tick_Disabled + " Character Action Sounds");
            }
            if (Program.Feature_Toggle_Character_Chatter_X.Get_VoiceComments())
            {
                Mod_Menu_Page_Strings.Add(Tick_Enabled + " Character Stage Chatter");
            }
            else
            {
                Mod_Menu_Page_Strings.Add(Tick_Disabled + " Character Stage Chatter");
            }
            if (Program.Feature_Toggle_Music_OnPause_X.Enabled)
            {
                Mod_Menu_Page_Strings.Add(Tick_Enabled + " Do not Disable Music when Game Paused");
            }
            else
            {
                Mod_Menu_Page_Strings.Add(Tick_Disabled + " Do not Disable Music when Game Paused");
            }

            // In case menu width changes, update the screen.
            if (Program.Sonic_Heroes_Overlay.Ready_To_Render)
            {
                Set_Drawing_Properties();
            }
        }
        public Menu_Main_Menu() : base()
        {
            // Set capacity of Menu
            Mod_Menu_Title.Add("Main Menu");

            // Insert all menu strings!
            Mod_Menu_Page_Strings.Add("Sound Menu");
            Mod_Menu_Page_Strings.Add("Physics Swapper");
            Mod_Menu_Page_Strings.Add("Moveset Tweaks");
            Mod_Menu_Page_Strings.Add("Gameplay Tweaks");
            Mod_Menu_Page_Strings.Add("HUD Tweaks Menu");
            Mod_Menu_Page_Strings.Add("Graphics Tweaks");
            Mod_Menu_Page_Strings.Add("Trail Colour Editor");
            Mod_Menu_Page_Strings.Add("Miscellaneous Tweaks");
            Mod_Menu_Page_Strings.Add("Experimental Stuff");
            Mod_Menu_Page_Strings.Add("Debugging Assists");

            // Set universal menu description.
            Mod_Menu_MessageBox_Strings = new List <string> {
                "Use the DPAD to navigate the various menus and options.", "Pressing A will apply/select the currently highlighted item.", "Variables can be adjusted by using the DPAD L and DPAD R and menu toggled by pressing LS.", "The \"Sonic Adventure\" Hub World Demo can be toggled on/off within the \"Experiments\" Menu."
            };
        }
        /// <summary>
        /// Sets the visual string toggle state for each of the menu settings.
        /// </summary>
        public override void Set_Toggle_State()
        {
            // Remove all current items.
            Mod_Menu_Page_Strings.Clear();

            // Append current menu toggle states.
            Mod_Menu_Page_Strings.Add("Null_Value: " + "");

            if (Null_Enabled)
            {
                Mod_Menu_Page_Strings.Add(Tick_Enabled + " Null Button");
            }
            else
            {
                Mod_Menu_Page_Strings.Add(Tick_Disabled + " Null Button");
            }

            // In case menu width changes.
            if (Program.Sonic_Heroes_Overlay.Ready_To_Render)
            {
                Set_Drawing_Properties();
            }
        }
        /// <summary>
        /// Sets the visual string toggle state for each of the menu settings.
        /// </summary>
        public override void Set_Toggle_State()
        {
            // Remove all current items.
            Mod_Menu_Page_Strings.Clear();

            Mod_Menu_Page_Strings.Add("Field of View Scale: " + Program.Feature_Enhanced_FOV_Fix_X.Get_FOVScale().ToString("0.00") + "F");
            Mod_Menu_Page_Strings.Add(String.Format("Approximate Colours Per Second: {0} ({1})", Program.Feature_Cycle_RGB_Colours_X.Get_Colours_Per_Second().ToString("000"), Program.Feature_Cycle_RGB_Colours_X.Get_Sleep_Delay().ToString("000")));

            // Enhanced Aspect Ratio FOV Fix
            if (Program.Feature_Enhanced_FOV_Fix_X.Get_IsEnabled())
            {
                Mod_Menu_Page_Strings.Add(Tick_Enabled + " Enhanced Aspect Ratio/FOV Fix");
            }
            else
            {
                Mod_Menu_Page_Strings.Add(Tick_Disabled + " Enhanced Aspect Ratio/FOV Fix");
            }

            // Cycling Formation Barrier Colours
            if (Program.Feature_Cycle_RGB_Colours_X.Get_CyclingBarrierHue())
            {
                Mod_Menu_Page_Strings.Add(Tick_Enabled + " RGB Formation Barriers");
            }
            else
            {
                Mod_Menu_Page_Strings.Add(Tick_Disabled + " RGB Formation Barriers");
            }

            // Cycling Ball Colours
            if (Program.Feature_Cycle_RGB_Colours_X.Get_CyclingBallHue())
            {
                Mod_Menu_Page_Strings.Add(Tick_Enabled + " RGB Character Balls");
            }
            else
            {
                Mod_Menu_Page_Strings.Add(Tick_Disabled + " RGB Character Balls");
            }

            // Cycling Trail Colours
            if (Program.Feature_Cycle_RGB_Colours_X.Get_CyclingTrailHue())
            {
                Mod_Menu_Page_Strings.Add(Tick_Enabled + " RGB Character Trails");
            }
            else
            {
                Mod_Menu_Page_Strings.Add(Tick_Disabled + " RGB Character Trails");
            }

            // Cycling Tornado Colours
            if (Program.Feature_Cycle_RGB_Colours_X.Get_CyclingTornadoHue())
            {
                Mod_Menu_Page_Strings.Add(Tick_Enabled + " RGB Character Tornadoes");
            }
            else
            {
                Mod_Menu_Page_Strings.Add(Tick_Disabled + " RGB Character Tornadoes");
            }

            if (Program.Feature_Cycle_RGB_Colours_X.Get_CyclingAllHue())
            {
                Mod_Menu_Page_Strings.Add(Tick_Enabled + " Synchronous RGB Barriers, Tornadoes, Trails & Balls");
                Mod_Menu_Page_Strings[(int)Menu_Items.Menu_Item_RGB_Character_Tornadoes] = (Tick_Enabled + " RGB Character Tornadoes");
                Mod_Menu_Page_Strings[(int)Menu_Items.Menu_Item_RGB_Character_Trails]    = Tick_Enabled + " RGB Character Trails";
                Mod_Menu_Page_Strings[(int)Menu_Items.Menu_Item_RGB_Character_Balls]     = (Tick_Enabled + " RGB Character Balls");
                Mod_Menu_Page_Strings[(int)Menu_Items.Menu_Item_RGB_Formation_Barriers]  = (Tick_Enabled + " RGB Formation Barriers");
            }
            else
            {
                Mod_Menu_Page_Strings.Add(Tick_Disabled + " Synchronous RGB Barriers, Tornadoes, Trails & Balls");
            }

            // In case menu width changes.
            if (Program.Sonic_Heroes_Overlay.Ready_To_Render)
            {
                Set_Drawing_Properties();
            }
        }
        /// <summary>
        /// Populates the menu for the character for the currently selected Trail Editor index.
        /// </summary>
        public void Trail_Editor_Populate_Current_Menu()
        {
            // Wipe all current menu options.
            Mod_Menu_Page_Strings.Clear();

            // Get Current Character in a More Accessible Manner
            Characters Current_Character = Program.Feature_Trail_Editor_X.Sonic_Heroes_Characters[Program.Feature_Trail_Editor_X.Character_Index];

            // Write new Menu Option Title.
            Mod_Menu_Page_Strings.Add(String.Format("< Current Character: {0} >", Current_Character.Character_Name));

            // Check if character has X/Y/Z Property. If they do, load them into the menu.
            if (Current_Character.Jump_Ball_Address != IntPtr.Zero)
            {
                // Write new Menu Option Title.
                Mod_Menu_Page_Strings.Add(String.Format("{1} | R: {0}", Current_Character.Character_Ball_Colours.Jump_Ball.R, String_Jump_Ball_Colour));
                Mod_Menu_Page_Strings.Add(String.Format("{1} | G: {0}", Current_Character.Character_Ball_Colours.Jump_Ball.G, String_Jump_Ball_Colour));
                Mod_Menu_Page_Strings.Add(String.Format("{1} | B: {0}", Current_Character.Character_Ball_Colours.Jump_Ball.B, String_Jump_Ball_Colour));
                Mod_Menu_Page_Strings.Add(String.Format("{1} | A: {0}", Current_Character.Character_Ball_Colours.Jump_Ball.A, String_Jump_Ball_Colour));
            }

            // Check if character has X/Y/Z Property. If they do, load them into the menu.
            if (Current_Character.Trail_Address != IntPtr.Zero)
            {
                // Write new Menu Option Title.
                Mod_Menu_Page_Strings.Add(String.Format("{1} | R: {0}", Current_Character.Character_Ball_Colours.Trail.R, String_Trail_Colour));
                Mod_Menu_Page_Strings.Add(String.Format("{1} | G: {0}", Current_Character.Character_Ball_Colours.Trail.G, String_Trail_Colour));
                Mod_Menu_Page_Strings.Add(String.Format("{1} | B: {0}", Current_Character.Character_Ball_Colours.Trail.B, String_Trail_Colour));
                Mod_Menu_Page_Strings.Add(String.Format("{1} | A: {0}", Current_Character.Character_Ball_Colours.Trail.A, String_Trail_Colour));
            }

            // Check if character has X/Y/Z Property. If they do, load them into the menu.
            if (Current_Character.Tornado_Address != IntPtr.Zero)
            {
                // Write new Menu Option Title.
                Mod_Menu_Page_Strings.Add(String.Format("{1} | R: {0}", Current_Character.Character_Ball_Colours.Tornado.R, String_Tornado_Colour));
                Mod_Menu_Page_Strings.Add(String.Format("{1} | G: {0}", Current_Character.Character_Ball_Colours.Tornado.G, String_Tornado_Colour));
                Mod_Menu_Page_Strings.Add(String.Format("{1} | B: {0}", Current_Character.Character_Ball_Colours.Tornado.B, String_Tornado_Colour));
                Mod_Menu_Page_Strings.Add(String.Format("{1} | A: {0}", Current_Character.Character_Ball_Colours.Tornado.A, String_Tornado_Colour));
            }

            // Check if character has X/Y/Z Property. If they do, load them into the menu.
            if (Current_Character.Misc_Address != IntPtr.Zero)
            {
                // Write new Menu Option Title.
                Mod_Menu_Page_Strings.Add(String.Format("{1} | R: {0}", Current_Character.Character_Ball_Colours.Misc.R, Current_Character.Misc_Name));
                Mod_Menu_Page_Strings.Add(String.Format("{1} | G: {0}", Current_Character.Character_Ball_Colours.Misc.G, Current_Character.Misc_Name));
                Mod_Menu_Page_Strings.Add(String.Format("{1} | B: {0}", Current_Character.Character_Ball_Colours.Misc.B, Current_Character.Misc_Name));
                Mod_Menu_Page_Strings.Add(String.Format("{1} | A: {0}", Current_Character.Character_Ball_Colours.Misc.A, Current_Character.Misc_Name));
            }

            // Save/Load
            Mod_Menu_Page_Strings.Add(String_Save_Character_Configuration);
            Mod_Menu_Page_Strings.Add(String_Load_Character_Configuration);
            Mod_Menu_Page_Strings.Add(String_Load_Default_Stock_Configuration);

            // Recalculate Menu Size
            if (Program.Sonic_Heroes_Overlay.Ready_To_Render)
            {
                Set_Drawing_Properties();
            }
        }
示例#13
0
        /// <summary>
        /// Sets the visual string toggle state for each of the menu settings.
        /// </summary>
        public override void Set_Toggle_State()
        {
            // Remove all current items.
            Mod_Menu_Page_Strings.Clear();

            // Get users of leaf swirl and tornado hammer.
            Feature_Toggle_Moveset_Restrictions.Speed_Character_Moveset_Details Leaf_Swirl_User     = Program.Feature_Toggle_Moveset_Restrictions_X.Get_Current_Tornado_Leaf_Swirl_User();
            Feature_Toggle_Moveset_Restrictions.Speed_Character_Moveset_Details Tornado_Hammer_User = Program.Feature_Toggle_Moveset_Restrictions_X.Get_Current_Tornado_Hammer_User();
            Feature_Toggle_Moveset_Restrictions.Speed_Character_Moveset_Details Unlimited_Jump_User = Program.Feature_Toggle_Moveset_Restrictions_X.Get_Current_Unlimited_Triangle_Jump_User();
            Feature_Toggle_Moveset_Restrictions.Speed_Character_Moveset_Details No_Jump_User        = Program.Feature_Toggle_Moveset_Restrictions_X.Get_Current_No_Triangle_Jump_User();

            // Append current menu toggle states.
            Mod_Menu_Page_Strings.Add(String.Format("Leaf Swirl User: {0} ({1})", Leaf_Swirl_User.Character_Name, Leaf_Swirl_User.Character_ID));
            Mod_Menu_Page_Strings.Add(String.Format("Tornado Hammer User: {0} ({1})", Tornado_Hammer_User.Character_Name, Tornado_Hammer_User.Character_ID));
            Mod_Menu_Page_Strings.Add(String.Format("Unlimited Triangle Jump Wall Cling User: {0} ({1})", Unlimited_Jump_User.Character_Name, Unlimited_Jump_User.Character_ID));
            Mod_Menu_Page_Strings.Add(String.Format("Disabled Triangle Jump User: {0} ({1})", No_Jump_User.Character_Name, No_Jump_User.Character_ID));

            // Light Speed Dash Enabled?
            if (Program.Feature_Toggle_Moveset_Restrictions_X.Get_Light_Speed_Dash_State())
            {
                Mod_Menu_Page_Strings.Add(Tick_Enabled + " Light Speed Dash");
            }
            else
            {
                Mod_Menu_Page_Strings.Add(Tick_Disabled + " Light Speed Dash");
            }

            // Light Speed Attack Enabled?
            if (Program.Feature_Toggle_Moveset_Restrictions_X.Get_Light_Speed_Attack_State())
            {
                Mod_Menu_Page_Strings.Add(Tick_Enabled + " Light Speed Attack");
            }
            else
            {
                Mod_Menu_Page_Strings.Add(Tick_Disabled + " Light Speed Attack");
            }

            // Invisibility Fixes
            if (Program.Feature_Invisibility_Fixes_X.Get_Invisibility_Fixes_Status())
            {
                Mod_Menu_Page_Strings.Add(Tick_Enabled + " Invisibility Fixes");
            }
            else
            {
                Mod_Menu_Page_Strings.Add(Tick_Disabled + " Invisibility Fixes");
            }

            // Tornado Hammer Enabled Invisibility
            if (Invisibility_Tweaks_Feature.Get_Hammer_Enables_Invisiblity())
            {
                Mod_Menu_Page_Strings.Add(Tick_Enabled + " Tornado Hammer Enables Invisibility");
            }
            else
            {
                Mod_Menu_Page_Strings.Add(Tick_Disabled + " Tornado Hammer Enables Invisibility");
            }

            // Tornado Spin Enabled Invisibility
            if (Invisibility_Tweaks_Feature.Get_Spin_Enables_Invisiblity())
            {
                Mod_Menu_Page_Strings.Add(Tick_Enabled + " Tornado Spin Enables Invisibility");
            }
            else
            {
                Mod_Menu_Page_Strings.Add(Tick_Disabled + " Tornado Spin Enables Invisibility");
            }

            // Player Respawns Invisible
            if (Invisibility_Tweaks_Feature.Get_Player_Starts_Invisible())
            {
                Mod_Menu_Page_Strings.Add(Tick_Enabled + " Player Respawns Invisible");
            }
            else
            {
                Mod_Menu_Page_Strings.Add(Tick_Disabled + " Player Respawns Invisible");
            }

            // In case menu width changes.
            if (Program.Sonic_Heroes_Overlay.Ready_To_Render)
            {
                Set_Drawing_Properties();
            }
        }