From 859eb3b9d66a6f846063dbda86897d90727ecd1c Mon Sep 17 00:00:00 2001 From: Sara Date: Sun, 14 Sep 2025 22:16:39 +0200 Subject: [PATCH] feat: removed legacy code --- a.out | Bin 25360 -> 0 bytes attrib.c | 53 --------------------------------------------- attrib.h | 11 ---------- compile.sh | 2 -- dice | Bin 29264 -> 0 bytes dice.c | 59 -------------------------------------------------- dice.h | 9 -------- flags.c | 28 ------------------------ flags.h | 12 ---------- futil.c | 32 --------------------------- futil.h | 22 ------------------- interactive.c | 19 ---------------- interactive.h | 6 ----- main.c | 19 ---------------- pc.c | 8 ------- pc.h | 13 ----------- test.csv | 1 - 17 files changed, 294 deletions(-) delete mode 100755 a.out delete mode 100644 attrib.c delete mode 100644 attrib.h delete mode 100755 compile.sh delete mode 100755 dice delete mode 100644 dice.c delete mode 100644 dice.h delete mode 100644 flags.c delete mode 100644 flags.h delete mode 100644 futil.c delete mode 100644 futil.h delete mode 100644 interactive.c delete mode 100644 interactive.h delete mode 100644 main.c delete mode 100644 pc.c delete mode 100644 pc.h delete mode 100644 test.csv diff --git a/a.out b/a.out deleted file mode 100755 index d78206729ebeaa7d311323d1183f056c981bb111..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 25360 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 { - int roll = rolld(d); - total += roll; - if(i!=(void*)0) - *(i++) = roll; - } - return total; -} - -int process_dice_format(const char* format,int* num,int* die) { - int dummy; // dummy int for if either of the out adresses is 0 - if(num==(void*)0)num=&dummy; - if(die==(void*)0)die=&dummy; - char buf[10]; - memset(buf,0,10); // clear buffer - char* bufw=buf; - const char* next=format; - while(*next!='\0') { - if(*next=='d') { // argument is d in d format - if(next==format) // if there is no die count given, assume 1 - *num=1; - else - *num=atoi(buf); // store buffered string as number - memset(buf,0,10); // clear buffer - bufw=buf; // reset buffer walker - next++; // skip - } - *bufw=*next; // buffer next character - bufw++;next++; // increment walker and next character - } - *die=atoi(buf); - return 0; -} - -void roll_and_print(int n, int d) { - int* out_rolls=malloc(sizeof(int)*n); - int result=rollnd(n,d,out_rolls); - printf(" %d (%dd%d) ",result,n,d); - // only print inbetween steps if there are any - if(n>1) { - for(int i=0;i=g_argc)return 0; - const char* arg=g_argv[argind]; - char buf[10]; - memset(buf,0,10); - if(strcmp(arg,"-i")==0) { - f_interactive=1; - return process_arg(argind+1); - } else if(strcmp(arg, "-a")==0) { - load_attrib_file(g_argv[argind+1]); - return process_arg(argind+2); - } else if(isdigit(arg[0])||arg[0]=='d') { - process_dice_format(arg,&f_num,&f_die); - return process_arg(argind+1); - } - return 0; -} diff --git a/flags.h b/flags.h deleted file mode 100644 index eec8ade..0000000 --- a/flags.h +++ /dev/null @@ -1,12 +0,0 @@ -#ifndef _flags_h -#define _flags_h - -extern int f_interactive; -extern int f_num; -extern int f_die; -extern int g_argc; -extern const char** g_argv; - -extern int process_arg(int argind); - -#endif /* _flags_h */ diff --git a/futil.c b/futil.c deleted file mode 100644 index eb69e16..0000000 --- a/futil.c +++ /dev/null @@ -1,32 +0,0 @@ -#include "stdlib.h" -#include "stdio.h" - -long file_len(FILE* file) { - fpos_t pos; - fgetpos(file,&pos); - fseek(file,0,SEEK_END); - long len=ftell(file); - fsetpos(file,&pos); - return len; -} - -long fcountc(FILE* file, char c) { - int i = 0; - long t = 0; - fpos_t strt; - fgetpos(file,&strt); - while((i=fgetc(file))!=EOF) { - if((char)i==c) - ++t; - } - fsetpos(file, &strt); - return t; -} - -int fpeek(FILE* file) { - fpos_t p; - fgetpos(file,&p); - int v = fgetc(file); - fsetpos(file,&p); - return v; -} diff --git a/futil.h b/futil.h deleted file mode 100644 index 5808993..0000000 --- a/futil.h +++ /dev/null @@ -1,22 +0,0 @@ -#ifndef _futils_h -#define _futils_h - -#include "stdio.h" - -/* - * return the length of a text file - */ -long file_len(FILE* file); - -/* - * count the number of occurences of c in file - * starting from the current stream position - */ -long fcountc(FILE* file, char c); - -/* - * peek the next value of file - */ -int fpeek(FILE* file); - -#endif /* _futils_h */ diff --git a/interactive.c b/interactive.c deleted file mode 100644 index 928cab4..0000000 --- a/interactive.c +++ /dev/null @@ -1,19 +0,0 @@ -#include "stdio.h" -#include "dice.h" -#include "string.h" -#include "flags.h" - -int run_interactive() { - int running = 1; - char buf[24]; - while(running) { - printf("> "); - memset(buf,0,10); - scanf("%s",buf); - if(strcmp(buf,"quit")==0||strcmp(buf,"exit")==0||strcmp(buf,"q")==0) return 0; - process_dice_format(buf,&f_num,&f_die); - if(f_num!=0&&f_die!=0||buf[0]=='\0') - roll_and_print(f_num, f_die); - } - return 0; -} diff --git a/interactive.h b/interactive.h deleted file mode 100644 index 2badb87..0000000 --- a/interactive.h +++ /dev/null @@ -1,6 +0,0 @@ -#ifndef _interactive_h -#define _interactive_h - -extern int run_interactive(); - -#endif /* _interactive_h */ diff --git a/main.c b/main.c deleted file mode 100644 index 67a5d61..0000000 --- a/main.c +++ /dev/null @@ -1,19 +0,0 @@ -#include "time.h" -#include "stdlib.h" -#include "dice.h" -#include "flags.h" -#include "interactive.h" - -int main(int argc,const char* argv[]) { - srand(time(NULL)); - g_argv=argv; - g_argc=argc; - process_arg(1); - // if there are valid dice to roll - if(f_die>0&&f_num>0) { - roll_and_print(f_num,f_die); - } - if(f_interactive==1||argc==1) { - return run_interactive(); - } -} diff --git a/pc.c b/pc.c deleted file mode 100644 index d9ca797..0000000 --- a/pc.c +++ /dev/null @@ -1,8 +0,0 @@ -#include "pc.h" -#include "memory.h" - -int new_character(pc_t* pc, const char* name) { - memset(pc,0,sizeof(pc_t)); - strncpy(pc->name,name,64); - return 0; -} diff --git a/pc.h b/pc.h deleted file mode 100644 index 69a9698..0000000 --- a/pc.h +++ /dev/null @@ -1,13 +0,0 @@ -#ifndef _pc_h -#define _pc_h - -typedef struct pc_t { - char name[64]; - int dexterity,strength,constitution,intelligence,wisdom; - const char* spells[64]; - const char* traits[64]; -} pc_t; - -int new_character(pc_t* pc, const char* name); - -#endif /* _pc_h */ diff --git a/test.csv b/test.csv deleted file mode 100644 index 00ad55d..0000000 --- a/test.csv +++ /dev/null @@ -1 +0,0 @@ -firebolt, fireball, mage hand, magic shield