Jonathan G Rennison
4ec6a99dd8
Add GetTileTrackStatus wrapper for when red signals part is not needed
2 years ago
Jonathan G Rennison
b7a82e0f29
AyStar: Reduce redundant GetElement calls in BinaryHeap
2 years ago
Jonathan G Rennison
d64b52cdaf
AyStar: Change types used for hashes and queue
...
Use robin_hood for the hashes
Store nodes in PodPools
Change BinaryHeap to store node IDs
2 years ago
Jonathan G Rennison
dd1bd270e7
AyStar: Use dbg_assert in BinaryHeap Push, GetElement
2 years ago
Jonathan G Rennison
483e3172af
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/core/strong_typedef_type.hpp
# src/gfx.cpp
# src/group_cmd.cpp
# src/industry_cmd.cpp
# src/map_func.h
# src/newgrf_debug_gui.cpp
# src/order_cmd.cpp
# src/pathfinder/follow_track.hpp
# src/rail_cmd.cpp
# src/road_cmd.cpp
# src/road_gui.cpp
# src/saveload/saveload.cpp
# src/screenshot.cpp
# src/smallmap_gui.cpp
# src/station_cmd.cpp
# src/strings.cpp
# src/tile_type.h
# src/timetable_gui.cpp
# src/town_cmd.cpp
# src/train_cmd.cpp
# src/viewport.cpp
2 years ago
Jonathan G Rennison
ff0e779680
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/lang/czech.txt
# src/order_backup.h
# src/settings_internal.h
# src/string.cpp
# src/viewport.cpp
2 years ago
Rubidium
b7a5d8e296
Codechange: add annotation to selectively force inlining in debug build
2 years ago
Rubidium
71b46db8d0
Cleanup: remove commented out code
2 years ago
Rubidium
ae422be979
Cleanup: remove/replace trailing ; with . in comments
2 years ago
Jonathan G Rennison
1518c2fa1e
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/depot_type.h
# src/lang/german.txt
# src/order_gui.cpp
# src/pathfinder/yapf/yapf_rail.cpp
# src/script/api/script_window.hpp.in
# src/settings_table.cpp
# src/train_cmd.cpp
2 years ago
Nicolas Chappe
7e7d943526
Codechange: [YAPF] Allow to retrieve the final tile of the calculated path
2 years ago
Nicolas Chappe
227626b0b7
Change: [YAPF] All compatible depots are targets for 'any depot' orders
2 years ago
Jonathan G Rennison
29a1e49c28
Change various asserts to not be included in release builds
2 years ago
Jonathan G Rennison
bd28d5a239
Use order state at reservation time for signal mode tracerestrict eval
2 years ago
Jonathan G Rennison
6a69a5495f
Add tracerestrict action to set combined normal/shunt signal mode
...
Add associated conditional to get reservation end tile
2 years ago
Jonathan G Rennison
da88e12990
Fix deny and penalty actions not being applied to no-entry signals
3 years ago
Jonathan G Rennison
c69ed1711d
Allow road vehicle go to station/waypoint orders to have a direction
3 years ago
Jonathan G Rennison
b4fc0b4dc5
Initial implementation of road waypoints
3 years ago
Jonathan G Rennison
74bfe4e6d2
Allow placing routing restrictions on tunnel/bridge entrance/exit signals
...
No reserve through support
3 years ago
Jonathan G Rennison
3d4261a33a
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/order_cmd.cpp
# src/table/settings/news_display_settings.ini
3 years ago
Loïc Guilloux
6ff0858b38
Fix #9669 , cbe00ec: Only try valid reverse directions ( #9672 )
3 years ago
Jonathan G Rennison
9e946d4c5d
Merge branch 'master' into jgrpp-beta
...
# Conflicts:
# src/command.cpp
# src/console_cmds.cpp
# src/group_gui.cpp
# src/lang/catalan.txt
# src/lang/czech.txt
# src/lang/danish.txt
# src/lang/greek.txt
# src/lang/hungarian.txt
# src/lang/irish.txt
# src/lang/japanese.txt
# src/lang/luxembourgish.txt
# src/lang/norwegian_bokmal.txt
# src/lang/romanian.txt
# src/lang/russian.txt
# src/lang/serbian.txt
# src/lang/simplified_chinese.txt
# src/lang/slovak.txt
# src/lang/spanish_MX.txt
# src/lang/swedish.txt
# src/lang/tamil.txt
# src/lang/traditional_chinese.txt
# src/lang/turkish.txt
# src/lang/ukrainian.txt
# src/lang/vietnamese.txt
# src/network/network.cpp
# src/network/network_client.cpp
# src/network/network_func.h
# src/network/network_internal.h
# src/network/network_server.cpp
# src/network/network_server.h
# src/saveload/afterload.cpp
# src/saveload/newgrf_sl.cpp
# src/saveload/saveload.h
# src/script/script_instance.cpp
# src/toolbar_gui.cpp
# src/toolbar_gui.h
# src/vehicle_gui.cpp
# src/widgets/rail_widget.h
# src/widgets/vehicle_widget.h
# src/window.cpp
3 years ago
Jonathan G Rennison
f54d69a60a
Merge branch 'master' into jgrpp-beta
...
# Conflicts:
# src/economy.cpp
# src/elrail.cpp
# src/graph_gui.cpp
# src/linkgraph/linkgraph_gui.cpp
# src/network/core/game_info.cpp
# src/newgrf_station.cpp
# src/saveload/saveload.cpp
# src/settings.cpp
# src/station_cmd.cpp
# src/station_gui.cpp
# src/strings_func.h
# src/table/settings/network_settings.ini
# src/table/settings/settings.ini
3 years ago
Jonathan G Rennison
62afd94b47
Merge branch 'master' into jgrpp-beta
...
# Conflicts:
# src/company_cmd.cpp
# src/economy.cpp
# src/lang/swedish.txt
# src/network/network_command.cpp
# src/news_gui.cpp
# src/saveload/saveload.h
# src/script/api/script_list.cpp
# src/video/cocoa/cocoa_v.mm
# src/video/sdl2_v.cpp
3 years ago
Jonathan G Rennison
ffef1c9e44
Merge branch 'master' into jgrpp-beta
...
# Conflicts:
# src/saveload/cargopacket_sl.cpp
# src/saveload/cheat_sl.cpp
# src/saveload/company_sl.cpp
# src/saveload/engine_sl.cpp
# src/saveload/map_sl.cpp
# src/saveload/order_sl.cpp
# src/saveload/saveload.cpp
# src/saveload/saveload.h
# src/saveload/station_sl.cpp
# src/saveload/vehicle_sl.cpp
# src/settings.cpp
# src/settings_gui.cpp
# src/settings_internal.h
# src/stdafx.h
# src/table/settings/settings.ini
# src/town_cmd.cpp
# src/vehicle.cpp
3 years ago
glx22
cbe00ec651
Fix: Try all possible reverse directions when a ship reaches a dead end
3 years ago
Jonathan G Rennison
4042480806
Merge branch 'jgrpp' into jgrpp-beta
...
# Conflicts:
# src/settings.cpp
# src/settings_gui.cpp
# src/settings_internal.h
# src/table/company_settings.ini
# src/table/currency_settings.ini
# src/table/gameopt_settings.ini
# src/table/misc_settings.ini
# src/table/settings.h.preamble
# src/table/settings.ini
# src/table/win32_settings.ini
# src/table/window_settings.ini
3 years ago
Loïc Guilloux
07cc7da7fd
Revert 7ca1793: Using Trackdir keyed node is not required, Exitdir keyed node still have the correct trackdir ( #9576 )
...
(cherry picked from commit 11dece205c
)
3 years ago
Jonathan G Rennison
fd605e3cf3
Merge branch 'master' into jgrpp-beta
...
# Conflicts:
# .github/workflows/commit-checker.yml
# src/company_cmd.cpp
# src/console_cmds.cpp
# src/crashlog.cpp
# src/lang/english.txt
# src/lang/german.txt
# src/lang/indonesian.txt
# src/lang/japanese.txt
# src/lang/korean.txt
# src/lang/swedish.txt
# src/linkgraph/linkgraphjob.cpp
# src/linkgraph/mcf.cpp
# src/network/core/tcp.cpp
# src/network/core/tcp.h
# src/network/core/tcp_game.h
# src/network/core/udp.h
# src/network/network.cpp
# src/network/network_admin.cpp
# src/network/network_admin.h
# src/network/network_chat_gui.cpp
# src/network/network_client.cpp
# src/network/network_client.h
# src/network/network_func.h
# src/network/network_internal.h
# src/network/network_server.cpp
# src/network/network_server.h
# src/newgrf.cpp
# src/newgrf_station.cpp
# src/order_gui.cpp
# src/rail_cmd.cpp
# src/saveload/saveload.cpp
# src/settings.cpp
# src/settings_gui.cpp
# src/settings_internal.h
# src/settings_type.h
# src/station_cmd.cpp
# src/stdafx.h
# src/table/currency_settings.ini
# src/table/misc_settings.ini
# src/table/settings.h.preamble
# src/table/settings.ini
# src/terraform_cmd.cpp
# src/timetable_gui.cpp
# src/train_cmd.cpp
# src/tree_cmd.cpp
# src/water_cmd.cpp
3 years ago
Loïc Guilloux
11dece205c
Revert 7ca1793: Using Trackdir keyed node is not required, Exitdir keyed node still have the correct trackdir ( #9576 )
3 years ago
Jonathan G Rennison
7018babeac
Reverse behind signal pathfinding now takes into account train length
...
This is to avoid pathfinding into a reversing track section which
is too short
3 years ago
Jonathan G Rennison
5d351a14d2
Add new signal type: no-entry signal
...
This is only passable in one direction, but does not have a signal
or show an aspect in the opposite direction
Add a setting for whether this is shown in the signal UI.
Off by default.
3 years ago
Patric Stout
91f2710783
Fix: pathfinders always tried to avoid docking tiles (even if nothing was on them) ( #9522 )
...
When coming across any docking tile (for example, all tiles around
an oilrig are docking tiles), it always at least added a penalty
of 3 times a normal tile, even when there are no ships on them.
In result, the pathfinder got suggested to always go around docking
tiles. This was most likely not the intention of the change made in
31db4f8d5e
.
(cherry picked from commit f87fe395a7
)
3 years ago
Patric Stout
f87fe395a7
Fix: pathfinders always tried to avoid docking tiles (even if nothing was on them) ( #9522 )
...
When coming across any docking tile (for example, all tiles around
an oilrig are docking tiles), it always at least added a penalty
of 3 times a normal tile, even when there are no ships on them.
In result, the pathfinder got suggested to always go around docking
tiles. This was most likely not the intention of the change made in
31db4f8d5e
.
3 years ago
Jonathan G Rennison
bbe079c906
Fix reverse behind signal pathfinding when there is no dead-end
...
This could cause issues if all the paths behind the reverse signal
converge with paths not via the reverse signal with a lower cost
3 years ago
Jonathan G Rennison
ae6b9f6e9c
Fix ESRB_REVERSE not being include in YAPF ESRB dumper
3 years ago
glx22
49b66ea504
Codechange: Remove FOR_EACH_SET_TRACK
3 years ago
Andreas Schmitt
29b227a3cd
Fix a few compiler warnings
3 years ago
Andreas Schmitt
1899b1877d
Improve performance even more
3 years ago
Andreas Schmitt
8d584990aa
Remove unused hash functions and start the road building from the map center
3 years ago
Andreas Schmitt
35ebeff874
Remove low performance containers with standard library ones
3 years ago
Rubidium
281a65b3e1
Cleanup: simplify some boolean expressions
3 years ago
rubidium42
55a11710a6
Codechange: convert printf DEBUG statements to fmt Debug statements
3 years ago
Jonathan G Rennison
a7d8c6fe0c
Add PF setting for whether to pathfind up to back of one-way PBS
3 years ago
Vít Šefl
a73ddf4a35
Fix: Do not send vehicles towards incomplete PF nodes
...
YAPF could end up in a situation where it sets the best intermediate node
to a node whose construction is never finalized (i.e. it is never added to
the open list). The content of the node would be overwritten in the next
round, potentially sending the vehicle to an unwanted location.
(cherry picked from commit 0125ba82e8
)
3 years ago
Vít Šefl
073b15f453
Fix: Encountering two-way red signals could prune unrelated branches.
...
The intermediate node branch is now only pruned if the node is on the
path leading to the two-way red signal.
(cherry picked from commit 33d99d27f4
)
3 years ago
Patric Stout
28e90769f7
Codechange: use "[[maybe_unused]]" instead of a wide variety of other ways we had
...
While at it, replace OTTD_ASSERT with WITH_ASSERT, as this
is always set if assert() is valid. No matter if NDEBUG is set
or not.
3 years ago
Vít Šefl
0125ba82e8
Fix: Do not send vehicles towards incomplete PF nodes
...
YAPF could end up in a situation where it sets the best intermediate node
to a node whose construction is never finalized (i.e. it is never added to
the open list). The content of the node would be overwritten in the next
round, potentially sending the vehicle to an unwanted location.
3 years ago
rubidium42
9197de39e4
Cleanup: remove unused copy-constructor without copy-assignment
3 years ago
Jonathan G Rennison
c0bf8476b1
Tracerestrict: Fix PBS entry signal conditional with signalled tunnel/bridges
3 years ago