namespace Supercell.Laser.Logic.Home.Structures { using Supercell.Laser.Logic.Helper; using Supercell.Laser.Titan.DataStream; using Supercell.Laser.Titan.Math; public class LogicPlayerMap { public long MapId; public string MapName; public int GameModeVariation; public int MapEnvironmentData; public LogicCompressedString CompressedMapData; public long AccountId; public string AvatarName; public int State; public long LastUpdateTimeSecondsSinceEpoch; public int FriendlyParticipantCount; public int FriendlySignoffCount; public int Likes; public int Dislikes; public int Battles; public void Encode(ByteStream stream) { ByteStreamHelper.EncodeLogicLong(stream, MapId); stream.WriteString(MapName); stream.WriteVInt(GameModeVariation); ByteStreamHelper.WriteDataReference(stream, MapEnvironmentData); LogicCompressedString.Encode(CompressedMapData, stream); ByteStreamHelper.EncodeLogicLong(stream, AccountId); stream.WriteString(AvatarName); stream.WriteVInt(State); stream.WriteLong(LastUpdateTimeSecondsSinceEpoch); stream.WriteVInt(FriendlyParticipantCount); stream.WriteVInt(FriendlySignoffCount); stream.WriteVInt(Likes); stream.WriteVInt(Dislikes); stream.WriteVInt(Battles); } public void Decode(ByteStream stream) { MapId = ByteStreamHelper.DecodeLogicLong(stream); MapName = stream.ReadString(); GameModeVariation = stream.ReadVInt(); MapEnvironmentData = ByteStreamHelper.ReadDataReference(stream); CompressedMapData = LogicCompressedString.Decode(stream); AccountId = ByteStreamHelper.DecodeLogicLong(stream); AvatarName = stream.ReadString(); State = stream.ReadVInt(); LastUpdateTimeSecondsSinceEpoch = stream.ReadLong(); FriendlyParticipantCount = stream.ReadVInt(); FriendlySignoffCount = stream.ReadVInt(); Likes = stream.ReadVInt(); Dislikes = stream.ReadVInt(); Battles = stream.ReadVInt(); } } }