X-Git-Url: https://plomlompom.com/repos/?a=blobdiff_plain;f=roguelike.h;h=fcca90dbe404de59c7496dd1ca6c5ee36d95f4f2;hb=0dd958b76e3ef1c2819fa13461b37b8b680ecb66;hp=da80489859921bee7795925f798573a15e7ced02;hpb=122747fbbdc061942de2fc2bca901a44a6b4ab61;p=plomrogue diff --git a/roguelike.h b/roguelike.h index da80489..fcca90d 100644 --- a/roguelike.h +++ b/roguelike.h @@ -1,33 +1,43 @@ struct World { + char interactive; struct KeyBinding * keybindings; struct KeysWinData * keyswindata; - int turn; + uint32_t seed; + uint32_t turn; char * log; struct Map * map; struct Monster * monster; struct Player * player; }; struct Map { - int width; - int height; - int offset_x; - int offset_y; + uint16_t width; + uint16_t height; + uint16_t offset_x; + uint16_t offset_y; char * cells; }; struct Player { - int y; - int x; }; + uint16_t y; + uint16_t x; }; struct Monster { - int y; - int x; }; + uint16_t y; + uint16_t x; }; +uint16_t rrand(char, uint32_t); +uint16_t read_uint16_bigendian(FILE * file); +void write_uint16_bigendian(uint16_t x, FILE * file); +uint32_t read_uint32_bigendian(FILE * file); +void write_uint32_bigendian(uint32_t x, FILE * file); +void save_game(struct World *); void toggle_window (struct WinMeta *, struct Win *); void growshrink_active_window (struct WinMeta *, char); struct Map init_map (); void map_scroll (struct Map *, char); void next_turn (struct World *); void update_log (struct World *, char *); -char is_passable (struct World *, int, int); +char is_passable (struct Map *, uint16_t, uint16_t); +void record_action (char); void move_player (struct World *, char); void player_wait(struct World *); +unsigned char meta_keys(int, struct World *, struct WinMeta *, struct Win *, struct Win *, struct Win *, struct Win *);