static MyLoadingScreenQuote()
        {
            m_quotes = new MyLoadingScreenQuote[MyPerGameSettings.LoadingScreenQuoteCount];

            for (int i = 0; i < MyPerGameSettings.LoadingScreenQuoteCount; ++i)
            {
                var text   = MyStringId.GetOrCompute(string.Format("Quote{0:00}Text", i));
                var author = MyStringId.GetOrCompute(string.Format("Quote{0:00}Author", i));
                m_quotes[i] = new MyLoadingScreenQuote(text, author);
            }
        }
        static MyLoadingScreenQuote()
        {
            m_quotes = new MyLoadingScreenQuote[MyPerGameSettings.LoadingScreenQuoteCount];

            for (int i = 0; i < MyPerGameSettings.LoadingScreenQuoteCount; ++i)
            {
                var text   = MyStringId.GetOrCompute(string.Format("Quote{0:00}Text", i));
                var author = MyStringId.GetOrCompute(string.Format("Quote{0:00}Author", i));
                m_quotes[i] = new MyLoadingScreenQuote(text, author);
            }
        }
        public MyGuiScreenLoading(MyGuiScreenGamePlay screenToLoad, MyGuiScreenGamePlay screenToUnload, string textureFromConstructor, string customText = null)
            : base(Vector2.Zero, null, null)
        {
            MyLoadingPerformance.Instance.StartTiming();

            System.Diagnostics.Debug.Assert(Static == null);
            Static = this;

            m_screenToLoad = screenToLoad;
            m_screenToUnload = screenToUnload;
            m_closeOnEsc = false;
            DrawMouseCursor = false;
            m_loadInDrawFinished = false;
            m_drawEvenWithoutFocus = true;
            m_currentQuote = MyLoadingScreenQuote.GetRandomQuote();
            m_isFirstForUnload = true;

            // Has to be done because of HW Cursor
            MyGuiSandbox.SetMouseCursorVisibility(false);

            m_rotatingWheelTexture = MyGuiConstants.LOADING_TEXTURE_LOADING_SCREEN;
            m_backgroundTextureFromConstructor = textureFromConstructor;
            m_customTextFromConstructor = customText;

            m_loadFinished = false;

            //MyAudio.Static.Mute = true;

            if (m_screenToLoad != null)
            {
                MySandboxGame.IsUpdateReady = false;
                MySandboxGame.AreClipmapsReady = MySandboxGame.IsDedicated;
            }

            m_authorWithDash = new StringBuilder();

            RecreateControls(true);
        }
        public override void HandleInput(bool receivedFocusInThisUpdate)
        {
            base.HandleInput(receivedFocusInThisUpdate);

            if (MyInput.Static.ENABLE_DEVELOPER_KEYS)
            {
                if (MyInput.Static.IsNewKeyPressed(MyKeys.Add))
                {
                    m_currentQuote = MyLoadingScreenQuote.GetQuote(++m_currentQuoteIdx);
                    RefreshQuote();
                }
                if (MyInput.Static.IsNewKeyPressed(MyKeys.Subtract))
                {
                    m_currentQuote = MyLoadingScreenQuote.GetQuote(--m_currentQuoteIdx);
                    RefreshQuote();
                }
            }
        }