From 8c279427332ae2abf33df0e403736634c48258df Mon Sep 17 00:00:00 2001
From: yyl <yyl>
Date: 星期四, 04 六月 2026 18:05:06 +0800
Subject: [PATCH] 绑定战场点位特效支持

---
 Main/System/Guild/GuildBaseWin.cs |   34 ++++++++++++++++++++++++++++------
 1 files changed, 28 insertions(+), 6 deletions(-)

diff --git a/Main/System/Guild/GuildBaseWin.cs b/Main/System/Guild/GuildBaseWin.cs
index d45e089..8f43f62 100644
--- a/Main/System/Guild/GuildBaseWin.cs
+++ b/Main/System/Guild/GuildBaseWin.cs
@@ -48,7 +48,7 @@
 
         requestBtn.AddListener(() =>
         {
-            // UIManager.Instance.OpenWindow<GuildRequestWin>();
+            UIManager.Instance.OpenWindow<GuildApplyListWin>();
         });
 
         guildHawkerBtn.AddListener(OpenHawker);
@@ -56,6 +56,10 @@
         {
             StoreModel.Instance.selectStoreFuncType = StoreFunc.Guild;
             UIManager.Instance.OpenWindow<StoreBaseWin>();
+        });
+        rankBtn.AddListener(() =>
+        {
+            UIManager.Instance.OpenWindow<GuildRankWin>();
         });
         InitHawker();
         talkBtn.AddListener(OnClickTalkButton);
@@ -67,6 +71,7 @@
     {
         if (PlayerDatas.Instance.fairyData.fairy == null)
             return;
+
         GlobalTimeEvent.Instance.secondEvent += OnSecondEvent;
         GlobalTimeEvent.Instance.fiveSecondEvent += OnFiveSecondEvent;
         ChatManager.Instance.OnUpdateTalkEvent += OnUpdateTalkEvent;
@@ -87,7 +92,7 @@
         ShowGuildInfo();
     }
 
-    private void OnUpdateTalkEvent(ChatChannel channel, TalkData data)
+    private void OnUpdateTalkEvent(ChatChannel channel, TalkData data, bool isSendBullet)
     {
         if (channel != ChatChannel.Guild)
             return;
@@ -108,6 +113,7 @@
 
     void ShowGuildInfo()
     {
+        requestBtn.SetActive(PlayerDatas.Instance.fairyData.HasFairy && PlayerDatas.Instance.fairyData.IsCanFunc(LimitFunc.CanCall));
         emblemCell.Display(PlayerDatas.Instance.fairyData.fairy.EmblemID, PlayerDatas.Instance.fairyData.fairy.EmblemWord, 0.8f);
         guildNameText.text = PlayerDatas.Instance.fairyData.fairy.FamilyName;
         var config = FamilyConfig.Get(PlayerDatas.Instance.fairyData.fairy.FamilyLV);
@@ -212,7 +218,7 @@
 
     public void OnClickTalkButton()
     {
-        ChatManager.Instance.nowChatTab = ChatTab.Guild;
+        ChatManager.Instance.nowChatTab = ChatChannel.Guild;
         ChatManager.Instance.nowChatChannel = ChatChannel.Guild;
         UIManager.Instance.OpenWindow<ChatWin>();
     }
@@ -247,6 +253,7 @@
         }
     }
 
+    List<TalkData> showTalkDatas = new List<TalkData>();
     void ShowTalkInfo()
     {
         if (!ChatManager.Instance.TryGetTalkData(ChatChannel.Guild, out List<TalkData> datas) || datas.IsNullOrEmpty())
@@ -254,15 +261,30 @@
             talkInfoText.text = string.Empty;
             return;
         }
+        showTalkDatas.Clear();
 
-        StringBuilder stringBuilder = new StringBuilder();
-        int startIndex = Mathf.Max(datas.Count - 2, 0);
-        for (int i = startIndex; i < datas.Count; i++)
+        // 浠庡悗鍚戝墠閬嶅巻锛屾壘鍒版渶鍚庝袱鏉$帺瀹舵秷鎭紙杩囨护鎺夌郴缁熸秷鎭拰鏃ユ湡娑堟伅锛�
+        int count = 0;
+        for (int i = datas.Count - 1; i >= 0 && count < 2; i--)
         {
             TalkData data = datas[i];
+            // 鍙繚鐣欑帺瀹舵秷鎭細闈炵郴缁熸秷鎭笖闈炴棩鏈熸秷鎭�
+            if (!data.isSystem && !data.isDate)
+            {
+                showTalkDatas.Insert(0, data); // 鎻掑叆鍒板垪琛ㄥ紑澶翠互淇濇寔鏃堕棿椤哄簭
+                count++;
+            }
+        }
+
+        StringBuilder stringBuilder = new StringBuilder();
+        for (int i = 0; i < showTalkDatas.Count; i++)
+        {
+            TalkData data = showTalkDatas[i];
             stringBuilder.Append(UIHelper.AppendColor(GetGuildChatAreaColor(data), GetGuildChatAreaContent(data)));
             stringBuilder.AppendLine();
         }
+
         talkInfoText.text = stringBuilder.ToString();
     }
+
 }
\ No newline at end of file

--
Gitblit v1.8.0