Allow tile height to also play a part in determining the density of rocky patches.

pull/230/head
reldred 3 years ago
parent 4a169f07ab
commit 86e7cb6d18

@ -365,9 +365,9 @@ void GenerateClearTile()
IncreaseGeneratingWorldProgress(GWP_ROUGH_ROCKY);
if (IsTileType(tile, MP_CLEAR) && !IsClearGround(tile, CLEAR_DESERT)) {
uint j = GB(r, 16, 4) + _settings_game.game_creation.amount_of_rocks;
uint j = GB(r, 16, 4) + _settings_game.game_creation.amount_of_rocks + ((int)TileHeight(tile) * _settings_game.game_creation.height_affects_rocks);
for (;;) {
TileIndex tile_new;
TileIndex tile_new;
SetClearGroundDensity(tile, CLEAR_ROCKS, 3);
do {

@ -1461,6 +1461,8 @@ STR_CONFIG_SETTING_RIVER_AMOUNT :River amount: {
STR_CONFIG_SETTING_RIVER_AMOUNT_HELPTEXT :Choose how many rivers to generate
STR_CONFIG_SETTING_ROCKS_AMOUNT :Rocks amount: {STRING}
STR_CONFIG_SETTING_ROCKS_AMOUNT_HELPTEXT :Determines the size of rocky patches. High values can cover a significant portion of the map.
STR_CONFIG_SETTING_HEIGHT_ROCKS :Rocks height modifier: {STRING}
STR_CONFIG_SETTING_HEIGHT_ROCKS_HELPTEXT :Determines how much rocky patch distribution is affected by height. This is cumulative with the Rocks Amount setting and works best when the Rocks amount setting is set to lower values.
STR_CONFIG_SETTING_TREE_PLACER :Tree placer algorithm: {STRING2}
STR_CONFIG_SETTING_TREE_PLACER_HELPTEXT :Choose the distribution of trees on the map: 'Original' plants trees uniformly scattered, 'Improved' plants them in groups
STR_CONFIG_SETTING_TREE_PLACER_NONE :None

@ -1817,6 +1817,7 @@ static SettingsContainer &GetSettingsTree()
genworld->Add(new SettingEntry("game_creation.rainforest_line_height"));
genworld->Add(new SettingEntry("game_creation.amount_of_rivers"));
genworld->Add(new SettingEntry("game_creation.amount_of_rocks"));
genworld->Add(new SettingEntry("game_creation.height_affects_rocks"));
genworld->Add(new SettingEntry("game_creation.tree_placer"));
genworld->Add(new SettingEntry("vehicle.road_side"));
genworld->Add(new SettingEntry("economy.larger_towns"));

@ -376,6 +376,7 @@ struct GameCreationSettings {
byte river_route_random; ///< the amount of randomicity for the route finding
byte amount_of_rivers; ///< the amount of rivers
uint8 amount_of_rocks; ///< the amount of rocks
uint8 height_affects_rocks; ///< the affect that map height has on rocks
};
/** Settings related to construction in-game */

@ -3763,6 +3763,19 @@ str = STR_CONFIG_SETTING_ROCKS_AMOUNT
strhelp = STR_CONFIG_SETTING_ROCKS_AMOUNT_HELPTEXT
strval = STR_JUST_COMMA
[SDT_VAR]
base = GameSettings
var = game_creation.height_affects_rocks
type = SLE_UINT8
guiflags = SGF_NEWGAME_ONLY | SGF_SCENEDIT_TOO
def = 0
min = 0
max = 25
interval = 1
str = STR_CONFIG_SETTING_HEIGHT_ROCKS
strhelp = STR_CONFIG_SETTING_HEIGHT_ROCKS_HELPTEXT
strval = STR_JUST_COMMA
;;game_creation.build_public_roads
[SDT_NULL]
length = 1

Loading…
Cancel
Save