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
Jonathan G Rennison
1002c6d9d2
Fix various compiler warnings
...
See: #267
2021-06-11 22:54:27 +01: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
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
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
frosch
d9b4413bc9
Codechange: rename sound ids to make more sense. ( #8701 )
2021-02-20 19:01:04 +01:00
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
2021-02-05 11:00: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
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
2021-01-31 01:08:35 +00:00
Jonathan G Rennison
ed0ffb6220
Add feature: realistic train braking
...
Add setting to select train braking model.
2021-01-28 19:03:18 +00:00
Matt Kimber
40d5fe1631
Fix eeb88e8
: Trains reversed while paused do not correctly update sprite bounds ( #8540 )
2021-01-17 19:57:16 +01:00
Charles Pigott
188bf0fbc9
Change: Remove disable_unsuitable_building setting
...
This setting is no longer useful, as you can now always build roads,
canals, etc.
2021-01-08 16:43:51 +01:00
Charles Pigott
9b800a96ed
Codechange: Remove min/max functions in favour of STL variants ( #8502 )
2021-01-08 11:16:18 +01:00
Matt Kimber
5728f9c7d0
Codechange: consider vehicle co-ordinates when identifying viewport candidate as using only the hash generates false positives
2021-01-05 11:42:25 +01:00
Matt Kimber
9b28b15e67
Codechange: create MutableSpriteCache to remove the need to cast Vehicle to a mutable type in render methods
2021-01-05 11:42:25 +01:00
Matt Kimber
eeb88e87d8
Codechange: improve performance for complex vehicle chains by resolving sprites less often
2021-01-05 11:42:25 +01:00
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.
2021-01-03 16:12:59 +00:00
Charles Pigott
860c270c73
Codechange: Replace assert_compile macro with static_assert
2020-12-27 10:55:42 +00:00
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
2020-12-26 09:37:26 +00:00
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
2020-11-08 23:09:01 +00:00
Jonathan G Rennison
75eeac8ff9
Fix crash when skipping suppressed unreached implicit orders on load
2020-10-17 17:25:44 +01:00
Jonathan G Rennison
cce6d731a1
TBTR: Delete orphaned virtual trains on client disconnection
2020-10-09 19:26:07 +01:00
Jonathan G Rennison
e684135e4a
Add fast path to ViewportMapDrawVehicles horizontal hash bit check
2020-10-06 18:15:56 +01:00
Jonathan G Rennison
bd2649c19e
Avoid unnecessary redrawing of vehicle list windows
...
Redraw info section every tick if values have changed
2020-10-05 20:37:17 +01:00
Jonathan G Rennison
a474e71243
Viewport: Cache landscape pixels in map mode
...
Avoid invalidating landscape pixels for non-landscape updates
(vehicles, overlays, etc.)
2020-10-01 23:18:39 +01:00
Jonathan G Rennison
352b361e1b
Viewport: Replace viewport mark dirty if zoom level below with flags param
...
Fix missing flags for tracerestrict and effect vehicles
2020-10-01 23:18:39 +01:00
Galigator
933d02dce2
Change: Service depot also reset breakdown chance.
2020-09-25 22:38:58 +02:00
Jonathan G Rennison
ff12051ee1
Only show ship is lost messages if lost for a significant time
2020-09-07 18:24:49 +01:00
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
2020-08-27 18:31:09 +01:00
Jonathan G Rennison
810bfd276e
Add several NewGRF variables to vehicle image callback whitelist
...
Add vehicle flags to control cached image invalidation
Various refactorings
2020-08-25 01:26:44 +01:00
TechGeekNZ
a10013dd00
Codechange: Spell 'Viewport' consistently
...
Some places in the codebase misspell 'Viewport' as 'ViewPort' or 'view_port'.
This patch makes everything consistent.
2020-07-27 17:31:29 +01:00
Jonathan G Rennison
002e99ac34
Debug: Show tile info on separate lines in vehicle debug window
2020-07-09 17:40:00 +01:00
Jonathan G Rennison
1f5de8b82c
Auto separation: Remove circular linked list, use new algorithm
2020-07-09 02:15:16 +01:00
Jonathan G Rennison
894fd6c609
Add separation state to DumpVehicleFlags
2020-07-07 18:22:06 +01:00
Jonathan G Rennison
09a1a7ce1a
Auto-separation: Tidy up Vehicle::InitSeparation
2020-07-07 18:14:50 +01:00
Jonathan G Rennison
b520193831
Fix incorrect news parameters for vehicle too heavy advice message
2020-07-07 18:10:38 +01:00
Jonathan G Rennison
3adeff1883
Merge branch 'master' into jgrpp
...
# Conflicts:
# CMakeLists.txt
# cmake/CompileFlags.cmake
# src/bridge_gui.cpp
# src/saveload/afterload.cpp
# src/saveload/saveload.cpp
# src/saveload/saveload.h
# src/saveload/town_sl.cpp
# src/screenshot.cpp
# src/screenshot.h
# src/toolbar_gui.cpp
# src/town.h
# src/town_cmd.cpp
2020-06-30 21:43:04 +01:00
Charles Pigott
218db00c4c
Fix #8216 : Don't show floating text on autoreplace if cost is 0
2020-06-28 00:00:28 +01:00
Michael Lutz
f2b40f40aa
Codechange: Replace SmallPair with std::pair.
...
std::pair is already the smallest possible pair, and it already handles non-POD types correctly.
2020-05-21 20:02:34 +02:00
Jonathan G Rennison
f077c3bf6e
Merge branch 'master' into jgrpp
2020-04-06 20:58:54 +01:00
glx
b50d77b831
Fix #8064 : Incorrect display of refit capacity
2020-04-06 16:21:30 +01:00
Jonathan G Rennison
f3145030b7
Fix false positive in ValidateVehicleTileHash
2020-03-09 09:22:51 +00:00
Jonathan G Rennison
cb6a01cab3
Fix cases where departures board data was not invalidated
2020-03-09 09:22:38 +00:00
Jonathan G Rennison
a4608f6f72
Cache vehicle positions across draw blocks in viewport map mode
2020-03-05 23:06:01 +00:00
Jonathan G Rennison
4108672cf6
Use separate tile hash for each vehicle type
2020-03-03 06:57:50 +00:00
Jonathan G Rennison
4020719227
Exclude effect and disaster vehicles from vehicle tile hash
2020-03-03 06:57:50 +00:00
Jonathan G Rennison
de2c2f7cea
Fix 37adf9be
: Fix last effect flag not being checked if front has no effect
2020-02-27 01:57:35 +00:00