X-Git-Url: https://plomlompom.com/repos/?a=blobdiff_plain;f=src%2Fmain.h;h=5ef6a0e963d550cb9dcc3b22d3031d20316db4c4;hb=93e3207a51c7ba4a31e3fb192e41b4421a906506;hp=0bd2cd8d860fbadb30c5483515748dfdc172949d;hpb=58f0067336c9239750009b3f35d18031bec8f7b5;p=plomrogue diff --git a/src/main.h b/src/main.h index 0bd2cd8..5ef6a0e 100644 --- a/src/main.h +++ b/src/main.h @@ -6,48 +6,39 @@ #ifndef MAIN_H #define MAIN_H - - #include /* for uint32_t*/ +#include "keybindings.h" /* for KeyBiData struct */ struct WinMeta; -struct Win; -struct KeyBinding; -struct KeysWinData; +struct WinConf; struct Map; -struct ItemDef; -struct MonsterDef; - - - -struct Wins -{ - struct WinMeta * meta; - struct Win * keys; - struct Win * info; - struct Win * log; - struct Win * map; -}; +struct MapObjDef; +struct MapObj; +struct MapObjAct; struct World { char interactive; /* 1: playing; 0: record playback. */ - struct KeyBinding * keybindings; /* Pointer to the keybindings. */ - struct KeysWinData * keyswindata; /* Pointer to key edit window metadata. */ + struct KeyBiData kb_global; /* Global keybindings. */ + struct KeyBiData kb_wingeom; /* Window geometry config keybindings. */ + struct KeyBiData kb_winkeys; /* Window keybinding config keybindings.*/ uint32_t seed; /* Randomness seed. */ + uint32_t mapseed; /* Initial randomness seed used for map.*/ uint32_t turn; /* Current game turn. */ uint16_t score; /* Player's score. */ char * log; /* Pointer to the game log string. */ struct Map * map; /* Pointer to the game map cells. */ - struct ItemDef * item_def; /* Pointer to the item definitions. */ - struct Item * item; /* Pointer to the items' data. */ - struct MonsterDef * monster_def; /* Pointer to the monster definitions. */ - struct Monster * monster; /* Pointer to the monsters' data. */ - struct Player * player; /* Pointer to the player data. */ struct CommandDB * cmd_db; /* Pointer to the command database. */ - struct Wins wins; /* Pointers to WinMeta, individual Wins.*/ -}; + struct WinMeta * wmeta; /* Pointer to window manager's WinMeta. */ + struct WinConf * winconfs; /* Pointer to windows' configurations. */ + char * winconf_ids; /* Pointer to string of Winconfs' ids. */ + uint8_t map_obj_count; /* Counts map objects generated so far. */ + struct MapObjDef * map_obj_defs; /* Map object type definitions chain. */ + struct MapObj * map_objs; /* Pointer to map objects chain start. */ + uint8_t inventory_select; /* Player's inventory selection index. */ + struct MapObjAct * map_obj_acts; /* Pointer to map object actions chain. */ +} world;