hch
2025-08-25 af8dafd75f9a6fae017734d58fc7b34d6bdcd0f4
Main/Core/GameEngine/Player/PlayerBaseData.cs
@@ -9,19 +9,20 @@
    public byte Job;    //职业, 
    public ushort LV;    //等级
    public int TitleID;
    public uint ExpPoint;    //扩充经验点数
    public uint TotalExp;    //总经验
    public uint ExpPoint;    //扩充经验点数(亿)
    public uint TotalExp;    //总经验(小于亿部分)
    public long curExp { get { return TotalExp + ExpPoint * Constants.ExpPointValue; } }
    public uint FamilyId;    //家族
    public string FamilyName;    //家族名称
    public uint diamond;    //仙玉
    public uint bindDiamond;  //灵石
    public uint copper;    //铜钱
    public ulong allCopper { get { return (ulong)copper + (ulong)copperExtend * Constants.ExpPointValue; } }
    public ulong FightPoint;    //战斗值
    public long allCopper { get { return copper + copperExtend * Constants.ExpPointValue; } }
    public long FightPoint;    //战斗值
    public ushort MapID;    //角色所在地图  地图规则:C/S一一对应的常规地图,C假地图(ExAttr14),多C一个S地图(ExAttr3)
    public ushort PosX;    //角色坐标
    public ushort PosY;
    public ulong HP;    //当前HP
    public long HP;    //当前HP
    public uint FreePoint;    //未分配点数
    public uint FreeSkillPoint;    //未分配的技能点
    public int STR;    //力量
@@ -31,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,各项目专用
@@ -137,58 +138,58 @@
    }
    public void UpdateData(H0102_tagCDBPlayer _serverInfo)
    {
        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;
        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;
        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;
        HP = _serverInfo.HP + _serverInfo.HPEx * Constants.ExpPointValue;
        AttackMode = _serverInfo.AttackMode;
    }
    // 部分情况需要服务端非重登情况下同步所有数据