-#include "stdlib.h"
-#include "stdint.h"
+#include "actors.h"
+#include <stdlib.h>
+#include <stdio.h>
+#include <stdint.h>
#include "yx_uint16.h"
#include "roguelike.h"
-#include "actors.h"
extern char is_passable (struct Map * map, uint16_t y, uint16_t x) {
// Check if coordinate on (or beyond) map is accessible to actor movement.
#ifndef ACTORS_H
#define ACTORS_H
+#include <stdint.h>
+#include "yx_uint16.h"
+
+struct World;
+struct Map;
+
struct Player {
struct yx_uint16 pos; };
+#include "draw_wins.h"
#include <stdlib.h>
#include <stdint.h>
-#include <ncurses.h>
#include <string.h>
+#include <ncurses.h>
#include "windows.h"
-#include "draw_wins.h"
#include "roguelike.h"
#include "keybindings.h"
#include "actors.h"
#ifndef DRAW_WINS_H
#define DRAW_WINS_H
+#include <stdint.h>
+
+struct Win;
+
void draw_with_linebreaks (struct Win *, char *, uint16_t);
void draw_text_from_bottom (struct Win *, char *);
void draw_log_win (struct Win *);
-#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"
void init_keybindings(struct World * world) {
// Initialize keybindings from file "keybindings".
#ifndef KEYBINDINGS_H
+#define KEYBINDINGS_H
+
+#include <stdint.h>
+
+struct World;
+struct WinMeta;
struct KeyBinding {
char * name;
+#include "readwrite.h"
#include <stdio.h>
-#include <limits.h>
#include <stdint.h>
+#include <limits.h>
static const uint16_t uchar_s = UCHAR_MAX + 1;
#ifndef READWRITE_H
#define READWRITE_H
+#include <stdio.h>
+#include <stdint.h>
+
uint16_t read_uint16_bigendian(FILE * file);
void write_uint16_bigendian(uint16_t x, FILE * file);
uint32_t read_uint32_bigendian(FILE * file);
+#include "roguelike.h"
#include <stdlib.h>
#include <stdint.h>
#include <ncurses.h>
#include <unistd.h>
#include "windows.h"
#include "draw_wins.h"
-#include "roguelike.h"
#include "keybindings.h"
#include "readwrite.h"
#include "actors.h"
#ifndef ROGUELIKE_H
#define ROGUELIKE_H
+#include <stdint.h>
#include "yx_uint16.h"
-#include "windows.h"
+
+struct WinMeta;
+struct Win;
+struct KeyBinding;
+struct KeysWinData;
struct World {
char interactive;
-#include <stdlib.h>
+#include "windows.h"
#include <stdint.h>
#include <ncurses.h>
+#include <stdlib.h>
#include <string.h>
-#include "windows.h"
struct Corners {
struct yx_uint16 tl;
#ifndef WINDOWS_H
#define WINDOWS_H
-#include "ncurses.h"
+#include <stdint.h>
+#include <ncurses.h>
#include "yx_uint16.h"
struct Frame {
-#include "stdint.h"
#include "yx_uint16.h"
extern char yx_uint16_cmp (struct yx_uint16 a, struct yx_uint16 b) {
#ifndef YX_UINT16_H
#define YX_UINT16_H
+#include <stdint.h>
+
#define NORTH 1
#define EAST 2
#define SOUTH 3