From 7a62b8e86bc52cdac42c2ad1a5f79766b7bed8f9 Mon Sep 17 00:00:00 2001 From: alf9310 Date: Tue, 7 Oct 2025 12:35:45 -0400 Subject: Stubbed out some draw functions --- game/src/main.rs | 5 +++++ graphics/src/lib.rs | 22 +++++++++++++++++++++- 2 files changed, 26 insertions(+), 1 deletion(-) diff --git a/game/src/main.rs b/game/src/main.rs index fbb4ad1..355741b 100644 --- a/game/src/main.rs +++ b/game/src/main.rs @@ -3,8 +3,13 @@ use graphics::*; fn main() { let mut window = Window::new(720, 480, "game"); + // Initial game state let dungeon = Dungeon::default(); + + // Main game loop while window.is_open() { + // TODO update game state + // Draw a single frame window.draw(&dungeon); } } diff --git a/graphics/src/lib.rs b/graphics/src/lib.rs index bba46c2..4187e6b 100644 --- a/graphics/src/lib.rs +++ b/graphics/src/lib.rs @@ -9,12 +9,14 @@ impl Window { /// Instantiates a new window provided with the default /// window `width`, `height`, and `title`. pub fn new(width: i32, height: i32, title: &str) -> Self { - let (handle, thread) = raylib::init() + let (mut handle, thread) = raylib::init() .size(width, height) .title(title) .resizable() .log_level(TraceLogLevel::LOG_WARNING) .build(); + // Set the target FPS (TODO: modify based on target system) + handle.set_target_fps(60); Self { handle, thread } } @@ -28,6 +30,24 @@ impl Window { pub fn draw(&mut self, _dungeon: &Dungeon) { let mut draw = self.handle.begin_drawing(&self.thread); + // Clear the background to black + draw.clear_background(Color::BLACK); + draw.draw_text("test", 10, 10, 20, Color::GREEN); } + + /// Draw game over screen + pub fn game_over(&mut self) { + !unimplemented!() + } + + /// Draw player sprites + pub fn draw_player(&mut self, _dungeon: &Dungeon) { + !unimplemented!() + } + + /// Draw dungeon tiles + pub fn draw_tiles(&mut self, _dungeon: &Dungeon) { + !unimplemented!() + } } -- cgit v1.2.3-freya