//////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// /// <summary> /// Only ever called once, mainly used to initialize variables. /// </summary> private void Awake() { if (Instance != null) { Logger.log?.Warn($"Instance of {this.GetType().Name} already exists, destroying."); DestroyImmediate(this); return; } Instance = this; var l_RectTransform = null as RectTransform; gameObject.transform.position = Position; gameObject.transform.eulerAngles = Rotation; gameObject.transform.localScale = Scale; m_Canvas = gameObject.AddComponent <Canvas>(); m_Canvas.renderMode = RenderMode.WorldSpace; l_RectTransform = m_Canvas.transform as RectTransform; l_RectTransform.sizeDelta = CanvasSize; gameObject.AddComponent <HMUI.CurvedCanvasSettings>().SetRadius(0); m_Text = CreateText(m_Canvas.transform as RectTransform, "", HeaderPosition, CanvasSize); l_RectTransform = m_Text.transform as RectTransform; l_RectTransform.anchoredPosition = Vector2.zero; m_Text.text = ""; m_Text.fontSize = HeaderFontSize; m_Text.alignment = TextAlignmentOptions.Center; ///var l_Background = new GameObject("Background").AddComponent<Image>(); ///l_RectTransform = l_Background.transform as RectTransform; ///l_RectTransform.SetParent(m_Canvas.transform, false); ///l_RectTransform.sizeDelta = CanvasSize; ///l_Background.color = new Color(0, 1, 0, 0.5f); SetVisible(false); /// Don't destroy this object on scene changes DontDestroyOnLoad(this); }
/// <summary> /// Called when the script is being destroyed. /// </summary> private void OnDestroy() { Logger.log?.Debug($"{name}: OnDestroy()"); Instance = null; }