Record jumps
This commit is contained in:
parent
e9343f9f48
commit
a304691d1b
@ -953,6 +953,11 @@ impl Game {
|
||||
|
||||
// Handle a jump, either from the server or from a client
|
||||
pub fn handle_jump(&mut self, player_id: u16) {
|
||||
if let Some(recorder) = &mut self.replay_recorder {
|
||||
recorder
|
||||
.bind_mut()
|
||||
.record_event(ReplayEvent::Jump(player_id));
|
||||
}
|
||||
if player_id != self.self_id.unwrap_or(0) {
|
||||
if let Some(player) = self.find_player_mut(player_id) {
|
||||
player.apply_jump();
|
||||
|
||||
@ -109,6 +109,11 @@ impl INode for ReplayPlayback {
|
||||
}
|
||||
}
|
||||
}
|
||||
ReplayEvent::Jump(player_id) => {
|
||||
if let Some(character) = self.player_characters.get_mut(player_id) {
|
||||
character.bind_mut().jump();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -267,6 +272,7 @@ pub enum ReplayEvent {
|
||||
Death(DamageSource, u16),
|
||||
Shoot(u16, Vector3),
|
||||
Respawn(u16, ReplayPlayerState),
|
||||
Jump(u16),
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Default)]
|
||||
|
||||
Loading…
Reference in New Issue
Block a user