35 lines
954 B
C#
35 lines
954 B
C#
using System;
|
|
using Sirenix.OdinInspector;
|
|
using UnityEngine;
|
|
|
|
namespace SLSUtilities.UI
|
|
{
|
|
public class UIElementBase : SerializedMonoBehaviour
|
|
{
|
|
public RectTransform rectTransform;
|
|
public CanvasGroup canvasGroup;
|
|
|
|
private void Reset()
|
|
{
|
|
if(rectTransform == null) rectTransform = GetComponent<RectTransform>();
|
|
if(canvasGroup == null) canvasGroup = GetComponent<CanvasGroup>();
|
|
}
|
|
|
|
public virtual void UpdateUI()
|
|
{
|
|
// Override in derived classes
|
|
}
|
|
|
|
public virtual void Show()
|
|
{
|
|
gameObject.SetActive(true);
|
|
if(canvasGroup) { canvasGroup.alpha = 1; canvasGroup.blocksRaycasts = true; }
|
|
}
|
|
|
|
public virtual void Hide()
|
|
{
|
|
if(canvasGroup) { canvasGroup.alpha = 0; canvasGroup.blocksRaycasts = false; }
|
|
gameObject.SetActive(false);
|
|
}
|
|
}
|
|
} |