From 3f2cd27c5dfb3b450245bf1a37fc1b3414031c7c Mon Sep 17 00:00:00 2001
From: yyl <yyl>
Date: 星期三, 11 二月 2026 11:03:58 +0800
Subject: [PATCH] 小游戏适配 资源系统改造
---
Main/System/HeroUI/HeroHeadBaseCell.cs | 63 +++++++++++++++++++++++++++++++
1 files changed, 63 insertions(+), 0 deletions(-)
diff --git a/Main/System/HeroUI/HeroHeadBaseCell.cs b/Main/System/HeroUI/HeroHeadBaseCell.cs
index 0a705bd..2104662 100644
--- a/Main/System/HeroUI/HeroHeadBaseCell.cs
+++ b/Main/System/HeroUI/HeroHeadBaseCell.cs
@@ -2,6 +2,7 @@
using UnityEngine.UI;
using UnityEngine.Events;
using System.Collections.Generic;
+using Cysharp.Threading.Tasks;
public class HeroHeadBaseCell : MonoBehaviour
{
@@ -197,6 +198,68 @@
}
+ // 姝﹀皢灏忓ご鍍� Async鐗堟湰
+ public async UniTask InitAsync(int heroID, int skinID, int star = 0, int awakelv = 0, int lv = 0, UnityAction onclick = null)
+ {
+ LoadPrefab(); //瀛樺湪琚嵏杞界殑鍙兘锛岄噸鏂板姞杞�
+ if (onclick != null)
+ {
+ clickBtn.AddListener(onclick);
+ }
+ var heroConfig = HeroConfig.Get(heroID);
+ qualityBG.SetSprite("heroheadBG" + heroConfig.Quality);
+ // int skinID = 0;
+ // if (heroGuid != "")
+ // {
+ // skinID = HeroManager.Instance.GetHero(heroGuid).SkinID;
+ // }
+ // else
+ // {
+ // skinID = heroConfig.SkinIDList[0];
+ // }
+ var sprite = await UILoader.LoadSpriteAsync("HeroHead", HeroSkinConfig.Get(skinID).SquareIcon);
+ if (this == null) return;
+ if (sprite == null)
+ {
+ // 鍐呯綉鏈厤缃椂
+ heroIcon.SetSprite("herohead_default");
+ }
+ else
+ {
+ heroIcon.overrideSprite = sprite;
+ }
+
+
+ if (star == 0)
+ {
+ starRect.SetActive(false);
+ }
+ else
+ {
+ starRect.SetActive(true);
+ for (int i = 0; i < starsImg.Count; i++)
+ {
+ if ((star - 1) % starsImg.Count >= i)
+ {
+ starsImg[i].SetActive(true);
+ starsImg[i].SetSprite("herostar" + (((star - 1) / starsImg.Count) + 1) * starsImg.Count);
+ }
+ else
+ {
+ starsImg[i].SetActive(false);
+ }
+ }
+ }
+
+ countryImg.SetSprite(HeroUIManager.Instance.GetCountryIconName(heroConfig.Country));
+ lvText.text = lv == 0 ? "" : Language.Get("L1094") + lv;
+
+ awakeLvRect.SetActive(awakelv > 0);
+ awakeLvText.text = awakelv.ToString();
+
+
+ }
+
GameObject cellContainer;
protected void LoadPrefab()
{
--
Gitblit v1.8.0