少年修仙传客户端代码仓库
client_Wu Xijin
2019-01-08 45dc7ce48270b41e9c287ddab3e827d52480cf8c
5725 【前端】【1.5】跨服BOSS开发
6个文件已添加
6个文件已修改
477 ■■■■ 已修改文件
Core/GameEngine/DataToCtl/PackageRegedit.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/GameEngine/Model/Player/Character/PlayerBaseData.cs 138 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/GameEngine/Model/Player/PlayerDatas.cs 34 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/ClientPack/ClientToMapServer/CA1/CA108_tagCMRefreshMainServerRole.cs 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/ClientPack/ClientToMapServer/CA1/CA108_tagCMRefreshMainServerRole.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/H04_Scene/DTC0419_tagPlayerReborn.cs 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/H06_PlayerVsNPC/DTC0609_tagPlayerDie.cs 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/HA1_Sys/DTCA112_tagMCDBPlayer.cs 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/HA1_Sys/DTCA112_tagMCDBPlayer.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/ServerPack/HA1_Sys/HA112_tagMCDBPlayer.cs 206 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/ServerPack/HA1_Sys/HA112_tagMCDBPlayer.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/PlayerTaskDatas.cs 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/GameEngine/DataToCtl/PackageRegedit.cs
@@ -31,6 +31,7 @@
    public static void Init()
    {
        // 登记相应的数据体及对应的数据转逻辑类
        Register(typeof(HA112_tagMCDBPlayer), typeof(DTCA112_tagMCDBPlayer));
        Register(typeof(HC106_tagMCEnterCrossServerError), typeof(DTCC106_tagMCEnterCrossServerError));
        Register(typeof(HC105_tagMCStartEnterCrossServer), typeof(DTCC105_tagMCStartEnterCrossServer));
        Register(typeof(HC104_tagMCPrepareEnterCrossServer), typeof(DTCC104_tagMCPrepareEnterCrossServer));
Core/GameEngine/Model/Player/Character/PlayerBaseData.cs
@@ -1,7 +1,6 @@
public class PlayerBaseData
{
    PartDataBuf mainServerDataBuf = new PartDataBuf();//
    public int mainServerMapIdRecord = 0;
    public string AccID;    //_KEY_i_帐号名, 该角色所在的帐号的用户名
    public uint PlayerID;    //_IDT_
@@ -97,6 +96,11 @@
        Silver = _serverInfo.Silver;
        SilverPaper = _serverInfo.SilverPaper;
        MapID = _serverInfo.MapID;
        if (_serverInfo.socketType==GameNetSystem.SocketType.Main)
        {
            mainServerMapIdRecord = MapID;
        }
        PosX = _serverInfo.PosX;
        PosY = _serverInfo.PosY;
        State = _serverInfo.State;
@@ -162,82 +166,74 @@
            }
        }
        if (_serverInfo.socketType == GameNetSystem.SocketType.Main)
        {
            mainServerDataBuf.PlayerName = PlayerName;
            mainServerDataBuf.MapID = MapID;
            mainServerDataBuf.FBID = FBID;
            mainServerDataBuf.dungeonLineId = dungeonLineId;
            mainServerDataBuf.PosX = PosX;
            mainServerDataBuf.PosY = PosY;
            mainServerDataBuf.HP = HP;
        }
    }
    public void ApplyMainServerDataBuf()
    public void UpdateData(HA112_tagMCDBPlayer serverInfo)
    {
        PlayerName = mainServerDataBuf.PlayerName;
        MapID = mainServerDataBuf.MapID;
        FBID = mainServerDataBuf.FBID;
        dungeonLineId = mainServerDataBuf.dungeonLineId;
        PosX = mainServerDataBuf.PosX;
        PosY = mainServerDataBuf.PosY;
        HP = mainServerDataBuf.HP;
        AccID = serverInfo.AccID;
        PlayerID = serverInfo.PlayerID;
        PlayerName = serverInfo.PlayerName.Trim().Replace(" ", "");
        AccState = serverInfo.AccState;
        GMLevel = serverInfo.GMLevel;
        Sex = serverInfo.Sex;
        Job = serverInfo.Job;
        LV = serverInfo.LV;
        LVEx = serverInfo.LVEx;
        LV2 = serverInfo.LV2;
        ExpPoint = serverInfo.ExpPoint;
        TotalExp = serverInfo.TotalExp;
        Family = serverInfo.Family;
        FamilyName = serverInfo.FamilyName.Trim().Replace(" ", "");
        Gold = serverInfo.Gold;
        GoldPaper = serverInfo.GoldPaper;
        Silver = serverInfo.Silver;
        SilverPaper = serverInfo.SilverPaper;
        MapID = serverInfo.MapID;
        if (serverInfo.socketType == GameNetSystem.SocketType.Main)
        {
            mainServerMapIdRecord = MapID;
        }
        PosX = serverInfo.PosX;
        PosY = serverInfo.PosY;
        State = serverInfo.State;
        XP = serverInfo.XP;
        FreePoint = serverInfo.FreePoint;
        FreeSkillPoint = serverInfo.FreeSkillPoint;
        STR = serverInfo.STR;
        PNE = serverInfo.PNE;
        PHY = serverInfo.PHY;
        CON = serverInfo.CON;
        AttackMode = serverInfo.AttackMode;
        FBID = serverInfo.FBID;
        ExAttr1 = serverInfo.ExAttr1;
        ExAttr2 = serverInfo.ExAttr2;
        dungeonLineId = (int)serverInfo.ExAttr3;
        ExAttr4 = serverInfo.ExAttr4;
        ExAttr5 = serverInfo.ExAttr5;
        realmLevel = serverInfo.OfficialRank;
        VIPLv = serverInfo.VIPLv;
        ExAttr6 = serverInfo.ExAttr6;
        ExAttr7 = serverInfo.ExAttr7;
        ExAttr8 = serverInfo.ExAttr8;
        ExAttr9 = serverInfo.ExAttr9;
        bubbleId = serverInfo.ExAttr10;
        ExAttr11 = serverInfo.ExAttr11;
        ExAttr12 = serverInfo.ExAttr12;
        ExAttr13 = serverInfo.ExAttr13;
        ExAttr14 = serverInfo.ExAttr14;
        HappyPoint = serverInfo.HappyPoint;
        faction = serverInfo.Faction;
        coinPointTotal = serverInfo.ChangeCoinPointTotal;
        godWeaponLV_1 = (int)serverInfo.ExAttr15;
        godWeaponLV_2 = (int)serverInfo.ExAttr16;
        godWeaponLV_3 = (int)serverInfo.ExAttr17;
        godWeaponLV_4 = (int)serverInfo.ExAttr18;
        if (PlayerDatas.Instance.hero != null)
        {
            PlayerDatas.Instance.hero.ActorInfo.serverDie = mainServerDataBuf.heroServerDie;
            PlayerDatas.Instance.hero.ActorInfo.ResetHp((int)serverInfo.HP);
        }
    }
    public void RecordMainServerData(bool isMainServerData, PlayerDataRefresh playerDataType, uint value)
    {
        if (!isMainServerData)
        {
            return;
        }
        switch (playerDataType)
        {
            case PlayerDataRefresh.PlayerName:
                break;
            case PlayerDataRefresh.MapID:
                mainServerDataBuf.MapID = (ushort)value;
                break;
            case PlayerDataRefresh.FBID:
                mainServerDataBuf.FBID = (byte)value;
                break;
            case PlayerDataRefresh.ExAttr3:
                mainServerDataBuf.dungeonLineId = (byte)value;
                break;
            case PlayerDataRefresh.PosX:
                mainServerDataBuf.PosX = (ushort)value;
                break;
            case PlayerDataRefresh.PosY:
                mainServerDataBuf.PosY = (ushort)value;
                break;
            case PlayerDataRefresh.HP:
                mainServerDataBuf.HP = value;
                break;
            default:
                break;
        }
    }
    public void RecordMainServerDie(bool isMainServerData, bool serverDie)
    {
        mainServerDataBuf.heroServerDie = serverDie;
    }
    public class PartDataBuf
    {
        public string PlayerName;
        public ushort MapID;
        public byte FBID;
        public int dungeonLineId;
        public ushort PosX;
        public ushort PosY;
        public uint HP;
        public bool heroServerDie;
    }
}
Core/GameEngine/Model/Player/PlayerDatas.cs
@@ -65,6 +65,15 @@
        }
    }
    public void UpdatePlayerData(HA112_tagMCDBPlayer data)
    {
        baseData.UpdateData(data);
        if (InitPlayerInfoEvent != null)
        {
            InitPlayerInfoEvent();
        }
    }
    public void FightRefreshPlayerHp(uint hp)
    {
        RefreshProperty(false, PlayerDataRefresh.HP, hp);
@@ -273,15 +282,16 @@
                break;
            case PlayerDataRefresh.MapID:
                baseData.MapID = (ushort)value;
                baseData.RecordMainServerData(isMainServerData, _type, value);
                if (isMainServerData)
                {
                    baseData.mainServerMapIdRecord = baseData.MapID;
                }
                break;
            case PlayerDataRefresh.PosX:
                baseData.PosX = (ushort)value;//角色坐标x
                baseData.RecordMainServerData(isMainServerData, _type, value);
                break;
            case PlayerDataRefresh.PosY:
                baseData.PosY = (ushort)value;//角色坐标y
                baseData.RecordMainServerData(isMainServerData, _type, value);
                break;
            case PlayerDataRefresh.State:
                baseData.State = (byte)value;
@@ -295,7 +305,6 @@
                break;
            case PlayerDataRefresh.HP:
                baseData.HP = value;
                baseData.RecordMainServerData(isMainServerData, _type, value);
                break;
            case PlayerDataRefresh.MaxMP:
                extersion.MaxMP = (int)value;
@@ -409,7 +418,6 @@
                break;
            case PlayerDataRefresh.FBID:
                baseData.FBID = (byte)value;
                baseData.RecordMainServerData(isMainServerData, _type, value);
                break;
            case PlayerDataRefresh.FamilyLV:
                break;
@@ -515,7 +523,6 @@
                break;
            case PlayerDataRefresh.ExAttr3:
                baseData.dungeonLineId = (int)value;
                baseData.RecordMainServerData(isMainServerData, _type, value);
                break;
            case PlayerDataRefresh.ExAttr4:
                baseData.ExAttr4 = value;
@@ -531,7 +538,20 @@
                        GameNetSystem.Instance.crossServerConnected_Loigc = false;
                        LoadingWin.targetMapResId = 1;
                        WindowCenter.Instance.Open<LoadingWin>();
                        GameNetSystem.Instance.Reconnect();
                        var sendInfo = new CA108_tagCMRefreshMainServerRole();
                        GameNetSystem.Instance.SendInfo(sendInfo);
                        StageManager.Instance.Load<DungeonStage>(baseData.MapID, GameNetSystem.SocketType.CrossSever, true);
                        if (hero != null && !hero.ActorInfo.serverDie)
                        {
                            hero.RequestName();
                            hero.SwitchRedName(StatusMgr.Instance.IsExist(PlayerId, StatusMgr.Instance.redNameBuffID));
                            hero.IdleImmediate();
                            hero.State = E_ActorState.Idle;
                            extersion.pkState = 0;
                        }
                    }
                }
                break;
