mirror of
https://git.squeakyrat.moe/petratc/
synced 2026-11-05 02:45:43 +01:00
fixed a couple bugs
This commit is contained in:
1 parent
9765de97f1
commit
17881c653f
6 files changed
+65
-15
No files matched your search
+8
-4
@@ -173,7 +173,7 @@ static bignum divmixregbig(bignum a, double regnum){
|
||||
|
||||
static char *bignumprint(bignum b) {
|
||||
//32 bytes is more than enough for 124.24 trillion idk
|
||||
char *nice = malloc(32 * sizeof(char));
|
||||
char *nice = malloc(32 * sizeof(char));
|
||||
if(nice == NULL) return NULL;
|
||||
|
||||
if(b.y >= 0 && b.y < 12) {
|
||||
@@ -181,7 +181,7 @@ static char *bignumprint(bignum b) {
|
||||
} else{
|
||||
snprintf(nice, 32, "%.2lfe3*%d", b.x, b.y);
|
||||
}
|
||||
return nice;
|
||||
return nice;
|
||||
}
|
||||
|
||||
|
||||
@@ -239,8 +239,12 @@ static void drawwin(WINDOW *win, bignum cheeses){
|
||||
|
||||
char *scorestr = bignumprint(cheeses);
|
||||
char scoremsg[64];
|
||||
snprintf(scoremsg, sizeof(scoremsg), "cheese: %s", scorestr);
|
||||
free(scorestr);
|
||||
if(scorestr != NULL) {
|
||||
snprintf(scoremsg, sizeof(scoremsg), "cheese: %s", scorestr);
|
||||
free(scorestr);
|
||||
} else {
|
||||
snprintf(scoremsg, sizeof(scoremsg), "cheese: ERROR");
|
||||
}
|
||||
|
||||
if(mode == layoutwide){
|
||||
mvwprintw(win, 1, scorecol, "%s", scoremsg);
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <unistd.h>
|
||||
#include <time.h>
|
||||
#include <ncurses.h>
|
||||
#include "../rat.h"
|
||||
|
||||
@@ -42,6 +43,7 @@ void gameguess(){
|
||||
int solved = 0;
|
||||
int range = 100;
|
||||
|
||||
srand(time(NULL));
|
||||
int correct = (rand() % (range + 1));
|
||||
|
||||
int history[maxhistory];
|
||||
|
||||
+36
-5
@@ -64,7 +64,15 @@ void lerw() {
|
||||
char *vis = calloc(total, 1); //visited
|
||||
int *px = malloc(total * sizeof(int)); //path x
|
||||
int *py = malloc(total * sizeof(int)); //path y
|
||||
int *ip = malloc(total * sizeof(int)); // index of path
|
||||
int *ip = malloc(total * sizeof(int)); // index of path
|
||||
|
||||
if(vis == NULL || px == NULL || py == NULL || ip == NULL) {
|
||||
free(vis);
|
||||
free(px);
|
||||
free(py);
|
||||
free(ip);
|
||||
return;
|
||||
}
|
||||
vis[0] = 1;
|
||||
grid[1][1] = grid[1][2] = grid[2][1] = grid[2][2] = ' '; //these should be open always
|
||||
int vc = 1;
|
||||
@@ -203,8 +211,20 @@ static void properrestart(cursor *curs, int *W, int *H) {
|
||||
*H = height;
|
||||
|
||||
grid = malloc(*H * sizeof(char *));
|
||||
for (int y = 0; y < *H; y++)
|
||||
if(grid == NULL) {
|
||||
running = 0;
|
||||
return;
|
||||
}
|
||||
for (int y = 0; y < *H; y++) {
|
||||
grid[y] = malloc(*W * sizeof(char));
|
||||
if(grid[y] == NULL) {
|
||||
// Free already allocated rows
|
||||
for(int i = 0; i < y; i++) free(grid[i]);
|
||||
free(grid);
|
||||
running = 0;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
lerw();
|
||||
spawncheeses();
|
||||
@@ -225,9 +245,20 @@ void gamemaze(){
|
||||
int W = width;
|
||||
int H = height;
|
||||
|
||||
grid = malloc(H * sizeof(char *)); //those who allocate memory
|
||||
for (int y = 0; y < H; y++)
|
||||
grid[y] = malloc(W * sizeof(char));
|
||||
grid = malloc(H * sizeof(char *)); //those who allocate memory
|
||||
if(grid == NULL) {
|
||||
stop();
|
||||
return;
|
||||
}
|
||||
for (int y = 0; y < H; y++) {
|
||||
grid[y] = malloc(W * sizeof(char));
|
||||
if(grid[y] == NULL) {
|
||||
for(int i = 0; i < y; i++) free(grid[i]);
|
||||
free(grid);
|
||||
stop();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
lerw();
|
||||
spawncheeses();
|
||||
|
||||
Reference in new issue
Block a user