TH1/Unity/Assets/Scripts/TH1_UI/View/Info/UIInfoCommonBaseSkillCircleMono.cs
2025-12-09 17:22:44 +08:00

66 lines
2.0 KiB
C#

// 文件位置: Assets/Scripts/TH1_UI/View/Announce/UIInteractionCityUpgradeItem.cs
using System;
using System.Collections.Generic;
using System.Net.Mime;
using System.Text;
using Logic.Action;
using Logic.Multilingual;
using Logic.Skill;
using RuntimeData;
using TH1_Logic.Action;
using TH1_Logic.Core;
using TH1_Logic.HeroTask;
using TH1_UI.HintUI;
using TH1Resource;
using TMPro;
using UI.HintUI;
using Unity.Burst.CompilerServices;
using Unity.VisualScripting;
using UnityEditor.Rendering;
using UnityEngine;
using UnityEngine.UI;
namespace TH1_UI.View.Info
{
public class UIInfoCommonBaseSkillCircleMono : MonoBehaviour
{
public HintTrigger HintTrigger;
public Image SkillIcon;
public Image SkillIconBG;
public GameObject SkillLevelArea;
public GameObject SkillTimeArea;
public TextMeshProUGUI SkillLevelText;
public TextMeshProUGUI SkillTimeText;
public void SetContent(SkillBase skill,UnitFullType unitFullType)
{
var skillType = skill.GetSkillType();
//Step #0 基础变量设置
if (!Table.Instance.SkillDataAssets.GetSkillInfo(skillType, out var info)) return;
if(Table.Instance.SkillDataAssets.GetSkillIcon(skillType, unitFullType,out var spr))
SkillIcon.sprite = spr;
SkillIconBG.color = Table.Instance.SkillDataAssets.GetBGColor(info.SkillViewType,skill.HasTimeLimit);
SkillLevelArea.SetActive(skill.HasLevel);
if (skill.HasLevel)
SkillLevelText.text = skill.Level.ToString();
SkillTimeArea.SetActive(skill.HasTimeLimit);
if (skill.HasTimeLimit)
SkillTimeText.text = skill.LastTime.ToString();
HintTrigger.DataProvider.HintDataType = HintDataType.SkillHintData;
HintTrigger.DataProvider.SkillTypeData = skillType;
HintTrigger.DataProvider.UnitFullType = unitFullType;
}
}
}