diff --git a/rust/src/game_manager.rs b/rust/src/game_manager.rs index 8cd74e3..8605403 100644 --- a/rust/src/game_manager.rs +++ b/rust/src/game_manager.rs @@ -785,12 +785,18 @@ impl Game { character.queue_free(); } - let character = map.bind_mut().spawn_player( + let mut character = map.bind_mut().spawn_player( player.id(), player.data.team, player.id() == self.self_id.unwrap_or(0), Some(transform), ); + if let Some(character) = &mut character { + character + .dyn_bind_mut() + .swap_weapon(player.last_held_weapon, true); + } + player.character = character; } }