Files
Cielonos/Assets/Scripts/SLSUtilities/UI/UIElementBase.cs
SoulliesOfficial 50ee502684 完善
2026-02-13 09:22:11 -05:00

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);
}
}
}