49 * |
49 * |
50 * The required fields depend on the map generator, see the comments |
50 * The required fields depend on the map generator, see the comments |
51 * at the struct for details. |
51 * at the struct for details. |
52 */ |
52 */ |
53 typedef struct { |
53 typedef struct { |
54 int mapgen; //!< Always one of the MAPGEN_ constants |
54 int mapgen; //!< Always one of the MAPGEN_ constants |
55 char *name; //!< The name of the map for MAPGEN_NAMED (e.g. "Cogs"), otherwise one of "+rnd+", "+maze+" or "+drawn+". |
55 char *name; //!< The name of the map for MAPGEN_NAMED (e.g. "Cogs"), otherwise one of "+rnd+", "+maze+" or "+drawn+". |
56 char *seed; //!< Used for all maps. This is a random seed for all (non-AI) entropy in the round. Typically a random UUID, but can be any string. |
56 char *seed; //!< Used for all maps. This is a random seed for all (non-AI) entropy in the round. Typically a random UUID, but can be any string. |
57 char *theme; //!< Used for all maps. This is the name of a directory in Data/Themes (e.g. "Beach") |
57 char *theme; //!< Used for all maps. This is the name of a directory in Data/Themes (e.g. "Beach") |
58 uint8_t *drawData; //!< Used for MAPGEN_DRAWN |
58 uint8_t *drawData; //!< Used for MAPGEN_DRAWN |
59 size_t drawDataSize; //!< Used for MAPGEN_DRAWN |
59 size_t drawDataSize; //!< Used for MAPGEN_DRAWN |
60 int templateFilter; //!< Used for MAPGEN_REGULAR. One of the TEMPLATEFILTER_xxx constants. |
60 int templateFilter; //!< Used for MAPGEN_REGULAR. One of the TEMPLATEFILTER_xxx constants. |
61 int mazeSize; //!< Used for MAPGEN_MAZE. One of the MAZE_SIZE_xxx constants. |
61 int mazeSize; //!< Used for MAPGEN_MAZE. One of the MAZE_SIZE_xxx constants. |
62 } flib_map; |
62 } flib_map; |
63 |
63 |
64 /** |
64 /** |
65 * Create a generated map. theme should be the name of a |
65 * Create a generated map. theme should be the name of a |
66 * directory in "Themes" and templateFilter should be one of the |
66 * directory in "Themes" and templateFilter should be one of the |