Commit Graph

137 Commits

Author SHA1 Message Date
Jonathan G Rennison
96bfcd587b Fix signedness mismatch warning in tunnel length check 2021-06-19 13:02:36 +01:00
Andreas Schmitt
a3d1b916d1 Limit tunnel length at the proper place 2021-06-19 13:02:36 +01:00
Andreas Schmitt
3e771dc18d Revert bug inducing change 2021-06-19 13:02:36 +01:00
Andreas Schmitt
b175203d54 Add comment 2021-06-19 13:02:36 +01:00
Andreas Schmitt
a73cb99695 Do not build bridges with additional specs
Prior to this change, additional bridge sets like modular bridges would be used.
Those might not be suitable for public roads. Those bridges should be left to the player.
2021-06-19 13:02:36 +01:00
Andreas Schmitt
198ef11a2b Force the pathfinder to build serpentine roads 2021-06-19 13:02:36 +01:00
Jonathan G Rennison
bd41cb618a Allow using and building trivial foundations
(3 corners raised and 2 opposite corners raised)
2021-06-19 13:02:36 +01:00
Jonathan G Rennison
0f336bba57 Give bridges over the sea a more generous length limit 2021-06-19 13:02:36 +01:00
Jonathan G Rennison
bfdabf4cb2 Allow building on coast tiles 2021-06-19 13:02:36 +01:00
Jonathan G Rennison
63534f97bd Make bridges and tunnels significantly more costly 2021-06-19 13:02:36 +01:00
Jonathan G Rennison
a6f7478873 Adjust comment for BASE_COST_PER_TILE 2021-06-19 13:02:36 +01:00
Jonathan G Rennison
d182b0b138 Remove "using namespace std" 2021-06-19 13:02:36 +01:00
Jonathan G Rennison
1647f9a616 Avoid redundant calls to DistanceManhattan in town_network_distance 2021-06-19 13:02:36 +01:00
Jonathan G Rennison
e95447edac Avoid unnecessarily converting lambda to std::function 2021-06-19 13:02:36 +01:00
Jonathan G Rennison
1732e0a366 Remove trailing whitespace 2021-06-19 13:02:36 +01:00
Andreas Schmitt
ac8da77d0b Fixing a stupid error 2021-06-19 13:02:36 +01:00
Andreas Schmitt
35a98fae7d Try and fix another assertion failure 2021-06-19 13:02:36 +01:00
Andreas Schmitt
a6dae1426c Re-implement the cost function 2021-06-19 13:02:36 +01:00
Andreas Schmitt
5d51909c36 Reorganize file 2021-06-19 13:02:36 +01:00
Andreas Schmitt
2b1d73cb3d Fix tunnel glitch 2021-06-19 13:02:36 +01:00
Andreas Schmitt
44fe1ca00b Tweak the bridge generation 2021-06-19 13:02:36 +01:00
Andreas Schmitt
a1df69be87 Check for overlaps and intersections of planned bridges and tunnels 2021-06-19 13:02:36 +01:00
Andreas Schmitt
1899b1877d Improve performance even more 2021-06-19 13:02:36 +01:00
Andreas Schmitt
7b7b74e21e Adjust values 2021-06-19 13:02:36 +01:00
Andreas Schmitt
b89afbdff3 Reintroduce base cost to make A* admissible 2021-06-19 13:02:36 +01:00
Andreas Schmitt
b3044cc482 Improve performance 2021-06-19 13:02:36 +01:00
Andreas Schmitt
953be43301 Prevent numeric overflow 2021-06-19 13:02:36 +01:00
Andreas Schmitt
af29085e42 Only build bridges over water 2021-06-19 13:02:36 +01:00
Andreas Schmitt
8d584990aa Remove unused hash functions and start the road building from the map center 2021-06-19 13:02:36 +01:00
Andreas Schmitt
4542410b41 Revert "Replace original algorithm with a simpler one"
This reverts commit 8cb3d80402f626034c08a162b8956dce03eb79f6.
2021-06-19 13:02:36 +01:00
Andreas Schmitt
83ea6e9fd8 Replace original algorithm with a simpler one 2021-06-19 13:02:36 +01:00
Andreas Schmitt
150e502cf9 Add generation of public roads linking towns 2021-06-19 13:02:36 +01:00
Jonathan G Rennison
b7ddd486cf Merge branch 'master' into jgrpp
# Conflicts:
#	cmake/CompileFlags.cmake
#	src/aircraft_cmd.cpp
#	src/blitter/32bpp_anim.cpp
#	src/cargopacket.cpp
#	src/cheat_gui.cpp
#	src/company_cmd.cpp
#	src/company_gui.cpp
#	src/core/pool_func.hpp
#	src/date.cpp
#	src/economy.cpp
#	src/error_gui.cpp
#	src/ground_vehicle.cpp
#	src/ground_vehicle.hpp
#	src/group_gui.cpp
#	src/industry_cmd.cpp
#	src/lang/dutch.txt
#	src/lang/french.txt
#	src/lang/german.txt
#	src/linkgraph/linkgraph_gui.cpp
#	src/linkgraph/mcf.cpp
#	src/network/network_content.cpp
#	src/network/network_server.cpp
#	src/network/network_udp.cpp
#	src/newgrf_engine.cpp
#	src/newgrf_station.cpp
#	src/order_cmd.cpp
#	src/order_gui.cpp
#	src/pathfinder/follow_track.hpp
#	src/pathfinder/yapf/yapf_common.hpp
#	src/saveload/saveload.cpp
#	src/settings_gui.cpp
#	src/station_cmd.cpp
#	src/station_kdtree.h
#	src/string_func.h
#	src/table/settings.ini
#	src/tgp.cpp
#	src/timetable_cmd.cpp
#	src/timetable_gui.cpp
#	src/toolbar_gui.cpp
#	src/town_cmd.cpp
#	src/train_cmd.cpp
#	src/train_gui.cpp
#	src/tree_gui.cpp
#	src/tunnelbridge_cmd.cpp
#	src/vehicle.cpp
#	src/vehicle_gui.cpp
#	src/video/sdl2_v.cpp
#	src/video/sdl_v.cpp
#	src/video/win32_v.cpp
#	src/viewport.cpp
#	src/viewport_sprite_sorter_sse4.cpp
#	src/window.cpp
2021-02-01 17:07:34 +00:00
Charles Pigott
b9f3e45af7 Cleanup: Remove unused (and mostly duplicated) function 2021-01-08 16:43:51 +01:00
Jonathan G Rennison
7960db35f2 Merge branch 'master' into jgrpp
# Conflicts:
#	config.lib
#	projects/openttd_vs140.vcxproj
#	projects/openttd_vs140.vcxproj.filters
#	projects/openttd_vs141.vcxproj
#	projects/openttd_vs141.vcxproj.filters
#	projects/openttd_vs142.vcxproj
#	projects/openttd_vs142.vcxproj.filters
#	src/aircraft_cmd.cpp
#	src/base_station_base.h
#	src/core/pool_type.hpp
#	src/disaster_vehicle.cpp
#	src/economy.cpp
#	src/engine.cpp
#	src/group.h
#	src/group_cmd.cpp
#	src/group_gui.cpp
#	src/lang/english.txt
#	src/lang/german.txt
#	src/linkgraph/linkgraph_gui.cpp
#	src/network/network_command.cpp
#	src/network/network_server.cpp
#	src/openttd.cpp
#	src/order_cmd.cpp
#	src/road_cmd.cpp
#	src/saveload/afterload.cpp
#	src/saveload/cargopacket_sl.cpp
#	src/saveload/linkgraph_sl.cpp
#	src/saveload/order_sl.cpp
#	src/saveload/station_sl.cpp
#	src/saveload/town_sl.cpp
#	src/saveload/vehicle_sl.cpp
#	src/screenshot.cpp
#	src/screenshot.h
#	src/settings_gui.cpp
#	src/settings_type.h
#	src/smallmap_gui.cpp
#	src/station.cpp
#	src/station_cmd.cpp
#	src/table/settings.ini
#	src/toolbar_gui.cpp
#	src/town_cmd.cpp
#	src/train.h
#	src/train_cmd.cpp
#	src/train_gui.cpp
#	src/vehicle.cpp
#	src/vehicle_base.h
#	src/vehiclelist.cpp
#	src/window_type.h
2020-01-06 18:45:51 +00:00
glx
d8a1be48cd Codechange: Replace vehicle related FOR_ALL with range-based for loops 2019-12-21 20:13:03 +01:00
glx
1f6b3a37f9 Codechange: Replace FOR_ALL_ENGINES with range-based for loops 2019-12-21 20:13:03 +01:00
Jonathan G Rennison
cbdd9f84d8 Merge branch 'master' into jgrpp
# Conflicts:
#	src/console_gui.cpp
#	src/lang/korean.txt
#	src/video/sdl2_v.cpp
#	src/video/sdl2_v.h
#	src/window.cpp
#	src/window_gui.h
2019-11-12 18:43:10 +00:00
S. D. Cloudt
13cc8a0cee Cleanup: Removed SVN headers 2019-11-10 17:59:20 +00:00
Jonathan G Rennison
edfd378e93 Merge branch 'master' into jgrpp
# Conflicts:
#	source.list
#	src/blitter/32bpp_anim.cpp
#	src/linkgraph/linkgraphjob.cpp
#	src/order_cmd.cpp
#	src/vehicle.cpp
#	src/vehicle_type.h
2019-10-05 21:45:54 +01:00
JMcKiern
04f659e768 Fix: Some typos found using codespell 2019-09-29 21:27:32 +01:00
Jonathan G Rennison
ba8ed880c1 Merge branch 'master' into jgrpp-nrt
Merge NRT feature

