aboutsummaryrefslogtreecommitdiff
path: root/pkg/messages/types/netSignOnState.go
blob: 4609ff27701f115d84e85132d7b7cb7aef8e96bc (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
package messages

import "github.com/pektezol/bitreader"

type NetSignOnState struct {
	SignOnState        int8
	SpawnCount         int32
	NumServerPlayers   int32
	IdsLength          int32
	PlayersNetworksIds []byte
	MapNameLength      int32
	MapName            string
}

func ParseNetSignOnState(reader *bitreader.ReaderType) NetSignOnState {
	netSignOnState := NetSignOnState{
		SignOnState:      int8(reader.TryReadBits(8)),
		SpawnCount:       int32(reader.TryReadBits(32)),
		NumServerPlayers: int32(reader.TryReadBits(32)),
		IdsLength:        int32(reader.TryReadBits(32)),
	}
	netSignOnState.PlayersNetworksIds = reader.TryReadBytesToSlice(int(netSignOnState.IdsLength))
	netSignOnState.MapNameLength = int32(reader.TryReadBits(32))
	netSignOnState.MapName = reader.TryReadStringLen(int(netSignOnState.MapNameLength))
	return netSignOnState
}