diff --git a/rust/src/player.rs b/rust/src/player.rs index 3184b95..155d926 100644 --- a/rust/src/player.rs +++ b/rust/src/player.rs @@ -272,6 +272,8 @@ impl IPlayer for LocalPlayer { } fn kill(&mut self, source: DamageSource) { + self.drop_ball(false); + let (signal, player) = source.into_signal(); self.run_deferred(move |s| s.signals().on_die().emit(signal, player)); if let Some(mut mesh) = self.soldier_mesh.take() { @@ -620,6 +622,8 @@ impl IPlayer for RemotePlayer { } fn kill(&mut self, source: DamageSource) { + self.drop_ball(false); + let (signal, player) = source.into_signal(); self.run_deferred(move |s| s.signals().on_die().emit(signal, player)); if let Some(mut mesh) = self.soldier_mesh.take() {