From fe875fa59696d362d148f4d0b76256d1dd58f93f Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期三, 04 二月 2026 23:51:55 +0800
Subject: [PATCH] 66 【公会】基础主体
---
Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA524_tagSCFamilyMemDel.cs.meta | 2
Main/Utility/TimeUtility.cs | 9 +
Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA524_tagSCFamilyMemDel.cs | 12 +
Main/System/Guild/ServersSmallTipCell.cs.meta | 2
Main/Core/NetworkPackage/ServerPack/HA5_Family/HA505_tagSCFamilyCrossInfo.cs | 21 +++
Main/System/Guild/GuildJoinWin.cs | 6
Main/System/Guild/ServersSmallTipWin.cs | 66 +++++++++
Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA505_tagSCFamilyCrossInfo.cs.meta | 2
Main/System/Guild/ServersSmallTipCell.cs | 29 ++++
Main/Core/NetworkPackage/ServerPack/HA5_Family/HA520_tagMCRoleFamilyInfo.cs | 2
Main/Core/NetworkPackage/ServerPack/HA5_Family/HA505_tagSCFamilyCrossInfo.cs.meta | 2
Main/System/Guild/PlayerFairyData.cs | 62 ++++++--
Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA505_tagSCFamilyCrossInfo.cs | 12 +
Main/System/Guild/GuildManager.cs | 37 ----
Main/System/Guild/GuildOPWin.cs | 1
Main/System/Guild/GuildManager.CrossServer.cs | 52 +++++++
Main/System/Guild/GuildChangeNameWin.cs | 6
/dev/null | 11 -
Main/Utility/UIHelper.cs | 10 +
Main/System/Guild/GuildHallWin.cs | 1
Main/System/Guild/GuildManager.CrossServer.cs.meta | 2
Main/System/Guild/ServersSmallTipWin.cs.meta | 2
Main/Core/NetworkPackage/DataToCtl/PackageRegedit.cs | 3
Main/Core/NetworkPackage/ServerPack/HA5_Family/HA523_tagMCFamilyViewList.cs | 2
Main/Core/NetworkPackage/ServerPack/HA5_Family/HA524_tagSCFamilyMemDel.cs.meta | 2
Main/Core/NetworkPackage/ServerPack/HA5_Family/HA524_tagSCFamilyMemDel.cs | 23 +++
Main/System/Guild/GuildBaseWin.cs | 1
Main/System/HeroUI/HeroUIManager.cs | 1
28 files changed, 305 insertions(+), 76 deletions(-)
diff --git a/Main/Core/NetworkPackage/ClientPack/CA6_Family/CA626_tagCMGetFamilyInfo.cs b/Main/Core/NetworkPackage/ClientPack/CA6_Family/CA626_tagCMGetFamilyInfo.cs
deleted file mode 100644
index 36a6ef6..0000000
--- a/Main/Core/NetworkPackage/ClientPack/CA6_Family/CA626_tagCMGetFamilyInfo.cs
+++ /dev/null
@@ -1,16 +0,0 @@
-using UnityEngine;
-using System.Collections;
-
-// A6 26 璇锋眰瀹舵棌鎴愬憳鍒楄〃 #tagCMGetFamilyInfo
-
-public class CA626_tagCMGetFamilyInfo : GameNetPackBasic {
-
- public CA626_tagCMGetFamilyInfo () {
- combineCmd = (ushort)0x03FE;
- _cmd = (ushort)0xA626;
- }
-
- public override void WriteToBytes () {
- }
-
-}
diff --git a/Main/Core/NetworkPackage/ClientPack/CA6_Family/CA626_tagCMGetFamilyInfo.cs.meta b/Main/Core/NetworkPackage/ClientPack/CA6_Family/CA626_tagCMGetFamilyInfo.cs.meta
deleted file mode 100644
index 170af80..0000000
--- a/Main/Core/NetworkPackage/ClientPack/CA6_Family/CA626_tagCMGetFamilyInfo.cs.meta
+++ /dev/null
@@ -1,11 +0,0 @@
-fileFormatVersion: 2
-guid: 32dffab7fe30a854694d5714937a2dfe
-MonoImporter:
- externalObjects: {}
- serializedVersion: 2
- defaultReferences: []
- executionOrder: 0
- icon: {instanceID: 0}
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA505_tagSCFamilyCrossInfo.cs b/Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA505_tagSCFamilyCrossInfo.cs
new file mode 100644
index 0000000..ce0323e
--- /dev/null
+++ b/Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA505_tagSCFamilyCrossInfo.cs
@@ -0,0 +1,12 @@
+using UnityEngine;
+using System.Collections;
+
+// A5 05 鍏細璺ㄦ湇浜掗�氫俊鎭� #tagSCFamilyCrossInfo
+
+public class DTCA505_tagSCFamilyCrossInfo : DtcBasic {
+ public override void Done(GameNetPackBasic vNetPack) {
+ base.Done(vNetPack);
+ HA505_tagSCFamilyCrossInfo vNetData = vNetPack as HA505_tagSCFamilyCrossInfo;
+ GuildManager.Instance.OnRefreshCrossServerInfo(vNetData);
+ }
+}
diff --git a/Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA521_tagMCFamilyChange.cs.meta b/Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA505_tagSCFamilyCrossInfo.cs.meta
similarity index 83%
rename from Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA521_tagMCFamilyChange.cs.meta
rename to Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA505_tagSCFamilyCrossInfo.cs.meta
index 4c9b26c..6ba0999 100644
--- a/Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA521_tagMCFamilyChange.cs.meta
+++ b/Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA505_tagSCFamilyCrossInfo.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 95872d70a4fcdaf47a7089e954db72fb
+guid: b6a841aca303f3d4bb7fa214596b9fb4
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA521_tagMCFamilyChange.cs b/Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA521_tagMCFamilyChange.cs
deleted file mode 100644
index 22891b0..0000000
--- a/Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA521_tagMCFamilyChange.cs
+++ /dev/null
@@ -1,12 +0,0 @@
-using UnityEngine;
-using System.Collections;
-
-// A5 21 瀹舵棌鍙樻洿 #tagMCFamilyChange
-
-public class DTCA521_tagMCFamilyChange : DtcBasic {
- public override void Done(GameNetPackBasic vNetPack) {
- base.Done(vNetPack);
- HA521_tagMCFamilyChange vNetData = vNetPack as HA521_tagMCFamilyChange;
- GuildManager.Instance.UpdateGuildDataChangeMark(vNetData);
- }
-}
diff --git a/Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA524_tagSCFamilyMemDel.cs b/Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA524_tagSCFamilyMemDel.cs
new file mode 100644
index 0000000..730dd42
--- /dev/null
+++ b/Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA524_tagSCFamilyMemDel.cs
@@ -0,0 +1,12 @@
+using UnityEngine;
+using System.Collections;
+
+// A5 24 鍏細鎴愬憳鍒犻櫎 #tagSCFamilyMemDel
+
+public class DTCA524_tagSCFamilyMemDel : DtcBasic {
+ public override void Done(GameNetPackBasic vNetPack) {
+ base.Done(vNetPack);
+ HA524_tagSCFamilyMemDel vNetData = vNetPack as HA524_tagSCFamilyMemDel;
+ PlayerDatas.Instance.fairyData.DeleteMember(vNetData);
+ }
+}
diff --git a/Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA521_tagMCFamilyChange.cs.meta b/Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA524_tagSCFamilyMemDel.cs.meta
similarity index 83%
copy from Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA521_tagMCFamilyChange.cs.meta
copy to Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA524_tagSCFamilyMemDel.cs.meta
index 4c9b26c..76bf18d 100644
--- a/Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA521_tagMCFamilyChange.cs.meta
+++ b/Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA524_tagSCFamilyMemDel.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 95872d70a4fcdaf47a7089e954db72fb
+guid: de4a083265d8ebf438ab2e65d0925d9e
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Main/Core/NetworkPackage/DataToCtl/PackageRegedit.cs b/Main/Core/NetworkPackage/DataToCtl/PackageRegedit.cs
index 01570dc..61060a4 100644
--- a/Main/Core/NetworkPackage/DataToCtl/PackageRegedit.cs
+++ b/Main/Core/NetworkPackage/DataToCtl/PackageRegedit.cs
@@ -110,7 +110,8 @@
Register(typeof(HA512_tagMCFamilyZhenbaogeInfo), typeof(DTCA512_tagMCFamilyZhenbaogeInfo));
Register(typeof(HA513_tagMCFamilyActionInfo), typeof(DTCA513_tagMCFamilyActionInfo));
Register(typeof(HA520_tagMCRoleFamilyInfo), typeof(DTCA520_tagMCRoleFamilyInfo));
- Register(typeof(HA521_tagMCFamilyChange), typeof(DTCA521_tagMCFamilyChange));
+ Register(typeof(HA524_tagSCFamilyMemDel), typeof(DTCA524_tagSCFamilyMemDel));
+ Register(typeof(HA505_tagSCFamilyCrossInfo), typeof(DTCA505_tagSCFamilyCrossInfo));
Register(typeof(HA522_tagMCFamilyReqJoinInfo), typeof(DTCA522_tagMCFamilyReqJoinInfo));
Register(typeof(HA523_tagMCFamilyViewList), typeof(DTCA523_tagMCFamilyViewList));
Register(typeof(HA009_tagSCGameRecInfo), typeof(DTCA009_tagSCGameRecInfo));
diff --git a/Main/Core/NetworkPackage/ServerPack/HA5_Family/HA505_tagSCFamilyCrossInfo.cs b/Main/Core/NetworkPackage/ServerPack/HA5_Family/HA505_tagSCFamilyCrossInfo.cs
new file mode 100644
index 0000000..99b8181
--- /dev/null
+++ b/Main/Core/NetworkPackage/ServerPack/HA5_Family/HA505_tagSCFamilyCrossInfo.cs
@@ -0,0 +1,21 @@
+using UnityEngine;
+using System.Collections;
+
+// A5 05 鍏細璺ㄦ湇浜掗�氫俊鎭� #tagSCFamilyCrossInfo
+
+public class HA505_tagSCFamilyCrossInfo : GameNetPackBasic {
+ public byte ZoneID; // 鎵�灞炲垎鍖�
+ public ushort ServerCnt;
+ public uint[] ServerIDList; // 浜掗�氭湇鍔″櫒ID鍒楄〃
+
+ public HA505_tagSCFamilyCrossInfo () {
+ _cmd = (ushort)0xA505;
+ }
+
+ public override void ReadFromBytes (byte[] vBytes) {
+ TransBytes (out ZoneID, vBytes, NetDataType.BYTE);
+ TransBytes (out ServerCnt, vBytes, NetDataType.WORD);
+ TransBytes (out ServerIDList, vBytes, NetDataType.DWORD, ServerCnt);
+ }
+
+}
diff --git a/Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA521_tagMCFamilyChange.cs.meta b/Main/Core/NetworkPackage/ServerPack/HA5_Family/HA505_tagSCFamilyCrossInfo.cs.meta
similarity index 83%
copy from Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA521_tagMCFamilyChange.cs.meta
copy to Main/Core/NetworkPackage/ServerPack/HA5_Family/HA505_tagSCFamilyCrossInfo.cs.meta
index 4c9b26c..f0abc6f 100644
--- a/Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA521_tagMCFamilyChange.cs.meta
+++ b/Main/Core/NetworkPackage/ServerPack/HA5_Family/HA505_tagSCFamilyCrossInfo.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 95872d70a4fcdaf47a7089e954db72fb
+guid: 2975d104ad2db9747a57b40c35de08e2
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Main/Core/NetworkPackage/ServerPack/HA5_Family/HA520_tagMCRoleFamilyInfo.cs b/Main/Core/NetworkPackage/ServerPack/HA5_Family/HA520_tagMCRoleFamilyInfo.cs
index 747ce8f..23e1d66 100644
--- a/Main/Core/NetworkPackage/ServerPack/HA5_Family/HA520_tagMCRoleFamilyInfo.cs
+++ b/Main/Core/NetworkPackage/ServerPack/HA5_Family/HA520_tagMCRoleFamilyInfo.cs
@@ -20,6 +20,7 @@
public uint LeaderID; //鏃忛暱鐜╁ID
public byte MemberCount; //浜烘暟
public tagMCRoleFamilyMember[] MemberList; //size = MemberCount
+ public uint Extra1; //闄勫姞瀛楁1
public HA520_tagMCRoleFamilyInfo () {
_cmd = (ushort)0xA520;
@@ -64,6 +65,7 @@
TransBytes (out MemberList[i].DonateCntDay, vBytes, NetDataType.BYTE);
TransBytes (out MemberList[i].OffTime, vBytes, NetDataType.DWORD);
}
+ TransBytes (out Extra1, vBytes, NetDataType.DWORD);
}
public class tagMCRoleFamilyMember {
diff --git a/Main/Core/NetworkPackage/ServerPack/HA5_Family/HA521_tagMCFamilyChange.cs b/Main/Core/NetworkPackage/ServerPack/HA5_Family/HA521_tagMCFamilyChange.cs
deleted file mode 100644
index 79786a7..0000000
--- a/Main/Core/NetworkPackage/ServerPack/HA5_Family/HA521_tagMCFamilyChange.cs
+++ /dev/null
@@ -1,17 +0,0 @@
-using UnityEngine;
-using System.Collections;
-
-// A5 21 瀹舵棌鍙樻洿 #tagMCFamilyChange
-
-public class HA521_tagMCFamilyChange : GameNetPackBasic {
- public byte Type;
-
- public HA521_tagMCFamilyChange () {
- _cmd = (ushort)0xA521;
- }
-
- public override void ReadFromBytes (byte[] vBytes) {
- TransBytes (out Type, vBytes, NetDataType.BYTE);
- }
-
-}
diff --git a/Main/Core/NetworkPackage/ServerPack/HA5_Family/HA521_tagMCFamilyChange.cs.meta b/Main/Core/NetworkPackage/ServerPack/HA5_Family/HA521_tagMCFamilyChange.cs.meta
deleted file mode 100644
index d1f2c26..0000000
--- a/Main/Core/NetworkPackage/ServerPack/HA5_Family/HA521_tagMCFamilyChange.cs.meta
+++ /dev/null
@@ -1,11 +0,0 @@
-fileFormatVersion: 2
-guid: 8aec250ed756e2e40a3fad27b904620d
-MonoImporter:
- externalObjects: {}
- serializedVersion: 2
- defaultReferences: []
- executionOrder: 0
- icon: {instanceID: 0}
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Main/Core/NetworkPackage/ServerPack/HA5_Family/HA523_tagMCFamilyViewList.cs b/Main/Core/NetworkPackage/ServerPack/HA5_Family/HA523_tagMCFamilyViewList.cs
index 9f3c56e..f643e36 100644
--- a/Main/Core/NetworkPackage/ServerPack/HA5_Family/HA523_tagMCFamilyViewList.cs
+++ b/Main/Core/NetworkPackage/ServerPack/HA5_Family/HA523_tagMCFamilyViewList.cs
@@ -11,6 +11,7 @@
public byte TotalPage; //涓�鍏辨湁澶氬皯椤�
public byte FamilyCount;
public tagMCFamilyView[] FamilyList; //鏈〉瀹舵棌淇℃伅鍒楄〃
+ public uint Rank; //鐜╁鍏細鎵�鍦ㄥ悕娆★紝0-娌℃湁鍏細鎴栨病鏈夊湪姒滀笂锛�>0-瀵瑰簲鎺掑悕
public HA523_tagMCFamilyViewList () {
_cmd = (ushort)0xA523;
@@ -43,6 +44,7 @@
TransBytes (out FamilyList[i].FightPowerEx, vBytes, NetDataType.DWORD);
TransBytes (out FamilyList[i].MemberCount, vBytes, NetDataType.BYTE);
}
+ TransBytes (out Rank, vBytes, NetDataType.DWORD);
}
public class tagMCFamilyView {
diff --git a/Main/Core/NetworkPackage/ServerPack/HA5_Family/HA524_tagSCFamilyMemDel.cs b/Main/Core/NetworkPackage/ServerPack/HA5_Family/HA524_tagSCFamilyMemDel.cs
new file mode 100644
index 0000000..08d664f
--- /dev/null
+++ b/Main/Core/NetworkPackage/ServerPack/HA5_Family/HA524_tagSCFamilyMemDel.cs
@@ -0,0 +1,23 @@
+using UnityEngine;
+using System.Collections;
+
+// A5 24 鍏細鎴愬憳鍒犻櫎 #tagSCFamilyMemDel
+
+public class HA524_tagSCFamilyMemDel : GameNetPackBasic {
+ public byte Type; // 0-韪㈠嚭锛�1-涓诲姩閫�鍑�
+ public uint PlayerID;
+ public byte NameLen;
+ public string Name;
+
+ public HA524_tagSCFamilyMemDel () {
+ _cmd = (ushort)0xA524;
+ }
+
+ public override void ReadFromBytes (byte[] vBytes) {
+ TransBytes (out Type, vBytes, NetDataType.BYTE);
+ TransBytes (out PlayerID, vBytes, NetDataType.DWORD);
+ TransBytes (out NameLen, vBytes, NetDataType.BYTE);
+ TransBytes (out Name, vBytes, NetDataType.Chars, NameLen);
+ }
+
+}
diff --git a/Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA521_tagMCFamilyChange.cs.meta b/Main/Core/NetworkPackage/ServerPack/HA5_Family/HA524_tagSCFamilyMemDel.cs.meta
similarity index 83%
copy from Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA521_tagMCFamilyChange.cs.meta
copy to Main/Core/NetworkPackage/ServerPack/HA5_Family/HA524_tagSCFamilyMemDel.cs.meta
index 4c9b26c..a9bc564 100644
--- a/Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA521_tagMCFamilyChange.cs.meta
+++ b/Main/Core/NetworkPackage/ServerPack/HA5_Family/HA524_tagSCFamilyMemDel.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 95872d70a4fcdaf47a7089e954db72fb
+guid: 824719d9672072944a5ff55b15e93e52
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Main/System/Guild/GuildBaseWin.cs b/Main/System/Guild/GuildBaseWin.cs
index 1b3a829..7d223e0 100644
--- a/Main/System/Guild/GuildBaseWin.cs
+++ b/Main/System/Guild/GuildBaseWin.cs
@@ -72,7 +72,6 @@
if (PlayerDatas.Instance.fairyData.fairy == null)
return;
- GuildManager.Instance.RequestGuildData();
GlobalTimeEvent.Instance.secondEvent += OnSecondEvent;
GlobalTimeEvent.Instance.fiveSecondEvent += OnFiveSecondEvent;
ChatManager.Instance.OnUpdateTalkEvent += OnUpdateTalkEvent;
diff --git a/Main/System/Guild/GuildChangeNameWin.cs b/Main/System/Guild/GuildChangeNameWin.cs
index 8992a21..0b1e90b 100644
--- a/Main/System/Guild/GuildChangeNameWin.cs
+++ b/Main/System/Guild/GuildChangeNameWin.cs
@@ -46,10 +46,10 @@
void ShowTime()
{
- if (GuildManager.Instance.TryGetFamilyActions(GuildManager.CustomyActionType, out var familyActions))
+ if (PlayerDatas.Instance.fairyData.fairy != null)
{
- var lastTime = familyActions.IsNullOrEmpty() ? 0 : familyActions[0].Value1;
- var cdTime = GuildManager.Instance.renameFairyNameCD * 3600 - (TimeUtility.AllSeconds - (int)lastTime);
+ var lastTime = PlayerDatas.Instance.fairyData.fairy.lastChangeNameTick;
+ var cdTime = GuildManager.Instance.renameFairyNameCD * 3600 - (TimeUtility.AllSeconds - lastTime);
if (cdTime <= 0)
{
cdTimeText.text = Language.Get("Guild_51", GuildManager.Instance.renameFairyNameCD);
diff --git a/Main/System/Guild/GuildHallWin.cs b/Main/System/Guild/GuildHallWin.cs
index e98d296..7f34388 100644
--- a/Main/System/Guild/GuildHallWin.cs
+++ b/Main/System/Guild/GuildHallWin.cs
@@ -62,7 +62,6 @@
protected override void OnPreOpen()
{
- GuildManager.Instance.RequestGuildData();
GuildManager.Instance.memberOPIndex = -1;
GuildManager.Instance.MemberOPIndexEvent += OnMemberOPIndexEvent;
diff --git a/Main/System/Guild/GuildJoinWin.cs b/Main/System/Guild/GuildJoinWin.cs
index ce028c5..476e0c3 100644
--- a/Main/System/Guild/GuildJoinWin.cs
+++ b/Main/System/Guild/GuildJoinWin.cs
@@ -14,6 +14,7 @@
[SerializeField] Button quicklyJoinGuildBtn;
[SerializeField] ScrollerController guildListScroller;
[SerializeField] Transform noGuildTf;
+ [SerializeField] Button serversBtn;
string lastQuery = "";
int lastPage = 0;
@@ -22,6 +23,10 @@
findBtn.AddListener(() => OnFindBtnClick());
createGuildBtn.AddListener(OnCreateGuildBtnClick);
quicklyJoinGuildBtn.AddListener(OnQuicklyJoinGuildBtnClick);
+ serversBtn.AddListener(()=>
+ {
+ UIHelper.ShowServersPanel(GuildManager.Instance.crossServerIDList);
+ });
}
protected override void OnPreOpen()
{
@@ -55,6 +60,7 @@
void Display()
{
+ serversBtn.SetActive(GuildManager.Instance.zoneID != 0);
CreateScroller();
}
diff --git a/Main/System/Guild/GuildManager.CrossServer.cs b/Main/System/Guild/GuildManager.CrossServer.cs
new file mode 100644
index 0000000..9c96c0f
--- /dev/null
+++ b/Main/System/Guild/GuildManager.CrossServer.cs
@@ -0,0 +1,52 @@
+
+
+// 璺ㄦ湇鍏細
+using System;
+using System.Collections.Generic;
+
+public partial class GuildManager : GameSystemManager<GuildManager>
+{
+ public int zoneID;
+ public List<int> crossServerIDList = new List<int>();
+ public event Action OnRefreshCrossServerInfoEvent;
+
+ public void OnRefreshCrossServerInfo(HA505_tagSCFamilyCrossInfo vNetData)
+ {
+ zoneID = vNetData.ZoneID;
+ crossServerIDList.Clear();
+ for (int i = 0; i < vNetData.ServerCnt; i++)
+ {
+ crossServerIDList.Add((int)vNetData.ServerIDList[i]);
+ }
+ crossServerIDList.Sort();
+ OnRefreshCrossServerInfoEvent?.Invoke();
+ }
+
+ // 鑾峰彇褰撳墠鏃堕棿, 鍏細璺ㄥ尯鍓嶅彇鏈湇鏃堕棿锛岃法鏈嶅悗鍙栬法鏈嶆椂闂�
+ public DateTime GetServerNow()
+ {
+ if (zoneID == 0)
+ {
+ return TimeUtility.ServerNow;
+ }
+ else
+ {
+ return TimeUtility.CrossServerNow;
+ }
+ }
+
+ public int GetServerTick()
+ {
+ if (zoneID == 0)
+ {
+ return TimeUtility.AllSeconds;
+ }
+ else
+ {
+ return TimeUtility.AllSecondsCrossServer;
+ }
+ }
+
+
+}
+
diff --git a/Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA521_tagMCFamilyChange.cs.meta b/Main/System/Guild/GuildManager.CrossServer.cs.meta
similarity index 83%
copy from Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA521_tagMCFamilyChange.cs.meta
copy to Main/System/Guild/GuildManager.CrossServer.cs.meta
index 4c9b26c..4e8b895 100644
--- a/Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA521_tagMCFamilyChange.cs.meta
+++ b/Main/System/Guild/GuildManager.CrossServer.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 95872d70a4fcdaf47a7089e954db72fb
+guid: 60391b6aaece70d44818911cfde90870
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Main/System/Guild/GuildManager.cs b/Main/System/Guild/GuildManager.cs
index 8336836..9c6bb19 100644
--- a/Main/System/Guild/GuildManager.cs
+++ b/Main/System/Guild/GuildManager.cs
@@ -8,10 +8,9 @@
using UnityEngine;
-public class GuildManager : GameSystemManager<GuildManager>
+public partial class GuildManager : GameSystemManager<GuildManager>
{
// 瀹舵棌鑷畾涔夎褰曠被鍨�
- public const int CustomyActionType = 0; //閫氱敤
public const int MemberChangeActionType = 12; //鍏細鍙樻洿璁板綍
public const int FamilyActionsType = 15; // 鍏細璁板綍寰界珷绫诲瀷15
public const int ZBGFamilyActionType = 16; // 鐝嶅疂闃佽褰曠被鍨�
@@ -75,7 +74,6 @@
void OnBeforePlayerDataInitializeEx()
{
- guildChanged = false;
isQueryZBGYet = false;
}
@@ -98,7 +96,6 @@
PlayerDatas.Instance.baseData.FamilyId = 0;
m_FairyRequesteds.Clear();
familyActions.Clear();
- guildChanged = false;
applyList.Clear();
PlayerDatas.Instance.fairyData.ClearData();
@@ -537,6 +534,7 @@
// 鏌ユ壘鐨勫叕浼欼D锛氬叕浼氭暟鎹�
public Dictionary<int, FairyData> guildsDict = new Dictionary<int, FairyData>();
+ public int myFairyRank;
// 鎸夋煡璇㈤〉瀛樺偍
public List<int> pageIndexList = new List<int>(); //姝e父鏄寜椤垫煡璇紝椤哄簭娣诲姞鍗冲彲
public int curPageIndex;
@@ -622,7 +620,7 @@
SetFairyViewData(data, guildInfo);
pageIndexList.Add((int)guildInfo.FamilyID);
}
-
+ myFairyRank = (int)vNetData.Rank; //0-娌℃湁鍏細鎴栨病鏈夊湪姒滀笂锛�>0-瀵瑰簲鎺掑悕
if (OnRefreshFairyList != null)
{
@@ -872,35 +870,6 @@
}
#endregion
- float lastChangeMarkTime = 0; //鎵撳紑鐣岄潰鎯呭喌涓嬮伩鍏嶇煭鏃堕棿澶氭绔嬪嵆璇锋眰锛孋/S閫氫俊涔熸槸鏈夋椂闂撮棿闅�
- public bool guildChanged = false;
- //Type锛�0-鏃狅紱1-鎴愬憳鍔犲叆锛�2-鎴愬憳閫�鍑猴紱3-鏀朵汉璁剧疆淇敼锛�4-鍏憡淇敼锛�5-寰界珷淇敼锛�6-鐩熶富鍙樻洿锛�7-鎴愬憳鑱屼綅鍙樻洿锛�8-鎴愬憳涓婄嚎锛�9-鎴愬憳绂荤嚎锛�
- //鍏細鏁版嵁鍙樺寲锛岃姹傛柊鐨勫叕浼氫俊鎭紝濡傚湪鎵撳紑鍏細鍒楄〃鏃惰姹傦紝鍏朵粬鍔熻兘鏍规嵁鑷韩鎯呭喌璇锋眰
- public void UpdateGuildDataChangeMark(HA521_tagMCFamilyChange netPack)
- {
- guildChanged = true;
- if (Time.time - lastChangeMarkTime < 0.2f)
- {
- //灏忎紭鍖� 濡傛灉鏈夐棶棰樹篃鍙互鍘婚櫎
- return;
- }
- lastChangeMarkTime = Time.time;
- if ((netPack.Type == 1 || netPack.Type == 2) && UIManager.Instance.IsOpened<GuildBaseWin>())
- {
- RequestGuildData();
- }
- }
-
- public void RequestGuildData()
- {
- if (guildChanged)
- {
- guildChanged = false;
- var pack = new CA626_tagCMGetFamilyInfo();
- GameNetSystem.Instance.SendInfo(pack);
-
- }
- }
public void SendKickFairy(uint playerID)
{
diff --git a/Main/System/Guild/GuildOPWin.cs b/Main/System/Guild/GuildOPWin.cs
index aecd11e..7e272b7 100644
--- a/Main/System/Guild/GuildOPWin.cs
+++ b/Main/System/Guild/GuildOPWin.cs
@@ -50,7 +50,6 @@
protected override void OnPreOpen()
{
- GuildManager.Instance.RequestGuildData();
PlayerDatas.Instance.fairyData.OnRefreshFairyInfo += OnRefreshFairyInfo;
Display();
diff --git a/Main/System/Guild/PlayerFairyData.cs b/Main/System/Guild/PlayerFairyData.cs
index 29e2508..4ff88c4 100644
--- a/Main/System/Guild/PlayerFairyData.cs
+++ b/Main/System/Guild/PlayerFairyData.cs
@@ -30,11 +30,10 @@
// 0-鎴愬憳锛�1-绮捐嫳锛�2-鍓洘涓伙紝3-鐩熶富
public int leaderID;
public string leaderName;
- // // 绮捐嫳
- public List<int> elitePlayerIDList = new List<int>();
// // 鍓洘涓�
public List<int> deputyLeaderPlayerIDList = new List<int>();
+ //宸紓鏇存柊 闇�澧炲垹鏀� memberDic memberIDList deputyLeaderPlayerIDList
public void OnRefreshGuildInfo(HA520_tagMCRoleFamilyInfo vNetData)
{
if (fairy == null)
@@ -53,13 +52,10 @@
fairy.totalFightPower = vNetData.FightPowerEx * Constants.ExpPointValue + vNetData.FightPower;
fairy.Broadcast = vNetData.Broadcast;
fairy.LeaderID = (int)vNetData.LeaderID;
- fairy.MemberCount = vNetData.MemberCount;
+
+ fairy.lastChangeNameTick = (int)vNetData.Extra1;
- mine = null;
- memberDic.Clear();
- memberIDList.Clear();
- deputyLeaderPlayerIDList.Clear();
for (int i = 0; i < vNetData.MemberCount; i++)
{
FairyMember member = new FairyMember();
@@ -90,27 +86,60 @@
OnRefreshFairyMine?.Invoke();
}
+
+
// 0-鎴愬憳锛�1-绮捐嫳锛�2-鍓洘涓伙紝3-鐩熶富
- // if (member.FmLV == 1)
- // {
- // elitePlayerIDList.Add(member.PlayerID);
- // }
- if (member.FmLV == 2)
+ if (deputyLeaderPlayerIDList.Contains(member.PlayerID) && member.FmLV != 2)
{
+ deputyLeaderPlayerIDList.Remove(member.PlayerID);
+ }
+ else if (member.FmLV == 2 && !deputyLeaderPlayerIDList.Contains(member.PlayerID))
+ {
+ // 瀵瑰簲鐨勫彉鏇� 鍜� 閫�鍑洪渶鍚屾淇敼
deputyLeaderPlayerIDList.Add(member.PlayerID);
}
+
+
if (member.FmLV == 3)
{
- leaderID = (int)member.PlayerID;
+ leaderID = member.PlayerID;
leaderName = member.Name;
+
}
}
-
- memberIDList.AddRange(memberDic.Keys);
- memberIDList.Sort(SortMember);
+
+ if (mine.FmLV == 3 && mine.PlayerID != leaderID)
+ {
+ mine.FmLV = 0;
+ }
+ RefreshMemberIDList();
if (OnRefreshFairyInfo != null) OnRefreshFairyInfo();
+ }
+
+
+ public void DeleteMember(HA524_tagSCFamilyMemDel netPack)
+ {
+ if (memberDic.ContainsKey((int)netPack.PlayerID))
+ {
+ memberDic.Remove((int)netPack.PlayerID);
+ RefreshMemberIDList();
+ }
+ if (deputyLeaderPlayerIDList.Contains((int)netPack.PlayerID))
+ {
+ deputyLeaderPlayerIDList.Remove((int)netPack.PlayerID);
+ }
+
+ OnRefreshFairyInfo?.Invoke();
+ }
+
+ void RefreshMemberIDList()
+ {
+ memberIDList.Clear();
+ memberIDList.AddRange(memberDic.Keys);
+ memberIDList.Sort(SortMember);
+ fairy.MemberCount = memberIDList.Count;
}
public FairyMember GetMember(int playerid)
@@ -188,6 +217,7 @@
public string Broadcast;
public int LeaderID; //鏃忛暱鐜╁ID
public int MemberCount;
+ public int lastChangeNameTick;
//鏌ユ壘澧炲姞鐨勫瓧娈�
public string LeaderName;
diff --git a/Main/System/Guild/ServersSmallTipCell.cs b/Main/System/Guild/ServersSmallTipCell.cs
new file mode 100644
index 0000000..57c3f94
--- /dev/null
+++ b/Main/System/Guild/ServersSmallTipCell.cs
@@ -0,0 +1,29 @@
+锘縰sing UnityEngine;
+using UnityEngine.UI;
+
+
+public class ServersSmallTipCell : CellView
+{
+ [SerializeField] Text[] serversText;
+
+
+
+ public void Display(int index)
+ {
+ for (int i = 0; i < serversText.Length; i++)
+ {
+ int listIndex = index + i;
+ if (listIndex >= ServersSmallTipWin.serverIDList.Count)
+ {
+ serversText[i].text = "";
+ return;
+ }
+ serversText[i].SetActive(true);
+ var serverID = ServersSmallTipWin.serverIDList[index + i];
+ serversText[i].text = ServerListCenter.Instance.GetServerName(serverID);
+ }
+ }
+
+
+}
+
diff --git a/Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA521_tagMCFamilyChange.cs.meta b/Main/System/Guild/ServersSmallTipCell.cs.meta
similarity index 83%
copy from Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA521_tagMCFamilyChange.cs.meta
copy to Main/System/Guild/ServersSmallTipCell.cs.meta
index 4c9b26c..f9fe205 100644
--- a/Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA521_tagMCFamilyChange.cs.meta
+++ b/Main/System/Guild/ServersSmallTipCell.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 95872d70a4fcdaf47a7089e954db72fb
+guid: 36a723a4b576693468a90ba111d5b58c
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Main/System/Guild/ServersSmallTipWin.cs b/Main/System/Guild/ServersSmallTipWin.cs
new file mode 100644
index 0000000..7c5fe49
--- /dev/null
+++ b/Main/System/Guild/ServersSmallTipWin.cs
@@ -0,0 +1,66 @@
+锘縰sing System.Collections.Generic;
+using UnityEngine;
+using UnityEngine.UI;
+public class ServersSmallTipWin : UIBase
+{
+ [SerializeField] RectTransform content;
+ [SerializeField] RectTransform arrow;
+ [SerializeField] ScrollerController serversScroller;
+
+ public static List<int> serverIDList;
+ protected override void OnPreOpen()
+ {
+ serversScroller.OnRefreshCell += OnRefreshCell;
+ Display();
+ }
+
+ protected override void OnPreClose()
+ {
+ serversScroller.OnRefreshCell -= OnRefreshCell;
+ }
+
+
+ protected override void NextFrameAfterOpen()
+ {
+ var worldPos = CameraManager.uiCamera.ScreenToWorldPoint(Input.mousePosition);
+
+
+ Vector2 screenAdjustedPos = CameraManager.uiCamera.WorldToScreenPoint(worldPos);
+
+ var beforePos = screenAdjustedPos;
+ var beforeAdjustedPos = CameraManager.uiCamera.ScreenToWorldPoint(beforePos);
+
+ var rectWidth = content.rect.width * Screen.width / canvasScaler.referenceResolution.x;
+ screenAdjustedPos.x = Mathf.Clamp(screenAdjustedPos.x, rectWidth * 0.5f, Screen.width - rectWidth * 0.5f);
+ screenAdjustedPos.y -= 40;
+ var adjustedPos = CameraManager.uiCamera.ScreenToWorldPoint(screenAdjustedPos);
+ adjustedPos.z = 0;
+ content.position = adjustedPos;
+
+ arrow.position = new Vector3(beforeAdjustedPos.x, arrow.position.y, 0);
+ }
+
+
+ public void Display()
+ {
+ serversScroller.Refresh();
+ for (int i = 0; i < serverIDList.Count; i++)
+ {
+ if (i % 4 == 0)
+ {
+ serversScroller.AddCell(ScrollerDataType.Header, i);
+ }
+ }
+ serversScroller.Restart();
+ }
+
+ void OnRefreshCell(ScrollerDataType type, CellView cell)
+ {
+ var _cell = cell.GetComponent<ServersSmallTipCell>();
+ _cell.Display(cell.index);
+ }
+
+
+
+}
+
diff --git a/Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA521_tagMCFamilyChange.cs.meta b/Main/System/Guild/ServersSmallTipWin.cs.meta
similarity index 83%
copy from Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA521_tagMCFamilyChange.cs.meta
copy to Main/System/Guild/ServersSmallTipWin.cs.meta
index 4c9b26c..26a8c36 100644
--- a/Main/Core/NetworkPackage/DTCFile/ServerPack/HA5_Family/DTCA521_tagMCFamilyChange.cs.meta
+++ b/Main/System/Guild/ServersSmallTipWin.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 95872d70a4fcdaf47a7089e954db72fb
+guid: d3c0b72418f3c5345ba779c8382e0eb0
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Main/System/HeroUI/HeroUIManager.cs b/Main/System/HeroUI/HeroUIManager.cs
index a8aa796..68f9182 100644
--- a/Main/System/HeroUI/HeroUIManager.cs
+++ b/Main/System/HeroUI/HeroUIManager.cs
@@ -2,7 +2,6 @@
using System.Collections;
using System.Collections.Generic;
using System.Linq;
-using Jace.Operations;
using LitJson;
using UnityEngine;
diff --git a/Main/Utility/TimeUtility.cs b/Main/Utility/TimeUtility.cs
index 709eb44..ed856e8 100644
--- a/Main/Utility/TimeUtility.cs
+++ b/Main/Utility/TimeUtility.cs
@@ -100,6 +100,15 @@
}
}
+ public static int AllSecondsCrossServer
+ {
+ get
+ {
+ TimeSpan t = CrossServerNow - OriginalTime;
+ return (int)t.TotalSeconds;
+ }
+ }
+
//1骞翠腑鐨勭鍑犲懆锛屼互鏈嶅姟绔负鍑嗭紝python鍜宑#绠楀嚭鏉ヤ笉涓�鏍�
public static int WeekOfYear
{
diff --git a/Main/Utility/UIHelper.cs b/Main/Utility/UIHelper.cs
index e4ebbab..15927ac 100644
--- a/Main/Utility/UIHelper.cs
+++ b/Main/Utility/UIHelper.cs
@@ -1509,4 +1509,14 @@
}
+ public static void ShowServersPanel(List<int> serverIDList)
+ {
+ if (UIManager.Instance.IsOpened<ServersSmallTipWin>())
+ {
+ UIManager.Instance.CloseWindow<ServersSmallTipWin>();
+ }
+ ServersSmallTipWin.serverIDList = serverIDList;
+ UIManager.Instance.OpenWindow<ServersSmallTipWin>();
+ }
+
}
--
Gitblit v1.8.0