From fb6ca2a4b9d78dd80dbdf37b2926d9ede4108e8b Mon Sep 17 00:00:00 2001 From: metamuffin Date: Wed, 18 Sep 2024 15:42:19 +0200 Subject: translate server messages --- server/src/server.rs | 38 +++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 19 deletions(-) (limited to 'server/src/server.rs') diff --git a/server/src/server.rs b/server/src/server.rs index 848e2bb4..c9961412 100644 --- a/server/src/server.rs +++ b/server/src/server.rs @@ -20,9 +20,9 @@ use crate::{ entity::{Entities, EntityContext}, interaction::{interact, tick_slot}, scoreboard::ScoreboardStore, - ConnectionID, + tre, ConnectionID, TrError, }; -use anyhow::{anyhow, bail, Context, Result}; +use anyhow::{Context, Result}; use hurrycurry_client_lib::{Game, Involvement, Item, Player, Tile}; use hurrycurry_protocol::{ glam::{IVec2, Vec2}, @@ -341,7 +341,11 @@ impl Server { self.entities = entities; } - pub fn packet_in(&mut self, packet: PacketS, replies: &mut Vec) -> Result<()> { + pub fn packet_in( + &mut self, + packet: PacketS, + replies: &mut Vec, + ) -> Result<(), TrError> { match packet { PacketS::Join { name, @@ -362,7 +366,7 @@ impl Server { .game .players .remove(&player) - .ok_or(anyhow!("player does not exist"))?; + .ok_or(tre!("s.error.no_player"))?; self.game.players_spatial_index.remove_entry(player); @@ -394,7 +398,7 @@ impl Server { .game .players .get_mut(&player) - .ok_or(anyhow!("player does not exist"))?; + .ok_or(tre!("s.error.no_player"))?; pd.movement.input(direction, boost); @@ -437,25 +441,25 @@ impl Server { .game .players .get_mut(&pid) - .ok_or(anyhow!("player does not exist"))?; + .ok_or(tre!("s.error.no_player"))?; let (pos, edge) = match (pos, player.interacting) { (None, None) => return Ok(()), // this is silent because of auto release (None, Some(pos)) => (pos, false), (Some(pos), None) => (pos, true), - (Some(_), Some(_)) => bail!("already interacting"), + (Some(_), Some(_)) => return Err(tre!("s.error.already_interacting")), }; let entpos = pos.as_vec2() + Vec2::splat(0.5); if edge && entpos.distance(player.movement.position) > 2. { - bail!("interacting too far from player"); + return Err(tre!("s.error.interacting_too_far")); } let tile = self .game .tiles .get_mut(&pos) - .ok_or(anyhow!("tile does not exist"))?; + .ok_or(tre!("s.error.no_tile"))?; // No going back from here on @@ -476,10 +480,10 @@ impl Server { .game .players .get_many_mut([&pid, &base_pid]) - .ok_or(anyhow!("Interacting with yourself. This is impossible."))?; + .ok_or(tre!("s.error.self_interact"))?; if this.character < 0 || other.character < 0 { - bail!("You shall not interact with customers.") + return Err(tre!("s.error.customer_interact")); } interact( @@ -501,7 +505,7 @@ impl Server { .game .players .get_mut(&pid) - .ok_or(anyhow!("The player does not exist"))?; + .ok_or(tre!("s.error.no_player"))?; interact( &self.game.data, @@ -548,11 +552,7 @@ impl Server { }) } PacketS::ReplaceHand { item, player } => { - let pdata = self - .game - .players - .get_mut(&player) - .ok_or(anyhow!("The player does not exist"))?; + let pdata = self.game.players.get_mut(&player).ok_or(tre!(""))?; pdata.item = item.map(|i| Item { kind: i, active: None, @@ -568,7 +568,7 @@ impl Server { self.game.score.points += score.points; self.score_changed = true; } - PacketS::ReplayTick { .. } => bail!("Packet not supported in this session"), + PacketS::ReplayTick { .. } => return Err(tre!("s.error.packet_not_supported")), } Ok(()) } @@ -681,7 +681,7 @@ impl Server { while let Some(p) = self.packet_loopback.pop_front() { if let Err(e) = self.packet_in(p, &mut vec![]) { - warn!("Internal packet errored: {e}"); + warn!("Internal packet errored: {e:?}"); } } -- cgit v1.2.3-70-g09d2