blob: e5b19436f0b5876f08063ec10e9e84f59b4074fe (
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
|
package messages
import (
"github.com/pektezol/bitreader"
"github.com/pektezol/demoparser/pkg/writer"
)
type SvcUserMessage struct {
Type int8
Length int16
Data []byte
}
type UserMessageType int
const (
EUserMessageTypeUnknown UserMessageType = iota
EUserMessageTypeInvalid
EUserMessageTypeGeiger
EUserMessageTypeTrain
EUserMessageTypeHudText
EUserMessageTypeSayText
EUserMessageTypeSayText2
EUserMessageTypeTextMsg
EUserMessageTypeHUDMsg
EUserMessageTypeResetHUD
EUserMessageTypeGameTitle
EUserMessageTypeItemPickup
EUserMessageTypeShowMenu
EUserMessageTypeShake
EUserMessageTypeFade
EUserMessageTypeVGUIMenu
EUserMessageTypeRumble
EUserMessageTypeBattery
EUserMessageTypeDamage
EUserMessageTypeVoiceMask
EUserMessageTypeRequestState
EUserMessageTypeCloseCaption
EUserMessageTypeHintText
EUserMessageTypeKeyHintText
EUserMessageTypeSquadMemberDied
EUserMessageTypeAmmoDenied
EUserMessageTypeCreditsMsg
EUserMessageTypeCreditsPortalMsg
EUserMessageTypeLogoTimeMsg
EUserMessageTypeAchievementEvent
EUserMessageTypeEntityPortalled
EUserMessageTypeKillCam
EUserMessageTypeTilt
EUserMessageTypeCloseCaptionDirect
EUserMessageTypeUpdateJalopyRadar
EUserMessageTypeCurrentTimescale
EUserMessageTypeDesiredTimescale
EUserMessageTypeInventoryFlash
EUserMessageTypeIndicatorFlash
EUserMessageTypeControlHelperAnimate
EUserMessageTypeTakePhoto
EUserMessageTypeFlash
EUserMessageTypeHudPingIndicator
EUserMessageTypeOpenRadialMenu
EUserMessageTypeAddLocator
EUserMessageTypeMPMapCompleted
EUserMessageTypeMPMapIncomplete
EUserMessageTypeMPMapCompletedData
EUserMessageTypeMPTauntEarned
EUserMessageTypeMPTauntUnlocked
EUserMessageTypeMPTauntLocked
EUserMessageTypeMPAllTauntsLocked
EUserMessageTypePortalFX_Surface
EUserMessageTypePaintWorld
EUserMessageTypePaintEntity
EUserMessageTypeChangePaintColor
EUserMessageTypePaintBombExplode
EUserMessageTypeRemoveAllPaint
EUserMessageTypePaintAllSurfaces
EUserMessageTypeRemovePaint
EUserMessageTypeStartSurvey
EUserMessageTypeApplyHitBoxDamageEffect
EUserMessageTypeSetMixLayerTriggerFactor
EUserMessageTypeTransitionFade
EUserMessageTypeScoreboardTempUpdate
EUserMessageTypeChallengeModCheatSession
EUserMessageTypeChallengeModCloseAllUI
)
func ParseSvcUserMessage(reader *bitreader.Reader) SvcUserMessage {
svcUserMessage := SvcUserMessage{
Type: int8(reader.TryReadBits(8)),
Length: int16(reader.TryReadBits(12)),
}
svcUserMessage.Data = reader.TryReadBitsToSlice(uint64(svcUserMessage.Length))
writer.TempAppendLine("\t\tType: %d", svcUserMessage.Type)
writer.TempAppendLine("\t\tData: %v", svcUserMessage.Data)
return svcUserMessage
}
// func byteToUserMessageType() {
// }
|