X-Git-Url: https://plomlompom.com/repos/?a=blobdiff_plain;f=src%2Fclient%2Fworld.h;h=5681210ed04ec58f1c41cd851f9e48dc25f6dc5c;hb=3fb2cb493ae564f8b14ddb4143b6c1f5bf16f16a;hp=fb8ae4d7530b6a4ee02c93958c0ed05210ed393f;hpb=fb9b40f0535b28b37b64983240c4b78e74ee9a2c;p=plomrogue diff --git a/src/client/world.h b/src/client/world.h index fb8ae4d..5681210 100644 --- a/src/client/world.h +++ b/src/client/world.h @@ -1,4 +1,8 @@ /* src/client/world.h + * + * This file is part of PlomRogue. PlomRogue is licensed under the GPL version 3 + * or any later version. For details on its copyright, license, and warranties, + * see the file NOTICE in the root directory of the PlomRogue source package. * * Contains the World struct holding all quasi-global game data together. */ @@ -7,35 +11,42 @@ #define WORLD_H #include /* uint8_t, uint16_t */ +#include /* FILE */ #include /* time_t */ #include "../common/map.h" /* struct Map */ -#include "../common/yx_uint16.h" /* struct yx_uint16 */ +#include "../common/yx_uint8.h" /* struct yx_uint8 */ #include "keybindings.h" /* stuct KeyBindingDB */ #include "command_db.h" /* struct CommandDB */ -#include "wincontrol.h" /* WinConfDB */ +#include "windows.h" /* WinDB */ struct World { - struct WinConfDB wins; - struct CommandDB cmd_db; /* Command database. */ - struct KeyBindingDB kb_global; /* Global keybindings. */ - struct KeyBindingDB kb_wingeom; /* Window geometry config keybindings. */ - struct KeyBindingDB kb_winkeys; /* Window keybinding config keybindings.*/ - struct Map map; /* Pointer to the game map cells. */ - time_t last_update; - struct yx_uint16 player_pos; - char * log; - char * path_server_in; - char * path_interface_conf; - char * player_inventory; - uint16_t turn; - uint16_t score; - uint8_t halfdelay; - uint8_t player_inventory_select; - uint8_t player_lifepoints; + FILE * file_server_in; /* server input file to write commands to */ + FILE * file_server_out; /* server output file to read messages from */ + struct WinDB winDB; /* data for window management and individual windows */ + struct CommandDB commandDB; /* data on commands from commands config file */ + struct KeyBindingDB kb_global; /* globally availabe keybindings */ + struct KeyBindingDB kb_wingeom; /* Win geometry config view keybindings */ + struct KeyBindingDB kb_winkeys; /* Win keybindings config view keybindings*/ + struct Map map; /* game map geometry and content of player's map view */ + time_t last_update; /* used for comparison with worldstate file's mtime */ + char * log; /* log of player's activities */ + char * things_here; /* list of things below the player */ + char * path_interface; /* path of interface configuration file */ + char * path_commands; /* path of commands config file */ + char * player_inventory; /* one-item-per-line string list of owned items */ + char * mem_map; /* map cells of player's map memory */ + char * queue; /* stores un-processed messages read from the input file */ + struct yx_uint8 player_pos; /* coordinates of player on map */ + struct yx_uint8 look_pos; /* coordinates of look cursor */ + uint16_t turn; /* world/game turn */ + int16_t player_satiation; /* player's belly fullness */ + uint8_t player_inventory_select; /* index of selected item in inventory */ + uint8_t player_lifepoints; /* how alive the player is */ uint8_t winch; /* if set, SIGWINCH was registered; trigger reset_windows()*/ + uint8_t look; /* if set, move look cursor over map intead of player */ };