Files
Continentis/Assets/OtherPlugins/Modern UI Pack/Scripts/UI Manager/UIManagerNotification.cs
SoulliesOfficial d09b58fd80 架构大更
2026-03-20 11:56:50 -04:00

59 lines
1.9 KiB
C#

using TMPro;
using UnityEngine;
using UnityEngine.UI;
namespace Michsky.MUIP
{
[ExecuteInEditMode]
public class UIManagerNotification : MonoBehaviour
{
[Header("Settings")] [SerializeField] private UIManager UIManagerAsset;
[HideInInspector] public bool overrideColors;
[HideInInspector] public bool overrideFonts;
[Header("Resources")] [SerializeField] private Image background;
[SerializeField] private Image icon;
[SerializeField] private TextMeshProUGUI title;
[SerializeField] private TextMeshProUGUI description;
private void Awake()
{
if (UIManagerAsset == null) UIManagerAsset = Resources.Load<UIManager>("MUIP Manager");
enabled = true;
if (!UIManagerAsset.enableDynamicUpdate)
{
UpdateNotification();
enabled = false;
}
}
private void Update()
{
if (UIManagerAsset == null) return;
if (UIManagerAsset.enableDynamicUpdate) UpdateNotification();
}
private void UpdateNotification()
{
if (!overrideColors)
{
background.color = UIManagerAsset.notificationBackgroundColor;
icon.color = UIManagerAsset.notificationIconColor;
title.color = UIManagerAsset.notificationTitleColor;
description.color = UIManagerAsset.notificationDescriptionColor;
}
if (!overrideFonts)
{
title.font = UIManagerAsset.notificationTitleFont;
title.fontSize = UIManagerAsset.notificationTitleFontSize;
description.font = UIManagerAsset.notificationDescriptionFont;
description.fontSize = UIManagerAsset.notificationDescriptionFontSize;
}
}
}
}