Skip to content

Commit 62f0610

Browse files
committed
events: document more potential nil Player fields (#172)
1 parent be86e6c commit 62f0610

File tree

1 file changed

+12
-12
lines changed

1 file changed

+12
-12
lines changed

events/events.go

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -109,12 +109,12 @@ type AnnouncementWinPanelMatch struct{}
109109

110110
// Footstep occurs when a player makes a footstep.
111111
type Footstep struct {
112-
Player *common.Player
112+
Player *common.Player // May be nil if the demo is partially corrupt (player is 'unconnected', see #156 and #172).
113113
}
114114

115115
// PlayerTeamChange occurs when a player swaps teams.
116116
type PlayerTeamChange struct {
117-
Player *common.Player
117+
Player *common.Player // May be nil if the demo is partially corrupt (player is 'unconnected', see #156 and #172).
118118

119119
// TeamState of the old team.
120120
// May be nil if player changed from spectators/unassigned (OldTeam == TeamSpectators || OldTeam == TeamUnassigned).
@@ -133,14 +133,14 @@ type PlayerTeamChange struct {
133133

134134
// PlayerJump signals that a player has jumped.
135135
type PlayerJump struct {
136-
Player *common.Player
136+
Player *common.Player // May be nil if the demo is partially corrupt (player is 'unconnected', see #156 and #172).
137137
}
138138

139139
// Kill signals that a player has been killed.
140140
type Kill struct {
141141
Weapon *common.Equipment
142-
Victim *common.Player
143-
Killer *common.Player // May be nil for world damage (EqWorld) or if the demo is partially corrupt (see #156)
142+
Victim *common.Player // May be nil if the demo is partially corrupt (player is 'unconnected', see #156 and #172).
143+
Killer *common.Player // May be nil for world damage (EqWorld) or if the demo is partially corrupt (player is 'unconnected', see #156 and #172).
144144
Assister *common.Player
145145
PenetratedObjects int
146146
IsHeadshot bool
@@ -153,13 +153,13 @@ type BotTakenOver struct {
153153

154154
// WeaponFire signals that a weapon has been fired.
155155
type WeaponFire struct {
156-
Shooter *common.Player // May be nil if the demo is partially corrupt (see #156)
156+
Shooter *common.Player // May be nil if the demo is partially corrupt (player is 'unconnected', see #156 and #172).
157157
Weapon *common.Equipment
158158
}
159159

160160
// WeaponReload signals that a player started to reload his weapon.
161161
type WeaponReload struct {
162-
Player *common.Player
162+
Player *common.Player // May be nil if the demo is partially corrupt (player is 'unconnected', see #156 and #172).
163163
}
164164

165165
// GrenadeEventIf is the interface for all GrenadeEvents (except GrenadeProjectile* events).
@@ -174,7 +174,7 @@ type GrenadeEvent struct {
174174
GrenadeType common.EquipmentElement
175175
Grenade *common.Equipment // Maybe nil for InfernoStart & InfernoExpired since we don't know the thrower (at least in old demos)
176176
Position r3.Vector
177-
Thrower *common.Player
177+
Thrower *common.Player // May be nil if the demo is partially corrupt (player is 'unconnected', see #156 and #172).
178178
GrenadeEntityID int
179179
}
180180

@@ -249,8 +249,8 @@ type GrenadeProjectileDestroy struct {
249249

250250
// PlayerFlashed signals that a player was flashed.
251251
type PlayerFlashed struct {
252-
Player *common.Player
253-
Attacker *common.Player
252+
Player *common.Player // May be nil if the demo is partially corrupt (player is 'unconnected', see #156 and #172).
253+
Attacker *common.Player // May be nil if the demo is partially corrupt (player is 'unconnected', see #156 and #172).
254254
Projectile *common.GrenadeProjectile
255255
}
256256

@@ -358,8 +358,8 @@ const (
358358

359359
// PlayerHurt signals that a player has been damaged.
360360
type PlayerHurt struct {
361-
Player *common.Player
362-
Attacker *common.Player // May be nil if the player is taking world damage (e.g. fall damage).
361+
Player *common.Player // May be nil if the demo is partially corrupt (player is 'unconnected', see #156 and #172).
362+
Attacker *common.Player // May be nil if the player is taking world damage (e.g. fall damage) or if the demo is partially corrupt (player is 'unconnected', see #156 and #172).
363363
Health int
364364
Armor int
365365
Weapon *common.Equipment // May be EqUnknown for world-damage (falling / bomb).

0 commit comments

Comments
 (0)