aboutsummaryrefslogtreecommitdiff
path: root/pkg/classes/userCmd.go
diff options
context:
space:
mode:
Diffstat (limited to 'pkg/classes/userCmd.go')
-rw-r--r--pkg/classes/userCmd.go58
1 files changed, 29 insertions, 29 deletions
diff --git a/pkg/classes/userCmd.go b/pkg/classes/userCmd.go
index dc0b56d..14ef4e0 100644
--- a/pkg/classes/userCmd.go
+++ b/pkg/classes/userCmd.go
@@ -2,40 +2,40 @@ package classes
2 2
3import ( 3import (
4 "github.com/pektezol/bitreader" 4 "github.com/pektezol/bitreader"
5 "github.com/pektezol/sdp.go/pkg/writer" 5 "github.com/pektezol/sdp.go/pkg/types"
6) 6)
7 7
8type UserCmd struct { 8type UserCmd struct {
9 Cmd uint32 9 Cmd uint32 `json:"cmd"`
10 Size uint32 10 Size uint32 `json:"size"`
11 Data UserCmdInfo 11 Data UserCmdInfo `json:"data"`
12} 12}
13 13
14type UserCmdInfo struct { 14type UserCmdInfo struct {
15 CommandNumber uint32 15 CommandNumber uint32 `json:"command_number"`
16 TickCount uint32 16 TickCount uint32 `json:"tick_count"`
17 ViewAnglesX float32 17 ViewAnglesX float32 `json:"view_angles_x"`
18 ViewAnglesY float32 18 ViewAnglesY float32 `json:"view_angles_y"`
19 ViewAnglesZ float32 19 ViewAnglesZ float32 `json:"view_angles_z"`
20 ForwardMove float32 20 ForwardMove float32 `json:"forward_move"`
21 SideMove float32 21 SideMove float32 `json:"side_move"`
22 UpMove float32 22 UpMove float32 `json:"up_move"`
23 Buttons uint32 23 Buttons uint32 `json:"buttons"`
24 Impulse uint8 24 Impulse uint8 `json:"impulse"`
25 WeaponSelect uint16 25 WeaponSelect uint16 `json:"weapon_select"`
26 WeaponSubType uint8 26 WeaponSubType uint8 `json:"weapon_sub_type"`
27 MouseDx uint16 27 MouseDx uint16 `json:"mouse_dx"`
28 MouseDy uint16 28 MouseDy uint16 `json:"mouse_dy"`
29} 29}
30 30
31func (userCmd *UserCmd) ParseUserCmd(reader *bitreader.Reader) { 31func (userCmd *UserCmd) ParseUserCmd(reader *bitreader.Reader, demo *types.Demo) {
32 userCmd.Cmd = reader.TryReadUInt32() 32 userCmd.Cmd = reader.TryReadUInt32()
33 userCmd.Size = reader.TryReadUInt32() 33 userCmd.Size = reader.TryReadUInt32()
34 userCmdReader := bitreader.NewReaderFromBytes(reader.TryReadBytesToSlice(uint64(userCmd.Size)), true) 34 userCmdReader := bitreader.NewReaderFromBytes(reader.TryReadBytesToSlice(uint64(userCmd.Size)), true)
35 userCmd.ParseUserCmdInfo(userCmdReader) 35 userCmd.ParseUserCmdInfo(userCmdReader, demo)
36} 36}
37 37
38func (userCmd *UserCmd) ParseUserCmdInfo(reader *bitreader.Reader) { 38func (userCmd *UserCmd) ParseUserCmdInfo(reader *bitreader.Reader, demo *types.Demo) {
39 if reader.TryReadBool() { 39 if reader.TryReadBool() {
40 userCmd.Data.CommandNumber = reader.TryReadUInt32() 40 userCmd.Data.CommandNumber = reader.TryReadUInt32()
41 } 41 }
@@ -78,14 +78,14 @@ func (userCmd *UserCmd) ParseUserCmdInfo(reader *bitreader.Reader) {
78 if reader.TryReadBool() { 78 if reader.TryReadBool() {
79 userCmd.Data.MouseDy = reader.TryReadUInt16() 79 userCmd.Data.MouseDy = reader.TryReadUInt16()
80 } 80 }
81 writer.AppendLine("\tCommand Number: %v", userCmd.Data.CommandNumber) 81 demo.Writer.AppendLine("\tCommand Number: %v", userCmd.Data.CommandNumber)
82 writer.AppendLine("\tTick Count: %v", userCmd.Data.TickCount) 82 demo.Writer.AppendLine("\tTick Count: %v", userCmd.Data.TickCount)
83 writer.AppendLine("\tView Angles: %v", []float32{userCmd.Data.ViewAnglesX, userCmd.Data.ViewAnglesY, userCmd.Data.ViewAnglesZ}) 83 demo.Writer.AppendLine("\tView Angles: %v", []float32{userCmd.Data.ViewAnglesX, userCmd.Data.ViewAnglesY, userCmd.Data.ViewAnglesZ})
84 writer.AppendLine("\tMovement: %v", []float32{userCmd.Data.ForwardMove, userCmd.Data.SideMove, userCmd.Data.UpMove}) 84 demo.Writer.AppendLine("\tMovement: %v", []float32{userCmd.Data.ForwardMove, userCmd.Data.SideMove, userCmd.Data.UpMove})
85 writer.AppendLine("\tButtons: %v", Buttons(userCmd.Data.Buttons).GetButtons()) 85 demo.Writer.AppendLine("\tButtons: %v", Buttons(userCmd.Data.Buttons).GetButtons())
86 writer.AppendLine("\tImpulse: %v", userCmd.Data.Impulse) 86 demo.Writer.AppendLine("\tImpulse: %v", userCmd.Data.Impulse)
87 writer.AppendLine("\tWeapon, Subtype: %v, %v", userCmd.Data.WeaponSelect, userCmd.Data.WeaponSubType) 87 demo.Writer.AppendLine("\tWeapon, Subtype: %v, %v", userCmd.Data.WeaponSelect, userCmd.Data.WeaponSubType)
88 writer.AppendLine("\tMouse Dx, Mouse Dy: %v, %v", userCmd.Data.MouseDx, userCmd.Data.MouseDy) 88 demo.Writer.AppendLine("\tMouse Dx, Mouse Dy: %v, %v", userCmd.Data.MouseDx, userCmd.Data.MouseDy)
89} 89}
90 90
91func (button Buttons) GetButtons() []string { 91func (button Buttons) GetButtons() []string {