Skip to content

Commit 1dbe417

Browse files
committed
fix: accesing disposed player [release] v1.0.1
1 parent 14c931a commit 1dbe417

1 file changed

Lines changed: 15 additions & 1 deletion

File tree

src/DeadShowImage/Events.cs

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,10 @@ private HookResult OnRoundPrestart(EventRoundPrestart @event)
3737

3838
foreach (var player in deadPlayers)
3939
{
40-
if (player.IsFakeClient || !player.IsValid)
40+
if (player is null)
41+
continue;
42+
43+
if (player.IsFakeClient is true || player.IsValid is false)
4144
{
4245
deadPlayers.Remove(player);
4346
continue;
@@ -52,4 +55,15 @@ private HookResult OnRoundPrestart(EventRoundPrestart @event)
5255

5356
return HookResult.Continue;
5457
}
58+
59+
[GameEventHandler(HookMode.Pre)]
60+
private HookResult OnPlayerDisconnect(EventPlayerDisconnect @event)
61+
{
62+
var player = @event.UserIdPlayer;
63+
if (player is null || !player.IsValid)
64+
return HookResult.Continue;
65+
66+
deadPlayers.Remove(player);
67+
return HookResult.Continue;
68+
}
5569
}

0 commit comments

Comments
 (0)