aboutsummaryrefslogtreecommitdiff
path: root/messages/header.go
blob: 6320c718f860cb97dcba626a33b31286ca48f544 (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 (
	"fmt"
	"os"

	"github.com/bisaxa/bitreader"
	"github.com/bisaxa/demoparser/utils"
)

func ParseHeader(file *os.File) {
	var header Header
	reader := bitreader.Reader(file, true)
	header.DemoFileStamp = string(utils.ReadByteFromFile(file, 8))
	header.DemoProtocol = int32(reader.TryReadInt32())
	header.NetworkProtocol = int32(reader.TryReadInt32())
	header.ServerName = string(utils.ReadByteFromFile(file, 260))
	header.ClientName = string(utils.ReadByteFromFile(file, 260))
	header.MapName = string(utils.ReadByteFromFile(file, 260))
	header.GameDirectory = string(utils.ReadByteFromFile(file, 260))
	header.PlaybackTime = float32(reader.TryReadFloat32())
	header.PlaybackTicks = int32(reader.TryReadInt32())
	header.PlaybackFrames = int32(reader.TryReadInt32())
	header.SignOnLength = int32(reader.TryReadInt32())
	fmt.Printf("%+v", header)
}