From 6aa511f2ae3d5c84e7db02627ffd4d7f6796ce75 Mon Sep 17 00:00:00 2001 From: Arda Serdar Pektezol <1669855+pektezol@users.noreply.github.com> Date: Sun, 17 Sep 2023 18:24:18 +0300 Subject: decide what message types are left --- pkg/messages/types/netSignOnState.go | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) (limited to 'pkg/messages/types/netSignOnState.go') diff --git a/pkg/messages/types/netSignOnState.go b/pkg/messages/types/netSignOnState.go index f7a5132..78d03aa 100644 --- a/pkg/messages/types/netSignOnState.go +++ b/pkg/messages/types/netSignOnState.go @@ -9,10 +9,10 @@ import ( type NetSignOnState struct { SignOnState string SpawnCount int32 - NumServerPlayers int32 - IdsLength int32 + NumServerPlayers uint32 + IdsLength uint32 PlayersNetworksIds []byte - MapNameLength int32 + MapNameLength uint32 MapName string } @@ -54,13 +54,17 @@ func (signOnState SignOnState) String() string { func ParseNetSignOnState(reader *bitreader.Reader) NetSignOnState { netSignOnState := NetSignOnState{ - SignOnState: SignOnState(reader.TryReadBits(8)).String(), - SpawnCount: int32(reader.TryReadBits(32)), - NumServerPlayers: int32(reader.TryReadBits(32)), - IdsLength: int32(reader.TryReadBits(32)), + SignOnState: SignOnState(reader.TryReadUInt8()).String(), + SpawnCount: reader.TryReadSInt32(), + NumServerPlayers: reader.TryReadUInt32(), + IdsLength: reader.TryReadUInt32(), + } + if netSignOnState.IdsLength > 0 { + netSignOnState.PlayersNetworksIds = reader.TryReadBytesToSlice(uint64(netSignOnState.IdsLength)) + } + netSignOnState.MapNameLength = reader.TryReadUInt32() + if netSignOnState.MapNameLength > 0 { + netSignOnState.MapName = reader.TryReadStringLength(uint64(netSignOnState.MapNameLength)) } - netSignOnState.PlayersNetworksIds = reader.TryReadBytesToSlice(uint64(netSignOnState.IdsLength)) - netSignOnState.MapNameLength = int32(reader.TryReadBits(32)) - netSignOnState.MapName = reader.TryReadStringLength(uint64(netSignOnState.MapNameLength)) return netSignOnState } -- cgit v1.2.3