Core/NetworkPackage/ClientPack/ClientToMapServer/CA1/CA108_tagCMRefreshMainServerRole.cs
New file
@@ -0,0 +1,19 @@
using UnityEngine;
using System.Collections;
// A1 08 刷新主服角色信息 #tagCMRefreshMainServerRole
public class CA108_tagCMRefreshMainServerRole : GameNetPackBasic
{
    public CA108_tagCMRefreshMainServerRole()
    {
        combineCmd = (ushort)0x03FE;
        _cmd = (ushort)0xA108;
    }
    public override void WriteToBytes()
    {
    }
}
Core/NetworkPackage/ClientPack/ClientToMapServer/CA1/CA108_tagCMRefreshMainServerRole.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 00ad780b301cfe1409358305dd0909f3
timeCreated: 1546926663
licenseType: Pro
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
Core/NetworkPackage/DTCFile/ServerPack/H04_Scene/DTC0419_tagPlayerReborn.cs
@@ -25,11 +25,6 @@
            return;
        }
        if (vNetData.socketType == GameNetSystem.SocketType.Main)
        {
            PlayerDatas.Instance.baseData.RecordMainServerDie(true, false);
        }
        DeadModel.RebornSuccess(vNetData);
        GActorPlayerBase _player = GAMgr.Instance.GetBySID(vNetData.PlayerID) as GActorPlayerBase;
