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

import "github.com/pektezol/bitreader"

type SvcUpdateStringTable struct {
	TableId           int8
	NumChangedEntries int16
	Length            int32
	Data              []byte
}

func ParseSvcUpdateStringTable(reader *bitreader.Reader) SvcUpdateStringTable {
	svcUpdateStringTable := SvcUpdateStringTable{
		TableId: int8(reader.TryReadBits(5)),
	}
	if reader.TryReadBool() {
		svcUpdateStringTable.NumChangedEntries = int16(reader.TryReadBits(16))
	}
	svcUpdateStringTable.Length = int32(reader.TryReadBits(20))
	svcUpdateStringTable.Data = reader.TryReadBitsToSlice(uint64(svcUpdateStringTable.Length))
	return svcUpdateStringTable
}