#define ROGUELIKE_H
#include <stdint.h>
-#include "yx_uint16.h"
struct WinMeta;
struct Win;
struct KeyBinding;
struct KeysWinData;
+struct Map;
struct World {
char interactive;
uint32_t turn;
char * log;
struct Map * map;
+ struct Item * item;
struct Monster * monster;
struct Player * player; };
-struct Map {
- struct yx_uint16 size;
- struct yx_uint16 offset;
- char * cells; };
+extern uint16_t rrand(char, uint32_t);
+extern void update_log (struct World *, char *);
-uint16_t rrand(char, uint32_t);
-void update_log (struct World *, char *);
+uint16_t center_offset (uint16_t, uint16_t, uint16_t);
-struct Map init_map ();
-void map_scroll (struct Map *, char);
+extern void turn_over (struct World *, char);
+extern void save_game(struct World *);
-void turn_over (struct World *, char);
-void save_game(struct World *);
+extern void toggle_window (struct WinMeta *, struct Win *);
+extern void scroll_pad (struct WinMeta *, char);
+extern void growshrink_active_window (struct WinMeta *, char);
-void toggle_window (struct WinMeta *, struct Win *);
-void scroll_pad (struct WinMeta *, char);
-void growshrink_active_window (struct WinMeta *, char);
-
-unsigned char meta_keys(int, struct World *, struct WinMeta *, struct Win *, struct Win *, struct Win *, struct Win *);
+extern unsigned char meta_keys(int, struct World *, struct WinMeta *, struct Win *, struct Win *, struct Win *, struct Win *);
#endif