aboutsummaryrefslogtreecommitdiff
path: root/core/src
diff options
context:
space:
mode:
Diffstat (limited to 'core/src')
-rw-r--r--core/src/data/controller/controller_runtime.rs13
-rw-r--r--core/src/data/game/game_runtime.rs16
2 files changed, 27 insertions, 2 deletions
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<GameMessage> {
- 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);
}