namespace Supercell.Laser.Logic.Message.Account.Auth { using Supercell.Laser.Titan.DataStream; public class AuthenticationMessage : GameMessage { public AuthenticationMessage() : base() { AccountId = 0; } public long AccountId; public string PassToken; public string SupercellIdToken; public override void Decode() { AccountId = Stream.ReadLong(); PassToken = Stream.ReadString(); if (!Stream.IsAtEnd()) { Stream.ReadInt(); Stream.ReadInt(); Stream.ReadInt(); Stream.ReadString(); Stream.ReadString(); Stream.ReadVInt(); Stream.ReadVInt(); Stream.ReadString(); Stream.ReadString(); Stream.ReadBoolean(); Stream.ReadString(); Stream.ReadString(); Stream.ReadBoolean(); Stream.ReadString(); Stream.ReadInt(); if (!Stream.IsAtEnd()) { Stream.ReadVInt(); if (!Stream.IsAtEnd()) { Stream.ReadString(); if (!Stream.IsAtEnd()) { Stream.ReadStringReference(900000); Stream.ReadStringReference(900000); Stream.ReadVInt(); if (!Stream.IsAtEnd()) { Stream.ReadStringReference(900000); Stream.ReadStringReference(900000); Stream.ReadStringReference(900000); if (!Stream.IsAtEnd()) { SupercellIdToken = LogicCompressedString.Decode(Stream)?.GetString(); } } } } } } } public override int GetMessageType() => 10101; public override int GetServiceNodeType() => 1; } }