Patric Stout
75f21065c9
Codechange: refactor DecodeHexText to a generic purpose ConvertHexToBytes ( #11866 )
...
DecodeHexText() does more than just decoding hex. ConvertHexToBytes()
now only does pure hex decoding. This required a bit of refactoring
for the code using DecodeHexText().
2024-01-22 19:42:47 +01:00
Rubidium
2d77cf9c80
Codechange: replace StrStartsWith/StrEndsWith with starts_with and ends_with
2024-01-17 19:48:22 +01:00
Jonathan G Rennison
3ab31f5518
Add settings for town/industry cargo production scaling modes
2024-01-16 19:12:10 +00:00
Jonathan G Rennison
1e0bb019a7
Change cargo scaling settings to be linear instead of logarithmic
2024-01-16 18:02:34 +00:00
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
2024-01-16 01:15:58 +00:00
Jonathan G Rennison
55683c4350
Fix enabling map edge mode setting when void edge tiles were not flat
2024-01-13 13:33:01 +00:00
Jonathan G Rennison
78e08d5711
Add setting text/warnings about why YAPF is recommended for trains
2024-01-12 17:19:12 +00:00
Jonathan G Rennison
2ec4b2a8ca
Return end of string pointer in SettingDesc formatters
2024-01-10 23:20:47 +00:00
Jonathan G Rennison
914b92b21f
Merge branch 'master' into jgrpp
...
Bump savegame for water regions for ship pathfinder
Use ring_buffer for ShipPathCache
2024-01-09 18:36:47 +00:00
Jonathan G Rennison
14db9b2854
Fix loading of pre-selected AIs from config file
2024-01-09 17:48:44 +00:00
Jonathan G Rennison
97e6f3062e
Adding of _t to (u)int types, and WChar to char32_t
...
See: eaae0bb5e
2024-01-07 17:20:41 +00:00
Jonathan G Rennison
a573d065e1
Add missing IsDefaultValue to SettingDesc, from upstream
2024-01-05 22:35:20 +00:00
Jonathan G Rennison
f6a1f64efb
Adjust chunnel water distance limits and associated texts
2024-01-04 02:34:08 +00:00
Jonathan G Rennison
decfab153a
Settings: Fix duplication of PLYX save field table
2023-12-29 00:57:10 +00:00
Jonathan G Rennison
d5a7a67b8c
Merge branch 'master' into jgrpp
...
# Conflicts:
# .github/workflows/ci-build.yml
# src/ai/ai_gui.cpp
# src/blitter/32bpp_optimized.cpp
# src/blitter/32bpp_simple.cpp
# src/blitter/32bpp_sse2.cpp
# src/blitter/8bpp_optimized.cpp
# src/blitter/8bpp_simple.cpp
# src/blitter/null.cpp
# src/blitter/null.hpp
# src/company_gui.cpp
# src/game/game_gui.cpp
# src/genworld_gui.cpp
# src/gfx.cpp
# src/gfx_func.h
# src/graph_gui.cpp
# src/industry_gui.cpp
# src/linkgraph/linkgraphjob.cpp
# src/network/network_gui.cpp
# src/newgrf_debug_gui.cpp
# src/openttd.cpp
# src/pathfinder/npf/aystar.h
# src/road_gui.cpp
# src/saveload/order_sl.cpp
# src/saveload/saveload.cpp
# src/saveload/saveload.h
# src/script/api/script_log.cpp
# src/script/api/script_town.cpp
# src/script/script_gui.cpp
# src/settings.cpp
# src/settings_gui.cpp
# src/settings_table.cpp
# src/settings_type.h
# src/smallmap_gui.cpp
# src/sortlist_type.h
# src/spritecache.cpp
# src/spriteloader/grf.cpp
# src/spriteloader/grf.hpp
# src/spriteloader/spriteloader.hpp
# src/station_cmd.cpp
# src/station_cmd.h
# src/station_gui.cpp
# src/strings.cpp
# src/toolbar_gui.cpp
# src/town_cmd.cpp
# src/town_gui.cpp
# src/vehicle_gui.cpp
# src/vehicle_gui_base.h
# src/video/opengl.cpp
# src/video/opengl.h
# src/widgets/dropdown.cpp
# src/widgets/dropdown_type.h
# src/window_gui.h
2023-12-23 13:26:55 +00:00
Jonathan G Rennison
378a545dd4
Add setting for map edge behaviour, and how to display area outside map
2023-12-22 17:32:44 +00:00
Jonathan G Rennison
e9599fd4be
Scheduled dispatch: Remove scheduled_dispatch_start_full_date_fract
...
Use DateTicksScaled
2023-12-17 23:00:45 +00:00
Jonathan G Rennison
2267badd28
Remove "Show cargo type filter in vehicle lists" setting
2023-12-17 00:37:17 +00:00
Peter Nelson
54d45a6047
Codechange: Don't keep autosave_interval in std::chrono::minutes.
...
This variable is saved as a setting which requires the variable type to be known, but std::chrono::minutes may vary depending on system type.
Instead, keep as uint32_t and convert to std::chrono::minutes only when setting the timer.
2023-12-09 08:13:03 +00:00
Jonathan G Rennison
48cc6a686b
Change settings for using default signal graphics and signal recolouring
2023-12-08 21:53:52 +00:00
Jonathan G Rennison
291daa9220
INI load: Fix cfg fallback name load with missing groups
2023-11-30 21:10:44 +00:00
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
2023-11-29 20:42:29 +00:00
Jonathan G Rennison
b03064e55b
Fix IniLoadSettings
2023-11-25 16:32:21 +00:00
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
2023-11-25 13:30:06 +00:00
Jonathan G Rennison
6e671ed6e2
Split save/load settings into separate INI files
...
Matching upstream for all settings
2023-11-18 20:00:55 +00:00
Jonathan G Rennison
ccfdf626ad
Replace SF_ENABLE_TABLE_PATS flag and SC_PATCH with SF_PATCH
2023-11-18 14:52:30 +00:00
Jonathan G Rennison
581ed5b98f
Use compatibility table for loading non-table OPTS, PATS chunks
2023-11-18 12:22:06 +00:00
Jonathan G Rennison
d948abd040
Remove PATX chunk, move to PATS
2023-11-18 00:21:35 +00:00
Jonathan G Rennison
3e299aa488
Use upstream table chunk format for PATS
2023-11-18 00:01:46 +00:00
Jonathan G Rennison
498c4161b8
Don't use a static vector for sorted PATX settings
2023-11-17 23:08:29 +00:00
Jonathan G Rennison
4187b8cc62
Rename gameopt_settings to old_gameopt_settings
...
To match upstream
2023-11-17 19:53:24 +00:00
Jonathan G Rennison
b280dfb965
Split GUI settings into separate INI files
...
Matching upstream for non-save settings
2023-11-14 18:08:15 +00:00
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
)
2023-11-13 18:33:20 +00:00
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
2023-11-12 14:15:19 +00:00
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
2023-11-12 13:43:40 +00:00
Peter Nelson
1071acb483
Codechange: Redundant use of char * and c_str(). ( #11454 )
2023-11-10 00:17:36 +00:00
Jonathan G Rennison
3436e0a781
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/error.h
# src/error_gui.cpp
# src/linkgraph/linkgraph_gui.cpp
# src/misc_gui.cpp
# src/newgrf_gui.cpp
# src/news_gui.cpp
# src/rail_cmd.cpp
# src/saveload/gamelog_sl.cpp
# src/script/api/script_text.cpp
# src/script/script_instance.cpp
# src/statusbar_gui.cpp
# src/strings.cpp
# src/strings_func.h
# src/strings_internal.h
# src/table/settings/gui_settings.ini
# src/table/settings/linkgraph_settings.ini
# src/textbuf_gui.h
2023-11-09 01:55:23 +00:00
Rubidium
c6411168d8
Cleanup: missing spaces before continuation * in some comments
2023-11-01 22:56:11 +01:00
frosch
de3f29d7b2
Add: store base graphics parameters in openttd.cfg.
2023-10-31 01:41:50 +01:00
frosch
0b7ecf6102
Codechange: use the shortname as unique id to identify the base graphics in openttd.cfg.
2023-10-31 01:41:50 +01:00
frosch
97df27e41f
Codechange: Store base graphics settings in a separate section in openttd.cfg.
2023-10-31 01:41:50 +01:00
Peter Nelson
69e20e79ab
Codechange: Add const versions of GetItem/GetGroup, and sprinkle liberally.
...
Non-const version of GetItem is not needed.
2023-10-20 18:37:27 +01:00
Peter Nelson
233aac567b
Codechange: Use std::list instead of C-linked list for ini files.
...
This removes self-management of memory with new/delete and allows simpler iteration.
2023-10-20 18:37:27 +01:00
Peter Nelson
8bd06807e4
Codechange: Pass initializer list instead of null-terminated list of group types.
2023-10-20 18:37:27 +01:00
Peter Nelson
1fecbeff76
Codechange: Remove create parameter from IniLoadFile::GetGroup.
...
GetGroup now only returns nullptr if the group does not exist.
Use GetOrCreateGroup to create a group.
This avoids creating groups while reading ini files.
2023-10-20 18:37:27 +01:00
Peter Nelson
c47a0e1578
Codechange: Correct scope of IniItem for for-loop.
2023-10-20 18:37:27 +01:00
Peter Nelson
6ce7195ef1
Codechange: Split GetGroup into GetGroup/GetOrCreateGroup.
...
This follows the pattern used for GetItem/GetOrCreateItem, and allows use
of references where we know the group must exist.
2023-10-20 18:37:27 +01:00
Peter Nelson
54b1a067eb
Codechange: Test for nullptr instead of treating pointer as boolean.
2023-10-20 18:37:27 +01:00
Peter Nelson
d3c5ae2648
Codechange: Add CreateGroup/CreateItem methods for ini files.
...
This abstracts the internals a bit.
2023-10-20 18:37:27 +01:00
frosch
b6c8f301be
Codechange: Silence warnings about intentionally unused parameters.
2023-09-19 22:49:59 +02:00