X-Git-Url: https://plomlompom.com/repos/foo.html?a=blobdiff_plain;f=src%2Fkeybindings.c;h=2f27da9d04c256f3359470cead3a2623fe4e4644;hb=f2a7bc28be634fde4dfe4bde4c83395cab9efa91;hp=f9d1b8be60b1a94f179303303afdd334bab25905;hpb=47d7b87570ce3c79d3e0a6b8e765c74d065b6ba5;p=plomrogue
diff --git a/src/keybindings.c b/src/keybindings.c
index f9d1b8b..2f27da9 100644
--- a/src/keybindings.c
+++ b/src/keybindings.c
@@ -4,25 +4,15 @@
#include
#include
#include "windows.h"
-#include "roguelike.h"
+#include "misc.h"
+#include "main.h"
void init_keybindings(struct World * world) {
// Initialize keybindings from file "keybindings".
FILE * file = fopen("keybindings", "r");
- uint16_t lines = 0;
- int c = 0;
- uint16_t linemax = 0;
- uint16_t c_count = 0;
- while (EOF != c) {
- c_count++;
- c = getc(file);
- if ('\n' == c) {
- if (c_count > linemax)
- linemax = c_count + 1;
- c_count = 0;
- lines++; } }
+ uint16_t lines, linemax;
+ textfile_sizes (file, &linemax, &lines);
struct KeyBinding * keybindings = malloc(lines * sizeof(struct KeyBinding));
- fseek(file, 0, SEEK_SET);
char * command = malloc(linemax);
uint16_t commcount = 0;
char * cmdptr;