diff options
Diffstat (limited to 'pixel-client/src/menu/main.rs')
| -rw-r--r-- | pixel-client/src/menu/main.rs | 13 | 
1 files changed, 12 insertions, 1 deletions
| diff --git a/pixel-client/src/menu/main.rs b/pixel-client/src/menu/main.rs index f5ea5cd6..5c515169 100644 --- a/pixel-client/src/menu/main.rs +++ b/pixel-client/src/menu/main.rs @@ -15,7 +15,7 @@      along with this program.  If not, see <https://www.gnu.org/licenses/>.  */ -use super::{background::MenuBackground, settings::SettingsMenu}; +use super::{background::MenuBackground, credits::CreditsMenu, settings::SettingsMenu};  use crate::{      game::Game,      network::Network, @@ -36,6 +36,7 @@ pub struct MainMenu {      server_address: String,      next_state: Option<Box<State>>,      settings: Option<SettingsMenu>, +    credits: Option<CreditsMenu>,  }  impl MainMenu { @@ -47,6 +48,7 @@ impl MainMenu {              ui_state: UiState::default(),              next_state: None,              settings: None, +            credits: None,          }      }      pub fn tick( @@ -74,6 +76,12 @@ impl MainMenu {                  }                  return;              } +            if let Some(credits) = &mut self.credits { +                if credits.draw(ui) { +                    self.credits = None; +                } +                return; +            }              if ui.button(80., "Join") {                  self.next_state = Some(Box::new(State::Ingame(Box::new(Game::new(                      Network::connect(&self.server_address).unwrap(), @@ -84,6 +92,9 @@ impl MainMenu {              if ui.button(80., "Settings") {                  self.settings = Some(SettingsMenu::default())              } +            if ui.button(80., "Credits") { +                self.credits = Some(CreditsMenu::default()) +            }              if ui.button(80., "Quit") {                  self.next_state = Some(Box::new(State::Quit));              } | 
