home · contact · privacy
Fixed bug that led to endless loop in nearest_enemy_dir().
[plomrogue] / src / main.h
index 83bdb83d2aa12717e3c857bacaca8e4c15b1da6f..1ade736826d9ce196a5be682403996ddf94351cc 100644 (file)
@@ -6,18 +6,14 @@
 #ifndef MAIN_H
 #define MAIN_H
 
-
-
 #include <stdint.h> /* for uint32_t*/
-#include "keybindings.h"
+#include "keybindings.h" /* for KeyBiData struct */
 struct WinMeta;
 struct WinConf;
-struct Win;
-struct KeyBinding;
-struct KeysWinData;
 struct Map;
-struct ItemDef;
-struct MonsterDef;
+struct MapObjDef;
+struct MapObj;
+struct MapObjAct;
 
 
 
@@ -28,21 +24,21 @@ struct World
     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 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_object_count;         /* Counts loaded/generated map objects. */
-};
+    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_sel;            /* Player's inventory selection index. */
+    struct MapObjAct * map_obj_acts;  /* Pointer to map object actions chain. */
+} world;