class SCR_VoiceRangeDisplay: SCR_InfoDisplay { protected TextWidget m_wRangeText; protected SCR_FadeUIComponent m_FadeComponent; protected override event void OnStartDraw(IEntity owner) { super.OnStartDraw(owner); if (!m_wRoot) { m_wRoot = GetGame().GetWorkspace().CreateWidgets("{52CB3045C167E6D8}UI/layouts/VoiceRange/VoiceRangeDynamicNumber.layout"); if (!m_wRoot) return; } m_wRangeText = TextWidget.Cast(m_wRoot.FindAnyWidget("RangeText")); if (!m_wRangeText) return; m_FadeComponent = SCR_FadeUIComponent.Cast(m_wRangeText.FindHandler(SCR_FadeUIComponent)); m_wRangeText.SetVisible(false); } void UpdateRangeText(int range) { if (!m_wRangeText) { Print("GTG Voice: FEHLER - TextWidget 'RangeText' nicht gefunden! Layout-Pfad falsch?", LogLevel.ERROR); return; } } protected void StartFadeOut() { if (m_FadeComponent) { m_FadeComponent.FadeOut(false); } else if (m_wRangeText) { m_wRangeText.SetVisible(false); } } }