Michael Lutz
e740c24eb7
Codechange: Template DoCommand to automagically reflect the parameters of the command proc.
...
When finished, this will allow each command handler to take individually
different parameters, obliviating the need for bit-packing.
3 years ago
Michael Lutz
7048e1522f
Codechange: Move flags in CommandProc in front of the command arguments.
3 years ago
Michael Lutz
33ca4f2b99
Codechange: Let the compile generate the master command table out of templated command traits.
...
This is using a non-intrusive type-traits like templated system, which
allows compile-time validation that the command table and the command
enum match up.
3 years ago
Michael Lutz
b6933a2ebd
Codechange: Move command arguments to the back of the DoCommand function call.
3 years ago
Loïc Guilloux
38a64eb2aa
Change: Allow all tiles around docks to be docking tiles ( #9578 )
3 years ago
SamuXarick
18247bb3b8
Fix #9521 : Don't load at just removed docks that were part of a multi-dock station ( #9524 )
3 years ago
Nicolas Chappe
b83820e723
Change: [Linkgraph] Delete links only served by vehicles stopped in depot
...
A stale link is not deleted if the link refresher finds a vehicle that still serves it.
This commit excludes vehicles stopped in depot for a very long time from the link refresher,
so that their stale links can be deleted.
3 years ago
Joan Josep
cc38a42b07
Fix 659989af45: Set appropriate town window dirty when building/removing airports. ( #9497 )
3 years ago
Nicolas Chappe
977604ef08
Feature: [Linkgraph] Prioritize faster routes for passengers, mail and express cargo
...
Passengers usually prefer fast paths to short paths.
Average travel times of links are updated in real-time for use in Dijkstra's algorithm,
and newer travel times weigh more, just like capacities.
3 years ago
dP
c1d79398d5
Fix: Use of unstable sort when distributing cargo production can cause desyncs
3 years ago
glx22
89ab8b79a5
Codechange: Remove FOR_EACH_SET_BIT
3 years ago
rubidium42
55a11710a6
Codechange: convert printf DEBUG statements to fmt Debug statements
3 years ago
glx22
5799402f7a
Codechange: Rename window related DeleteXXX to match new behaviour
3 years ago
rubidium42
2e136285e1
Codechange: move from C-string to std::string for DoCommand
3 years ago
rubidium42
661728558e
Codechange: let IsUnique.* functions accept std::string
3 years ago
rubidium42
b791ffc6de
Fix: do not hide parameter by local variable with the same name
3 years ago
rubidium42
44ca7d9377
Change: Use gender-neutral pronouns
3 years ago
glx22
38c97e1492
Codechange: Replace TILE_AREA_LOOP with range-based for loops
3 years ago
glx22
2feb801e56
Codechange: Replace FOR_ALL_ROADTRAMTYPES with range-based for loops
3 years ago
Jonathan G Rennison
ece9a356dc
Fix #9113 : Assertion failure when removing airport with order backup ( #9182 )
3 years ago
Peter Nelson
a3e49178d1
Codechange: Use std::vector for NewGRF station tile sprite layouts.
3 years ago
Peter Nelson
bd1a20f6ee
Codechange: Use std::vector for NewGRF station platform layouts.
...
This avoids the need to custom memory management and additional members.
This also resolves use-after-free if modifying copied layouts, so presumably nobody has ever done that.
3 years ago
glx22
9a8756d7ed
Codechange: Replace FOR_ALL_CARGOSPECS with range-based for loops
3 years ago
Jonathan G Rennison
25909b06d2
Fix #8809 : Crash when removing airport when hangar window open
3 years ago
SamuXarick
a4035af337
Codechange: Apply coding style ( #8640 )
...
* Fix: Missing or needed spaces
* Codechange: Remove space
* Codechange: Remove space
* Codechange: More missing spaces
* Codechange: Missing spaces
* Codechange: Remove space
* Codechange: Remove space
3 years ago
Charles Pigott
9b800a96ed
Codechange: Remove min/max functions in favour of STL variants ( #8502 )
4 years ago
SamuXarick
79d938b957
Fix 0125892: Warning about unsigned unary minus
4 years ago
SamuXarick
f84a466ca5
Fix #7945 : Add cost of clearing the sloped tile when placing a dock ( #7947 )
4 years ago
gooball
0125892f04
Fix #8297 : Infrastructure counters for road tunnels, bridges, depots … ( #8454 )
...
The previous fix 887e9481ff0e70df6bf93ce15a3899a03f124c50 only worked for roads and failed to consider a multiplier used for the infrastructure totals for tunnels/bridges.
Also, depots and bus/truck stops are counted as 2 road pieces on creation but were only counted as 1 road piece on conversion because the function DiagDirToRoadBits() was used, which only ever returns single-piece road segments.
Co-authored-by: A. S <admin-git@sotai.tk>
4 years ago
glx22
d8605ad18d
Codechange: Replace FOR_VEHICLE_ORDERS with range-based for loops
4 years ago
Pavel Stupnikov
9a45a0f535
Feature: Set exclusive access to industry from GS ( #8115 )
4 years ago
Michael Lutz
63ccb36ef3
Codechange: Use std::string for most of the user-settable custom names.
4 years ago
dP
f2a9a1e2a5
Fix #8137 : New clients can't join (desync) after funding an industry
4 years ago
dP
7bd52970a1
Codechange: Refactor FindStationsAroundTiles to avoid code duplication
4 years ago
glx
9339e4dcad
Fix #8081 : Check for waypoints when removing docking tiles
4 years ago
SamuXarick
ea7044a74b
Fix f5381798: Station::GetTileArea reduced docks to a single tile ( #8014 )
4 years ago
Niels Martin Hansen
3fcb240f8e
Fix d84b67e5: Station rating effects affecting too large area
4 years ago
Jonathan G Rennison
c3223903ed
Codechange: Cache resolved town, station and industry name strings
5 years ago
dP
1225693b9c
Feature: Improved logic of sharing industry production between 3 or more stations
5 years ago
SamuXarick
40605efd1c
Codechange: Use KDTree for AirportGetNearestTown ( #7424 )
5 years ago
glx
ee7a8eebca
Codechange: Replace FOR_ALL_TOWNS with range-based for loops
5 years ago
glx
d8a1be48cd
Codechange: Replace vehicle related FOR_ALL with range-based for loops
5 years ago
glx
9892d90b26
Codechange: Replace order related FOR_ALL with range-based for loops
5 years ago
glx
ddabfed1cd
Codechange: Replace station related FOR_ALL with range-based for loops
5 years ago
Jonathan G Rennison
35dc377a58
Fix: Infrastructure total update when removing tram road stop
...
The wrong road owner was used when updating the tram infrastructure total.
This could result in desyncs, negative infrastructure totals, etc.
5 years ago
Niels Martin Hansen
9900af38f5
Fix #7847 : Use ViewportSign coordinates for sign Kdtree coordinates ( #7849 )
...
Ensure the same coordinates are used for station/town/player signs regardless of how the landscape changes below it after the coordinates were first determined.
By keeping track of whether each ViewportSign is valid for Kdtree use (and only ever registering the viewport sign when the object is valid) a lot of code can be simplified and become more robust at the same time.
5 years ago
S. D. Cloudt
13cc8a0cee
Cleanup: Removed SVN headers
5 years ago
Jonathan G Rennison
2be619ea88
Fix #7820 : Heap use after free when removing oil rig
5 years ago
Charles Pigott
2f4de0a0fe
Fix #7733 : Crash when removing a dock next to an industry without a station
5 years ago
JMcKiern
04f659e768
Fix: Some typos found using codespell
5 years ago