From bce815d47770fdded8197388b392dcfdeae74fbc Mon Sep 17 00:00:00 2001 From: cool-mist Date: Fri, 16 Jan 2026 18:34:09 +0530 Subject: [PATCH] handle rules menu close properly --- src/game.rs | 27 +++++++++++++++++---------- tools/deploy.sh | 1 + 2 files changed, 18 insertions(+), 10 deletions(-) create mode 100755 tools/deploy.sh diff --git a/src/game.rs b/src/game.rs index 178097f..7937acd 100644 --- a/src/game.rs +++ b/src/game.rs @@ -16,10 +16,10 @@ use texture::PieceTexture; pub mod button; pub mod color; +pub mod constants; pub mod shadow; pub mod sound; pub mod texture; -pub mod constants; pub struct MacroquadRandAdapter; impl RandomRange for MacroquadRandAdapter { @@ -181,13 +181,6 @@ impl Game { if rules_btn_clicked { self.rules = !self.rules; - if self.rules { - self.rules_btn[0].text = "Close".to_string(); - self.rules_btn[0].color = UiColor::Green; - } else { - self.rules_btn[0].text = "Rules".to_string(); - self.rules_btn[0].color = UiColor::Brown; - } } } } @@ -201,8 +194,22 @@ impl Game { } if is_key_released(KeyCode::Escape) { + if self.rules { + Sounds::play(&self.sounds.button); + } + self.rules = false; - return; + } + + if self.rules_btn.get(0).is_some() { + let rules_btn = &mut self.rules_btn[0]; + if self.rules { + rules_btn.text = "Close".to_string(); + rules_btn.color = UiColor::Green; + } else { + rules_btn.text = "Rules".to_string(); + rules_btn.color = UiColor::Brown; + } } if is_key_released(KeyCode::D) { @@ -343,7 +350,7 @@ impl Game { } } - fn draw_buttons(&self) { + fn draw_buttons(&mut self) { for btn in &self.gp_btns { btn.1.draw(); } diff --git a/tools/deploy.sh b/tools/deploy.sh new file mode 100755 index 0000000..363849e --- /dev/null +++ b/tools/deploy.sh @@ -0,0 +1 @@ +cargo build --target wasm32-unknown-unknown --release && scp target/wasm32-unknown-unknown/release/sol_chess.wasm potato@neophyte.me:~/site/games/sol_chess/.