From ac942584737e5af5fbac0aa57dbfa8998a2bf4f9 Mon Sep 17 00:00:00 2001
From: hozlucas28
Date: Sun, 20 Oct 2024 20:04:47 -0300
Subject: [PATCH 1/6] fix: move `setDashboardFromFile` function from `libs` to
`libs/game`
---
libs/game/methods.c | 98 +++++++++++++++++++++++++++++++++++++++++
libs/game/methods.h | 16 +++++++
libs/utilities.c | 103 +-------------------------------------------
libs/utilities.h | 16 -------
4 files changed, 115 insertions(+), 118 deletions(-)
diff --git a/libs/game/methods.c b/libs/game/methods.c
index 5c93738..dd5bcf8 100644
--- a/libs/game/methods.c
+++ b/libs/game/methods.c
@@ -3,6 +3,7 @@
#include
#include
+#include
#include "../patterns/main.h"
#include "../utilities.h"
@@ -203,6 +204,103 @@ void setDashboardCenter(TGame* pGame) {
pGame->center[1] = col;
}
+int setDashboardFromFile(const char* filePath, TGame* pGame, const int minRows, const int minCols) {
+ FILE* pf;
+ TPattern pattern;
+
+ char* line;
+ const size_t lineLength = 100;
+
+ char* row;
+ char* col;
+ char* sep;
+
+ int rowInt;
+ int colInt;
+
+ int rows = minRows;
+ int cols = minCols;
+
+ int patternRows = 0;
+ int patternCols = 0;
+
+ pf = fopen(filePath, "rt");
+ if (pf == NULL) return 0;
+
+ line = malloc(sizeof(char) * (lineLength + 1));
+ if (line == NULL) {
+ fclose(pf);
+ return 0;
+ };
+ *(line + lineLength) = '\0';
+
+ fgets(line, lineLength, pf);
+
+ while (fgets(line, lineLength, pf)) {
+ row = line;
+ sep = strrchr(line, ';');
+ if (sep == NULL) continue;
+
+ *sep = '\0';
+ col = sep + 1;
+
+ sscanf(row, "%d", &rowInt);
+ sscanf(col, "%d", &colInt);
+
+ patternRows = MAX(rowInt, patternRows);
+ patternCols = MAX(colInt, patternCols);
+ }
+
+ rows = MAX(patternRows, rows);
+ cols = MAX(patternCols, cols);
+
+ pGame->dashboard = new2DArray(rows, cols);
+ pGame->rows = rows;
+ pGame->cols = cols;
+ pGame->cellsAlive = 0;
+ pGame->generation = 0;
+
+ setDashboardCenter(pGame);
+
+ fillDashboard(pGame, DEAD_CELL);
+
+ pattern.arr = new2DArray(patternRows, patternCols);
+ pattern.rows = patternRows;
+ pattern.cols = patternCols;
+
+ setPatternCenter(&pattern);
+
+ fillPattern(&pattern, DEAD_CELL);
+
+ rewind(pf);
+ fgets(line, lineLength, pf);
+
+ while (fgets(line, lineLength, pf)) {
+ row = line;
+ sep = strrchr(line, ';');
+ if (sep == NULL) continue;
+
+ *sep = '\0';
+ col = sep + 1;
+
+ sscanf(row, "%d", &rowInt);
+ sscanf(col, "%d", &colInt);
+
+ pattern.arr[rowInt - 1][colInt - 1] = ALIVE_CELL;
+ pGame->cellsAlive++;
+ }
+
+ pGame->cellsDead = (cols * rows) - pGame->cellsAlive;
+
+ drawPatternInDashboard(pGame, &pattern);
+ destroy2DArray(pattern.arr, pattern.rows, pattern.cols);
+
+ fclose(pf);
+ free(line);
+
+ return 1;
+}
+
void startGameByConsole(TGame* pGame, const int maxGeneration, const int delayBetweenGenerations) {
size_t generation = 0;
unsigned char isToInfinity = maxGeneration == INT_MAX;
diff --git a/libs/game/methods.h b/libs/game/methods.h
index 8734d56..2d7be80 100644
--- a/libs/game/methods.h
+++ b/libs/game/methods.h
@@ -99,6 +99,22 @@ void printGameByConsole(TGame* pGame);
*/
void setDashboardCenter(TGame* pGame);
+/**
+ * @brief Sets a Conway's Game of Life dashboard based on a file.
+ *
+ * This function reads a file content and updates a Conway's Game of Life structure with the parsed
+ * content to set the dashboard. Also, it modifies the `rows`, `cols`, `center`, `cellsAlive`, and
+ * `cellsDead` field of the Conway's Game of Life structure.
+ *
+ * @param filePath File path with the content to be parsed.
+ * @param pGame Pointer to the Conway's Game of Life structure.
+ * @param minRows Minimum number of rows for the dashboard.
+ * @param minCols Minimum number of columns for the dashboard.
+ *
+ * @return Returns `1` on success, otherwise returns `0`.
+ */
+int setDashboardFromFile(const char* filePath, TGame* pGame, const int minRows, const int minCols);
+
/**
* @brief Starts a Conway's Game of Life game using the console as the output.
*
diff --git a/libs/utilities.c b/libs/utilities.c
index 8919bda..1942f00 100644
--- a/libs/utilities.c
+++ b/libs/utilities.c
@@ -7,9 +7,6 @@
#include
#include
-#include "./macros.h"
-#include "./patterns/main.h"
-
void destroy2DArray(char** arr, const int rows, const int cols) {
size_t i;
@@ -20,103 +17,6 @@ void destroy2DArray(char** arr, const int rows, const int cols) {
free(arr);
}
-int setDashboardFromFile(const char* filePath, TGame* pGame, const int minRows, const int minCols) {
- FILE* pf;
- TPattern pattern;
-
- char* line;
- const size_t lineLength = 100;
-
- char* row;
- char* col;
- char* sep;
-
- int rowInt;
- int colInt;
-
- int rows = minRows;
- int cols = minCols;
-
- int patternRows = 0;
- int patternCols = 0;
-
- pf = fopen(filePath, "rt");
- if (pf == NULL) return 0;
-
- line = malloc(sizeof(char) * (lineLength + 1));
- if (line == NULL) {
- fclose(pf);
- return 0;
- };
- *(line + lineLength) = '\0';
-
- fgets(line, lineLength, pf);
-
- while (fgets(line, lineLength, pf)) {
- row = line;
- sep = strrchr(line, ';');
- if (sep == NULL) continue;
-
- *sep = '\0';
- col = sep + 1;
-
- sscanf(row, "%d", &rowInt);
- sscanf(col, "%d", &colInt);
-
- patternRows = MAX(rowInt, patternRows);
- patternCols = MAX(colInt, patternCols);
- }
-
- rows = MAX(patternRows, rows);
- cols = MAX(patternCols, cols);
-
- pGame->dashboard = new2DArray(rows, cols);
- pGame->rows = rows;
- pGame->cols = cols;
- pGame->cellsAlive = 0;
- pGame->generation = 0;
-
- setDashboardCenter(pGame);
-
- fillDashboard(pGame, DEAD_CELL);
-
- pattern.arr = new2DArray(patternRows, patternCols);
- pattern.rows = patternRows;
- pattern.cols = patternCols;
-
- setPatternCenter(&pattern);
-
- fillPattern(&pattern, DEAD_CELL);
-
- rewind(pf);
- fgets(line, lineLength, pf);
-
- while (fgets(line, lineLength, pf)) {
- row = line;
- sep = strrchr(line, ';');
- if (sep == NULL) continue;
-
- *sep = '\0';
- col = sep + 1;
-
- sscanf(row, "%d", &rowInt);
- sscanf(col, "%d", &colInt);
-
- pattern.arr[rowInt - 1][colInt - 1] = ALIVE_CELL;
- pGame->cellsAlive++;
- }
-
- pGame->cellsDead = (cols * rows) - pGame->cellsAlive;
-
- drawPatternInDashboard(pGame, &pattern);
- destroy2DArray(pattern.arr, pattern.rows, pattern.cols);
-
- fclose(pf);
- free(line);
-
- return 1;
-}
-
char* getUserInputStr(const char* message, const char* onInvalidMessage, const int strLength,
unsigned char (*validator)(const char* userInput)) {
char* userInput = malloc(strLength * sizeof(char));
@@ -175,8 +75,7 @@ char** new2DArray(const int rows, const int cols) {
void sleep(int miliseconds) {
const clock_t startTime = clock();
- while (clock() < (startTime + miliseconds))
- ;
+ while (clock() < (startTime + miliseconds));
}
int strcmpi(const char* str01, const char* str02) {
diff --git a/libs/utilities.h b/libs/utilities.h
index ae8ed73..aae62bc 100644
--- a/libs/utilities.h
+++ b/libs/utilities.h
@@ -24,22 +24,6 @@
*/
void destroy2DArray(char** arr, const int rows, const int cols);
-/**
- * @brief Sets a Conway's Game of Life dashboard based on a file.
- *
- * This function reads a file content and updates a Conway's Game of Life structure with the parsed
- * content to set the dashboard. Also, it modifies the `rows`, `cols`, `center`, `cellsAlive`, and
- * `cellsDead` field of the Conway's Game of Life structure.
- *
- * @param filePath File path with the content to be parsed.
- * @param pGame Pointer to the Conway's Game of Life structure.
- * @param minRows Minimum number of rows for the dashboard.
- * @param minCols Minimum number of columns for the dashboard.
- *
- * @return Returns `1` on success, otherwise returns `0`.
- */
-int setDashboardFromFile(const char* filePath, TGame* pGame, const int minRows, const int minCols);
-
/**
* @brief Gets user input as a string.
*
From 87949cfd748f54659f5aeafd5765c5b1759d5008 Mon Sep 17 00:00:00 2001
From: "github-actions[bot]"
Date: Sun, 20 Oct 2024 23:05:28 +0000
Subject: [PATCH 2/6] ci: format code
---
libs/utilities.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/libs/utilities.c b/libs/utilities.c
index 1942f00..d662b06 100644
--- a/libs/utilities.c
+++ b/libs/utilities.c
@@ -75,7 +75,8 @@ char** new2DArray(const int rows, const int cols) {
void sleep(int miliseconds) {
const clock_t startTime = clock();
- while (clock() < (startTime + miliseconds));
+ while (clock() < (startTime + miliseconds))
+ ;
}
int strcmpi(const char* str01, const char* str02) {
From 55729474577788fd9b03bc6b25cd05bd528701d9 Mon Sep 17 00:00:00 2001
From: hozlucas28
Date: Sun, 20 Oct 2024 22:22:26 -0300
Subject: [PATCH 3/6] feature: prevent dashboard size less than pattern size
---
libs/game/methods.c | 20 ++++++++++++++++++--
libs/game/methods.h | 5 ++++-
2 files changed, 22 insertions(+), 3 deletions(-)
diff --git a/libs/game/methods.c b/libs/game/methods.c
index dd5bcf8..370d2fe 100644
--- a/libs/game/methods.c
+++ b/libs/game/methods.c
@@ -75,8 +75,24 @@ void drawPatternInDashboard(TGame* pGame, TPattern* pPattern) {
size_t pI = 0;
size_t pJ = 0;
- const int startRow = pGame->center[0] - pPattern->center[0];
- const int startCol = pGame->center[1] - pPattern->center[1];
+ int startRow;
+ int startCol;
+
+ if (pPattern->rows > pGame->rows || pPattern->cols > pGame->cols) {
+ destroy2DArray(pGame->dashboard, pGame->rows, pGame->cols);
+
+ pGame->dashboard = new2DArray(pPattern->rows, pPattern->cols);
+ pGame->rows = pPattern->rows;
+ pGame->cols = pPattern->cols;
+ pGame->cellsDead = (pGame->rows * pGame->cols) - pGame->cellsAlive;
+
+ setDashboardCenter(pGame);
+
+ fillDashboard(pGame, DEAD_CELL);
+ }
+
+ startRow = pGame->center[0] - pPattern->center[0];
+ startCol = pGame->center[1] - pPattern->center[1];
for (i = startRow; pI < pPattern->rows; i++) {
if (i < 0) continue;
diff --git a/libs/game/methods.h b/libs/game/methods.h
index 2d7be80..6dbfece 100644
--- a/libs/game/methods.h
+++ b/libs/game/methods.h
@@ -29,7 +29,10 @@ int countAliveNeighbors(TGame* pGame, const int row, const int col, const int ra
* @param pGame Pointer to the Conway's Game of Life structure where the pattern will be drawn.
* @param pattern Pattern to be drawn.
*
- * @warning The pattern must be `glider`, `toad`, `press`, or `glider cannon`.
+ * @warning The pattern must be one of the following: `glider`, `toad`, `beacon`, or `glider
+ * cannon`. If the number of rows or columns of the Conway's Game of Life board is less than the
+ * number of rows or columns of the pattern, the board will be resized to match the pattern's
+ * dimensions.
*/
void drawPattern(TGame* pGame, const char* pattern);
From 4af7760defa9dea6ccdf72cff9ecfa20b539412b Mon Sep 17 00:00:00 2001
From: hozlucas28
Date: Sun, 20 Oct 2024 23:26:09 -0300
Subject: [PATCH 4/6] doc: improve `drawPattern` documentation
---
libs/game/methods.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libs/game/methods.h b/libs/game/methods.h
index 6dbfece..acff2ba 100644
--- a/libs/game/methods.h
+++ b/libs/game/methods.h
@@ -30,7 +30,7 @@ int countAliveNeighbors(TGame* pGame, const int row, const int col, const int ra
* @param pattern Pattern to be drawn.
*
* @warning The pattern must be one of the following: `glider`, `toad`, `beacon`, or `glider
- * cannon`. If the number of rows or columns of the Conway's Game of Life board is less than the
+ * cannon`. If the number of rows or columns of the Conway's Game of Life board are less than the
* number of rows or columns of the pattern, the board will be resized to match the pattern's
* dimensions.
*/
From 499065507d58a9491d68ed5a84fd4c01fde334aa Mon Sep 17 00:00:00 2001
From: hozlucas28
Date: Mon, 21 Oct 2024 00:00:29 -0300
Subject: [PATCH 5/6] doc: add video demonstration hyperlink
---
.github/translations/es/README.md | 2 +-
README.md | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/.github/translations/es/README.md b/.github/translations/es/README.md
index df3d398..3748a82 100644
--- a/.github/translations/es/README.md
+++ b/.github/translations/es/README.md
@@ -31,7 +31,7 @@
- (video demostrativo)
+ (video demostrativo)
## Resumen
diff --git a/README.md b/README.md
index 67217c1..66aa498 100644
--- a/README.md
+++ b/README.md
@@ -31,7 +31,7 @@
- (demonstration video)
+ (demonstration video)
## Summary
From 43cd59de3116d7ef54221f0b594979c1975e56eb Mon Sep 17 00:00:00 2001
From: hozlucas28
Date: Mon, 21 Oct 2024 13:23:04 -0300
Subject: [PATCH 6/6] fix: improve preview image
---
.github/statics/preview.png | Bin 19168 -> 88864 bytes
1 file changed, 0 insertions(+), 0 deletions(-)
diff --git a/.github/statics/preview.png b/.github/statics/preview.png
index 4c1d97bdddba0d955329d15d1ecfabe76f009d0d..d3a0e7297a0cefdfc34a1ea7a017af0d61fe1bd8 100644
GIT binary patch
literal 88864
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