Jonathan G Rennison
f034714559
Use StringBuilder for GetString/GetStringWithArgs, as per upstream
...
Update dependent code as required
5 months ago
Jonathan G Rennison
1b7a5372ec
Debug: Provide UserError, FatalError fmt macros
5 months ago
Jonathan G Rennison
9ea49d6680
Only compile OrderList::DebugCheckSanity when WITH_ASSERT defined
6 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
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
ea3b991f72
MinGW: Remove direct mingw-std-threads includes
6 months ago
Jonathan G Rennison
88670a230f
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/articulated_vehicles.cpp
# src/articulated_vehicles.h
# src/base_media_base.h
# src/base_media_func.h
# src/build_vehicle_gui.cpp
# src/dock_gui.cpp
# src/main_gui.cpp
# src/music_gui.cpp
# src/network/network_chat_gui.cpp
# src/network/network_content.cpp
# src/newgrf.cpp
# src/newgrf_roadstop.cpp
# src/os/windows/string_uniscribe.h
# src/os/windows/win32.cpp
# src/rail_gui.cpp
# src/road.cpp
# src/road_gui.cpp
# src/settings.cpp
# src/settings_gui.cpp
# src/smallmap_gui.cpp
# src/strings.cpp
# src/terraform_gui.cpp
# src/tests/test_script_admin.cpp
# src/tests/test_window_desc.cpp
# src/timer/timer_game_calendar.h
# src/vehicle.cpp
# src/vehicle_base.h
# src/viewport.cpp
# src/widget_type.h
# src/window.cpp
# src/window_gui.h
7 months ago
rubidium42
27082f9efa
Codechange: pass std::string references to OpenBrowser
7 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.
7 months ago
Jonathan G Rennison
21b49a213e
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/cheat_gui.cpp
# src/main_gui.cpp
# src/network/network_gui.cpp
# src/saveload/saveload.h
# src/smallmap_gui.cpp
# src/station_cmd.cpp
# src/timetable_cmd.cpp
# src/toolbar_gui.cpp
# src/widget.cpp
# src/widget_type.h
# src/widgets/dropdown_type.h
7 months ago
Jonathan G Rennison
0d4d4a9cac
Merge branch 'master' into jgrpp
...
# Conflicts:
# cmake/CompileFlags.cmake
# src/3rdparty/squirrel/squirrel/sqclosure.h
# src/3rdparty/squirrel/squirrel/sqobject.h
# src/3rdparty/squirrel/squirrel/sqvm.h
# src/aircraft.h
# src/airport_gui.cpp
# src/blitter/32bpp_sse_func.hpp
# src/blitter/null.hpp
# src/bridge_gui.cpp
# src/build_vehicle_gui.cpp
# src/cargotype.h
# src/cheat_gui.cpp
# src/command.cpp
# src/command_func.h
# src/company_gui.cpp
# src/console_gui.cpp
# src/date_gui.cpp
# src/depot_gui.cpp
# src/dock_gui.cpp
# src/economy.cpp
# src/error_gui.cpp
# src/fileio.cpp
# src/fios.cpp
# src/fios_gui.cpp
# src/fontcache/spritefontcache.h
# src/framerate_gui.cpp
# src/game/game_text.cpp
# src/gamelog.cpp
# src/genworld_gui.cpp
# src/gfx_layout_fallback.cpp
# src/group_gui.cpp
# src/highscore_gui.cpp
# src/hotkeys.cpp
# src/industry_cmd.cpp
# src/industry_gui.cpp
# src/landscape.cpp
# src/main_gui.cpp
# src/misc_cmd.cpp
# src/misc_gui.cpp
# src/network/core/tcp_game.cpp
# src/network/core/udp.cpp
# src/network/network_chat_gui.cpp
# src/network/network_content_gui.cpp
# src/network/network_gui.cpp
# src/network/network_server.cpp
# src/network/network_server.h
# src/newgrf_airport.cpp
# src/newgrf_airport.h
# src/newgrf_airporttiles.cpp
# src/newgrf_airporttiles.h
# src/newgrf_animation_base.h
# src/newgrf_canal.cpp
# src/newgrf_commons.h
# src/newgrf_config.cpp
# src/newgrf_debug_gui.cpp
# src/newgrf_engine.cpp
# src/newgrf_engine.h
# src/newgrf_generic.cpp
# src/newgrf_gui.cpp
# src/newgrf_house.cpp
# src/newgrf_house.h
# src/newgrf_industries.cpp
# src/newgrf_industries.h
# src/newgrf_industrytiles.cpp
# src/newgrf_industrytiles.h
# src/newgrf_object.cpp
# src/newgrf_object.h
# src/newgrf_railtype.cpp
# src/newgrf_railtype.h
# src/newgrf_roadstop.cpp
# src/newgrf_roadstop.h
# src/newgrf_roadtype.cpp
# src/newgrf_roadtype.h
# src/newgrf_spritegroup.cpp
# src/newgrf_spritegroup.h
# src/newgrf_station.cpp
# src/newgrf_station.h
# src/newgrf_town.cpp
# src/newgrf_town.h
# src/news_gui.cpp
# src/object_gui.cpp
# src/order_gui.cpp
# src/os/macosx/crashlog_osx.cpp
# src/os/unix/crashlog_unix.cpp
# src/os/windows/crashlog_win.cpp
# src/os/windows/win32.cpp
# src/os/windows/win32_main.cpp
# src/pathfinder/npf/npf.cpp
# src/pathfinder/npf/queue.cpp
# src/rail_cmd.cpp
# src/rail_gui.cpp
# src/road_gui.cpp
# src/roadveh.h
# src/saveload/saveload.cpp
# src/screenshot.cpp
# src/script/api/script_text.hpp
# src/settings.cpp
# src/settings_gui.cpp
# src/settings_internal.h
# src/settings_table.cpp
# src/signs_cmd.cpp
# src/signs_gui.cpp
# src/smallmap_gui.cpp
# src/smallmap_gui.h
# src/spriteloader/grf.hpp
# src/station_cmd.cpp
# src/station_gui.cpp
# src/station_map.h
# src/statusbar_gui.cpp
# src/stdafx.h
# src/strgen/strgen.cpp
# src/table/newgrf_debug_data.h
# src/terraform_gui.cpp
# src/timer/timer_game_calendar.cpp
# src/timer/timer_window.cpp
# src/town.h
# src/town_cmd.cpp
# src/town_gui.cpp
# src/train_gui.cpp
# src/transparency_gui.cpp
# src/vehicle_gui.cpp
# src/water_cmd.cpp
# src/waypoint_cmd.cpp
# src/widget.cpp
# src/widget_type.h
# src/widgets/dropdown.cpp
# src/widgets/rail_widget.h
# src/widgets/terraform_widget.h
# src/window.cpp
# src/window_gui.h
7 months ago
Jonathan G Rennison
af1150182a
Merge branch 'master' into jgrpp
...
# Conflicts:
# .github/workflows/ci-build.yml
# .github/workflows/release-source.yml
# CMakeLists.txt
# COMPILING.md
# src/network/network_survey.cpp
# src/network/network_survey.h
# src/openttd.cpp
# src/tests/CMakeLists.txt
7 months ago
Jonathan G Rennison
fc1c47cbd2
Merge branch 'master' into jgrpp
...
# Conflicts:
# cmake/CompileFlags.cmake
# src/crashlog.cpp
# src/crashlog.h
# src/date_type.h
# src/depot_type.h
# src/landscape.cpp
# src/openttd.cpp
# src/order_cmd.cpp
# src/order_gui.cpp
# src/os/macosx/crashlog_osx.cpp
# src/os/unix/crashlog_unix.cpp
# src/os/windows/crashlog_win.cpp
# src/pathfinder/npf/npf.cpp
# src/road_cmd.cpp
# src/script/api/script_infrastructure.cpp
# src/stdafx.h
# src/table/settings/gui_settings.ini
# src/table/settings/pathfinding_settings.ini
# src/tests/CMakeLists.txt
7 months ago
Jonathan G Rennison
cb9e088399
Add setting to control autosave interval mode
7 months ago
Patric Stout
19bbcb180d
Change: base autosaves intervals on real time (instead of game time) ( #10655 )
...
There are two fundamental issues with autosave:
- When fast-forwarding, it saves way too often
- When paused, it never saves
Both makes no sense. Autosaves are meant to prevent you from
accidentally losing your work. The emphasis on "your" work.
To solve both issues, the autosave now works on real time. You
can select every 10 / 30 / 60 / 120 minutes, which are similar to
what the setting was in game-months.
When you pause, autosaving will stop. Unless you make any change
to the game; then it will continue to make autosaves, even so
the game is paused. Unpausing / pausing resets this mechanism.
(cherry picked from commit f5fad88723
)
7 months ago
Jonathan G Rennison
ec6cdce0c3
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/bridge_gui.cpp
# src/openttd.cpp
# src/settings_type.h
# src/table/settings/gui_settings.ini
7 months ago
Jonathan G Rennison
4bfa8b7b7b
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/openttd.cpp
# src/settings_gui.cpp
# src/settings_type.h
# src/table/settings/gameopt_settings.ini
# src/table/settings/gui_settings.ini
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
frosch
de3f29d7b2
Add: store base graphics parameters in openttd.cfg.
8 months ago
frosch
0b7ecf6102
Codechange: use the shortname as unique id to identify the base graphics in openttd.cfg.
8 months ago
frosch
97df27e41f
Codechange: Store base graphics settings in a separate section in openttd.cfg.
8 months ago
Peter Nelson
062c19830b
Fix: OpenTTD can fail to exit on an error due to mutex locks in threads. ( #11398 )
8 months ago
Peter Nelson
9602de474d
Codechange: Use iterators and/or range-for on cargo related loops.
8 months ago
Patric Stout
e5673a1756
Codechange: cleanup CargoPacket in terms of variable/function names ( #11278 )
...
Over the years, things got reused and changed, making the current
names somewhat unclear in what they actually mean and do.
(cherry picked from commit 30172fc037
)
9 months ago
Jonathan G Rennison
df4c458c29
Add savegame flag for station tile cache flags
...
Update flags as necessary on load and when reloading GRFs
9 months ago
Peter Nelson
49dae08a3b
Codechange: Add missing override specifiers.
9 months ago
Jonathan G Rennison
52e4688851
Use Window iterate instead of from front/back when no order required
9 months ago
Jonathan G Rennison
f5d1b1d8f8
Change window close/deallocation to match upstream
9 months ago
Jonathan G Rennison
a18f3274b4
Rename close window functions to match upstream
9 months ago
Jonathan G Rennison
c8817d7f4e
Merge branch 'master' into jgrpp
...
# Conflicts:
# os/macosx/notarize.sh
# src/3rdparty/CMakeLists.txt
# src/3rdparty/squirrel/squirrel/sqcompiler.cpp
# src/3rdparty/squirrel/squirrel/sqdebug.cpp
# src/3rdparty/squirrel/squirrel/sqvm.cpp
# src/console_cmds.cpp
# src/core/span_type.hpp
# src/crashlog.cpp
# src/currency.h
# src/date_gui.cpp
# src/driver.cpp
# src/fios.cpp
# src/genworld_gui.cpp
# src/hotkeys.cpp
# src/misc_gui.cpp
# src/music/os2_m.cpp
# src/network/core/os_abstraction.h
# src/network/network_server.cpp
# src/newgrf.cpp
# src/newgrf_config.h
# src/newgrf_text.cpp
# src/openttd.cpp
# src/os/macosx/font_osx.cpp
# src/os/macosx/misc_osx.cpp
# src/os/os2/CMakeLists.txt
# src/os/os2/os2.cpp
# src/os/unix/CMakeLists.txt
# src/os/windows/font_win32.cpp
# src/os/windows/win32_main.cpp
# src/saveload/saveload.cpp
# src/script/api/script_text.cpp
# src/settings.cpp
# src/settings_gui.cpp
# src/stdafx.h
# src/strings.cpp
# src/timetable_gui.cpp
# src/town_gui.cpp
# src/train_cmd.cpp
# src/video/dedicated_v.cpp
# src/video/video_driver.cpp
# src/video/win32_v.cpp
# src/viewport.cpp
# src/waypoint_gui.cpp
# src/widgets/dropdown_type.h
# src/window.cpp
# src/window_gui.h
9 months ago
Tyler Trahan
77173a6a10
Codechange: Move date consts and functions to CalendarTime and TimerGameCalendar classes
9 months ago
Jonathan G Rennison
c0598d34bf
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/console.cpp
# src/os/os2/os2.cpp
# src/os/unix/font_unix.cpp
# src/strgen/strgen.h
# src/strgen/strgen_base.cpp
# src/table/settings/gui_settings.ini
10 months ago
glx22
3d1c4a8589
Codechange: [Emscripten] Improve syncfs synchronisation on exit/abort
10 months ago
Patric Stout
502414b567
Fix: [Emscripten] config not saved on exit game ( #11248 )
...
When changing a Game Option and pressing Exit Game, the changes
were not actually stored. This because the post-mainloop code
was never executed for Emscripten.
10 months ago
Jonathan G Rennison
cdf1ff8d5a
Network: Extend post-desync frame sync history
...
Record sync state at various points throughout each frame
10 months ago
Jonathan G Rennison
547c00b465
Settings: Only write out config on setting change for persistent changes
10 months ago
Jonathan G Rennison
b323e1a8ae
Remove pessimising std::move
10 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
Jonathan G Rennison
129691dcc7
Music: Defer probing for music driver until a music set is loaded
10 months ago
Rubidium
40195e689d
Change: improve wording of help (host instead of IP) and update man page
10 months ago
Rubidium
a8e4d35bde
Fix: crash when not passing parameter for -n
10 months ago
Patric Stout
299570b2c1
Codechange: make TimerGameCalendar Date and Year types strongly typed ( #10761 )
10 months ago
Jonathan G Rennison
644d2632f8
Move command log functions to their own header, fix missing include
...
See: #586
10 months ago
Henry Wilson
a9c65a69d0
Feature: Add config option to set default company secondary colour for new games
...
This does duplicate translation strings for the colours
11 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
Patric Stout
4f4810dc28
Fix: store autosave settings under the new names
11 months ago
Jonathan G Rennison
c6c69fa3da
Add setting for long-term autosaves
...
A second set of autosaves for whenever the main set wraps around to 0
11 months ago
Jonathan G Rennison
ca631b79c2
Fix crash which could occur when reloading NewGRFs on main menu
12 months ago
Jonathan G Rennison
0bf41dc1ff
Change gamelog to use std::vector
...
Move LoadCheckData to its own header
12 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
12 months ago