From 4cf532da40bf2ba505bd460dda8c4cf06286fa0d Mon Sep 17 00:00:00 2001
From: _N3m0 <n3m0o7@hotmail.com>
Date: Fri, 15 Mar 2024 11:30:53 +0100
Subject: [PATCH] ptit refacto

---
 main.c | 41 +++++++----------------------------------
 1 file changed, 7 insertions(+), 34 deletions(-)

diff --git a/main.c b/main.c
index ae6f367..18c9e26 100644
--- a/main.c
+++ b/main.c
@@ -20,17 +20,10 @@ typedef enum GameState {
 
 GameState game_state = PLAYING;
 
-#if 1
 int game_cap = 30*16;
 char game[30][16] = {0};
 char discover[30][16] = {0};
 char zero[30][16] = {0};
-#else
-int game_cap = 30*16;
-char game[16][30] = {0};
-char discover[16][30] = {0};
-char zero[16][30] = {0};
-#endif
 
 // I confused myself with game type, mode and diff, but it all mean the same
 // TODO: refactor it
@@ -136,7 +129,7 @@ int count_bomb(int x, int y)
         if (x+i < 0 || x+i >= game_size.x)
             continue;
         for (int j=-1; j<=1; j++) {
-            if (y+j < 0 || y+j >= game_size.y)
+            if (y+j < 0 || y+j > game_size.y)
                 continue;
             if (i == 0 && j == 0)
                 continue;
@@ -196,23 +189,6 @@ void fill_game(void)
     }
 }
 
-void discover_empty_cell(int x, int y)
-{
-    int count = 0;
-    for (int i=-1; i<=1; i++) {
-        if (x+i < 0 || x+i >= game_size.x)
-            continue;
-        for (int j=-1; j<=1; j++) {
-            if (y+j < 0 || y+j >= game_size.y)
-                continue;
-            if (game[y+j][x+i] == '0' && discover[y+j][x+i])
-                count++;
-        }
-    }
-    if (count > 0)
-        discover[y][x] = 1;
-}
-
 void zero_click(int x, int y)
 {
     if (x < 0 || x >= game_size.x ||
@@ -332,7 +308,6 @@ int main(void)
                 .r = 0x8E, .g = 0x8E, .b = 0x8E, .a = 255
             });
 
-
             if (IsKeyPressed(KEY_A)) {
                 CloseWindow();
                 exit(0);
@@ -429,8 +404,8 @@ int main(void)
                 WHITE
             );
 
-            for (int x=0; x<game_size.x; x++) {
-                for (int y=0; y<game_size.y; y++) {
+            for (int y=0; y<game_size.y; y++) {
+                for (int x=0; x<game_size.x; x++) {
                     Texture *tex;
                     if (discover[y][x]) {
                         switch (game[y][x]) {
@@ -461,14 +436,12 @@ int main(void)
 
             int mouse_x = GetMouseX();
             int mouse_y = GetMouseY();
-            int grid_x = (int) grid.x;
-            int grid_y = (int) grid.y;
             int mouse_in_grid = 0;
             int mouse_in_menu = 0;
 
             if (IsMouseButtonPressed(MOUSE_BUTTON_LEFT)) {
-                if (grid_x < mouse_x && mouse_x < grid_x + grid.width &&
-                    grid_y < mouse_y && mouse_y < grid_y + grid.height)
+                if (grid.x < mouse_x && mouse_x < grid.x + grid.width &&
+                    grid.y < mouse_y && mouse_y < grid.y + grid.height)
                 {
                     mouse_in_grid = 1;
                 } else if (0 < mouse_x && mouse_x < menu.width &&
@@ -479,8 +452,8 @@ int main(void)
             }
 
             if (mouse_in_grid && game_state == PLAYING) {
-                mouse_x = ((float)(mouse_x - grid_x) / grid.width) * game_size.x;
-                mouse_y = ((float)(mouse_y - grid_y) / grid.height) * game_size.y;
+                mouse_x = ((mouse_x - grid.x) / grid.width) * game_size.x;
+                mouse_y = ((mouse_y - grid.y) / grid.height) * game_size.y;
 
                 discover[mouse_y][mouse_x] = 1;