Core/NetworkPackage/DTCFile/ServerPack/H06_PlayerVsNPC/DTC0609_tagPlayerDie.cs
@@ -22,11 +22,6 @@
        H0609_tagPlayerDie vNetData = vNetPack as H0609_tagPlayerDie;
       
        if (vNetData.socketType==GameNetSystem.SocketType.Main)
        {
            PlayerDatas.Instance.baseData.RecordMainServerDie(true,true);
        }
        DeadModel.PlayerDie(vNetData.PlayerID);
        GActorPlayerBase _player = GAMgr.Instance.GetBySID(vNetData.PlayerID) as GActorPlayerBase;
Core/NetworkPackage/DTCFile/ServerPack/HA1_Sys/DTCA112_tagMCDBPlayer.cs
New file
@@ -0,0 +1,24 @@
//--------------------------------------------------------
//    [Author]:           第二世界
//    [  Date ]:           Tuesday, January 08, 2019
//--------------------------------------------------------
using System;
using System.Collections;
using System.Collections.Generic;
public class DTCA112_tagMCDBPlayer : DtcBasic {
    public override void Done(GameNetPackBasic vNetPack)
    {
        base.Done(vNetPack);
        var package = vNetPack as HA112_tagMCDBPlayer;
        PlayerDatas.Instance.UpdatePlayerData(package);
    }
}
Core/NetworkPackage/DTCFile/ServerPack/HA1_Sys/DTCA112_tagMCDBPlayer.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 8fbe251d30665354a83e20401553ce87
timeCreated: 1546927075
licenseType: Pro
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
Core/NetworkPackage/ServerPack/HA1_Sys/HA112_tagMCDBPlayer.cs
New file
@@ -0,0 +1,206 @@
using UnityEngine;
using System.Collections;
// A1 12 玩家初始化 #tagMCDBPlayer
public class HA112_tagMCDBPlayer : GameNetPackBasic
{
    public string AccID;    //帐号名, 该角色所在的帐号的用户名
    public uint PlayerID;
    public string PlayerName;    //size = 14
    public byte AccState;    //0: 未创建, 1: 创建OK,正常登录 2:封号 3:已删除
    public byte GMLevel;    //GM等级, 0:不是GM  >=1 : GM的等级
    public byte Sex;    //性别
    public byte Job;    //职业, 0.新手 1.游侠 2.战士 3.弓箭手 4.术士 5.道士
    public ushort ReincarnationLv;    // 转生等级
    public ushort LV;    //等级
    public ushort LVEx;    //玩家等级副本,用于转生
    public ushort LV2;    //大师等级
    public uint ExpPoint;    //扩充经验点数
    public uint TotalExp;    //总经验
    public uint Family;    //家族
    public string FamilyName;    //家族名称
    public int TeamHornor;    //组队荣誉
    public int FamilyHornor;    //家族荣耀
    public int FamilyActiveValue;    //家族活跃度
    public int LastWeekFamilyActiveValue;    //上周家族活跃度
    public int CountryHornor;    //本周国家功勋值
    public int CountryLastWeekHornor;    //上周国家功勋值
    public uint Mate;
    public uint Gold;    //金子
    public uint GoldPaper;    //金票
    public uint Silver;    //银子
    public uint SilverPaper;    //银票
    public uint FightPoint;    //战斗值
    public uint HappyPoint;    //脱机挂时长(秒)
    public byte LineID;    //角色所在线路
    public ushort MapID;    //角色所在地图
    public ushort PosX;    //角色坐标
    public ushort PosY;
    public ushort RebornMapID;    //重生点地图ID
    public ushort RebornPosX;
    public ushort RebornPosY;
    public byte State;    //角色状态   0.正常在线1.脱机挂在线 2脱机挂死亡
    public uint HP;    //当前HP
    public uint XP;    //当前XP
    public ushort HPRestoreSetting;    //少于这个值%自动喝血
    public ushort MPRestoreSetting;    //少于这个值%自动喝魔
    public uint FreePoint;    //未分配点数
    public uint FreeSkillPoint;    //未分配的技能点
    public int BaseSTR;    //裸体力量
    public int BasePNE;    //裸体真元
    public int BasePHY;    //裸体筋骨
    public int BaseCON;    //裸体体魄
    public int STR;    //力量
    public int PNE;    //真元
    public int PHY;    //筋骨
    public int CON;    //体魄
    public ushort PKValue;    //衡量PK能力的一项属性,由攻防计算而得
    public byte BackpackLV;    //背包等级
    public byte WarehouseLV;    //仓库等级
    public uint TeamID;    //队伍ID
    public byte UseGoldType;    //默认用金子/金票        类型为MoneyType
    public byte UseSilverType;    //默认用的银子/银票
    public byte AttackMode;    //攻击模式
    public uint LastWeekOnlineTime;    //上周在线时间
    public byte FBID;    //fb id
    public byte FamilyLV;    //家族等级
    public uint FriendFavor;    //好友人气值
    public uint Energy;    //精力值
    public uint EquipShowSwitch;    //装备显示开关
    public uint LuckValue;    //幸运值
    public uint ExAttr1;    //扩展属性1,各项目专用
    public uint ExAttr2;    //扩展属性2,各项目专用
    public uint ExAttr3;    //扩展属性3,各项目专用
    public uint ExAttr4;    //扩展属性4,各项目专用
    public uint ExAttr5;    //扩展属性5,各项目专用
    public byte Faction;    //阵营
    public uint InfamyValue;    //恶名值
    public byte OfficialRank;    //官阶,官职等级
    public uint ChangeCoinPointTotal;    //兑换的点数总计
    public byte VIPLv;    //VIP等级
    public byte VIPLvForPhone;    //移动VIP等级
    public uint ExAttr6;    //扩展属性6,各项目专用
    public uint ExAttr7;    //扩展属性7,各项目专用
    public uint ExAttr8;    //扩展属性8,各项目专用
    public uint ExAttr9;    //扩展属性9,各项目专用
    public uint ExAttr10;    //扩展属性10,各项目专用
    public uint ModelMark;    // 变形模型mark
    public uint ExAttr11;    //预留的扩展属性字段,用来存放项目特定的属性
    public uint ExAttr12;    //预留的扩展属性字段,用来存放项目特定的属性
    public uint ExAttr13;    //预留的扩展属性字段,用来存放项目特定的属性
    public uint ExAttr14;    //预留的扩展属性字段,用来存放项目特定的属性
    public uint OperateInfo;    //玩家附加运营商信息
    public string Operate;    //所属运营商平台名
    public uint ServerID;    //所属区服ID
    public uint ExAttr15;    //预留的扩展属性字段,用来存放项目特定的属性
    public uint ExAttr16;    //预留的扩展属性字段,用来存放项目特定的属性
    public uint ExAttr17;    //预留的扩展属性字段,用来存放项目特定的属性
    public uint ExAttr18;    //预留的扩展属性字段,用来存放项目特定的属性
    public uint ExAttr19;    //预留的扩展属性字段,用来存放项目特定的属性
    public uint ExAttr20;    //预留的扩展属性字段,用来存放项目特定的属性
    public HA112_tagMCDBPlayer()
    {
        _cmd = (ushort)0xA112;
    }
    public override void ReadFromBytes(byte[] vBytes)
    {
        TransBytes(out AccID, vBytes, NetDataType.Chars, 65);
        TransBytes(out PlayerID, vBytes, NetDataType.DWORD);
        TransBytes(out PlayerName, vBytes, NetDataType.Chars, 33);
        TransBytes(out AccState, vBytes, NetDataType.BYTE);
        TransBytes(out GMLevel, vBytes, NetDataType.BYTE);
        TransBytes(out Sex, vBytes, NetDataType.BYTE);
        TransBytes(out Job, vBytes, NetDataType.BYTE);
        TransBytes(out ReincarnationLv, vBytes, NetDataType.WORD);
        TransBytes(out LV, vBytes, NetDataType.WORD);
        TransBytes(out LVEx, vBytes, NetDataType.WORD);
        TransBytes(out LV2, vBytes, NetDataType.WORD);
        TransBytes(out ExpPoint, vBytes, NetDataType.DWORD);
        TransBytes(out TotalExp, vBytes, NetDataType.DWORD);
        TransBytes(out Family, vBytes, NetDataType.DWORD);
        TransBytes(out FamilyName, vBytes, NetDataType.Chars, 33);
        TransBytes(out TeamHornor, vBytes, NetDataType.Int);
        TransBytes(out FamilyHornor, vBytes, NetDataType.Int);
        TransBytes(out FamilyActiveValue, vBytes, NetDataType.Int);
        TransBytes(out LastWeekFamilyActiveValue, vBytes, NetDataType.Int);
        TransBytes(out CountryHornor, vBytes, NetDataType.Int);
        TransBytes(out CountryLastWeekHornor, vBytes, NetDataType.Int);
        TransBytes(out Mate, vBytes, NetDataType.DWORD);
        TransBytes(out Gold, vBytes, NetDataType.DWORD);
        TransBytes(out GoldPaper, vBytes, NetDataType.DWORD);
        TransBytes(out Silver, vBytes, NetDataType.DWORD);
        TransBytes(out SilverPaper, vBytes, NetDataType.DWORD);
        TransBytes(out FightPoint, vBytes, NetDataType.DWORD);
        TransBytes(out HappyPoint, vBytes, NetDataType.DWORD);
        TransBytes(out LineID, vBytes, NetDataType.BYTE);
        TransBytes(out MapID, vBytes, NetDataType.WORD);
        TransBytes(out PosX, vBytes, NetDataType.WORD);
        TransBytes(out PosY, vBytes, NetDataType.WORD);
        TransBytes(out RebornMapID, vBytes, NetDataType.WORD);
        TransBytes(out RebornPosX, vBytes, NetDataType.WORD);
        TransBytes(out RebornPosY, vBytes, NetDataType.WORD);
        TransBytes(out State, vBytes, NetDataType.BYTE);
        TransBytes(out HP, vBytes, NetDataType.DWORD);
        TransBytes(out XP, vBytes, NetDataType.DWORD);
        TransBytes(out HPRestoreSetting, vBytes, NetDataType.WORD);
        TransBytes(out MPRestoreSetting, vBytes, NetDataType.WORD);
        TransBytes(out FreePoint, vBytes, NetDataType.DWORD);
        TransBytes(out FreeSkillPoint, vBytes, NetDataType.DWORD);
        TransBytes(out BaseSTR, vBytes, NetDataType.Int);
        TransBytes(out BasePNE, vBytes, NetDataType.Int);
        TransBytes(out BasePHY, vBytes, NetDataType.Int);
        TransBytes(out BaseCON, vBytes, NetDataType.Int);
        TransBytes(out STR, vBytes, NetDataType.Int);
        TransBytes(out PNE, vBytes, NetDataType.Int);
        TransBytes(out PHY, vBytes, NetDataType.Int);
        TransBytes(out CON, vBytes, NetDataType.Int);
        TransBytes(out PKValue, vBytes, NetDataType.WORD);
        TransBytes(out BackpackLV, vBytes, NetDataType.BYTE);
        TransBytes(out WarehouseLV, vBytes, NetDataType.BYTE);
        TransBytes(out TeamID, vBytes, NetDataType.DWORD);
        TransBytes(out UseGoldType, vBytes, NetDataType.BYTE);
        TransBytes(out UseSilverType, vBytes, NetDataType.BYTE);
        TransBytes(out AttackMode, vBytes, NetDataType.BYTE);
        TransBytes(out LastWeekOnlineTime, vBytes, NetDataType.DWORD);
        TransBytes(out FBID, vBytes, NetDataType.BYTE);
        TransBytes(out FamilyLV, vBytes, NetDataType.BYTE);
        TransBytes(out FriendFavor, vBytes, NetDataType.DWORD);
        TransBytes(out Energy, vBytes, NetDataType.DWORD);
        TransBytes(out EquipShowSwitch, vBytes, NetDataType.DWORD);
        TransBytes(out LuckValue, vBytes, NetDataType.DWORD);
        TransBytes(out ExAttr1, vBytes, NetDataType.DWORD);
        TransBytes(out ExAttr2, vBytes, NetDataType.DWORD);
        TransBytes(out ExAttr3, vBytes, NetDataType.DWORD);
        TransBytes(out ExAttr4, vBytes, NetDataType.DWORD);
        TransBytes(out ExAttr5, vBytes, NetDataType.DWORD);
        TransBytes(out Faction, vBytes, NetDataType.BYTE);
        TransBytes(out InfamyValue, vBytes, NetDataType.DWORD);
        TransBytes(out OfficialRank, vBytes, NetDataType.BYTE);
        TransBytes(out ChangeCoinPointTotal, vBytes, NetDataType.DWORD);
        TransBytes(out VIPLv, vBytes, NetDataType.BYTE);
        TransBytes(out VIPLvForPhone, vBytes, NetDataType.BYTE);
        TransBytes(out ExAttr6, vBytes, NetDataType.DWORD);
        TransBytes(out ExAttr7, vBytes, NetDataType.DWORD);
        TransBytes(out ExAttr8, vBytes, NetDataType.DWORD);
        TransBytes(out ExAttr9, vBytes, NetDataType.DWORD);
        TransBytes(out ExAttr10, vBytes, NetDataType.DWORD);
        TransBytes(out ModelMark, vBytes, NetDataType.DWORD);
        TransBytes(out ExAttr11, vBytes, NetDataType.DWORD);
        TransBytes(out ExAttr12, vBytes, NetDataType.DWORD);
        TransBytes(out ExAttr13, vBytes, NetDataType.DWORD);
        TransBytes(out ExAttr14, vBytes, NetDataType.DWORD);
        TransBytes(out OperateInfo, vBytes, NetDataType.DWORD);
        TransBytes(out Operate, vBytes, NetDataType.Chars, 15);
        TransBytes(out ServerID, vBytes, NetDataType.DWORD);
        TransBytes(out ExAttr15, vBytes, NetDataType.DWORD);
        TransBytes(out ExAttr16, vBytes, NetDataType.DWORD);
        TransBytes(out ExAttr17, vBytes, NetDataType.DWORD);
        TransBytes(out ExAttr18, vBytes, NetDataType.DWORD);
        TransBytes(out ExAttr19, vBytes, NetDataType.DWORD);
        TransBytes(out ExAttr20, vBytes, NetDataType.DWORD);
    }
}
Core/NetworkPackage/ServerPack/HA1_Sys/HA112_tagMCDBPlayer.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 419df965f5258b8418569878ad174b5b
timeCreated: 1546926744
licenseType: Pro
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
System/MainInterfacePanel/PlayerTaskDatas.cs
@@ -132,8 +132,7 @@
    public int TaskAutoLv = 0;
    public int TaskAutoTime = 0;
    PlayerPackModel _playerPack;
    PlayerPackModel playerPack
    {
    PlayerPackModel playerPack {
        get { return _playerPack ?? (_playerPack = ModelCenter.Instance.GetModel<PlayerPackModel>()); }
    }
@@ -1239,10 +1238,8 @@
    }
    private PlayerPackModel m_PlayerBackModel;
    private PlayerPackModel PlayerBackModel
    {
        get
        {
    private PlayerPackModel PlayerBackModel {
        get {
            return m_PlayerBackModel ?? (m_PlayerBackModel = ModelCenter.Instance.GetModel<PlayerPackModel>());
        }
    }