hch
2025-07-16 7677bf7ab5f15f55b7e1366f1601e541a9a31f4d
Main/Core/GameEngine/Player/PlayerBaseData.cs
@@ -2,8 +2,6 @@
public class PlayerBaseData
{
    public ushort mainServerMapIdRecord = 0;
    public string AccID;    //_KEY_i_帐号名, 该角色所在的帐号的用户名
    public uint PlayerID;    //_IDT_
    public string PlayerName;    //size = 14
@@ -11,8 +9,9 @@
    public byte Job;    //职业, 
    public ushort LV;    //等级
    public int TitleID;
    public uint ExpPoint;    //扩充经验点数
    public uint TotalExp;    //总经验
    public uint ExpPoint;    //扩充经验点数(亿)
    public uint TotalExp;    //总经验(小于亿部分)
    public ulong curExp { get { return TotalExp + ExpPoint * Constants.ExpPointValue; } }
    public uint FamilyId;    //家族
    public string FamilyName;    //家族名称
    public uint diamond;    //仙玉
@@ -33,7 +32,7 @@
    public string Setting;    //设定
    public byte AttackMode;    //攻击模式
    public byte FBID;    //fb id
    public byte realmLevel;    //旧服务端官阶,现项目用于境界
    public byte realmLevel;    //官职
    public byte VIPLv;    //VIP等级
    public uint ExAttr1;    // 协助目标玩家ID,非0变0退出协助
    public uint teamAutoOperateFlag;    //扩展属性2,各项目专用
@@ -138,102 +137,62 @@
        }
    }
    public void UpdateData(int temp/*H0102_tagCDBPlayer _serverInfo*/)
    public void UpdateData(H0102_tagCDBPlayer _serverInfo)
    {
//         if (_serverInfo.socketType == ServerType.Main)
//         {
//             AccID = _serverInfo.AccID;
//             PlayerID = _serverInfo.PlayerID;
//             PlayerName = _serverInfo.PlayerName.Trim().Replace("\0", "");
//             GMLevel = _serverInfo.GMLevel;
//             Job = _serverInfo.Job;
//             LV = _serverInfo.LV;
//             ExpPoint = _serverInfo.ExpPoint;
//             TotalExp = _serverInfo.TotalExp;
//             FamilyId = _serverInfo.Family;
//             FamilyName = _serverInfo.FamilyName.Trim().Replace("\0", "");
//             diamond = _serverInfo.Gold;
//             bindDiamond = _serverInfo.GoldPaper;
//             copper = _serverInfo.Silver;
//             MapID = _serverInfo.MapID;
//             mainServerMapIdRecord = MapID;
//             PosX = _serverInfo.PosX;
//             PosY = _serverInfo.PosY;
//             FreePoint = _serverInfo.FreePoint;
//             FreeSkillPoint = _serverInfo.FreeSkillPoint;
//             STR = _serverInfo.STR;
//             PNE = _serverInfo.PNE;
//             PHY = _serverInfo.PHY;
//             CON = _serverInfo.CON;
//             Setting = _serverInfo.Setting;
//             FBID = _serverInfo.FBID;
//             ExAttr1 = _serverInfo.ExAttr1;
//             teamAutoOperateFlag = _serverInfo.ExAttr2;
//             dungeonLineId = (int)_serverInfo.ExAttr3 % 1000;
//             dungeonMapId = (int)_serverInfo.ExAttr3 / 1000;
//             shield = _serverInfo.ExAttr4;
//             CrossServerFlag = _serverInfo.ExAttr5;
//             realmLevel = _serverInfo.OfficialRank;
//             VIPLv = _serverInfo.VIPLv;
//             copperExtend = _serverInfo.ExAttr6;
//             sp = _serverInfo.ExAttr7;
//             spExtend = _serverInfo.ExAttr8;
//             bubbleId = _serverInfo.ExAttr10;
//             ExAttr11 = _serverInfo.ExAttr11;
//             ExAttr16 = _serverInfo.ExAttr16;
//             ServerGroupId = _serverInfo.ExAttr13;
//             faction = _serverInfo.Faction;
//             coinPointTotal = _serverInfo.ChangeCoinPointTotal;
//             equipShowSwitch = _serverInfo.EquipShowSwitch;
//             mapRealmSelect = (int)_serverInfo.ExAttr18;
//             leaveFamilyTime = (int)_serverInfo.ExAttr19;
//             face = (int)_serverInfo.Face;
//             facePic = (int)_serverInfo.FacePic;
// }
//         else
//         {
//             PlayerName = _serverInfo.PlayerName.Trim().Replace("\0", "");
//             MapID = _serverInfo.MapID;
//             dungeonLineId = (int)_serverInfo.ExAttr3 % 1000;
//             dungeonMapId = (int)_serverInfo.ExAttr3 / 1000;
//             FBID = _serverInfo.FBID;
//             PosX = _serverInfo.PosX;
//             PosY = _serverInfo.PosY;
//         }
//         if (CrossServerUtility.IsCrossServer())
//         {
//             if (_serverInfo.socketType == ServerType.CrossSever)
//             {
//                 HP = _serverInfo.HP + _serverInfo.HPEx * Constants.ExpPointValue;
//                 AttackMode = _serverInfo.AttackMode;
//             }
//         }
//         else
//         {
//             HP = _serverInfo.HP + _serverInfo.HPEx * Constants.ExpPointValue;
//             AttackMode = _serverInfo.AttackMode;
//         }
        AccID = _serverInfo.AccID.Trim().Replace("\0", "");
        PlayerID = _serverInfo.PlayerID;
        PlayerName = _serverInfo.PlayerName.Trim().Replace("\0", "");
        GMLevel = _serverInfo.GMLevel;
        Job = _serverInfo.Job;
        LV = _serverInfo.LV;
        ExpPoint = _serverInfo.ExpPoint;
        TotalExp = _serverInfo.TotalExp;
        FamilyId = _serverInfo.Family;
        FamilyName = _serverInfo.FamilyName.Trim().Replace("\0", "");
        diamond = _serverInfo.Gold;
        bindDiamond = _serverInfo.GoldPaper;
        copper = _serverInfo.Silver;
        MapID = _serverInfo.MapID;
        PosX = _serverInfo.PosX;
        PosY = _serverInfo.PosY;
        FreePoint = _serverInfo.FreePoint;
        FreeSkillPoint = _serverInfo.FreeSkillPoint;
        STR = _serverInfo.STR;
        PNE = _serverInfo.PNE;
        PHY = _serverInfo.PHY;
        CON = _serverInfo.CON;
        Setting = _serverInfo.Setting;
        FBID = _serverInfo.FBID;
        ExAttr1 = _serverInfo.ExAttr1;
        teamAutoOperateFlag = _serverInfo.ExAttr2;
        dungeonLineId = (int)_serverInfo.ExAttr3 % 1000;
        dungeonMapId = (int)_serverInfo.ExAttr3 / 1000;
        shield = _serverInfo.ExAttr4;
        CrossServerFlag = _serverInfo.ExAttr5;
        realmLevel = _serverInfo.OfficialRank;
        VIPLv = _serverInfo.VIPLv;
        copperExtend = _serverInfo.ExAttr6;
        sp = _serverInfo.ExAttr7;
        spExtend = _serverInfo.ExAttr8;
        bubbleId = _serverInfo.ExAttr10;
        ExAttr11 = _serverInfo.ExAttr11;
        ExAttr16 = _serverInfo.ExAttr16;
        ServerGroupId = _serverInfo.ExAttr13;
        faction = _serverInfo.Faction;
        coinPointTotal = _serverInfo.ChangeCoinPointTotal;
        equipShowSwitch = _serverInfo.EquipShowSwitch;
        mapRealmSelect = (int)_serverInfo.ExAttr18;
        leaveFamilyTime = (int)_serverInfo.ExAttr19;
        face = (int)_serverInfo.Face;
        facePic = (int)_serverInfo.FacePic;
//         if (PlayerDatas.Instance.hero != null)
//         {
//             PlayerDatas.Instance.hero.ActorInfo.familyID = FamilyId;
//             if (CrossServerUtility.IsCrossServer())
//             {
//                 if (_serverInfo.socketType == ServerType.CrossSever)
//                 {
//                     PlayerDatas.Instance.hero.ActorInfo.ResetHp((long)HP);
//                 }
//             }
//             else
//             {
//                 PlayerDatas.Instance.hero.ActorInfo.ResetHp((long)HP);
//             }
//         }
        HP = _serverInfo.HP + _serverInfo.HPEx * Constants.ExpPointValue;
        AttackMode = _serverInfo.AttackMode;
    }
    // 比如跨服数据更新后,玩家回到本服会同步新数据,需更新
    // 部分情况需要服务端非重登情况下同步所有数据
    public void UpdateData(/*HA112_tagMCDBPlayer serverInfo*/)
    {
        // AccID = serverInfo.AccID;
@@ -250,10 +209,6 @@
        // bindDiamond = serverInfo.GoldPaper;
        // copper = serverInfo.Silver;
        // MapID = serverInfo.MapID;
        // if (serverInfo.socketType == ServerType.Main)
        // {
        //     mainServerMapIdRecord = MapID;
        // }
        // PosX = serverInfo.PosX;
        // PosY = serverInfo.PosY;
        // FreePoint = serverInfo.FreePoint;