# Conflicts:
#	docs/landscape.html
#	docs/landscape_grid.html
#	src/bridge_map.h
#	src/build_vehicle_gui.cpp
#	src/company_base.h
#	src/company_cmd.cpp
#	src/misc_gui.cpp
#	src/newgrf.cpp
#	src/newgrf_engine.cpp
#	src/pathfinder/follow_track.hpp
#	src/pathfinder/npf/npf.cpp
#	src/road_cmd.cpp
#	src/road_func.h
#	src/road_gui.cpp
#	src/road_map.h
#	src/road_type.h
#	src/roadveh_cmd.cpp
#	src/saveload/afterload.cpp
#	src/saveload/company_sl.cpp
#	src/script/api/script_bridge.cpp
#	src/table/newgrf_debug_data.h
#	src/tile_cmd.h
#	src/town_cmd.cpp
#	src/tunnel_map.h
#	src/tunnelbridge_cmd.cpp
2019-07-11 19:45:56 +01:00
Jonathan G Rennison
829c635add Add road layout change counter, add to road veh path caches
Update layout counter when non-leaf road bits are added or removed
2019-05-26 11:35:18 +01:00
Jonathan G Rennison
42b6e8b0d8 Check far side of level crossing when pruning road bits in CleanUpRoadBits 2019-05-26 11:35:18 +01:00
peter1138
c02ef3e456 Feature: Add NotRoadTypes (NRT) 2019-05-01 21:36:27 +02:00
Henry Wilson
7c8e7c6b6e Codechange: Use null pointer literal instead of the NULL macro 2019-04-10 23:22:20 +02:00
frosch
c0a301ae60 (svn r27424) -Fix [FS#6374]: Towns did not connect roads to existing roads, unless they had only a single roadbit. Otoh, towns also tried to connect to single roadbit tiles such as tunnels and depots, even though they were not connectable in the direction of interest. 2015-10-30 17:19:01 +00:00
rubidium
0463dbdc9e (svn r26482) -Codechange: add an include that allows us to undefine/redefine "unsafe" functions to prevent them from being used, and thus having to care about certain aspects of their return values 2014-04-23 20:13:33 +00:00
planetmaker
c24374f99c (svn r24900) -Fix [FS#5389]: Comments with typos (most fixes supplied by Eagle_rainbow) 2013-01-08 22:46:42 +00:00
truebrain
084f4e6aac (svn r23629) -Add: allow ScriptRoad::BuildRoad, ScriptBridge::BuildBridge (for roads) and ScriptTunnel:BuildTunnel (for roads) to work for GameScript 2011-12-19 21:02:33 +00:00