/// <summary>
        /// Loads the game mouse and any screens already added
        /// </summary>
        public override void LoadContent()
        {
            CheckShouldLoad();

            AssetManager.MigrateDataIfRequired(Content);

            DebugUtils.AssertNotNull(Content);
            OptionsManager.LoadAssets(Content);
            CommandManager.Instance.LoadContent();
            InputManager.Instance.LoadContent();

            base.LoadContent();
        }
        /// <summary>
        /// Save the options to disc before we hide this dialog (corresponds to leaving the dialog)
        /// </summary>
        public override void Hide(bool hideChildren = true)
        {
            base.Hide(hideChildren);

            OptionsManager.SaveAssets();
        }
        /// <summary>
        /// Write the options to disc before we exit this screen
        /// </summary>
        public override void Die()
        {
            base.Die();

            OptionsManager.SaveAssets();
        }