Tyler Trahan
b012d1100c
Fix #10334 : Store separate newgrf-safe version of date_of_last_service. ( #11124 )
...
This value is not changed when the date cheat is used, which caused issues with changing properties based on service date.
Co-authored-by: Peter Nelson <peter1138@openttd.org>
(cherry picked from commit 9a602ff304
)
10 months ago
Tyler Trahan
9a602ff304
Fix #10334 : Store separate newgrf-safe version of date_of_last_service. ( #11124 )
...
This value is not changed when the date cheat is used, which caused issues with changing properties based on service date.
Co-authored-by: Peter Nelson <peter1138@openttd.org>
10 months ago
Rubidium
eaae0bb5e7
Codechange: automatic adding of _t to (u)int types, and WChar to char32_t
...
for i in `find src -type f|grep -v 3rdparty/fmt|grep -v 3rdparty/catch2|grep -v 3rdparty/opengl|grep -v stdafx.h`; do sed 's/uint16& /uint16 \&/g;s/int8\([ >*),;[]\)/int8_t\1/g;s/int16\([ >*),;[]\)/int16_t\1/g;s/int32\([ >*),;[]\)/int32_t\1/g;s/int64\([ >*),;[]\)/int64_t\1/g;s/ uint32(/ uint32_t(/g;s/_uint8_t/_uint8/;s/Uint8_t/Uint8/;s/ft_int64_t/ft_int64/g;s/uint64$/uint64_t/;s/WChar/char32_t/g;s/char32_t char32_t/char32_t WChar/' -i $i; done
11 months ago
Jonathan G Rennison
ead18b2af2
Merge branch 'master' into jgrpp
...
# Conflicts:
# CMakeLists.txt
# src/3rdparty/md5/md5.h
# src/3rdparty/squirrel/squirrel/squtils.h
# src/animated_tile.cpp
# src/console_func.h
# src/core/CMakeLists.txt
# src/core/container_func.hpp
# src/core/smallstack_type.hpp
# src/crashlog.cpp
# src/crashlog.h
# src/debug.h
# src/economy.cpp
# src/gamelog.cpp
# src/industry_gui.cpp
# src/lang/catalan.txt
# src/misc_gui.cpp
# src/network/network_content.h
# src/newgrf.cpp
# src/newgrf.h
# src/newgrf_config.cpp
# src/newgrf_config.h
# src/newgrf_gui.cpp
# src/os/unix/font_unix.cpp
# src/os/windows/crashlog_win.cpp
# src/rail_cmd.cpp
# src/saveload/animated_tile_sl.cpp
# src/script/api/script_tilelist.cpp
# src/settings.cpp
# src/settingsgen/settingsgen.cpp
# src/sl/oldloader_sl.cpp
# src/station.cpp
# src/station_cmd.cpp
# src/stdafx.h
# src/strgen/strgen.cpp
# src/strgen/strgen_base.cpp
# src/table/settings/gui_settings.ini
# src/train_gui.cpp
# src/vehicle.cpp
# src/vehicle_base.h
# src/vehicle_cmd.cpp
# src/vehicle_gui_base.h
# src/viewport_sprite_sorter.h
11 months ago
Jonathan G Rennison
5415b596b0
Handle case where VehicleLengthChanged called on engine without a GRF
11 months ago
Jonathan G Rennison
3a47b421b0
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/company_cmd.cpp
# src/core/overflowsafe_type.hpp
# src/economy.cpp
# src/engine_base.h
# src/ground_vehicle.cpp
# src/group_gui.cpp
# src/industry_cmd.cpp
# src/industry_gui.cpp
# src/newgrf_commons.cpp
# src/newgrf_engine.cpp
# src/newgrf_industries.cpp
# src/newgrf_object.cpp
# src/newgrf_roadstop.cpp
# src/newgrf_station.cpp
# src/rail_gui.cpp
# src/road_cmd.h
# src/road_gui.cpp
# src/saveload/afterload.cpp
# src/script/api/script_log.cpp
# src/script/api/script_log.hpp
# src/settings_gui.cpp
# src/settingsgen/settingsgen.cpp
# src/station_cmd.cpp
# src/station_cmd.h
# src/station_gui.cpp
# src/strgen/strgen.cpp
# src/string_func.h
# src/string_type.h
# src/table/settings/network_private_settings.ini
# src/tests/math_func.cpp
# src/textfile_gui.cpp
# src/timetable_gui.cpp
# src/town_cmd.cpp
# src/vehicle.cpp
# src/waypoint_cmd.cpp
# src/waypoint_cmd.h
# src/widgets/dropdown.cpp
1 year ago
Jonathan G Rennison
2ed248a61d
Merge branch 'master' into jgrpp
...
# Conflicts:
# .github/workflows/ci-build.yml
# .github/workflows/release-linux.yml
# src/aircraft_cmd.cpp
# src/airport_gui.cpp
# src/articulated_vehicles.cpp
# src/build_vehicle_gui.cpp
# src/company_gui.cpp
# src/genworld_gui.cpp
# src/gfx_layout.cpp
# src/misc_gui.cpp
# src/newgrf.cpp
# src/newgrf_config.h
# src/newgrf_engine.cpp
# src/news_gui.cpp
# src/order_gui.cpp
# src/roadveh_cmd.cpp
# src/saveload/saveload.h
# src/saveload/vehicle_sl.cpp
# src/ship_cmd.cpp
# src/statusbar_gui.cpp
# src/table/settings/network_private_settings.ini
# src/table/settings/network_settings.ini
# src/toolbar_gui.cpp
# src/train_cmd.cpp
# src/vehicle_gui.cpp
1 year ago
Jonathan G Rennison
6880cf24a0
Fix crash in template replacement failure news if autorenew succeeds
1 year ago
Jonathan G Rennison
fd4d4d341d
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/animated_tile.cpp
# src/cargopacket.h
# src/cheat_gui.cpp
# src/company_cmd.cpp
# src/company_gui.cpp
# src/date.cpp
# src/disaster_vehicle.cpp
# src/dock_gui.cpp
# src/economy.cpp
# src/engine.cpp
# src/error_gui.cpp
# src/fontcache/spritefontcache.cpp
# src/game/game_gui.cpp
# src/game/game_text.cpp
# src/gfx.cpp
# src/graph_gui.cpp
# src/highscore_gui.cpp
# src/industry_cmd.cpp
# src/lang/dutch.txt
# src/lang/english_AU.txt
# src/lang/english_US.txt
# src/lang/finnish.txt
# src/lang/french.txt
# src/lang/italian.txt
# src/lang/portuguese.txt
# src/lang/russian.txt
# src/lang/turkish.txt
# src/lang/vietnamese.txt
# src/main_gui.cpp
# src/misc_gui.cpp
# src/network/network_gui.cpp
# src/network/network_server.cpp
# src/newgrf.cpp
# src/newgrf.h
# src/newgrf_generic.cpp
# src/news_gui.cpp
# src/openttd.cpp
# src/os/unix/unix.cpp
# src/os/windows/font_win32.cpp
# src/os/windows/win32.cpp
# src/rail_gui.cpp
# src/road_gui.cpp
# src/saveload/afterload.cpp
# src/saveload/misc_sl.cpp
# src/saveload/oldloader_sl.cpp
# src/saveload/saveload.cpp
# src/saveload/saveload.h
# src/script/script_gui.cpp
# src/settings_table.cpp
# src/signs_gui.cpp
# src/smallmap_gui.cpp
# src/smallmap_gui.h
# src/spritecache.cpp
# src/spritecache.h
# src/spriteloader/grf.cpp
# src/station_cmd.cpp
# src/statusbar_gui.cpp
# src/stdafx.h
# src/strgen/strgen_base.cpp
# src/subsidy.cpp
# src/table/settings/difficulty_settings.ini
# src/texteff.cpp
# src/timetable_cmd.cpp
# src/timetable_gui.cpp
# src/toolbar_gui.cpp
# src/town_cmd.cpp
# src/town_gui.cpp
# src/townname.cpp
# src/vehicle.cpp
# src/waypoint_cmd.cpp
# src/widgets/dropdown.cpp
# src/window.cpp
1 year ago
Peter Nelson
76516d7f70
Codechange: Use IsValidCargoID/IsValidCargoType.
...
IsValidCargoType() is used only for unmapped IDs.
1 year ago
Rubidium
1a179cb297
Codechange: use GetString + StrMakeValid to pass string without colours/font sizes to Debug
1 year ago
Rubidium
3323402aaa
Codechange: rename smallvec_type to container_func and use only when needed
1 year ago
Peter Nelson
c38df2d589
Codechange: Use std::map instead of custom SmallMap.
1 year ago
Tyler Trahan
98d809c33b
Codechange: Don't use macros for DAYS_TILL and friends ( #10746 )
1 year ago
Rubidium
fb856e16c1
Codechange: replace some min/clamp constructs to ClampTo
1 year ago
Jonathan G Rennison
31f476220d
Allow converting track by individual track pieces instead of whole tiles
...
Ctrl-click on convert button
See: #509
1 year ago
Jonathan G Rennison
09e03fb6b2
Change TunnelBridgeIsFree across_only to a mode enum type
1 year ago
Peter Nelson
4a5e413a6c
Cleanup: Remove unnecessary VehicleRandomBits()
...
Simple Random() assignment to byte does the same.
1 year ago
Tyler Trahan
6501f84b4a
Codechange: Move calendar date functions inside TimerGameCalendar ( #10753 )
1 year ago
Peter Nelson
00bf42353a
Codechange: Place gamelog into its own class, along with internal data.
...
Data is now stored in vectors to avoid manual memory management and
passing lengths around.
1 year ago
Patric Stout
31ad990831
Codechange: move tick-counter into TimerGameTick ( #10712 )
1 year ago
Patric Stout
7aa2b9ab0a
Codechange: move all date-related variables inside the timer ( #10706 )
1 year ago
PeterN
e97bf271dc
Codechange: Make SpriteType, CargoSortType, SourceType and ScriptType enum classes. ( #10663 )
...
This avoids a (soft) namespace conflict between the four ST_* enums.
1 year ago
Patric Stout
3ebc7ad16e
Codechange: migrate all game-time-related timers to the new framework
1 year ago
Jonathan G Rennison
c89079a210
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/saveload/cargopacket_sl.cpp
# src/saveload/saveload.h
# src/strings.cpp
# src/vehicle.cpp
1 year ago
Tyler Trahan
97cfd40649
Fix #10630 : Don't allow shifting service date earlier than 0 ( #10643 )
1 year ago
Jonathan G Rennison
359fe89d2f
Don't use occupancy of unload and leave empty orders for occupancy average
1 year ago
Jonathan G Rennison
8ddb9462e6
Fix ValidateVehicleTileHash for aircraft and multi-part ships
1 year ago
Jonathan G Rennison
bd837a2fcd
TBTR: Mark vehicles as requiring service on template/replacement change
1 year ago
Jonathan G Rennison
1707f74d60
TBTR: Refactor template replacement code
...
Adjust conditions for re-using existing engines in depot
Reduce cost of searching for existing engines in depot
Reduce cost of vehicle chain membership tests
Improve replacement command error handling
Tidy up code in general
1 year ago
Jonathan G Rennison
035a3331a2
Avoid tile hash scans for unsuitable vehicle types in EnsureNoVehicleOnGround
1 year ago
Jonathan G Rennison
a9156ed516
Do not include aircraft in flight in the vehicle tile hash
1 year ago
Jonathan G Rennison
664c486fea
Add "very reduced" mode to the vehicle breakdowns setting
1 year ago
Jonathan G Rennison
211fdd62b2
Initial support for multi-part (pseudo-articulated) ships
1 year ago
Jonathan G Rennison
8dca681c8c
Use btree_multimap for pending speed restrictions
...
Avoid unnecessary iteration when saving VESR chunk
1 year ago
Jonathan G Rennison
2ea1766677
Merge branch 'master' into jgrpp
...
# Conflicts:
# .github/workflows/commit-checker.yml
# src/industry_cmd.cpp
# src/industry_gui.cpp
# src/landscape.cpp
# src/linkgraph/linkgraph_gui.cpp
# src/order_base.h
# src/order_cmd.cpp
# src/order_gui.cpp
# src/saveload/afterload.cpp
# src/saveload/league_sl.cpp
# src/saveload/saveload.h
# src/script/api/script_object.hpp
# src/script/squirrel_helper.hpp
# src/settings_table.cpp
# src/station_cmd.cpp
# src/table/settings.h.preamble
# src/tree_cmd.cpp
# src/tree_map.h
# src/vehicle.cpp
# src/waypoint_cmd.cpp
1 year ago
Tyler Trahan
3719f60de0
Add: Use specific error message when vehicle cannot go to station/waypoint
1 year ago
Jonathan G Rennison
4c1406a4b5
Add: NewGRF road stops
1 year ago
Jonathan G Rennison
f7d62a1767
Add road/tram type flag to disallow collisions with trains
1 year ago
Jonathan G Rennison
ae9b416684
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/ai/ai_core.cpp
# src/ai/ai_gui.cpp
# src/ai/ai_instance.cpp
# src/console_cmds.cpp
# src/engine_type.h
# src/game/game_gui.cpp
# src/game/game_instance.cpp
# src/goal.cpp
# src/goal_cmd.h
# src/lang/english.txt
# src/lang/estonian.txt
# src/network/network_client.cpp
# src/newgrf.cpp
# src/newgrf_generic.h
# src/openttd.cpp
# src/saveload/saveload.h
# src/script/api/script_log.cpp
# src/script/api/script_town.cpp
# src/settings_table.cpp
# src/station_cmd.cpp
# src/station_cmd.h
# src/station_map.h
# src/strings.cpp
# src/table/settings/difficulty_settings.ini
# src/table/settings/gui_settings.ini
# src/tbtr_template_gui_main.h
# src/timetable_cmd.cpp
# src/timetable_cmd.h
# src/timetable_gui.cpp
# src/town_gui.cpp
# src/train_gui.cpp
# src/water_cmd.cpp
1 year ago
Rubidium
4e65ec1dc4
Codechange: do not declare functions in blocks
1 year ago
Jonathan G Rennison
a9100e93cb
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/group_cmd.cpp
# src/lang/korean.txt
# src/lang/simplified_chinese.txt
# src/script/api/script_rail.cpp
# src/tunnelbridge_cmd.cpp
1 year ago
SamuXarick
b2a5ebcfc4
Fix 3c047b1: AIGroup.GetProfitLastYear could get values different than those displayed in GUI ( #10227 )
...
* Change: Store "all time" and "since minimum age" last year profits on groups
* Fix: Update last year profit for groups when copying vehicle statistics on autoreplace
* Codechange: Refactor profit last year
* Change: Rename some group related items for clarity
* Change: Reorder the fields in GroupStatistics
That way less memory gets wasted.
1 year ago
Jonathan G Rennison
3e33be7b10
Fix day length changes with scheduled dispatch and timetable start times
...
When time is in minutes
See: #472
1 year ago
Jonathan G Rennison
0310fb0cdc
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/lang/czech.txt
# src/lang/galician.txt
# src/lang/german.txt
# src/order_cmd.cpp
# src/saveload/afterload.cpp
# src/ship.h
# src/vehicle.cpp
1 year ago
Rubidium
375a5b8e3f
Codechange: refactor FindClosestDepot to not use pointers, but return a struct
1 year ago
Jonathan G Rennison
3877bb31ef
Changing day length or date no longer changes time in minutes
...
Add offset variables for scaled date ticks.
Adjust offset when changing day length or date, such that scaled
date ticks remain the same.
Store _scaled_tick_counter and scaled date ticks offset in the savagame.
1 year ago
Jonathan G Rennison
5c2d5782a4
Fixes incorrect link graph edge travel times with non-unity day length
...
Change vehicle last_loading_tick to be relative to _scaled_tick_counter
2 years ago
Jonathan G Rennison
f4d775cad3
Change _scaled_tick_counter to uint64
2 years ago
Jonathan G Rennison
6d4474b84e
Merge tag '13.0-beta2' into jgrpp
...
# Conflicts:
# src/cheat_gui.cpp
# src/company_gui.cpp
# src/console_gui.cpp
# src/depot_gui.cpp
# src/error_gui.cpp
# src/gfx.cpp
# src/graph_gui.cpp
# src/group_gui.cpp
# src/lang/english.txt
# src/lang/korean.txt
# src/lang/polish.txt
# src/misc_gui.cpp
# src/network/network_content_gui.h
# src/newgrf_debug_gui.cpp
# src/order_gui.cpp
# src/rail_gui.cpp
# src/road_gui.cpp
# src/settings_gui.cpp
# src/settings_type.h
# src/station_gui.cpp
# src/subsidy_gui.cpp
# src/table/settings/gui_settings.ini
# src/timetable_gui.cpp
# src/town_gui.cpp
# src/train_cmd.cpp
# src/vehicle_gui.cpp
# src/viewport.cpp
# src/water_cmd.cpp
# src/widgets/dropdown.cpp
# src/window_gui.h
2 years ago
Jonathan G Rennison
1f36c3f3e4
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/ai/ai_gui.cpp
# src/build_vehicle_gui.cpp
# src/genworld_gui.cpp
# src/lang/english.txt
# src/lang/german.txt
# src/lang/korean.txt
# src/newgrf_sound.cpp
# src/roadveh.h
# src/sound.cpp
# src/station_cmd.cpp
# src/train.h
# src/train_cmd.cpp
# src/vehicle.cpp
# src/vehicle_base.h
# src/vehicle_gui.cpp
2 years ago
Bernard Teo
8a78fa7121
Feature: Contextual actions for vehicles grouped by shared orders ( #8425 )
2 years ago
Henry Wilson
59dbcdb5ba
Feature: Display power-to-weight ratio in ground vehicle details GUI
2 years ago
Jonathan G Rennison
0bf1c9bb9d
Merge tag '13.0-beta1' into jgrpp
2 years ago
Nicolas Chappe
a43a1902bb
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.
(cherry picked from commit 977604ef08
)
2 years ago
Nicolas Chappe
f8a7b76675
Fix #9665 : [Linkgraph] Fix travel times of non-direct journeys
2 years ago
Jonathan G Rennison
29a1e49c28
Change various asserts to not be included in release builds
2 years ago
Jonathan G Rennison
c7e4dbf2f6
Fix displayed capacities/weights of articulated vehicles in build window
...
Simplify handling of multi-part capacities and refits
See: https://github.com/OpenTTD/OpenTTD/issues/9954
See: https://github.com/OpenTTD/OpenTTD/issues/10032
2 years ago
Jonathan G Rennison
764a67b168
Fix wrong header comment in CallVehicleTicks
2 years ago
Jonathan G Rennison
0bec49fa56
Skip sound effects handling earlier if effects volume is 0
2 years ago
Jonathan G Rennison
bf618a3584
Debug: Add more stats to dump map and veh stats console commands
2 years ago
Jonathan G Rennison
c6817fab6e
Don't use implicit orders for conditional order waiting loops
...
Fixes vehicles never leaving when the only order is an implicit order
(because vehicles were released with no orders)
2 years ago
Jonathan G Rennison
116ddf4b35
Fix timetable automation with conditional order sequences
2 years ago
Jonathan G Rennison
5059054f0a
Sending a vehicle to a depot for sale can now sell immediately
...
If the vehicle is already stopped in a suitable depot
2 years ago
Jonathan G Rennison
99ee4b13ce
Realistic braking: Cache train overall z position
...
Refresh cache at a variable rate depending on train length and
weight distribution
2 years ago
Jonathan G Rennison
6d877b5e70
Reduce redundant calls to get current max speed for trains and RVs
...
Between ShowVisualEffect() and UpdateSpeed()
2 years ago
Jonathan G Rennison
9fddfdeccf
Fix viewport map scrolling box blend over vehicles on animated blitters
2 years ago
Jonathan G Rennison
5b7db9d849
Merge branch 'master' into jgrpp
...
# Conflicts:
# .github/workflows/ci-build.yml
# .github/workflows/commit-checker.yml
# src/command.cpp
# src/company_cmd.cpp
# src/company_gui.cpp
# src/crashlog.cpp
# src/economy.cpp
# src/lang/english.txt
# src/lang/german.txt
# src/lang/korean.txt
# src/misc_gui.cpp
# src/newgrf_config.cpp
# src/openttd.cpp
# src/settings_gui.cpp
# src/ship_cmd.cpp
# src/table/settings/gui_settings.ini
2 years ago
Charles Pigott
146827c458
Fix #9877 : GS could trigger 'Cost: 0' cost message ( #9878 )
2 years ago
Jonathan G Rennison
d3efa2afe0
Show specific reason why vehicle cannot be ordered to a particular station
2 years ago
Jonathan G Rennison
92142e5684
Add routing restriction action to make exempt from speed adaptation
2 years ago
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
2 years ago
Jonathan G Rennison
df92b7e449
Merge branch 'road-stops' into jgrpp
2 years ago
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
2 years ago
Jonathan G Rennison
5119d61c82
If aircraft next order is for same station when leaving, do not leave
...
Just start loading again without moving instead
2 years ago
Niels Martin Hansen
e68bf58989
Codechange: Use anonymous union for vehicle orders/old orders list
2 years ago
Jonathan G Rennison
23c472d2a0
Add support for road stop animation, availability callback
...
Add animation, callback mask, general flags properties
Add animation frame variables
2 years ago
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
2 years ago
Jonathan G Rennison
904ff6757d
Add slot support to road vehicles, ships and aircraft
2 years ago
Jonathan G Rennison
2f8e63e954
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/gfx.cpp
# src/lang/traditional_chinese.txt
# src/station_cmd.cpp
2 years ago
Jonathan G Rennison
dd160a4e74
Support cond order to continue loading at station without moving for ships
2 years ago
Jonathan G Rennison
30817c3915
Fix VRF_BEYOND_PLATFORM_END not being cleared when switching order
2 years ago
Jonathan G Rennison
89181ea9fd
Add setting to increase cost/distance of aircraft linkgraph links
2 years ago
Tyler Trahan
9c18236f2c
Fix: Suppress vehicle age warnings for stopped vehicles
2 years ago
Michael Lutz
41fa16f325
Codechange: Don't use globals for return values from vehicle command procs.
2 years ago
Michael Lutz
13528bfcd0
Codechange: Un-bitstuff all remaining commands.
2 years ago
Michael Lutz
e08b3abe7f
Codechange: Un-bitstuff group and autoreplace commands.
2 years ago
Michael Lutz
21675ec7e2
Codechange: Un-bitstuff vehicle/engine commands.
2 years ago
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.
2 years ago
Michael Lutz
a38bbefe1b
Codechange: Untangle command code, flags and error string for DoCommand*.
2 years ago
Michael Lutz
b6933a2ebd
Codechange: Move command arguments to the back of the DoCommand function call.
2 years ago
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
3 years ago
Jonathan G Rennison
1ff03f8ee9
De-virtualise calls to Vehicle::OnNewDay
3 years ago
Jonathan G Rennison
5d6533e258
Debug: Add a multiline long form of DumpVehicleFlags
3 years ago
Jonathan G Rennison
5723c317f7
Fix trains with non-front parts needing repair not being serviced
3 years ago
Jonathan G Rennison
71c39dc8c2
If train next order is for same station when leaving, do not leave
...
Just start loading again without moving instead
3 years ago
nchappe
2cb6351af5
Fix: Update last servicing dates when using the date cheat ( #9694 )
3 years ago
Jonathan G Rennison
3ea4ac98e7
Fix missing VehicleRailFlags in DumpVehicleFlags
3 years ago
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
3 years ago
SamuXarick
a57c2b073a
Feature: Display icon/text whether vehicle is lost in vehicle (list) window ( #9543 )
3 years ago
Jonathan G Rennison
0748d540e8
Implement improved breakdown speed reductions for ships
3 years ago
Jonathan G Rennison
f8e30e807d
Fix ProcessOrders not always being called after leaving a waiting order
...
Fixes conditional order loop on leaving a depot
3 years ago
Jonathan G Rennison
4cf6b1e923
Fix ViewportAddVehiclesIntl using wrong image rotation for ships
...
When rotating in place
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
Jonathan G Rennison
71dfd2900a
Add depot order flag for specific depot
...
Use upper half of order flags for extra depot flags
See: #302
3 years ago
Jonathan G Rennison
fd0cb63963
Fix send vehicle to specific depot allowing incompatible rail types
3 years ago
Jonathan G Rennison
382955396f
Fix send vehicle to specific depot allowing incompatible road/tram types
...
See: #302
3 years ago
Jonathan G Rennison
5fb3eb0bb9
Adjust signal speed restriction timeouts when date or day length changed
3 years ago
Andreas Schmitt
c1bf236a26
Rewrite the ATC logic
...
Now signals store speed information with a timeout for this data's validity
3 years ago
rubidium42
55a11710a6
Codechange: convert printf DEBUG statements to fmt Debug statements
3 years ago
Jonathan G Rennison
1002c6d9d2
Fix various compiler warnings
...
See: #267
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
glx22
5799402f7a
Codechange: Rename window related DeleteXXX to match new behaviour
3 years ago
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.
3 years ago
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.
3 years ago
Matt Kimber
520595ff87
Fix 3d7ab09: stopped trains not updating viewport hash when reversed for a second time ( #9165 )
3 years ago
Jonathan G Rennison
e6a858c0dc
Fix date cheat/scenario load not adjusting vehicle date of last service
3 years ago
Jonathan G Rennison
d484c32d44
Reduce sensitivity of train overheated breakdown
3 years ago
Charles Pigott
dd798d688b
Fix #8919 : Release builds with asserts enabled ( #8925 )
3 years ago
Patric Stout
fece1c57ca
Codechange: Suppress warnings when asserts are disabled ( #8917 )
3 years ago
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
3 years ago
frosch
d9b4413bc9
Codechange: rename sound ids to make more sense. ( #8701 )
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
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
3 years ago
Jonathan G Rennison
6c3e5642f8
Merge branch 'master' into jgrpp
...
# Conflicts:
# cmake/CompileFlags.cmake
# src/crashlog.cpp
# src/fileio.cpp
# src/fileio_func.h
# src/fios_gui.cpp
# src/ini_load.cpp
# src/ini_type.h
# src/lang/english.txt
# src/lang/german.txt
# src/lang/korean.txt
# src/network/network_client.cpp
# src/order_base.h
# src/order_cmd.cpp
# src/os/windows/win32.cpp
# src/road_cmd.cpp
# src/saveload/saveload.cpp
# src/saveload/saveload.h
# src/settings.cpp
# src/station_cmd.cpp
# src/stdafx.h
# src/table/settings.ini
# src/tree_cmd.cpp
# src/tree_gui.cpp
# src/vehicle_base.h
# src/video/cocoa/cocoa_v.mm
# src/video/cocoa/event.mm
# src/video/cocoa/wnd_quartz.mm
# src/viewport.cpp
# src/widgets/tree_widget.h
3 years ago
Jonathan G Rennison
ed0ffb6220
Add feature: realistic train braking
...
Add setting to select train braking model.
3 years ago
Matt Kimber
40d5fe1631
Fix eeb88e8: Trains reversed while paused do not correctly update sprite bounds ( #8540 )
3 years ago
Charles Pigott
188bf0fbc9
Change: Remove disable_unsuitable_building setting
...
This setting is no longer useful, as you can now always build roads,
canals, etc.
3 years ago
Charles Pigott
9b800a96ed
Codechange: Remove min/max functions in favour of STL variants ( #8502 )
3 years ago
Matt Kimber
5728f9c7d0
Codechange: consider vehicle co-ordinates when identifying viewport candidate as using only the hash generates false positives
3 years ago
Matt Kimber
9b28b15e67
Codechange: create MutableSpriteCache to remove the need to cast Vehicle to a mutable type in render methods
3 years ago
Matt Kimber
eeb88e87d8
Codechange: improve performance for complex vehicle chains by resolving sprites less often
3 years ago
Jonathan G Rennison
204f8e173f
Fix sprite bound issues for vehicles which vary bounds with curvature
...
If a vehicle uses curvature vars 0x45 or 0x62, cache the directions
of its 4 nearest neighbours, and check them in UpdateViewport along
with the vehicle's own direction.
3 years ago
Charles Pigott
860c270c73
Codechange: Replace assert_compile macro with static_assert
3 years ago
Jonathan G Rennison
78b06ddc40
TBTR: Fix palette recolouring of templates
...
Fix group overrides affecting template image when cloning vehicle
Update template when changing company colours
Update template images on demand instead of at load
3 years ago
Jonathan G Rennison
99b2698658
Update vehicle image on demand when image is continuously updated by GRF
...
This is for trains/RVs only (to avoid issues with variable sprite bounds)
This largely fixes the performance issues of continuously updating
vehicle images
4 years ago
Jonathan G Rennison
75eeac8ff9
Fix crash when skipping suppressed unreached implicit orders on load
4 years ago
Jonathan G Rennison
cce6d731a1
TBTR: Delete orphaned virtual trains on client disconnection
4 years ago
Jonathan G Rennison
e684135e4a
Add fast path to ViewportMapDrawVehicles horizontal hash bit check
4 years ago
Jonathan G Rennison
bd2649c19e
Avoid unnecessary redrawing of vehicle list windows
...
Redraw info section every tick if values have changed
4 years ago
Jonathan G Rennison
a474e71243
Viewport: Cache landscape pixels in map mode
...
Avoid invalidating landscape pixels for non-landscape updates
(vehicles, overlays, etc.)
4 years ago
Jonathan G Rennison
352b361e1b
Viewport: Replace viewport mark dirty if zoom level below with flags param
...
Fix missing flags for tracerestrict and effect vehicles
4 years ago
Galigator
933d02dce2
Change: Service depot also reset breakdown chance.
4 years ago
Jonathan G Rennison
ff12051ee1
Only show ship is lost messages if lost for a significant time
4 years ago
Jonathan G Rennison
5b78090a61
Merge branch 'master' into jgrpp
...
# Conflicts:
# CMakeLists.txt
# src/saveload/town_sl.cpp
# src/screenshot.h
# src/script/api/ai/ai_date.hpp.sq
# src/script/api/ai/ai_marine.hpp.sq
# src/script/api/ai/ai_station.hpp.sq
# src/script/api/game/game_date.hpp.sq
# src/script/api/game/game_marine.hpp.sq
# src/script/api/game/game_station.hpp.sq
# src/script/api/game/game_window.hpp.sq
# src/script/api/script_window.hpp
# src/script/api/template/template_window.hpp.sq
# src/signal.cpp
# src/statusbar_gui.cpp
# src/toolbar_gui.cpp
# src/viewport.cpp
# src/viewport_func.h
4 years ago
Jonathan G Rennison
810bfd276e
Add several NewGRF variables to vehicle image callback whitelist
...
Add vehicle flags to control cached image invalidation
Various refactorings
4 years ago
TechGeekNZ
a10013dd00
Codechange: Spell 'Viewport' consistently
...
Some places in the codebase misspell 'Viewport' as 'ViewPort' or 'view_port'.
This patch makes everything consistent.
4 years ago
Jonathan G Rennison
002e99ac34
Debug: Show tile info on separate lines in vehicle debug window
4 years ago
Jonathan G Rennison
1f5de8b82c
Auto separation: Remove circular linked list, use new algorithm
4 years ago
Jonathan G Rennison
894fd6c609
Add separation state to DumpVehicleFlags
4 years ago