From ed63aa36ced400b4eef79862e85498213ae40c4a Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期五, 19 十二月 2025 16:43:55 +0800
Subject: [PATCH] 0312 满星蓝卡提醒可遣散
---
Main/Component/UI/Effect/BattleEffectPlayer.cs | 42 +++++++++++++++++++++++++++++++++++++-----
1 files changed, 37 insertions(+), 5 deletions(-)
diff --git a/Main/Component/UI/Effect/BattleEffectPlayer.cs b/Main/Component/UI/Effect/BattleEffectPlayer.cs
index 139fc2a..5c89ea8 100644
--- a/Main/Component/UI/Effect/BattleEffectPlayer.cs
+++ b/Main/Component/UI/Effect/BattleEffectPlayer.cs
@@ -41,6 +41,8 @@
private float m_Alpha = 1f;
+ public float scaleFactor = 1f;// 闀挎湡涓�1锛屽彧鍦ㄩ渶瑕佽窡妯″瀷涓�璧风缉鏀剧殑鏃跺�欐洿鏀� 鍊间负teamHero.ModelScale
+
public float Alpha
{
get
@@ -161,6 +163,8 @@
// 鏈夌壒鏁堝彲鑳藉甫spine鍙堝甫unity鐗规晥鐨勬儏鍐�
spineComp = gameObject.GetComponentInChildren<SkeletonAnimation>(true);
+
+
if (effectConfig.effectPos != null && effectConfig.effectPos.Length >= 2)
{
rectTrans.anchoredPosition += new Vector2((isRedCamp ? 1f : -1f) * effectConfig.effectPos[0], effectConfig.effectPos[1]);
@@ -170,6 +174,7 @@
{
rectTrans.localScale *= effectConfig.effectScale;
}
+
spineComp.loop = effectConfig.isLoop != 0;
}
@@ -378,6 +383,11 @@
spineComp.Initialize(true);
spineComp.timeScale = speedRate;
+ if (scaleX != 0f && spineComp != null && spineComp.skeleton != null)
+ {
+ spineComp.skeleton.ScaleX = scaleX;
+ }
+
spineComp.skeleton.A = Alpha;
spineAnimationState = spineComp.state;
@@ -395,10 +405,13 @@
spineComp.timeScale = speedRate;
+ spineComp.LateUpdate();
+
+
Spine.Animation animation = spineAnimationState.Data.SkeletonData.Animations.First();
spineAnimationState.SetAnimation(0, animation, effectConfig.isLoop != 0);
- SoundPlayer.Instance.PlayUIAudio(effectConfig.audio);
+ // SoundPlayer.Instance.PlayUIAudio(effectConfig.audio);
}
@@ -432,7 +445,7 @@
}
// 浠庣壒鏁堥鍒朵綋姹犺幏鍙栫壒鏁�
- pool = GameObjectPoolManager.Instance.RequestPool(effectPrefab);
+ pool = GameObjectPoolManager.Instance.GetPool(effectPrefab);
effectTarget = pool.Request();
// 璁剧疆鐖惰妭鐐瑰拰浣嶇疆
effectTarget.transform.SetParent(transform);
@@ -454,7 +467,7 @@
blocker.onSortingChanged = OnSortingChanged;
- SoundPlayer.Instance.PlayUIAudio(effectConfig.audio);
+ // SoundPlayer.Instance.PlayUIAudio(effectConfig.audio);
}
@@ -535,7 +548,7 @@
// 鍒涘缓鍚庣殑鐗规晥浼氳嚜鍔ㄩ殣钘� 闇�瑕佹墜鍔ㄨ皟鐢≒lay鎵嶈兘鎾斁
- public static BattleEffectPlayer Create(int effectId, BattleField _battleField, Transform parent, bool isRedCamp)
+ public static BattleEffectPlayer Create(int effectId, BattleField _battleField, Transform parent, bool isRedCamp, float _scaleRatio)
{
// 鐩存帴鍒涘缓鐗规晥鎾斁鍣紝涓嶄娇鐢ㄥ璞℃睜
BattleEffectPlayer battleEffectPlayer = null;
@@ -547,6 +560,8 @@
battleEffectPlayer.rectTrans = newGo.AddMissingComponent<RectTransform>();
battleEffectPlayer.effectId = effectId;
+
+ battleEffectPlayer.scaleFactor = _scaleRatio;
// 璁剧疆闃佃惀
battleEffectPlayer.isRedCamp = isRedCamp;
@@ -665,11 +680,14 @@
public void BindBone(SkeletonAnimation skeletonAnim, string v)
{
Bone bone = skeletonAnim.skeleton.FindBone(v);
-
+ isBindBone = false;
+ followedBone = null;
if (null == bone)
{
return;
}
+
+ rectTrans.localScale *= scaleFactor;
isBindBone = true;
followedBone = bone;
@@ -688,4 +706,18 @@
boneFollower.Initialize();
boneFollower.LateUpdate();
}
+
+ private float scaleX = 0f;
+
+ public void SetScaleX(float v)
+ {
+ if (spineComp != null && spineComp.skeleton != null)
+ {
+ spineComp.skeleton.ScaleX = v;
+ }
+ else
+ {
+ scaleX = v;
+ }
+ }
}
--
Gitblit v1.8.0