From 5f508eee121fc8ba74a37480ccbc803b51496d7f Mon Sep 17 00:00:00 2001 From: SimonFJ20 Date: Mon, 23 Jan 2023 01:01:58 +0100 Subject: [PATCH] fix quit event to exit game loop --- src/main.rs | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/src/main.rs b/src/main.rs index ffd0861..7b2b527 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,6 +1,8 @@ use std::time::Duration; -use sdl2::{event::Event, keyboard::Keycode, pixels::Color, rect::Rect, render::Canvas, video::Window}; +use sdl2::{ + event::Event, keyboard::Keycode, pixels::Color, rect::Rect, render::Canvas, video::Window, +}; mod bong; @@ -16,12 +18,11 @@ impl Element { Element::Rectangle(color) => { canvas.set_draw_color(*color); let _ = canvas.fill_rect(Rect::new(x, y, 50, 50)); - }, + } } } } - fn main() { let sdl_context = sdl2::init().unwrap(); let video_subsystem = sdl_context.video().unwrap(); @@ -38,8 +39,7 @@ fn main() { canvas.clear(); canvas.present(); let mut event_pump = sdl_context.event_pump().unwrap(); - loop { - + 'game_loop: loop { canvas.set_draw_color(Color::RGB(170, 200, 255)); canvas.clear(); for event in event_pump.poll_iter() { @@ -48,16 +48,19 @@ fn main() { | Event::KeyDown { keycode: Some(Keycode::Escape), .. - } => break, + } => break 'game_loop, _ => {} } } // The rest of the game loop goes here... - let dom = Element::Div(vec![Element::Rectangle(Color::RGB(1, 238, 34)), Element::Rectangle(Color::RGB(123, 123, 123))]); - + let dom = Element::Div(vec![ + Element::Rectangle(Color::RGB(1, 238, 34)), + Element::Rectangle(Color::RGB(123, 123, 123)), + ]); + canvas.set_draw_color(Color::RGB(255, 0, 0)); let _ = canvas.fill_rect(Rect::new(0, 0, 50, 50)); - + canvas.present(); ::std::thread::sleep(Duration::new(0, 1_000_000_000u32 / 60)); }