From 9b905b61488defbf0ad02289324e503acf5104f5 Mon Sep 17 00:00:00 2001 From: LinlyBoi Date: Wed, 10 May 2023 08:14:48 +0300 Subject: [PATCH] I was too tired and put the wrong variables :( --- src/bored/mod.rs | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/src/bored/mod.rs b/src/bored/mod.rs index 10cdbf0..445d7d0 100644 --- a/src/bored/mod.rs +++ b/src/bored/mod.rs @@ -1,3 +1,5 @@ +use std::fmt::{self, Display}; + use raylib::{ prelude::{Color, MouseButton}, RaylibHandle, @@ -59,7 +61,7 @@ pub struct MenuState { pub selection: Selection, pub strategy: Strategy, } -#[derive(Clone)] +#[derive(Clone, Debug)] pub enum Strategy { MiniMax, AlphaBeta, @@ -91,11 +93,11 @@ impl MenuState { } Selection::Cooking => { if rl.is_mouse_button_pressed(MouseButton::MOUSE_LEFT_BUTTON) { - self.difficulty = 3; + self.strategy = Strategy::MiniMax; self.selection = Selection::Done; } if rl.is_mouse_button_pressed(MouseButton::MOUSE_RIGHT_BUTTON) { - self.difficulty = 5; + self.strategy = Strategy::AlphaBeta; self.selection = Selection::Done; } } @@ -115,6 +117,16 @@ pub enum Selection { Cooking, Done, } +impl Display for Strategy { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + let name: String; + match self { + Self::MiniMax => name = String::from("MiniMax"), + Self::AlphaBeta => name = String::from("AlphaBeta"), + }; + write!(f, "{}", name) + } +} fn get_circle_coords(x: i32, y: i32) -> (i32, i32) { let mut returned: (i32, i32) = (0, 0);