3 * This file is part of PlomRogue. PlomRogue is licensed under the GPL version 3
4 * or any later version. For details on its copyright, license, and warranties,
5 * see the file NOTICE in the root directory of the PlomRogue source package.
7 * Contains the World struct holding all game data together.
13 #include <stdint.h> /* uint8_t, uint16_t, uint32_t */
14 #include <stdio.h> /* define FILE */
15 #include "../common/map.h" /* struct Map */
24 FILE * file_in; /* Input stream on file at .path_in. */
25 FILE * file_out; /* Output stream on file at .path_out. */
26 struct Map map; /* Game map. */
27 struct ThingType * thing_types; /* Thing type definitions. */
28 struct ThingAction * thing_actions; /* Thing action definitions. */
29 struct Thing * things; /* All physical things of the game world. */
30 char * server_test; /* String uniquely identifying server process. */
31 char * queue; /* Stores un-processed messages read from the input file. */
32 uint32_t seed; /* Randomness seed. */
33 uint32_t seed_map; /* Map seed. */
34 uint16_t replay; /* Turn up to which to replay game. No replay if zero. */
35 uint16_t turn; /* Current game turn. */
36 uint8_t do_update; /* Update worldstate file if !0. */
37 uint8_t exists; /* If !0, remake_world() has been run successfully. */
38 uint8_t player_type; /* Thing type that player will start as. */
39 uint8_t is_verbose; /* Should server send debugging info to stdout? */
42 extern struct World world;