From e7779d078e0a4920488e1df216aeb6287b2428c7 Mon Sep 17 00:00:00 2001 From: "1992414357@qq.com" <1992414357@qq.com> Date: Sun, 22 Jun 2025 02:48:50 +0800 Subject: Add some trace! macros to game_runtime.rs, controller_runtime.rs --- core/src/data/controller/controller_runtime.rs | 13 ++++++++++++- core/src/data/game/game_runtime.rs | 16 +++++++++++++++- 2 files changed, 27 insertions(+), 2 deletions(-) (limited to 'core') diff --git a/core/src/data/controller/controller_runtime.rs b/core/src/data/controller/controller_runtime.rs index 9030fb1..fdcff8c 100644 --- a/core/src/data/controller/controller_runtime.rs +++ b/core/src/data/controller/controller_runtime.rs @@ -49,26 +49,37 @@ impl ControllerRuntime { } pub fn press_button(&mut self, key: u8) { + trace!("[Controller Runtime] Pressed button {}.", key); self.send_message(ControlMessage::Pressed(key)); } pub fn release_button(&mut self, key: u8) { + trace!("[Controller Runtime] Released button {}.", key); self.send_message(ControlMessage::Released(key)); } pub fn change_axis(&mut self, key: u8, ax_val: f64) { + trace!("[Controller Runtime] Change axis ax_{} to ({}).", key, ax_val); self.send_message(ControlMessage::Axis(key, ax_val)); } pub fn change_direction(&mut self, key: u8, x: f64, y: f64) { + trace!("[Controller Runtime] Change direction dir_{} to ({}, {}).", key, x, y); self.send_message(ControlMessage::Dir(key, (x, y))); } pub fn pop(&mut self) -> Option { - self.receive(0, self.service_type.clone()) + let result = self.receive(0, self.service_type.clone()); + if result.is_none() { + trace!("[Controller Runtime] Pop message failed."); + } else { + trace!("[Controller Runtime] Pop message."); + } + result } pub fn send_message (&mut self, msg: ControlMessage) { + trace!("[Controller Runtime] Message {:?} sent.", &msg); let service = self.service_type.clone(); self.send(msg, 0, service); } diff --git a/core/src/data/game/game_runtime.rs b/core/src/data/game/game_runtime.rs index 7ce1991..71f6160 100644 --- a/core/src/data/game/game_runtime.rs +++ b/core/src/data/game/game_runtime.rs @@ -85,29 +85,42 @@ impl GameRuntime { pub fn let_account_exit(&mut self, account: &Account, reason: ExitReason, service_type: ServiceType) { // Send a leave message to the pad_client and wait for it to actively disconnect if self.data.is_account_online(account) { + trace!("[Game Runtime] Let account \"{}\" exited.", account.id); self.send((account.clone(), LetExit(reason)), account.clone(), service_type); + } else { + trace!("[Game Runtime] Let account \"{}\" exit failed: Account not online!", account.id); } } pub fn kick_player(&mut self, player: &Player, service_type: ServiceType) { // Send a leave message to the pad_client and wait for it to actively disconnect if self.data.is_account_online(&player.account) { + trace!("[Game Runtime] Player \"{}\" kicked!", player.account.id); self.send((player.account.clone(), LetExit(YouAreKicked)), player.account.clone(), service_type); + } else { + trace!("[Game Runtime] Kick player \"{}\" failed: Account not online!", player.account.id); } } pub fn ban_player(&mut self, player: &Player, service_type: ServiceType) { if self.data.is_account_online(&player.account) { + trace!("[Game Runtime] Player \"{}\" Banned!", player.account.id); self.send((player.account.clone(), LetExit(YouAreBanned)), player.account.clone(), service_type); entry_mutex!(self.data.players_banned, |guard| { guard.insert(player.account.clone(), player.clone()); }); + } else { + trace!("[Game Runtime] Ban player \"{}\" failed: Account not online!", player.account.id); } } pub fn pardon_player(&mut self, player: &Player) { entry_mutex!(self.data.players_banned, |guard| { - guard.remove(&player.account); + if guard.remove(&player.account).is_some() { + trace!("[Game Runtime] Player \"{}\" pardoned!", player.account.id); + } else { + trace!("[Game Runtime] Pardon player \"{}\" failed: Account is not banned!", player.account.id); + } }); } @@ -142,6 +155,7 @@ impl GameRuntime { /// Send a GameMessage to account pub fn send_game_message(&mut self, account: &Account, message: GameMessage, service_type: ServiceType) { + trace!("[Game Runtime] Message {:?} sent to \"{}\" ({:?})", &message, account.id, &service_type); self.send((account.clone(), message), account.clone(), service_type); } -- cgit