Commit Graph

1647 Commits

Author SHA1 Message Date
Jonathan G Rennison
e5a421b65a Merge branch 'master' into jgrpp
# Conflicts:
#	src/economy.cpp
#	src/linkgraph/refresh.cpp
#	src/order_cmd.cpp
#	src/saveload/vehicle_sl.cpp
#	src/station.cpp
#	src/station_base.h
#	src/timetable_cmd.cpp
#	src/timetable_gui.cpp
#	src/vehicle.cpp
#	src/vehicle_base.h
#	src/vehicle_cmd.cpp
2022-03-04 18:17:44 +00:00
Jonathan G Rennison
df92b7e449 Merge branch 'road-stops' into jgrpp 2022-02-20 16:56:17 +00:00
Jonathan G Rennison
ae3c4f2d6d If road vehicle next order is for same station when leaving, do not leave
Just start loading again without moving instead
2022-02-16 00:14:55 +00:00
Jonathan G Rennison
5119d61c82 If aircraft next order is for same station when leaving, do not leave
Just start loading again without moving instead
2022-02-15 20:24:13 +00:00
Niels Martin Hansen
e68bf58989 Codechange: Use anonymous union for vehicle orders/old orders list 2022-02-15 20:01:10 +01:00
Jonathan G Rennison
23c472d2a0 Add support for road stop animation, availability callback
Add animation, callback mask, general flags properties
Add animation frame variables
2022-02-15 00:22:18 +00:00
Jonathan G Rennison
beb6d01fe8 Improve handling of conditional order waiting loops
Do not leave station/depot/waypoint at all if conditional order
loop would result in re-starting waiting/loading

Only actually leave and update timetable at end of loop

