aboutsummaryrefslogtreecommitdiff
path: root/messages/messages.go
diff options
context:
space:
mode:
authorArda Serdar Pektezol <1669855+pektezol@users.noreply.github.com>2022-11-07 16:09:44 +0300
committerArda Serdar Pektezol <1669855+pektezol@users.noreply.github.com>2023-09-16 21:39:37 +0300
commita77cf8169b42a4394e62f7a381ca546b27d0f723 (patch)
tree2dd8d4f51c5841b806e9b5ed6fe9054bce06e2e0 /messages/messages.go
parentchanged github username + other stuff that i don't remember (diff)
downloadsdp.go-a77cf8169b42a4394e62f7a381ca546b27d0f723.tar.gz
sdp.go-a77cf8169b42a4394e62f7a381ca546b27d0f723.tar.bz2
sdp.go-a77cf8169b42a4394e62f7a381ca546b27d0f723.zip
starting fresh for the third time
Diffstat (limited to 'messages/messages.go')
-rw-r--r--messages/messages.go78
1 files changed, 0 insertions, 78 deletions
diff --git a/messages/messages.go b/messages/messages.go
deleted file mode 100644
index b40684b..0000000
--- a/messages/messages.go
+++ /dev/null
@@ -1,78 +0,0 @@
1package messages
2
3import (
4 "fmt"
5 "os"
6
7 "github.com/pektezol/bitreader"
8 "github.com/pektezol/demoparser/classes"
9 "github.com/pektezol/demoparser/classes/netsvc"
10 "github.com/pektezol/demoparser/utils"
11)
12
13func ParseMessage(file *os.File) (statusCode int) {
14 reader := bitreader.Reader(file, true)
15 messageType := reader.TryReadInt8()
16 messageTick := reader.TryReadInt32()
17 messageSlot := reader.TryReadInt8()
18 //fmt.Println(messageType, messageTick, messageSlot)
19 switch messageType {
20 case 0x01: // SignOn
21 var packet Packet
22 packet.PacketInfo = classes.ParseCmdInfo(file, 2)
23 packet.InSequence = int32(reader.TryReadInt32())
24 packet.OutSequence = int32(reader.TryReadInt32())
25 packet.Size = int32(reader.TryReadInt32())
26 data := utils.ReadByteFromFile(file, packet.Size)
27 //fmt.Println(data)
28 netsvc.ParseNetSvcMessage(data)
29 //reader.SkipBytes(int(packet.Size)) // TODO: NET/SVC Message Parsing
30 fmt.Printf("[%d] (%d) SignOn: %v\n", messageTick, messageSlot, packet)
31 return 1
32 case 0x02: // Packet
33 var packet Packet
34 packet.PacketInfo = classes.ParseCmdInfo(file, 2)
35 packet.InSequence = int32(reader.TryReadInt32())
36 packet.OutSequence = int32(reader.TryReadInt32())
37 packet.Size = int32(reader.TryReadInt32())
38 reader.SkipBytes(int(packet.Size)) // TODO: NET/SVC Message Parsing
39 //fmt.Printf("[%d] Packet: %v\n", messageTick, packet)
40 return 2
41 case 0x03: // SyncTick
42 return 3
43 case 0x04: // ConsoleCmd
44 var consolecmd ConsoleCmd
45 consolecmd.Size = int32(reader.TryReadInt32())
46 consolecmd.Data = string(utils.ReadByteFromFile(file, consolecmd.Size))
47 //fmt.Printf("[%d] ConsoleCmd: %s\n", messageTick, consolecmd.Data)
48 return 4
49 case 0x05: // UserCmd
50 var usercmd UserCmd
51 usercmd.Cmd = int32(reader.TryReadInt32())
52 usercmd.Size = int32(reader.TryReadInt32())
53 usercmd.Data = classes.ParseUserCmdInfo(file, int(usercmd.Size))
54 //fmt.Printf("[%d] UserCmd: %v\n", messageTick, usercmd.Data)
55 return 5
56 case 0x06: // DataTables
57 var datatables DataTables
58 datatables.Size = int32(reader.TryReadInt32())
59 reader.SkipBytes(int(datatables.Size)) // TODO: DataTables Data
60 return 6
61 case 0x07: // Stop
62 fmt.Printf("[%d] Stop\n", messageTick)
63 return 7
64 case 0x08: // CustomData
65 var customdata CustomData
66 customdata.Unknown = int32(reader.TryReadInt32())
67 customdata.Size = int32(reader.TryReadInt32())
68 reader.SkipBytes(int(customdata.Size)) // TODO: CustomData Data
69 return 8
70 case 0x09: // StringTables
71 var stringtables StringTables
72 stringtables.Size = int32(reader.TryReadInt32())
73 reader.SkipBytes(int(stringtables.Size)) // TODO: StringTables Data
74 return 9
75 default:
76 return 0
77 }
78}