1 /***************************************************************************** 2 * Copyright (c) 2014-2020 OpenRCT2 developers 3 * 4 * For a complete list of all authors, please refer to contributors.md 5 * Interested in contributing? Visit https://github.com/OpenRCT2/OpenRCT2 6 * 7 * OpenRCT2 is licensed under the GNU General Public License version 3. 8 *****************************************************************************/ 9 10 #pragma once 11 12 #include "../common.h" 13 14 struct mapgen_settings 15 { 16 // Base 17 int32_t mapSize; 18 int32_t height; 19 int32_t water_level; 20 int32_t floor; 21 int32_t wall; 22 23 // Features (e.g. tree, rivers, lakes etc.) 24 int32_t trees; 25 26 // Simplex Noise Parameters 27 int32_t simplex_low; 28 int32_t simplex_high; 29 float simplex_base_freq; 30 int32_t simplex_octaves; 31 32 // Height map settings 33 bool smooth; 34 bool smooth_height_map; 35 uint32_t smooth_strength; 36 bool normalize_height; 37 }; 38 39 void mapgen_generate_blank(mapgen_settings* settings); 40 void mapgen_generate(mapgen_settings* settings); 41 bool mapgen_load_heightmap(const utf8* path); 42 void mapgen_unload_heightmap(); 43 void mapgen_generate_from_heightmap(mapgen_settings* settings); 44