Rate-limit loop checks regardless of timetabled wait time
2022-01-19 00:10:49 +00:00
Jonathan G Rennison
904ff6757d Add slot support to road vehicles, ships and aircraft 2022-01-19 00:10:49 +00:00
Jonathan G Rennison
2f8e63e954 Merge branch 'master' into jgrpp
# Conflicts:
#	src/gfx.cpp
#	src/lang/traditional_chinese.txt
#	src/station_cmd.cpp
2022-01-04 17:42:36 +00:00
Jonathan G Rennison
dd160a4e74 Support cond order to continue loading at station without moving for ships 2022-01-03 23:36:11 +00:00
Jonathan G Rennison
30817c3915 Fix VRF_BEYOND_PLATFORM_END not being cleared when switching order 2022-01-03 12:47:44 +00:00
Jonathan G Rennison
89181ea9fd Add setting to increase cost/distance of aircraft linkgraph links 2022-01-02 01:15:54 +00:00
Tyler Trahan
9c18236f2c Fix: Suppress vehicle age warnings for stopped vehicles 2021-12-20 22:13:37 +01:00
Michael Lutz
41fa16f325 Codechange: Don't use globals for return values from vehicle command procs. 2021-12-16 22:28:32 +01:00
Michael Lutz
13528bfcd0 Codechange: Un-bitstuff all remaining commands. 2021-12-16 22:28:32 +01:00
Michael Lutz
e08b3abe7f Codechange: Un-bitstuff group and autoreplace commands. 2021-12-16 22:28:32 +01:00
Michael Lutz
21675ec7e2 Codechange: Un-bitstuff vehicle/engine commands. 2021-12-16 22:28:32 +01:00
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.
2021-12-16 22:28:32 +01:00
Michael Lutz
a38bbefe1b Codechange: Untangle command code, flags and error string for DoCommand*. 2021-12-16 22:28:32 +01:00
Michael Lutz
b6933a2ebd Codechange: Move command arguments to the back of the DoCommand function call. 2021-12-16 22:28:32 +01:00
Jonathan G Rennison
ba65a5bab5 Run most "daily" vehicle tasks at a fixed frequency at day lengths >= 8
This includes: running costs, track sharing costs, breakdown checks,
servicing checks, order checks
2021-11-27 15:51:49 +00:00
Jonathan G Rennison
1ff03f8ee9 De-virtualise calls to Vehicle::OnNewDay 2021-11-27 15:17:41 +00:00
Jonathan G Rennison
5d6533e258 Debug: Add a multiline long form of DumpVehicleFlags 2021-11-23 19:28:38 +00:00
Jonathan G Rennison
5723c317f7 Fix trains with non-front parts needing repair not being serviced 2021-11-20 12:43:38 +00:00
Jonathan G Rennison
71c39dc8c2 If train next order is for same station when leaving, do not leave
Just start loading again without moving instead
2021-11-19 00:53:01 +00:00
nchappe
2cb6351af5 Fix: Update last servicing dates when using the date cheat (#9694) 2021-11-19 00:04:22 +00:00
Jonathan G Rennison
3ea4ac98e7 Fix missing VehicleRailFlags in DumpVehicleFlags 2021-11-13 21:11:11 +00:00
Jonathan G Rennison
3ef1a0943b Merge branch 'master' into jgrpp-beta
# Conflicts:
#	src/lang/chuvash.txt
#	src/lang/czech.txt
#	src/lang/english_AU.txt
#	src/lang/english_US.txt
#	src/lang/german.txt
#	src/lang/japanese.txt
#	src/lang/korean.txt
#	src/lang/latvian.txt
#	src/lang/russian.txt
#	src/tree_gui.cpp
#	src/vehicle.cpp
2021-11-02 21:11:11 +00:00
SamuXarick
a57c2b073a Feature: Display icon/text whether vehicle is lost in vehicle (list) window (#9543) 2021-09-14 22:10:00 +02:00
Jonathan G Rennison
0748d540e8 Implement improved breakdown speed reductions for ships 2021-09-11 23:50:04 +01:00
Jonathan G Rennison
f8e30e807d Fix ProcessOrders not always being called after leaving a waiting order
Fixes conditional order loop on leaving a depot
2021-08-30 15:26:49 +01:00
Jonathan G Rennison
4cf6b1e923 Fix ViewportAddVehiclesIntl using wrong image rotation for ships
When rotating in place
2021-08-29 22:03:08 +01:00
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.
2021-08-17 14:57:59 +02:00
Jonathan G Rennison
71dfd2900a Add depot order flag for specific depot
Use upper half of order flags for extra depot flags

See: #302
2021-07-23 18:33:24 +01:00
Jonathan G Rennison
fd0cb63963 Fix send vehicle to specific depot allowing incompatible rail types 2021-07-23 18:12:20 +01:00
Jonathan G Rennison
382955396f Fix send vehicle to specific depot allowing incompatible road/tram types
See: #302
2021-07-23 18:06:15 +01:00
Jonathan G Rennison
5fb3eb0bb9 Adjust signal speed restriction timeouts when date or day length changed 2021-06-27 23:07:32 +01:00
Andreas Schmitt
c1bf236a26 Rewrite the ATC logic
Now signals store speed information with a timeout for this data's validity
2021-06-20 20:40:33 +02:00
rubidium42
55a11710a6 Codechange: convert printf DEBUG statements to fmt Debug statements 2021-06-13 12:45:45 +02:00
Jonathan G Rennison
1002c6d9d2 Fix various compiler warnings
See: #267
2021-06-11 22:54:27 +01:00
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.
2021-06-03 17:30:00 +02:00
glx22
5799402f7a Codechange: Rename window related DeleteXXX to match new behaviour 2021-05-29 21:08:25 +02:00
Jonathan G Rennison
aa0c1ba2e0 Only update vehicle image when in the vicinity of a viewport
This reduces the performance impact of expensive NewGRF
graphics chains.
2021-05-20 18:03:11 +01:00
Jonathan G Rennison
a15e26f369 NewGRF: Elide unmasked vehicle callbacks where possible
This includes:
* CBID_VEHICLE_32DAY_CALLBACK
* CBID_VEHICLE_REFIT_COST
* CBID_VEHICLE_MODIFY_PROPERTY
  This is on a per-property basis

The main benefit of this is to avoid callbacks not handled by the
vehicle's current sprite group from using the full graphics chain as
the "default" branch in the callback switch.
In the case where the graphics chain is long/expensive, a lot of work
had to be done before a callback failure result was eventually returned.
2021-05-18 19:07:44 +01:00
Matt Kimber
520595ff87 Fix 3d7ab09: stopped trains not updating viewport hash when reversed for a second time (#9165) 2021-05-01 18:14:50 +01:00
Jonathan G Rennison
e6a858c0dc Fix date cheat/scenario load not adjusting vehicle date of last service 2021-04-24 21:55:50 +01:00
Jonathan G Rennison
d484c32d44 Reduce sensitivity of train overheated breakdown 2021-04-11 22:53:02 +01:00
Charles Pigott
dd798d688b Fix #8919: Release builds with asserts enabled (#8925) 2021-04-01 23:57:49 +01:00
Patric Stout
fece1c57ca Codechange: Suppress warnings when asserts are disabled (#8917) 2021-04-01 11:16:19 +02:00
Jonathan G Rennison
dfecdf3afb Merge branch 'master' into jgrpp
# Conflicts:
#	src/dock_gui.cpp
#	src/rail_gui.cpp
#	src/road_gui.cpp
#	src/terraform_gui.cpp
#	src/vehicle.cpp
#	src/video/allegro_v.cpp
#	src/video/cocoa/cocoa_v.mm
#	src/video/dedicated_v.cpp
#	src/video/sdl2_v.cpp
#	src/video/sdl_v.cpp
#	src/video/win32_v.cpp
2021-02-21 11:54:24 +00:00