From 1061ae6ce0379823c0705b519014f72429b9a864 Mon Sep 17 00:00:00 2001 From: CrispyPin Date: Sat, 14 Dec 2024 23:51:48 +0100 Subject: [PATCH] replace raylibs grid rendering and decrease grid contrast --- src/editor.rs | 25 +++++++++++-------------- src/theme.rs | 3 +++ 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/src/editor.rs b/src/editor.rs index e1877b3..8fbbd59 100644 --- a/src/editor.rs +++ b/src/editor.rs @@ -444,23 +444,20 @@ impl Editor { } pub fn draw(&mut self, d: &mut RaylibDrawHandle, textures: &Textures) { - d.clear_background(gray(48)); + d.clear_background(BG_WORLD); - if self.draw_overlay && self.zoom >= 1. { - let tile_size = (TILE_TEXTURE_SIZE * self.zoom) as f32; + if self.draw_overlay && self.zoom >= 0.5 { + let tile_size = TILE_TEXTURE_SIZE * self.zoom; let grid_spill_x = (self.view_offset.x).rem(tile_size) - tile_size; let grid_spill_y = (self.view_offset.y).rem(tile_size) - tile_size; - d.gui_grid( - Rectangle::new( - grid_spill_x, - grid_spill_y, - d.get_screen_width() as f32 * 2., - d.get_screen_height() as f32 * 2., - ), - None, - tile_size, - 1, - ); + for y in 0..=(d.get_screen_height() / tile_size as i32) { + let y = y * tile_size as i32 + grid_spill_y as i32; + d.draw_line(0, y, d.get_screen_width(), y, FG_GRID); + } + for x in 0..=(d.get_screen_width() / tile_size as i32) { + let x = x * tile_size as i32 + grid_spill_x as i32; + d.draw_line(x, 0, x, d.get_screen_height(), FG_GRID); + } } self.draw_board(d, textures); diff --git a/src/theme.rs b/src/theme.rs index 6d9cdc8..fd2875c 100644 --- a/src/theme.rs +++ b/src/theme.rs @@ -1,5 +1,8 @@ use raylib::prelude::*; +pub const BG_WORLD: Color = gray(48); +pub const FG_GRID: Color = gray(64); + pub const BG_DARK: Color = gray(32); pub const BG_MEDIUM: Color = gray(48); pub const BG_LIGHT: Color = gray(64);