From 485db99b5c51a971c173664cf6e808dc8424b0a0 Mon Sep 17 00:00:00 2001
From: lcy <1459594991@qq.com>
Date: 星期五, 17 十月 2025 17:19:51 +0800
Subject: [PATCH] 136 子 【挑战】战锤秘境 / 【挑战】战锤秘境-客户端 移除错误接入

---
 Main/Component/UI/Common/RendererAdjuster.cs |   68 +++++++++++++++++++++------------
 1 files changed, 43 insertions(+), 25 deletions(-)

diff --git a/Main/Component/UI/Common/RendererAdjuster.cs b/Main/Component/UI/Common/RendererAdjuster.cs
index 56b9b23..b7e635e 100644
--- a/Main/Component/UI/Common/RendererAdjuster.cs
+++ b/Main/Component/UI/Common/RendererAdjuster.cs
@@ -2,22 +2,34 @@
 using System.Collections.Generic;
 using UnityEngine;
 using System;
+using Spine.Unity;
 
 public class RendererAdjuster : MonoBehaviour
 {
-    public int renderQueue = 3000;
 
-    public Canvas canvas;
-
-    public int sortingOrderOffset = 1;
+    public int sortingOrder = 0;
 
     public string customSortingLayer = "UI";
 
     public List<Renderer> renderers = new List<Renderer>();
 
-    public void Awake()
+    // private List<SkeletonAnimation> skeletonAnimations = new List<SkeletonAnimation>();
+
+    protected Canvas canvas;
+
+    public int canvasOffset = 1;
+
+    public Action<string, int> onSortingChanged;
+
+    protected void Awake()
     {
         UpdateComps();
+    }
+
+    public void SetSortingOrder(int sortingOrder)
+    {
+        this.sortingOrder = sortingOrder;
+        UpdateLayer();
     }
 
     protected void UpdateComps()
@@ -25,33 +37,25 @@
         renderers.Clear();
         renderers.AddRange(gameObject.GetComponentsInChildren<Renderer>(true));
 
-        canvas = GetComponentInParent<Canvas>();
+        // skeletonAnimations.Clear();
+        // skeletonAnimations.AddRange(gameObject.GetComponentsInChildren<SkeletonAnimation>(true));
+
+        canvas = GetComponentInChildren<Canvas>(true);
     }
 
-    public void SetParentCanvas(Canvas _canvas)
+    [ContextMenu("UpdateLayer")]
+    private void UpdateLayer()
     {
-        canvas = _canvas;
-        this.DelayFrame(UpdateSortingOrder);
+        UpdateComps();
+        UpdateSortingOrder();
     }
 
     public void UpdateSortingOrder()
     {
-        int canvasSortingOrder = 0;
-
-        // 鑾峰彇鐖剁骇Canvas鐨勬帓搴忛『搴�
-        if (canvas != null)
-        {
-            canvasSortingOrder = canvas.sortingOrder;
-        }
-        else
-        {
-            // 濡傛灉娌℃湁鎵惧埌鐖剁骇Canvas锛屽垯浣跨敤榛樿鍊�
-            canvasSortingOrder = 0;
-        }
-
         // 灏嗙壒鏁堢殑鎺掑簭椤哄簭璁剧疆涓篊anvas鎺掑簭椤哄簭鍔犱笂鍋忕Щ閲�
-        ApplySortingSettings(canvasSortingOrder + sortingOrderOffset, customSortingLayer);
+        ApplySortingSettings(sortingOrder, customSortingLayer);
     }
+    
 
     private void ApplySortingSettings(int sortingOrder, string sortingLayer)
     {
@@ -60,13 +64,27 @@
             if (renderer != null)
             {
                 renderer.sortingOrder = sortingOrder;
-                renderer.material.renderQueue = renderQueue; // 璁剧疆娓叉煋闃熷垪
-                // renderer.material.renderQueue = overlayRQ;
                 if (!string.IsNullOrEmpty(sortingLayer))
                 {
                     renderer.sortingLayerName = sortingLayer;
                 }
             }
         }
+
+        if (null != canvas)
+        {
+            canvas.sortingOrder = sortingOrder + canvasOffset;
+            if (!string.IsNullOrEmpty(sortingLayer))
+            {
+                canvas.sortingLayerName = sortingLayer;
+            }
+        }
+
+        // foreach (var skeletonAnim in skeletonAnimations)
+        // {
+
+        // }
+
+        onSortingChanged?.Invoke(sortingLayer, sortingOrder);
     }
 }

--
Gitblit v1.8.0