From ed26f235a0f41c5676a9ce3c898d6bef18623fbe Mon Sep 17 00:00:00 2001
From: yyl <yyl>
Date: 星期五, 30 一月 2026 10:34:37 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.1.20:10010/r/Project_SG_scripts
---
Main/System/Battle/BattleField/BattleField.cs | 10 +++++
Main/System/Equip/EquipModel.cs | 2
Main/System/Mingge/MinggeWin.cs | 2
Main/System/Hero/UIHeroController.cs | 11 +++++
Main/System/OtherPlayerDetail/OtherNPCDetailWin.cs | 2
Main/System/Mingge/MinggeManager.cs | 44 ++++++++++++++++++++--
Main/Component/UI/Effect/EffectPlayer.cs | 16 ++++++-
Main/System/OtherPlayerDetail/OtherEquipCardItem.cs | 2
Main/System/OtherPlayerDetail/OtherHeroDetailWin.cs | 2
9 files changed, 79 insertions(+), 12 deletions(-)
diff --git a/Main/Component/UI/Effect/EffectPlayer.cs b/Main/Component/UI/Effect/EffectPlayer.cs
index 661b4e5..e12dbe3 100644
--- a/Main/Component/UI/Effect/EffectPlayer.cs
+++ b/Main/Component/UI/Effect/EffectPlayer.cs
@@ -35,7 +35,7 @@
public EffectConfig effectConfig;
- public float speedRate = 1f;
+ public float speedRate = 1f; //鍒濆鍖栫殑鏃跺�欑敤 淇敼浣跨敤SetSpeed
[Header("鏄惁寰幆鎾斁spine鐗规晥")]
public bool isPlaySpineLoop = false;
@@ -249,7 +249,17 @@
// return;
// }
-
+ //瓒婂ぇ瓒婂揩
+ public void SetSpeed(float speed)
+ {
+ speedRate = speed;
+ if (spineAnimationState == null)
+ {
+ Debug.LogError("spineAnimationState is null 鍙互鍏堣皟鐢╬lay");
+ return;
+ }
+ spineAnimationState.TimeScale = speed;
+ }
protected void PlaySpineEffect(bool closePMA = false)
{
@@ -268,7 +278,6 @@
spineComp.MeshGenerator.settings.pmaVertexColors = !closePMA;
spineComp.raycastTarget = false;
spineComp.Initialize(true);
- spineComp.timeScale = speedRate;
// 妫�鏌ュ姩鐢绘槸鍚︽湁鐩稿姞妯″紡
// bool hasAdditiveBlend = CheckForAdditiveBlend(spineComp.Skeleton);
// if (hasAdditiveBlend)
@@ -282,6 +291,7 @@
spineComp.material = ResManager.Instance.LoadAsset<Material>("Materials", "SkeletonGraphicDefault-Straight");
spineAnimationState = spineComp.AnimationState;
+ spineAnimationState.TimeScale = speedRate;
spineAnimationState.Data.DefaultMix = 0f;
spineAnimationState.Complete -= OnSpineAnimationComplete;
spineAnimationState.Complete += OnSpineAnimationComplete;
diff --git a/Main/System/Battle/BattleField/BattleField.cs b/Main/System/Battle/BattleField/BattleField.cs
index 9ef715c..e6a8219 100644
--- a/Main/System/Battle/BattleField/BattleField.cs
+++ b/Main/System/Battle/BattleField/BattleField.cs
@@ -657,6 +657,11 @@
foreach (var obj in blueTeam)
{
+ if (obj is MinggeBattleObject)
+ {
+ continue;
+ }
+
obj.SetActive(true);
obj.PlayAnimation(MotionName.run, true);
RectTransform trans = obj.GetRectTransform();
@@ -669,6 +674,11 @@
{
foreach (var obj in blueTeam)
{
+ if (obj is MinggeBattleObject)
+ {
+ continue;
+ }
+
obj.PlayAnimation(MotionName.idle, true);
}
diff --git a/Main/System/Equip/EquipModel.cs b/Main/System/Equip/EquipModel.cs
index 7a50cdb..548cb93 100644
--- a/Main/System/Equip/EquipModel.cs
+++ b/Main/System/Equip/EquipModel.cs
@@ -273,7 +273,7 @@
}
/// <summary>
- /// 瑁呭鎿嶄綔, // 0 - 鎷惧彇闈炶澶囩墿鍝侊紱1 - 鍒嗚В锛�2 - 绌挎埓/鏇挎崲
+ /// 瑁呭鎿嶄綔, // 0 - 鎷惧彇闈炶澶囩墿鍝侊紱1 - 鍒嗚В锛�2 - 绌挎埓/鏇挎崲 3 璇锋眰鏇村鍗′綇鐨勮澶�
/// </summary>
/// <param name="itemIndexList"> 鏆傚畾閮芥槸鍗曚欢澶勭悊濡傛灉瑕佹壒閲忓鐞� 娉ㄦ剰鎴樺姏鐨勮绠楁秷鑰�</param>
/// <param name="opType"></param>
diff --git a/Main/System/Hero/UIHeroController.cs b/Main/System/Hero/UIHeroController.cs
index 6119e98..dd7ae75 100644
--- a/Main/System/Hero/UIHeroController.cs
+++ b/Main/System/Hero/UIHeroController.cs
@@ -126,14 +126,25 @@
Debug.LogError("鏈厤缃畇pine");
return;
}
+ skeletonGraphic.initialSkinName = skinConfig.InitialSkinName;
skeletonGraphic.Initialize(true);
+ // 鍒濆鍖栧畬鎴愬悗璁剧疆鐨偆
+ if (!string.IsNullOrEmpty(skinConfig.InitialSkinName))
+ {
+ var skeleton = skeletonGraphic.Skeleton;
+ skeleton.SetSkin(skinConfig.InitialSkinName);
+ skeleton.SetSlotsToSetupPose();
+ skeletonGraphic.Update(0);
+ }
skeletonGraphic.enabled = true;
SetMaterialNone();
+
spineAnimationState = skeletonGraphic.AnimationState;
spineAnimationState.Data.DefaultMix = 0f;
if (motionName == "")
motionName = GetFistSpineAnim();
+
PlayAnimation(motionName, true);
spineAnimationState.Complete -= OnAnimationComplete;
spineAnimationState.Complete += OnAnimationComplete;
diff --git a/Main/System/Mingge/MinggeManager.cs b/Main/System/Mingge/MinggeManager.cs
index c48f44e..2376158 100644
--- a/Main/System/Mingge/MinggeManager.cs
+++ b/Main/System/Mingge/MinggeManager.cs
@@ -44,6 +44,7 @@
DTC0403_tagPlayerLoginLoadOK.playerLoginOkEvent += OnPlayerLoginOK;
FuncPresetManager.Instance.OnFuncPresetUseDataEvent += OnFuncPresetUseDataEvent;
GlobalTimeEvent.Instance.MSEvent += OnMSEvent;
+ FuncOpen.Instance.OnFuncStateChangeEvent += OnFuncStateChangeEvent;
ParseConfig();
}
@@ -56,6 +57,7 @@
DTC0403_tagPlayerLoginLoadOK.playerLoginOkEvent -= OnPlayerLoginOK;
FuncPresetManager.Instance.OnFuncPresetUseDataEvent -= OnFuncPresetUseDataEvent;
GlobalTimeEvent.Instance.MSEvent -= OnMSEvent;
+ FuncOpen.Instance.OnFuncStateChangeEvent -= OnFuncStateChangeEvent;
}
@@ -94,11 +96,20 @@
isStartAuto = false;
isPauseAuto = false;
qlNotNotify = false;
+ decomposeMGList.Clear();
}
private void OnBeforePlayerDataInitialize()
{
waitTYOPPack = false;
+ }
+
+ void OnFuncStateChangeEvent(int id)
+ {
+ if (id == (int)FuncOpenEnum.Mingge)
+ {
+ InitAutoSet();
+ }
}
void OnPlayerLoginOK()
@@ -155,10 +166,22 @@
if (OpenMinggeEquipWin(item))
{
//闇�瑕佺帺瀹跺鐞嗚澶�
+ if (!decomposeMGList.IsNullOrEmpty())
+ {
+ SendDecompose(decomposeMGList.ToArray());
+ decomposeMGList.Clear();
+ }
+
return true;
}
}
+ //闇�瑕佺帺瀹跺鐞嗚澶�
+ if (!decomposeMGList.IsNullOrEmpty())
+ {
+ SendDecompose(decomposeMGList.ToArray());
+ decomposeMGList.Clear();
+ }
return false;
}
@@ -534,6 +557,7 @@
{
m_IsStartAuto = value;
isPauseAuto = false;
+ decomposeMGList.Clear();
UpdateRedPoint();
ChangeAutoEvent?.Invoke();
}
@@ -668,9 +692,21 @@
}
}
- SendDecompose(new byte[] { (byte)mgEquip.gridIndex });
+ // SendDecompose(new byte[] { (byte)mgEquip.gridIndex });
+ AddDecomposeMG((byte)mgEquip.gridIndex);
return false;
}
+
+ List<byte> decomposeMGList = new List<byte>();
+ void AddDecomposeMG(byte index)
+ {
+ if (decomposeMGList.Contains(index))
+ {
+ return;
+ }
+ decomposeMGList.Add(index);
+ }
+
//鍗曟柟妗堝垽鏂紝鏈紑鍚殑涔熷綋浣滃彲鍒嗚В锛屽灞傚濂楀垽鏂湁涓�濂楅渶瑕佸氨鏄渶瑕佺┛鎴�
bool CanDecomposeMG(ItemModel mgEquip, MinggeAutoSet autoSet)
@@ -864,15 +900,15 @@
if (!ui.tyEffect.isPlaying)
{
ui.tyEffect.onComplete = null;
+ ui.tyEffect.Play();
if (autoSpeedUP)
{
- ui.tyEffect.speedRate = autoTYCDs[0] / autoTYCDs[1];
+ ui.tyEffect.SetSpeed(autoTYCDs[0] / autoTYCDs[1]);
}
else
{
- ui.tyEffect.speedRate = 1;
+ ui.tyEffect.SetSpeed(1);
}
- ui.tyEffect.Play();
}
}
diff --git a/Main/System/Mingge/MinggeWin.cs b/Main/System/Mingge/MinggeWin.cs
index b5e2336..4666102 100644
--- a/Main/System/Mingge/MinggeWin.cs
+++ b/Main/System/Mingge/MinggeWin.cs
@@ -297,12 +297,12 @@
{
MinggeManager.Instance.StartAuto(false);
}
- tyEffect.speedRate = 1;
tyEffect.onComplete = () =>
{
MinggeManager.Instance.SendTY(1);
};
tyEffect.Play();
+ tyEffect.SetSpeed(1);
}
diff --git a/Main/System/OtherPlayerDetail/OtherEquipCardItem.cs b/Main/System/OtherPlayerDetail/OtherEquipCardItem.cs
index 29d8b36..7d2b9b0 100644
--- a/Main/System/OtherPlayerDetail/OtherEquipCardItem.cs
+++ b/Main/System/OtherPlayerDetail/OtherEquipCardItem.cs
@@ -34,7 +34,7 @@
{
uiEffect.effectId = 1026;
- uiEffect.PlayByArrIndex(config.ItemColor - 7, true, true);
+ uiEffect.PlayByArrIndex(config.ItemColor - 7, true, false);
}
else
{
diff --git a/Main/System/OtherPlayerDetail/OtherHeroDetailWin.cs b/Main/System/OtherPlayerDetail/OtherHeroDetailWin.cs
index cb5a780..dcd9aed 100644
--- a/Main/System/OtherPlayerDetail/OtherHeroDetailWin.cs
+++ b/Main/System/OtherPlayerDetail/OtherHeroDetailWin.cs
@@ -288,7 +288,7 @@
potential.SetActive(false);
return;
}
-
+ potential.SetActive(true);
var list = HeroBreakConfig.configDics[heroID].Keys.ToList();
diff --git a/Main/System/OtherPlayerDetail/OtherNPCDetailWin.cs b/Main/System/OtherPlayerDetail/OtherNPCDetailWin.cs
index 12f4602..f335b27 100644
--- a/Main/System/OtherPlayerDetail/OtherNPCDetailWin.cs
+++ b/Main/System/OtherPlayerDetail/OtherNPCDetailWin.cs
@@ -178,7 +178,7 @@
potential.SetActive(false);
return;
}
-
+ potential.SetActive(true);
var list = HeroBreakConfig.configDics[heroID].Keys.ToList();
--
Gitblit v1.8.0