aboutsummaryrefslogtreecommitdiff
path: root/pkg/classes/dataTables.go
diff options
context:
space:
mode:
authorArda Serdar Pektezol <1669855+pektezol@users.noreply.github.com>2023-09-23 17:46:12 +0300
committerArda Serdar Pektezol <1669855+pektezol@users.noreply.github.com>2023-09-23 17:46:12 +0300
commit7745f2dcaa2c409c19c6e79bf1eaa2bc41444be0 (patch)
tree0c57a12442ec0b8e90089eddf44af78a01e8882a /pkg/classes/dataTables.go
parentfeat: TONS of user message parsing (#10) (diff)
downloadsdp.go-7745f2dcaa2c409c19c6e79bf1eaa2bc41444be0.tar.gz
sdp.go-7745f2dcaa2c409c19c6e79bf1eaa2bc41444be0.tar.bz2
sdp.go-7745f2dcaa2c409c19c6e79bf1eaa2bc41444be0.zip
lp parser: only get portal count and cm ticks
Diffstat (limited to 'pkg/classes/dataTables.go')
-rw-r--r--pkg/classes/dataTables.go13
1 files changed, 0 insertions, 13 deletions
diff --git a/pkg/classes/dataTables.go b/pkg/classes/dataTables.go
index 27ab9e4..c17e5f6 100644
--- a/pkg/classes/dataTables.go
+++ b/pkg/classes/dataTables.go
@@ -4,7 +4,6 @@ import (
4 "fmt" 4 "fmt"
5 5
6 "github.com/pektezol/bitreader" 6 "github.com/pektezol/bitreader"
7 "github.com/pektezol/demoparser/pkg/writer"
8) 7)
9 8
10type DataTables struct { 9type DataTables struct {
@@ -46,14 +45,10 @@ func (dataTables *DataTables) ParseDataTables(reader *bitreader.Reader) {
46 count++ 45 count++
47 dataTables.SendTable = append(dataTables.SendTable, ParseSendTable(dataTableReader)) 46 dataTables.SendTable = append(dataTables.SendTable, ParseSendTable(dataTableReader))
48 } 47 }
49 writer.AppendLine("\t%d Send Tables:", count)
50 writer.AppendOutputFromTemp()
51 numOfClasses := dataTableReader.TryReadBits(16) 48 numOfClasses := dataTableReader.TryReadBits(16)
52 for count = 0; count < int(numOfClasses); count++ { 49 for count = 0; count < int(numOfClasses); count++ {
53 dataTables.ServerClassInfo = append(dataTables.ServerClassInfo, ParseServerClassInfo(dataTableReader, count, int(numOfClasses))) 50 dataTables.ServerClassInfo = append(dataTables.ServerClassInfo, ParseServerClassInfo(dataTableReader, count, int(numOfClasses)))
54 } 51 }
55 writer.AppendLine("\t%d Classes:", count)
56 writer.AppendOutputFromTemp()
57} 52}
58 53
59func ParseSendTable(reader *bitreader.Reader) SendTable { 54func ParseSendTable(reader *bitreader.Reader) SendTable {
@@ -65,7 +60,6 @@ func ParseSendTable(reader *bitreader.Reader) SendTable {
65 if sendTable.NumOfProps < 0 { 60 if sendTable.NumOfProps < 0 {
66 return sendTable 61 return sendTable
67 } 62 }
68 writer.TempAppendLine("\t\t%s (%d Props):", sendTable.NetTableName, sendTable.NumOfProps)
69 for count := 0; count < int(sendTable.NumOfProps); count++ { 63 for count := 0; count < int(sendTable.NumOfProps); count++ {
70 propType := int8(reader.TryReadBits(5)) 64 propType := int8(reader.TryReadBits(5))
71 if propType >= int8(7) { 65 if propType >= int8(7) {
@@ -77,26 +71,20 @@ func ParseSendTable(reader *bitreader.Reader) SendTable {
77 SendPropFlags: uint32(reader.TryReadBits(19)), 71 SendPropFlags: uint32(reader.TryReadBits(19)),
78 Priority: reader.TryReadUInt8(), 72 Priority: reader.TryReadUInt8(),
79 } 73 }
80 writer.TempAppend("\t\t\t%s\t", prop.SendPropType)
81 if propType == int8(ESendPropTypeDataTable) || checkBit(prop.SendPropFlags, 6) { 74 if propType == int8(ESendPropTypeDataTable) || checkBit(prop.SendPropFlags, 6) {
82 prop.ExcludeDtName = reader.TryReadString() 75 prop.ExcludeDtName = reader.TryReadString()
83 writer.TempAppend(":\t%s\t", prop.ExcludeDtName)
84 } else { 76 } else {
85 switch propType { 77 switch propType {
86 case int8(ESendPropTypeString), int8(ESendPropTypeInt), int8(ESendPropTypeFloat), int8(ESendPropTypeVector3), int8(ESendPropTypeVector2): 78 case int8(ESendPropTypeString), int8(ESendPropTypeInt), int8(ESendPropTypeFloat), int8(ESendPropTypeVector3), int8(ESendPropTypeVector2):
87 prop.LowValue = reader.TryReadFloat32() 79 prop.LowValue = reader.TryReadFloat32()
88 prop.HighValue = reader.TryReadFloat32() 80 prop.HighValue = reader.TryReadFloat32()
89 prop.NumBits = int32(reader.TryReadBits(7)) 81 prop.NumBits = int32(reader.TryReadBits(7))
90 writer.TempAppend("Low: %f\tHigh: %f\t%d bits\t", prop.LowValue, prop.HighValue, prop.NumBits)
91 case int8(ESendPropTypeArray): 82 case int8(ESendPropTypeArray):
92 prop.NumElements = int32(reader.TryReadBits(10)) 83 prop.NumElements = int32(reader.TryReadBits(10))
93 writer.TempAppend("Elements: %d\t", prop.NumElements)
94 default: 84 default:
95 writer.TempAppend("Unknown Prop Type: %v\t", propType)
96 return sendTable 85 return sendTable
97 } 86 }
98 } 87 }
99 writer.TempAppend("Flags: %v\tPriority: %d\n", prop.GetFlags(), prop.Priority)
100 sendTable.Props = append(sendTable.Props, prop) 88 sendTable.Props = append(sendTable.Props, prop)
101 } 89 }
102 return sendTable 90 return sendTable
@@ -108,7 +96,6 @@ func ParseServerClassInfo(reader *bitreader.Reader, count int, numOfClasses int)
108 ClassName: reader.TryReadString(), 96 ClassName: reader.TryReadString(),
109 DataTableName: reader.TryReadString(), 97 DataTableName: reader.TryReadString(),
110 } 98 }
111 writer.TempAppendLine("\t\t\t[%d] %s (%s)", serverClassInfo.ClassId, serverClassInfo.ClassName, serverClassInfo.DataTableName)
112 return serverClassInfo 99 return serverClassInfo
113} 100}
114 101