From 39001a600fcae2bcf27c225df8752d75fb92fef4 Mon Sep 17 00:00:00 2001
From: yyl <yyl>
Date: 星期五, 31 十月 2025 11:18:26 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.1.20:10010/r/Project_SG_scripts
---
Main/Utility/EffectPenetrationBlocker.cs | 37 +++++++++++++++++++++++--------------
1 files changed, 23 insertions(+), 14 deletions(-)
diff --git a/Main/Utility/EffectPenetrationBlocker.cs b/Main/Utility/EffectPenetrationBlocker.cs
index 0c40fd2..25350a6 100644
--- a/Main/Utility/EffectPenetrationBlocker.cs
+++ b/Main/Utility/EffectPenetrationBlocker.cs
@@ -1,6 +1,10 @@
+using System;
using System.Collections.Generic;
+using Spine.Unity;
using UnityEngine;
using UnityEngine.UI;
+
+
/// <summary>
/// 鐗规晥绌块�忛樆鎸″櫒
@@ -10,26 +14,28 @@
{
[Tooltip("鏄惁鍦║I灞傜骇涓嬭嚜鍔ㄨ皟鏁存帓搴忛『搴�")]
public bool autoAdjustSorting = true;
-
+
[Tooltip("鐗规晥娓叉煋鍣紝濡傛灉涓虹┖鍒欒嚜鍔ㄨ幏鍙�")]
public List<Renderer> effectRenderers = new List<Renderer>();
-
+
[Tooltip("鑷畾涔夋帓搴忛『搴忥紝浠呭湪涓嶈嚜鍔ㄨ皟鏁存椂鏈夋晥")]
public int customSortingOrder = 0;
-
+
[Tooltip("鑷畾涔夋帓搴忓眰锛屼负绌哄垯浣跨敤榛樿UI灞�")]
public string customSortingLayer = "UI";
-
+
[Tooltip("鐗规晥鎵�灞炵殑Canvas锛屽鏋滀负绌哄垯鏌ユ壘鐖剁骇Canvas")]
public Canvas parentCanvas;
-
+
[Tooltip("鐗规晥鍦–anvas涓殑鎺掑簭鍋忕Щ閲�")]
public int sortingOrderOffset = 1;
-
+
public int canvasSortingOrder = 0;
public int renderQueue = 3000;//榛樿鍊�
-
+
+ public Action<string, int> onSortingChanged;
+
private void Awake()
{
transform.GetComponentsInChildren(true, effectRenderers);
@@ -56,7 +62,7 @@
ApplySortingSettings(customSortingOrder, customSortingLayer);
}
}
-
+
private void OnEnable()
{
if (autoAdjustSorting)
@@ -64,14 +70,14 @@
UpdateSortingOrder();
}
}
-
+
/// <summary>
/// 鏇存柊鎺掑簭椤哄簭锛岀‘淇濈壒鏁堟樉绀哄湪褰撳墠UI鐣岄潰涓婃柟
/// </summary>
public void UpdateSortingOrder()
{
if (!autoAdjustSorting) return;
-
+
// 鑾峰彇鐖剁骇Canvas鐨勬帓搴忛『搴�
if (parentCanvas != null)
{
@@ -86,7 +92,7 @@
// 灏嗙壒鏁堢殑鎺掑簭椤哄簭璁剧疆涓篊anvas鎺掑簭椤哄簭鍔犱笂鍋忕Щ閲�
ApplySortingSettings(canvasSortingOrder + sortingOrderOffset, customSortingLayer);
}
-
+
/// <summary>
/// 搴旂敤鎺掑簭璁剧疆鍒版墍鏈夋覆鏌撳櫒鍜岀矑瀛愮郴缁�
/// </summary>
@@ -108,8 +114,10 @@
}
}
}
+
+ onSortingChanged?.Invoke(sortingLayer, sortingOrder);
}
-
+
/// <summary>
/// 鎵嬪姩璁剧疆鎺掑簭椤哄簭
/// </summary>
@@ -120,11 +128,11 @@
{
customSortingLayer = sortingLayer;
}
-
+
autoAdjustSorting = false;
ApplySortingSettings(customSortingOrder, customSortingLayer);
}
-
+
/// <summary>
/// 璁剧疆鐖剁骇Canvas
/// </summary>
@@ -160,6 +168,7 @@
}
}
+
#if UNITY_EDITOR
[ContextMenu("Apply")]
public void Apply()
--
Gitblit v1.8.0