Jonathan G Rennison
0ea57528c9
Rename DateTicksScaled to StateTicks
...
Rename various other related/derived types and variables
4 months ago
Jonathan G Rennison
1ce8930583
Use DateTicksScaled for Vehicle::last_loading_tick
4 months ago
Jonathan G Rennison
ced17a74e8
Do not update viewport signs when running headlessly
4 months ago
Jonathan G Rennison
3ab31f5518
Add settings for town/industry cargo production scaling modes
5 months ago
Jonathan G Rennison
1e0bb019a7
Change cargo scaling settings to be linear instead of logarithmic
5 months ago
Jonathan G Rennison
c8ff26f2b8
Reset town/industry scaling settings when loading old games
5 months ago
Jonathan G Rennison
c8d82eb988
Fix two rail types per tile with savegame versions before 24
5 months ago
Jonathan G Rennison
0df59defc4
Merge branch 'master' into jgrpp
...
# Conflicts:
# .github/workflows/release-linux.yml
# .github/workflows/release.yml
# src/rail_cmd.cpp
# src/rail_gui.cpp
# src/script/api/script_rail.cpp
# src/settings_gui.cpp
# src/signal_type.h
# src/video/sdl2_v.cpp
5 months ago
Jonathan G Rennison
3af99bd2dc
Rename ShowInfo to ShowInfoI, add ShowInfo fmt macro
5 months ago
Jonathan G Rennison
3050620189
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/autoreplace_cmd.cpp
# src/build_vehicle_gui.cpp
# src/cargotype.cpp
# src/economy.cpp
# src/engine_gui.cpp
# src/industry_cmd.cpp
# src/industry_gui.cpp
# src/linkgraph/linkgraph_gui.h
# src/linkgraph/refresh.cpp
# src/linkgraph/refresh.h
# src/newgrf.cpp
# src/newgrf_airporttiles.h
# src/newgrf_roadstop.cpp
# src/newgrf_station.cpp
# src/newgrf_station.h
# src/order_base.h
# src/order_cmd.cpp
# src/order_func.h
# src/order_gui.cpp
# src/pathfinder/pathfinder_type.h
# src/saveload/afterload.cpp
# src/subsidy_base.h
# src/vehicle_cmd.cpp
# src/vehicle_gui.cpp
# src/vehicle_gui_base.h
5 months ago
Jonathan G Rennison
936d636cdd
No longer save/load water region invalidation states
...
Move InitializeWaterRegions to AllocateMap
No longer ForceUpdate in InitializeWaterRegions
5 months ago
Peter Nelson
400ae65ff2
Codechange: Redefine some cargo-related values in terms of CargoID instead of CargoType.
...
Values used as special filter types are now defined as offsets from NUM_CARGO instead of confusingly reusing CARGO_NO_REFIT/CARGO_AUTO_REFIT types.
5 months ago
Peter Nelson
952d111b94
Codechange: Split CT_INVALID into CT_INVALID and INVALID_CARGO.
...
INVALID_CARGO is a CargoID and should be used for most purposes in game.
CT_INVALID is a CargoType used for defining default properties.
5 months ago
Jonathan G Rennison
914b92b21f
Merge branch 'master' into jgrpp
...
Bump savegame for water regions for ship pathfinder
Use ring_buffer for ShipPathCache
5 months ago
Kuhnovic
f1e999ec59
Feature: Region-based pathfinder for ships ( #10543 )
5 months ago
Jonathan G Rennison
97e6f3062e
Adding of _t to (u)int types, and WChar to char32_t
...
See: eaae0bb5e
5 months ago
Jonathan G Rennison
7f6b1d6b94
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/company_cmd.cpp
# src/company_func.h
# src/core/overflowsafe_type.hpp
# src/engine.cpp
# src/music/midifile.cpp
# src/network/network_command.cpp
# src/newgrf_debug_gui.cpp
# src/newgrf_roadstop.h
# src/newgrf_spritegroup.cpp
# src/os/macosx/crashlog_osx.cpp
# src/os/unix/crashlog_unix.cpp
# src/pathfinder/yapf/yapf_common.hpp
# src/road_gui.cpp
# src/saveload/engine_sl.cpp
# src/script/api/script_depotlist.cpp
# src/script/api/script_roadtypelist.cpp
# src/settings_gui.cpp
# src/settings_type.h
# src/strings.cpp
# src/table/settings/game_settings.ini
5 months ago
Rubidium
e3f49ee7a0
Codechange: coding style fixes
5 months ago
Jonathan G Rennison
9ea49d6680
Only compile OrderList::DebugCheckSanity when WITH_ASSERT defined
5 months ago
Jonathan G Rennison
f3614c419d
Fix savegames with incorrect signal always reserve through bits
...
See: #620
5 months ago
Jonathan G Rennison
ffff696b4e
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/build_vehicle_gui.cpp
# src/cheat_gui.cpp
# src/console_cmds.cpp
# src/crashlog.cpp
# src/date_gui.cpp
# src/engine.cpp
# src/group_cmd.cpp
# src/landscape.cpp
# src/network/network_gui.cpp
# src/newgrf.cpp
# src/saveload/afterload.cpp
# src/script/api/script_date.cpp
# src/sl/oldloader_sl.cpp
# src/station_cmd.cpp
# src/station_cmd.h
# src/strings.cpp
# src/subsidy_gui.cpp
# src/survey.cpp
# src/timer/timer_game_calendar.cpp
# src/timer/timer_game_calendar.h
5 months ago
Peter Nelson
bfb4254226
Fix: Changing default livery did not propagate to group liveries.
...
#11614 attempted to address this but did not handle 2CC properly, and changes to the default livery were not handled.
5 months ago
Jonathan G Rennison
03e0ec8276
Strong typedef: Use strong typedefs for date, date tick, minutes types
...
Add delta types
Adjust/add type conversion functions
Add various utility methods on types
Remove the various minute macros
Fix some minute conversion inconsistencies
6 months ago
Jonathan G Rennison
8ac13f58cb
Saveload: Default savegame time units to days when loading vanilla saves
6 months ago
Jonathan G Rennison
4fac6b295c
Merge branch 'master' into jgrpp
...
# Conflicts:
# .github/workflows/release-linux.yml
# src/base_consist.h
# src/blitter/32bpp_optimized.cpp
# src/blitter/32bpp_optimized.hpp
# src/blitter/32bpp_sse2.hpp
# src/blitter/8bpp_optimized.hpp
# src/gfx_func.h
# src/industry_cmd.cpp
# src/industrytype.h
# src/linkgraph/linkgraphjob.cpp
# src/mixer.cpp
# src/newgrf_callbacks.h
# src/openttd.cpp
# src/os/macosx/macos.mm
# src/os/windows/win32.cpp
# src/pathfinder/npf/npf.cpp
# src/road_cmd.cpp
# src/saveload/afterload.cpp
# src/saveload/saveload.h
# src/saveload/vehicle_sl.cpp
# src/sound.cpp
# src/spritecache.cpp
# src/spriteloader/spriteloader.hpp
# src/station_map.h
# src/timetable_cmd.cpp
# src/timetable_cmd.h
# src/timetable_gui.cpp
# src/town_cmd.cpp
# src/vehicle_cmd.cpp
# src/vehicle_gui_base.h
# src/video/opengl.cpp
# src/video/opengl.h
# src/viewport.cpp
6 months ago
Jonathan G Rennison
e9599fd4be
Scheduled dispatch: Remove scheduled_dispatch_start_full_date_fract
...
Use DateTicksScaled
6 months ago
Jonathan G Rennison
c76a5ed638
Timetable: Remove timetable_start_subticks, use DateTicksScaled
6 months ago
Tyler Trahan
1f41e773d6
Codechange: Use consistent name for bay road stops
...
As of #10494 , this is how we describe original dead-end road stops.
6 months ago
Jonathan G Rennison
2a31095118
Merge branch 'master' into jgrpp
...
# Conflicts:
# regression/regression/result.txt
# src/aircraft_cmd.cpp
# src/airport_gui.cpp
# src/articulated_vehicles.cpp
# src/console_cmds.cpp
# src/date_gui.cpp
# src/engine.cpp
# src/genworld_gui.cpp
# src/gfx_layout_fallback.cpp
# src/group_gui.cpp
# src/hotkeys.cpp
# src/network/core/tcp_connect.cpp
# src/network/core/tcp_listen.h
# src/newgrf.cpp
# src/newgrf.h
# src/newgrf_engine.cpp
# src/newgrf_gui.cpp
# src/newgrf_station.cpp
# src/openttd.cpp
# src/order_gui.cpp
# src/os/macosx/osx_main.cpp
# src/pathfinder/yapf/yapf_node_rail.hpp
# src/rail_gui.cpp
# src/saveload/afterload.cpp
# src/saveload/cargopacket_sl.cpp
# src/saveload/linkgraph_sl.cpp
# src/saveload/station_sl.cpp
# src/script/api/script_industrytype.cpp
# src/settings.cpp
# src/settings_gui.cpp
# src/settings_table.cpp
# src/settingsgen/settingsgen.cpp
# src/station.cpp
# src/station_cmd.cpp
# src/strings.cpp
# src/timer/timer_game_calendar.cpp
# src/timer/timer_game_calendar.h
# src/timer/timer_manager.h
# src/timer/timer_window.cpp
# src/timetable_cmd.cpp
# src/toolbar_gui.cpp
# src/town_cmd.cpp
# src/town_gui.cpp
# src/train_gui.cpp
# src/vehicle_cmd.h
# src/vehicle_gui.cpp
# src/viewport.cpp
# src/widgets/dropdown.cpp
# src/window_func.h
# src/window_gui.h
6 months ago
Jonathan G Rennison
c929f7075e
Merge branch 'master' into jgrpp
...
# Conflicts:
# cmake/SourceList.cmake
# src/build_vehicle_gui.cpp
# src/company_gui.cpp
# src/console_cmds.cpp
# src/depot_base.h
# src/elrail.cpp
# src/network/core/udp.cpp
# src/network/network_admin.cpp
# src/network/network_chat_gui.cpp
# src/network/network_gui.cpp
# src/network/network_server.cpp
# src/newgrf.cpp
# src/newgrf_engine.cpp
# src/newgrf_railtype.cpp
# src/newgrf_railtype.h
# src/newgrf_storage.h
# src/os/unix/crashlog_unix.cpp
# src/rail.h
# src/rail_cmd.cpp
# src/rail_gui.cpp
# src/road_cmd.cpp
# src/road_map.h
# src/saveload/labelmaps_sl.cpp
# src/settings_gui.cpp
# src/settings_type.h
# src/sl/oldloader_sl.cpp
# src/station_cmd.cpp
# src/station_gui.cpp
# src/table/settings/world_settings.ini
# src/tests/test_script_admin.cpp
# src/textfile_gui.cpp
# src/toolbar_gui.cpp
# src/train_cmd.cpp
# src/tunnelbridge_cmd.cpp
# src/vehicle_gui.cpp
# src/widget.cpp
# src/window.cpp
# src/window_gui.h
# src/window_type.h
7 months ago
Jonathan G Rennison
35d1955db0
Fix crash which could occur when adjusting train lengths for old saves
...
e.g. due to only partially initialised timetable
7 months ago
Peter Nelson
ab535c0a86
Codechange: Add base() method to StrongType to allow access to the base type without casting. ( #11445 )
...
This removes the ability to explicitly cast to the base type, but the requirement
to use .base() means the conversion is still explicit.
7 months ago
Peter Nelson
9602de474d
Codechange: Use iterators and/or range-for on cargo related loops.
8 months ago
Jonathan G Rennison
df4c458c29
Add savegame flag for station tile cache flags
...
Update flags as necessary on load and when reloading GRFs
8 months ago
Peter Nelson
b2a1ec96f1
Change: Store station blocked/wires/pylons flags in map.
...
This stores three flags in unused map bits, and avoids having to look up
station graphics and custom station specs to determine blocked/wires/pylons
status.
This potentially affects rail pathfinding performance.
Savegame version is not bumped, as the flags can just be updated every
time.
(cherry picked from commit cb658e6cc6e1c114c1eaafaaa5b14849f04ca083)
8 months ago
Peter Nelson
b5dc9328f2
Change: Store station blocked/wires/pylons flags in map. ( #11337 )
...
This stores three flags in unused map bits, and avoids having to look up
station graphics and custom station specs to determine blocked/wires/pylons
status.
This potentially affects rail pathfinding performance.
Savegame version is not bumped, as the flags can just be updated every
time.
8 months ago
PeterN
acd7d3c913
Codechange: Rename *Railtype* to *RailType* for consistency. ( #11287 )
9 months ago
Jonathan G Rennison
c6ce9ce687
Add road vehicle flags for whether any part is on level crossing
9 months ago
Tyler Trahan
77173a6a10
Codechange: Move date consts and functions to CalendarTime and TimerGameCalendar classes
9 months ago
Tyler Trahan
fca2b37726
Codechange: Move Ticks into their own class
9 months ago
Jonathan G Rennison
02aecca5ae
Conditional order: Replace "next station" with manually set station
9 months ago
Jonathan G Rennison
19835b51ee
Move StationCargoList and FlowStatMap out of GoodsEntry struct
...
Move them into a new GoodsEntryData struct referenced
using a std::unique_ptr from GoodsEntry.
The unique_ptr may be nullptr if the cargo list and flow stat map
are both empty (this is the case for unused cargoes).
This reduces GoodsEntry from 128 to 24 bytes,
and Station from 8680 to 2024 bytes,
(on Linux x86_64).
10 months ago
Patric Stout
07730584d7
Codechange: make explicit when a TileIndex is cast to its basetype ( #11190 )
...
This prevents people accidentially assigning a TileIndex to a Date
or any other type they shouldn't.
10 months ago
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
0bf41dc1ff
Change gamelog to use std::vector
...
Move LoadCheckData to its own header
11 months ago
Jonathan G Rennison
e1cce4d9f7
Link graph: Store last compression in scaled date ticks
...
Higher accuracy than using dates at high day legnths
11 months ago
Jonathan G Rennison
d09b504bc5
Merge branch 'master' into jgrpp
...
# Conflicts:
# .github/workflows/ci-build.yml
# .github/workflows/release-linux.yml
# .github/workflows/release-macos.yml
# .github/workflows/release-source.yml
# .github/workflows/release.yml
# CMakeLists.txt
# COMPILING.md
# src/ai/ai_core.cpp
# src/ai/ai_gui.cpp
# src/bridge_gui.cpp
# src/company_gui.cpp
# src/console_cmds.cpp
# src/core/CMakeLists.txt
# src/core/smallmap_type.hpp
# src/disaster_vehicle.h
# src/effectvehicle_base.h
# src/fontcache.cpp
# src/game/game_core.cpp
# src/game/game_gui.cpp
# src/gamelog.cpp
# src/gamelog_internal.h
# src/group_gui.cpp
# src/linkgraph/linkgraph.h
# src/misc.cpp
# src/network/core/config.h
# src/network/core/udp.cpp
# src/network/network_chat_gui.cpp
# src/network/network_content_gui.cpp
# src/network/network_gui.cpp
# src/newgrf.cpp
# src/newgrf_gui.cpp
# src/newgrf_profiling.cpp
# src/newgrf_profiling.h
# src/object_gui.cpp
# src/openttd.cpp
# src/openttd.h
# src/order_gui.cpp
# src/os/windows/font_win32.cpp
# src/rail_gui.cpp
# src/road.cpp
# src/road_gui.cpp
# src/saveload/afterload.cpp
# src/saveload/saveload.h
# src/script/api/script_controller.cpp
# src/script/api/script_roadtypelist.cpp
# src/script/script_config.cpp
# src/script/script_config.hpp
# src/script/script_instance.cpp
# src/script/script_scanner.cpp
# src/script/squirrel.cpp
# src/script/squirrel_helper.hpp
# src/settings_gui.cpp
# src/settings_internal.h
# src/settings_type.h
# src/table/settings/network_private_settings.ini
# src/timetable_gui.cpp
# src/vehicle.cpp
# src/vehicle_base.h
# src/window_gui.h
11 months ago
Jonathan G Rennison
410d5bdc55
Spread tile loop iterations over all ticks when using day length > 1
...
See: #545
12 months ago