-#include <stdlib.h>
+#include "keybindings.h"
#include <stdint.h>
+#include <stdlib.h>
#include <ncurses.h>
#include <string.h>
#include "windows.h"
-#include "roguelike.h"
-#include "keybindings.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;