diff --git a/rc_multiplayer/src/matches/generic.rs b/rc_multiplayer/src/matches/generic.rs index e939e47..dfda48b 100644 --- a/rc_multiplayer/src/matches/generic.rs +++ b/rc_multiplayer/src/matches/generic.rs @@ -715,7 +715,7 @@ impl GenericGamemodeEngine { log::warn!("Got RequestLoadingSync after user {} was already in/past WaitingForSync stage", user_id); continue; } - log::info!("User {} is awaiting sync", user_id); + log::info!("User {} (player {}) is awaiting sync", user_id, player_id); user_desc.state.mode.store(ConnectionMode::WaitingForSync.to_u8(), std::sync::atomic::Ordering::Relaxed); ready_count += 1; } else if matches!(ConnectionMode::from_u8(user_desc.state.mode.load(std::sync::atomic::Ordering::Relaxed)), ConnectionMode::WaitingForSync) { diff --git a/rc_multiplayer/src/matches/modes/battle_arena.rs b/rc_multiplayer/src/matches/modes/battle_arena.rs index 903f9a5..77dc0e6 100644 --- a/rc_multiplayer/src/matches/modes/battle_arena.rs +++ b/rc_multiplayer/src/matches/modes/battle_arena.rs @@ -372,9 +372,15 @@ impl PointTracker { lost_lasts.insert(point_owner as u8); } // in case 2+ points are captured in the same tick - *owned_points.get_mut(&(new_team as u8)).unwrap() += 1; + if let Some(new_team_owned_points) = owned_points.get_mut(&(new_team as u8)) { + *new_team_owned_points += 1; + } else { + owned_points.insert(new_team as u8, 1); + } if point_owner >= 0 { - *owned_points.get_mut(&(point_owner as u8)).unwrap() -= 1; + if let Some(old_owner_owned_points) = owned_points.get_mut(&(point_owner as u8)) { + *old_owner_owned_points -= 1; + } } generic.broadcast( rlnl::event_code::NetworkEvent::CapturePointNotification,