From 3f2cd27c5dfb3b450245bf1a37fc1b3414031c7c Mon Sep 17 00:00:00 2001
From: yyl <yyl>
Date: 星期三, 11 二月 2026 11:03:58 +0800
Subject: [PATCH] 小游戏适配 资源系统改造
---
Main/System/Battle/UIComp/SkillTips.cs | 63 +++++++++++++++++++++++++++++++
1 files changed, 63 insertions(+), 0 deletions(-)
diff --git a/Main/System/Battle/UIComp/SkillTips.cs b/Main/System/Battle/UIComp/SkillTips.cs
index 429bc1c..d9648fb 100644
--- a/Main/System/Battle/UIComp/SkillTips.cs
+++ b/Main/System/Battle/UIComp/SkillTips.cs
@@ -1,5 +1,6 @@
using System.Collections;
using System.Collections.Generic;
+using Cysharp.Threading.Tasks;
using DG.Tweening;
using UnityEngine.UI;
using UnityEngine;
@@ -81,6 +82,68 @@
});
battleField.battleTweenMgr.OnPlayTween(tween1);
}
+
+ public async UniTask PlayMotionAsync(BattleField battleField, bool isRed, TeamHero teamHero, SkillConfig skillConfig)
+ {
+ if (teamHero == null || skillConfig == null)
+ {
+ return;
+ }
+
+ if (skillConfig.FuncType != 2)
+ return;
+
+ KillAllTweens();
+
+ imgIcon.sprite = await UILoader.LoadSpriteAsync("HeroHead", teamHero.skinConfig.SquareIcon);
+ if (this == null) return;
+ imgSkillName.sprite = await UILoader.LoadSpriteAsync("SkillNameIcon", skillConfig.SkillTipsName);
+ if (this == null) return;
+ imgSkillName.SetNativeSize();
+ // 淇濊瘉寮�濮嬫椂鎵�鏈夊浘鐗囦负鍙锛坅lpha=1锛�
+ if (imageBg != null) { var c = imageBg.color; c.a = 1f; imageBg.color = c; }
+ if (imgIcon != null) { var c = imgIcon.color; c.a = 1f; imgIcon.color = c; }
+ if (imgSkillName != null) { var c = imgSkillName.color; c.a = 1f; imgSkillName.color = c; }
+
+ gameObject.SetActive(true);
+ float posY = transform.localPosition.y;
+ transform.localPosition = isRed ? new Vector3(-beginingX, posY, 0f) : new Vector3(beginingX, posY, 0f);
+ tween1 = transform.DOLocalMoveX(0, tweenDuration / battleField.speedRatio, false).SetEase(Ease.Linear).OnComplete(() =>
+ {
+ tween1 = null;
+ tween3 = DOVirtual.DelayedCall(delayDuration / battleField.speedRatio, () =>
+ {
+ tween3 = null;
+
+ // tween2 鏀逛负鍋氬噺娣★紙瀵� imageBg銆乮mgIcon銆乮mgSkillName 鍚屾娣″嚭锛�
+ float fadeDuration = tweenDuration / battleField.speedRatio;
+ Sequence seq = DOTween.Sequence();
+ if (imageBg != null)
+ seq.Join(imageBg.DOFade(0f, fadeDuration).SetEase(Ease.InQuad));
+ if (imgIcon != null)
+ seq.Join(imgIcon.DOFade(0f, fadeDuration).SetEase(Ease.InQuad));
+ if (imgSkillName != null)
+ seq.Join(imgSkillName.DOFade(0f, fadeDuration).SetEase(Ease.InQuad));
+
+ seq.OnComplete(() =>
+ {
+ tween2 = null;
+ // 鎭㈠鍥剧墖 alpha锛屼繚璇佷笅娆℃樉绀烘椂鍙
+ if (imageBg != null) { var cc = imageBg.color; cc.a = 1f; imageBg.color = cc; }
+ if (imgIcon != null) { var cc = imgIcon.color; cc.a = 1f; imgIcon.color = cc; }
+ if (imgSkillName != null) { var cc = imgSkillName.color; cc.a = 1f; imgSkillName.color = cc; }
+
+ transform.localPosition = isRed ? new Vector3(-beginingX, posY, 0f) : new Vector3(beginingX, posY, 0f);
+ gameObject.SetActive(false);
+ });
+
+ tween2 = seq;
+ battleField.battleTweenMgr.OnPlayTween(tween2);
+ });
+ battleField.battleTweenMgr.OnPlayTween(tween3);
+ });
+ battleField.battleTweenMgr.OnPlayTween(tween1);
+ }
public void KillAllTweens()
{
--
Gitblit v1.8.0