diff --git a/src/economy.cpp b/src/economy.cpp --- a/src/economy.cpp +++ b/src/economy.cpp @@ -747,7 +747,32 @@ void RecomputePrices() /* Setup price bases */ for (Price i = PR_BEGIN; i < PR_END; i++) { - Money price = _price_base_specs[i].start_price; + Money price; + + if (i == PR_INFRASTRUCTURE_RAIL) + { + price = _settings_game.economy.infrastructure_base_cost_rail; + } + else if (i == PR_INFRASTRUCTURE_ROAD) + { + price = _settings_game.economy.infrastructure_base_cost_road; + } + else if (i == PR_INFRASTRUCTURE_WATER) + { + price = _settings_game.economy.infrastructure_base_cost_water; + } + else if (i == PR_INFRASTRUCTURE_AIRPORT) + { + price = _settings_game.economy.infrastructure_base_cost_air; + } + else if (i == PR_INFRASTRUCTURE_STATION) + { + price = _settings_game.economy.infrastructure_base_cost_station; + } + else + { + price = _price_base_specs[i].start_price; + } /* Apply difficulty settings */ uint mod = 1;