Tyler Trahan
930f0a16d8
Codechange: Define Date/Year/Month/Day within TimerGameCalendar class
1 year ago
Patric Stout
31ad990831
Codechange: move tick-counter into TimerGameTick ( #10712 )
1 year ago
Jonathan G Rennison
bd837a2fcd
TBTR: Mark vehicles as requiring service on template/replacement change
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
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
1 year ago
Rubidium
b7a5d8e296
Codechange: add annotation to selectively force inlining in debug build
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
2 years ago
Rubidium
375a5b8e3f
Codechange: refactor FindClosestDepot to not use pointers, but return a struct
2 years 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
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
Artin Alavi
fd4f148c62
Feature: Hotkey to honk a vehicle's horn ( #10110 )
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
f8a7b76675
Fix #9665 : [Linkgraph] Fix travel times of non-direct journeys
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
72e2ee882e
Fix 1a38cbde7: Ship viewport hash not updated on rotation
2 years ago
Andy
24c07f1640
Change: increase vehicle sprite stack from 4 layers to 8 ( #9863 )
...
(cherry picked from commit 1cfdbb4dea
)
2 years ago
Andy
1cfdbb4dea
Change: increase vehicle sprite stack from 4 layers to 8 ( #9863 )
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
Niels Martin Hansen
e68bf58989
Codechange: Use anonymous union for vehicle orders/old orders list
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
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
5d6533e258
Debug: Add a multiline long form of DumpVehicleFlags
3 years ago
dP
54951e39a1
Fix #8797 : Use logical rail length when placing signals ( #9652 )
3 years ago
nchappe
2cb6351af5
Fix: Update last servicing dates when using the date cheat ( #9694 )
3 years ago
Jonathan G Rennison
d1f1a6942a
Add support for loading trunk savegames versions 293 - 299 (12.0)
...
Use modified upstream saveload implementation for these versions
Re-arrange headers to support multiple saveload implementations
3 years ago
Jonathan G Rennison
61cc60099a
Merge branch 'jgrpp' into jgrpp-beta
...
# Conflicts:
# src/network/core/packet.cpp
# src/network/core/udp.cpp
3 years ago
Jonathan G Rennison
544da99102
Merge branch 'master' into jgrpp-beta
...
# Conflicts:
# src/cargopacket.h
# src/lang/korean.txt
# src/linkgraph/linkgraph.h
# src/linkgraph/linkgraphjob.h
# src/linkgraph/linkgraphschedule.h
# src/network/network_admin.h
# src/network/network_func.h
# src/network/network_server.cpp
# src/network/network_server.h
# src/order_base.h
# src/rail_cmd.cpp
# src/saveload/company_sl.cpp
# src/saveload/depot_sl.cpp
# src/saveload/economy_sl.cpp
# src/saveload/linkgraph_sl.cpp
# src/saveload/map_sl.cpp
# src/saveload/newgrf_sl.cpp
# src/saveload/order_sl.cpp
# src/saveload/saveload.cpp
# src/saveload/saveload.h
# src/saveload/signs_sl.cpp
# src/saveload/station_sl.cpp
# src/saveload/subsidy_sl.cpp
# src/saveload/town_sl.cpp
# src/saveload/vehicle_sl.cpp
# src/script/api/script_object.cpp
# src/settings.cpp
# src/string.cpp
# src/string_func.h
# src/table/CMakeLists.txt
# src/table/settings/settings.ini
# src/viewport_sprite_sorter_sse4.cpp
3 years ago
Jonathan G Rennison
71a5abd42b
Fix aircraft shadows being drawn facing the wrong direction
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
Patric Stout
4e4720f217
Codechange: remove the special station/vehicle code from SaveLoad
...
With the new SLEG_STRUCT it is much easier to embed a struct
in a struct, where the sub-struct has limitations on when it is
being used.
This makes both the code easier to read (less magic) and avoids
the SaveLoad needing to know all these things about Stations
and Vehicles.
3 years ago
Patric Stout
9fff00ba20
Codechange: C++-ify lists for SaveLoad ( #9323 )
...
Basically, this changes "SaveLoad *" to either:
1) "SaveLoadTable" if a list of SaveLoads was meant
2) "SaveLoad &" if a single entry was meant
As added bonus, this removes SL_END / SLE_END / SLEG_END. This
also adds core/span.hpp, a "std::span"-lite.
3 years ago
Jonathan G Rennison
a8157770df
Add fast path to vehicle var 0x42 if only upper byte is required
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
3e8ee4f49f
Remove "Disable vehicle image update" setting
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
95fb222852
Distribute articulated vehicle weight evenly between articulated parts
...
Instead of allocating it all to the first part
This improves realistic braking behaviour for long articulated consists
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
Matt Kimber
40d5fe1631
Fix eeb88e8: Trains reversed while paused do not correctly update sprite bounds ( #8540 )
3 years ago
Matt Kimber
5728f9c7d0
Codechange: consider vehicle co-ordinates when identifying viewport candidate as using only the hash generates false positives
4 years ago
Matt Kimber
9b28b15e67
Codechange: create MutableSpriteCache to remove the need to cast Vehicle to a mutable type in render methods
4 years ago
Matt Kimber
eeb88e87d8
Codechange: improve performance for complex vehicle chains by resolving sprites less often
4 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.
4 years ago
glx22
d8605ad18d
Codechange: Replace FOR_VEHICLE_ORDERS with range-based for loops
4 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
cde5e8c79d
Add setting to disable continuously updating NewGRF vehicle image
4 years ago
Jonathan G Rennison
53af61fc9e
Do not charge vehicle running costs when waiting in depot due to timetable
...
See: #202
4 years ago
Jonathan G Rennison
cce6d731a1
TBTR: Delete orphaned virtual trains on client disconnection
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
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
4020719227
Exclude effect and disaster vehicles from vehicle tile hash
4 years ago
Jonathan G Rennison
76f68c48f5
Cache whether vehicle is currently drawn: Vehicle::IsDrawn()
4 years ago
Jonathan G Rennison
9917a1daef
Scheduled dispatch: Add hints about dispatch order to timetable window
...
Adjust condition for dispatch order
4 years ago
Jonathan G Rennison
7960db35f2
Merge branch 'master' into jgrpp
...
# Conflicts:
# config.lib
# projects/openttd_vs140.vcxproj
# projects/openttd_vs140.vcxproj.filters
# projects/openttd_vs141.vcxproj
# projects/openttd_vs141.vcxproj.filters
# projects/openttd_vs142.vcxproj
# projects/openttd_vs142.vcxproj.filters
# src/aircraft_cmd.cpp
# src/base_station_base.h
# src/core/pool_type.hpp
# src/disaster_vehicle.cpp
# src/economy.cpp
# src/engine.cpp
# src/group.h
# src/group_cmd.cpp
# src/group_gui.cpp
# src/lang/english.txt
# src/lang/german.txt
# src/linkgraph/linkgraph_gui.cpp
# src/network/network_command.cpp
# src/network/network_server.cpp
# src/openttd.cpp
# src/order_cmd.cpp
# src/road_cmd.cpp
# src/saveload/afterload.cpp
# src/saveload/cargopacket_sl.cpp
# src/saveload/linkgraph_sl.cpp
# src/saveload/order_sl.cpp
# src/saveload/station_sl.cpp
# src/saveload/town_sl.cpp
# src/saveload/vehicle_sl.cpp
# src/screenshot.cpp
# src/screenshot.h
# src/settings_gui.cpp
# src/settings_type.h
# src/smallmap_gui.cpp
# src/station.cpp
# src/station_cmd.cpp
# src/table/settings.ini
# src/toolbar_gui.cpp
# src/town_cmd.cpp
# src/train.h
# src/train_cmd.cpp
# src/train_gui.cpp
# src/vehicle.cpp
# src/vehicle_base.h
# src/vehiclelist.cpp
# src/window_type.h
5 years ago
glx
d8a1be48cd
Codechange: Replace vehicle related FOR_ALL with range-based for loops
5 years ago
Jonathan G Rennison
aa8aae9a62
Initial implementation of tracerestrict speed restriction feature
5 years ago
Jonathan G Rennison
cbdd9f84d8
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/console_gui.cpp
# src/lang/korean.txt
# src/video/sdl2_v.cpp
# src/video/sdl2_v.h
# src/window.cpp
# src/window_gui.h
5 years ago
S. D. Cloudt
13cc8a0cee
Cleanup: Removed SVN headers
5 years ago
Jonathan G Rennison
36eb4165b8
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/bridge_map.h
# src/crashlog.cpp
# src/industry.h
# src/linkgraph/linkgraph_type.h
# src/order_type.h
# src/saveload/afterload.cpp
# src/settings.cpp
# src/settings_type.h
# src/smallmap_gui.cpp
# src/spritecache.cpp
# src/stdafx.h
# src/table/settings.h.preamble
# src/train.h
# src/vehicle.cpp
# src/viewport.cpp
# src/viewport_func.h
# src/widgets/station_widget.h
# src/zoom_func.h
# src/zoom_type.h
5 years ago
Charles Pigott
5b34c8019f
Codechange: Remove Company/OwnerByte types
5 years ago
Charles Pigott
96097b34a5
Codechange: Remove Direction*Byte types
5 years ago
Jonathan G Rennison
674732cd68
Merge: Codechange: Use null pointer literal instead of the NULL macro
5 years ago
Henry Wilson
7c8e7c6b6e
Codechange: Use null pointer literal instead of the NULL macro
5 years ago
Jonathan G Rennison
99b79c26c6
Remove disaster vehicles from tick cache immediately on deletion
5 years ago
Jonathan G Rennison
3b55f5d765
Cache whether ground vehicles currently have 0 slope resistance
5 years ago
Jonathan G Rennison
3af5861693
Fix ship sprite not being updated when rotating to match direction change
5 years ago
Jonathan G Rennison
37adf9be4a
Cache the last vehicle in a consist to have a visual effect
6 years ago
Jonathan G Rennison
e5b61e0b6c
Refactor CallVehicleTicks vehicle loop
6 years ago
Jonathan G Rennison
191afd93c1
Merge branch 'save_ext' into jgrpp
...
# Conflicts:
# src/lang/english.txt
# src/lang/german.txt
# src/lang/korean.txt
# src/settings.cpp
# src/station_cmd.cpp
# src/table/settings.ini
# src/vehicle_base.h
# src/widgets/dropdown.cpp
6 years ago
Peter Nelson
81330b8d6e
Change: Add path cache for ships.
6 years ago
Jonathan G Rennison
e735c1a51a
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/aircraft_cmd.cpp
# src/autoreplace_cmd.cpp
# src/pathfinder/follow_track.hpp
# src/pathfinder/yapf/yapf_rail.cpp
# src/saveload/afterload.cpp
# src/saveload/saveload.cpp
# src/script/api/ai/ai_station.hpp.sq
# src/script/api/game/game_station.hpp.sq
# src/script/api/script_station.hpp
# src/track_func.h
# src/vehicle_base.h
6 years ago
Charles Pigott
f5b1115039
Doc: Lots and lots of doxymentation fixes
6 years ago
Jonathan G Rennison
3330e4cef8
Merge branch 'cargo_type_order' into jgrpp
...
# Conflicts:
# src/pathfinder/yapf/yapf_common.hpp
# src/saveload/extended_ver_sl.cpp
# src/saveload/order_sl.cpp
# src/saveload/station_sl.cpp
# src/track_func.h
6 years ago
Jonathan G Rennison
00b1fe6246
Cargo type orders: Add support for 64 cargo types
6 years ago
Jonathan G Rennison
0ae32838ea
Merge branch 'save_ext' into cargo_type_order
...
# Conflicts:
# src/core/smallstack_type.hpp
6 years ago
Jonathan G Rennison
943f4fdabb
Debug: Add train and RV flags to scope info dump
...
Move flag dumping to separate function
6 years ago
Jonathan G Rennison
56be293107
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/blitter/32bpp_anim.cpp
# src/blitter/32bpp_anim.hpp
# src/blitter/32bpp_anim_sse2.cpp
# src/blitter/32bpp_base.cpp
# src/blitter/32bpp_base.hpp
# src/ground_vehicle.cpp
# src/linkgraph/linkgraph_gui.h
# src/main_gui.cpp
# src/newgrf_house.cpp
# src/newgrf_house.h
# src/town_cmd.cpp
# src/vehicle_base.h
# src/viewport_gui.cppp
6 years ago
PeterN
a07394a63a
Change: Remove direction parameter from Vehicle::UpdateDeltaXY. ( #6792 )
...
The value is either unused or always the same as this->direction.
6 years ago
Jonathan G Rennison
78838ee2a2
Add freight train load/unload mode: through load
6 years ago
Jonathan G Rennison
a6a1e67dbc
Scale displayed running costs by day length factor
7 years ago
Jonathan G Rennison
d730cfd51d
Cache sprite sequence bounds for vehicles
7 years ago
Jonathan G Rennison
3a2a316588
Merge branch 'day_length' into jgrpp
...
# Conflicts:
# src/saveload/extended_ver_sl.cpp
# src/saveload/vehicle_sl.cpp
7 years ago
Jonathan G Rennison
7b567c9d26
Extend vehicle running ticks to 16 bits to avoid overflow at day length > 3
7 years ago
Jonathan G Rennison
218085c535
Timetable: Implement autofill/automate for taken conditional orders.
...
Fix wrong timetable values being set after using skip or send to depot.
Add timetabled flag for conditional order branch taken travel time.
7 years ago
innocenat
0b8f0e64ec
Scheduled Dispatch feature
...
Code is tested and run well on small-ish train network. Not tested extensively.
7 years ago
peter1138
19d56a33e8
(svn r27822) -Feature: Vehicle Group Info: Add profits and occupancy display to group vehicle list (mtm, JGR)
7 years ago
Jonathan G Rennison
cfc04c6408
Merge branch 'lifetime_profit-sx' into jgrpp
...
# Conflicts:
# src/vehicle_base.h
8 years ago
Jonathan G Rennison
529aafd257
Reset overall lifetime profit to 0 when renewing vehicle.
8 years ago
Jonathan G Rennison
7ecdebddb3
Change and simplify algorithm for vehicle repair cost.
...
This is due to absurdly high repair costs for old vehicles with
old algorithm, due to implicit exponential increases.
Get rid of variable in vehicle struct.
8 years ago
Jonathan G Rennison
55e57fd07d
Add shift-clicking on vehicle depot button to select specific depot.
8 years ago
Jonathan G Rennison
7f10d83a4a
Merge branch 'template_train_replacement' into jgrpp
...
# Conflicts:
# src/linkgraph/linkgraphjob.cpp
# src/saveload/extended_ver_sl.cpp
# src/train_cmd.cpp
# src/vehicle_base.h
8 years ago
Jonathan G Rennison
d204062300
Merge branch 'master' into template_train_replacement
8 years ago
frosch
117e73751c
(svn r27668) -Feature: [NewGRF] Allow composing vehicles from multiple sprites.
8 years ago
frosch
ba566e9126
(svn r27668) -Feature: [NewGRF] Allow composing vehicles from multiple sprites.
8 years ago
frosch
c175067ed9
(svn r27667) -Codechange: Add VehicleSpriteSeq::GetBounds and Draw.
8 years ago
frosch
a37bb32fd6
(svn r27667) -Codechange: Add VehicleSpriteSeq::GetBounds and Draw.
8 years ago