aboutsummaryrefslogtreecommitdiff
path: root/pkg/messages/types/netSignOnState.go
diff options
context:
space:
mode:
authorArda Serdar Pektezol <1669855+pektezol@users.noreply.github.com>2023-09-12 20:53:09 +0300
committerArda Serdar Pektezol <1669855+pektezol@users.noreply.github.com>2023-09-16 21:39:42 +0300
commit82871ba1bac1d62f69e1933b66659e62d2e5e063 (patch)
treea906310fba89b670bcfda9625a6d776553d482f6 /pkg/messages/types/netSignOnState.go
parentnet/svc messages finally getting parsed correctly (diff)
downloadsdp.go-82871ba1bac1d62f69e1933b66659e62d2e5e063.tar.gz
sdp.go-82871ba1bac1d62f69e1933b66659e62d2e5e063.tar.bz2
sdp.go-82871ba1bac1d62f69e1933b66659e62d2e5e063.zip
another rewrite, v1.0.0
Diffstat (limited to 'pkg/messages/types/netSignOnState.go')
-rw-r--r--pkg/messages/types/netSignOnState.go26
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 @@
1package messages
2
3import "github.com/pektezol/bitreader"
4
5type 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
15func 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}