diff options
Diffstat (limited to 'pkg/messages/types/netSignOnState.go')
| -rw-r--r-- | pkg/messages/types/netSignOnState.go | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/pkg/messages/types/netSignOnState.go b/pkg/messages/types/netSignOnState.go new file mode 100644 index 0000000..4609ff2 --- /dev/null +++ b/pkg/messages/types/netSignOnState.go | |||
| @@ -0,0 +1,26 @@ | |||
| 1 | package messages | ||
| 2 | |||
| 3 | import "github.com/pektezol/bitreader" | ||
| 4 | |||
| 5 | type NetSignOnState struct { | ||
| 6 | SignOnState int8 | ||
| 7 | SpawnCount int32 | ||
| 8 | NumServerPlayers int32 | ||
| 9 | IdsLength int32 | ||
| 10 | PlayersNetworksIds []byte | ||
| 11 | MapNameLength int32 | ||
| 12 | MapName string | ||
| 13 | } | ||
| 14 | |||
| 15 | func ParseNetSignOnState(reader *bitreader.ReaderType) NetSignOnState { | ||
| 16 | netSignOnState := NetSignOnState{ | ||
| 17 | SignOnState: int8(reader.TryReadBits(8)), | ||
| 18 | SpawnCount: int32(reader.TryReadBits(32)), | ||
| 19 | NumServerPlayers: int32(reader.TryReadBits(32)), | ||
| 20 | IdsLength: int32(reader.TryReadBits(32)), | ||
| 21 | } | ||
| 22 | netSignOnState.PlayersNetworksIds = reader.TryReadBytesToSlice(int(netSignOnState.IdsLength)) | ||
| 23 | netSignOnState.MapNameLength = int32(reader.TryReadBits(32)) | ||
| 24 | netSignOnState.MapName = reader.TryReadStringLen(int(netSignOnState.MapNameLength)) | ||
| 25 | return netSignOnState | ||
| 26 | } | ||