From c8aea6cbef51b3dd41b4d911bc7e6bf89a6e2e2d Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期五, 20 三月 2026 15:14:33 +0800
Subject: [PATCH] 0312 优化红颜定军阁解锁判断

---
 Main/Core/GameEngine/Player/PlayerBaseData.cs |   45 +++++++++++++++++++++++++++++++++++----------
 1 files changed, 35 insertions(+), 10 deletions(-)

diff --git a/Main/Core/GameEngine/Player/PlayerBaseData.cs b/Main/Core/GameEngine/Player/PlayerBaseData.cs
index cd63f6f..abc24d9 100644
--- a/Main/Core/GameEngine/Player/PlayerBaseData.cs
+++ b/Main/Core/GameEngine/Player/PlayerBaseData.cs
@@ -1,4 +1,5 @@
 锘縰sing System;
+using Cysharp.Threading.Tasks;
 
 public class PlayerBaseData
 {
@@ -12,7 +13,28 @@
     public uint ExpPoint;    //鎵╁厖缁忛獙鐐规暟锛堜嚎锛�
     public uint TotalExp;    //鎬荤粡楠�(灏忎簬浜块儴鍒�)
     public long curExp { get { return TotalExp + ExpPoint * Constants.ExpPointValue; } }
-    public uint FamilyId;    //瀹舵棌
+
+    uint m_FamilyId;
+    public uint FamilyId
+    {
+        get
+        {
+            return m_FamilyId;
+        }
+        set
+        {
+            var beforeFamilyId = m_FamilyId;
+            m_FamilyId = value;
+            if (beforeFamilyId == 0 && m_FamilyId != 0)
+            {
+                GuildManager.Instance.AfterEnterGuild().Forget();
+            }
+            else if (beforeFamilyId != 0 && m_FamilyId == 0)
+            {
+                GuildManager.Instance.AfterQuitGuild();
+            }
+        }
+    }
     public string FamilyName;    //瀹舵棌鍚嶇О
     public uint diamond;    //浠欑帀
     public uint bindDiamond;  //鐏电煶
@@ -43,7 +65,7 @@
     public uint copperExtend;    //鎵╁睍灞炴��6锛屽悇椤圭洰涓撶敤
     public uint sp;    //鎵╁睍灞炴��7锛屽悇椤圭洰涓撶敤
     public uint spExtend;    //鎵╁睍灞炴��8锛屽悇椤圭洰涓撶敤
-    public uint bubbleId;    //鎵╁睍灞炴��10锛屽悇椤圭洰涓撶敤
+    public uint chatBox;    //鎵╁睍灞炴��10锛屽悇椤圭洰涓撶敤
     public uint ExAttr11;    //棰勭暀鐨勬墿灞曞睘鎬у瓧娈碉紝鐢ㄦ潵瀛樻斁椤圭洰鐗瑰畾鐨勫睘鎬�121 鐜伴噾浠e竵锛堜唬閲戝埜锛�
     public uint ExAttr16;    //棰勭暀鐨勬墿灞曞睘鎬у瓧娈碉紝鐢ㄦ潵瀛樻斁椤圭洰鐗瑰畾鐨勫睘鎬�    鍏ㄨ韩鐗规晥
     public uint ServerGroupId;    //鏈嶅姟鍣ㄧ粍ID
@@ -53,7 +75,7 @@
     public int face;//澶村儚
     public int facePic;//澶村儚澶栨
     public long FightPower;    //鎴樻枟鍔�
-
+    public int modelMark;       //褰㈣薄 
     public uint coinPointTotal
     {
         private get { return m_coinPointTotal; }
@@ -79,7 +101,7 @@
     public int BasicsDefense;//鍩虹闃插尽
     public int BasicsScoreAHit;//鍩虹鍛戒腑
     public int BasicsDodge;//鍩虹闂伩
-    public uint equipShowSwitch;//瑁呭鏄鹃殣寮�鍏�
+    public uint equipShowSwitch;//褰撳墠閰嶇疆鐨勫潗楠戝瑙侷D瀛樺偍鍦紙鏈�澶ф敮鎸� 1~999锛�
     public int mater;//鐏垫牴灞炴�р�斺�旈噾
     public int wood;//鐏垫牴灞炴�р�斺�旀湪
     public int water;//鐏垫牴灞炴�р�斺�旀按
@@ -113,6 +135,7 @@
 
     public int mapRealmSelect;  //鍦板浘澧冪晫闅惧害
     public int leaveFamilyTime; //绂诲紑瀹舵棌鏃堕棿
+    public int leaveGuildInfo; //鍏細锛氫富鍔ㄧ寮�娆℃暟*100 + 琚涪娆℃暟*10  + 鏈�鍚庝竴娆℃槸鍚︿富鍔ㄧ寮�鐨勶紝鏆傛椂鏈�澶氱疮璁¤褰曞埌9娆�
 
     public bool IsActive90Off = true; //浠h〃榛樿婵�娲�0.1鎶�
     public long treasurePotentialSp
@@ -167,8 +190,8 @@
         CON = _serverInfo.CON;
         Setting = _serverInfo.Setting;
         FBID = _serverInfo.FBID;
-        ExAttr1 = (int)_serverInfo.ExAttr1;  //绛栧垝閰嶇疆鍏冲崱ID涓�201锛屽嵆 杩囧叧2-1(0/1) ,浣跨敤 ExAttr1 鍊煎垽鏂紝濡侲xAttr1鍊间负20103浠h〃褰撳墠宸茬粡杩囦簡绗�2绔犵1鍏崇3娉紝鍖呭惈浜嗘尝锛岄渶瑕佸嚮璐ヨ鍏冲崱boss鍚庢墠绠楄鍏宠繃鍏�
-        ExAttr2 = (int)_serverInfo.ExAttr2;  //鐢ㄤ簬璁板綍涓荤嚎褰撳墠鍒锋�墍鍦ㄧ珷鑺傚叧鍗¤褰曪紝璁板綍鍊� = 绔犺妭*10000+鍏冲崱缂栧彿*100+绗瑇娉�  锛� 0418鍒锋柊绫诲瀷103
+        ExAttr1 = Math.Max((int)_serverInfo.ExAttr1, 10100);  //绛栧垝閰嶇疆鍏冲崱ID涓�201锛屽嵆 杩囧叧2-1(0/1) ,浣跨敤 ExAttr1 鍊煎垽鏂紝濡侲xAttr1鍊间负20103浠h〃褰撳墠宸茬粡杩囦簡绗�2绔犵1鍏崇3娉紝鍖呭惈浜嗘尝锛岄渶瑕佸嚮璐ヨ鍏冲崱boss鍚庢墠绠楄鍏宠繃鍏�
+        ExAttr2 = Math.Max((int)_serverInfo.ExAttr2, 10101);  //鐢ㄤ簬璁板綍涓荤嚎褰撳墠鍒锋�墍鍦ㄧ珷鑺傚叧鍗¤褰曪紝璁板綍鍊� = 绔犺妭*10000+鍏冲崱缂栧彿*100+绗瑇娉�  锛� 0418鍒锋柊绫诲瀷103
         dungeonLineId = (int)_serverInfo.ExAttr3 % 1000;
         dungeonMapId = (int)_serverInfo.ExAttr3 / 1000;
         shield = _serverInfo.ExAttr4;
@@ -178,8 +201,8 @@
         copperExtend = _serverInfo.ExAttr6;
         sp = _serverInfo.ExAttr7;
         spExtend = _serverInfo.ExAttr8;
-        bubbleId = _serverInfo.ExAttr10;
         ExAttr11 = _serverInfo.ExAttr11;
+        leaveGuildInfo = (int)_serverInfo.ExAttr12;
         ExAttr16 = _serverInfo.ExAttr16;
         ServerGroupId = _serverInfo.ExAttr13;
         faction = _serverInfo.Faction;
@@ -187,12 +210,14 @@
         equipShowSwitch = _serverInfo.EquipShowSwitch;
         mapRealmSelect = (int)_serverInfo.ExAttr18;
         leaveFamilyTime = (int)_serverInfo.ExAttr19;
-        face = (int)_serverInfo.Face;
-        facePic = (int)_serverInfo.FacePic;
-
         HP = _serverInfo.HP + _serverInfo.HPEx * Constants.ExpPointValue;
         AttackMode = _serverInfo.AttackMode;
         UseHarmerCount = (int)_serverInfo.FightPoint;   //閿ゅ瓙鍊嶆暟锛岄潪鎴樻枟鍔�
+        face = (int)_serverInfo.Face;
+        facePic = (int)_serverInfo.FacePic;
+        modelMark = (int)_serverInfo.ModelMark;
+        chatBox = (uint)_serverInfo.ExAttr10;
+        TitleID = (int)_serverInfo.ExAttr3;
 
     }
 

--
Gitblit v1.8.0