public static SMsgPropCreateEntity_SC_MainPlayer ParsePackage(Package package, int offset) { var structLength = Marshal.SizeOf(typeof(SMsgPropCreateEntity_SC_MainPlayer)); var headLength = Marshal.SizeOf(typeof(SMsgPropCreateEntity_SC_Header)); var offsetBuffer = package.Data.Skip(offset).Take(structLength).ToArray(); SMsgPropCreateEntity_SC_MainPlayer sMsgPropCreateEntity_SC_MainPlayer = new SMsgPropCreateEntity_SC_MainPlayer(); sMsgPropCreateEntity_SC_MainPlayer.m_sMsg_Header = SMsgPropCreateEntity_SC_Header.ParsePackage(package, offset); int of = headLength; of += PackageHelper.ReadData(offsetBuffer.Skip(of).ToArray(), out sMsgPropCreateEntity_SC_MainPlayer.ActorID); of += PackageHelper.ReadData(offsetBuffer.Skip(of).ToArray(), out sMsgPropCreateEntity_SC_MainPlayer.UID); of += PackageHelper.ReadData(offsetBuffer.Skip(of).ToArray(), out sMsgPropCreateEntity_SC_MainPlayer.MapID); of += PackageHelper.ReadData(offsetBuffer.Skip(of).ToArray(), out sMsgPropCreateEntity_SC_MainPlayer.m_playerX); of += PackageHelper.ReadData(offsetBuffer.Skip(of).ToArray(), out sMsgPropCreateEntity_SC_MainPlayer.m_playerY); of += PackageHelper.ReadData(offsetBuffer.Skip(of).ToArray(), out sMsgPropCreateEntity_SC_MainPlayer.m_name, 19); byte[] baseValues, playerUnitValues, playerValues; int baseValueSize = CommonTools.GetStructSize <SMsgPropCreateEntity_SC_BaseValue>(); int unitValueSize = CommonTools.GetStructSize <SMsgPropCreateEntity_SC_Player_UnitValue>(); int playValueSize = CommonTools.GetStructSize <SMsgPropCreateEntity_SC_MainPlayer_PlayerValue>(); of += PackageHelper.ReadData(offsetBuffer.Skip(of).ToArray(), out baseValues, baseValueSize); of += PackageHelper.ReadData(offsetBuffer.Skip(of).ToArray(), out playerUnitValues, unitValueSize); of += PackageHelper.ReadData(offsetBuffer.Skip(of).ToArray(), out playerValues, playValueSize); sMsgPropCreateEntity_SC_MainPlayer.BaseObjectValues = PackageHelper.BytesToStuct <SMsgPropCreateEntity_SC_BaseValue>(baseValues); sMsgPropCreateEntity_SC_MainPlayer.UnitValues = PackageHelper.BytesToStuct <SMsgPropCreateEntity_SC_Player_UnitValue>(playerUnitValues); sMsgPropCreateEntity_SC_MainPlayer.PlayerValues = PackageHelper.BytesToStuct <SMsgPropCreateEntity_SC_MainPlayer_PlayerValue>(playerValues); return(sMsgPropCreateEntity_SC_MainPlayer); }
public int GetPlayerVIPLevel() { SMsgPropCreateEntity_SC_MainPlayer player = PlayerManager.Instance.FindHeroDataModel(); return(player.GetCommonValue().PLAYER_FIELD_VISIBLE_VIP); }