summaryrefslogtreecommitdiff
path: root/server/src/game.rs
diff options
context:
space:
mode:
Diffstat (limited to 'server/src/game.rs')
-rw-r--r--server/src/game.rs17
1 files changed, 9 insertions, 8 deletions
diff --git a/server/src/game.rs b/server/src/game.rs
index b38d3ace..c240ea13 100644
--- a/server/src/game.rs
+++ b/server/src/game.rs
@@ -6,7 +6,7 @@ use crate::{
};
use anyhow::{anyhow, bail, Result};
use glam::{IVec2, Vec2};
-use log::{info, warn};
+use log::info;
use std::{
collections::{HashMap, VecDeque},
ops::Deref,
@@ -187,21 +187,22 @@ impl Game {
.interacting
.map(|p| (p.as_vec2() + Vec2::splat(0.5)).distance(player.position))
.unwrap_or_default();
- if speed < PLAYER_SPEED_LIMIT && dist < 1. && interact_dist < 2. {
+ let movement_ok = speed < PLAYER_SPEED_LIMIT && dist < 1. && interact_dist < 2.;
+ if movement_ok {
player.position = pos;
player.last_position_ts = Instant::now();
- } else {
- warn!(
- "{:?} moved to quickly. speed={speed:.02} dist={dist:.02}",
- player.name
- )
}
-
self.packet_out.push_back(PacketC::Position {
player: pid,
pos: player.position,
rot,
});
+ if !movement_ok {
+ bail!(
+ "{:?} moved to quickly. speed={speed:.02} dist={dist:.02}",
+ player.name
+ )
+ }
}
PacketS::Collide { player, force } => {
self.packet_out