Tyler Trahan and GitHub
eaa066990e
Fix: Use correct 'minutes per year' setting for old savegames ( #14995 )
2025-12-27 13:59:28 -05:00
Jonathan G Rennison and GitHub
9ac7623608
Fix #14951 : Init and save/load TimerGameEconomy::days_since_last_month ( #14962 )
2025-12-24 13:00:09 +00:00
Peter Nelson and GitHub
f1e831233a
Codefix: Mark destructors override. ( #14925 )
...
Remove some empty destructors.
2025-12-19 18:14:29 +00:00
Peter Nelson and GitHub
ebdc82ad54
Fix #14921 : Crash during station autorefit if station doesn't accept current cargo type. ( #14924 )
...
Add convenience helpers to correctly retrieve goods entry cargo available/totals.
Avoids having to check if cargo data is available before accessing it, which was missing for autorefit.
2025-12-15 18:06:43 +00:00
Rito12 and rubidium42
859b56a066
Doc: Correct file descriptions to match coding style and doxygen.
2025-12-15 17:31:00 +01:00
Kuhnovic and GitHub
8e35553208
Feature: Configurable sign text colors in scenario editor. ( #14743 )
2025-12-08 17:52:19 +01:00
Michael Lutz and GitHub
170c29b376
Codechange: We are heading to 16 ( #14882 )
2025-12-07 23:16:08 +01:00
Cyprian Klimaszewski and GitHub
99f04f27de
Doc: Update information for receiving a copy of GPL. ( #14869 )
2025-12-07 11:25:08 +00:00
Peter Nelson and GitHub
9adc4bfc0f
Codechange: Make order load/unload flags value types. ( #14861 )
...
Order Load and Unload flags have complex logic to ensure that invalid combinations aren't used. In fact, apart from FullLoad and FullLoadAny, all mixed combinations are invalid.
Simplify logic by removing the use of bit values and treat each option as a value.
2025-12-06 18:30:31 +00:00
Peter Nelson and GitHub
046b0c6267
Codechange: Use enum class and EnumBitSet for various order flags. ( #14783 )
2025-12-06 12:29:11 +00:00
Peter Nelson and GitHub
821a496495
Codefix 0455627d16: Don't make temporary copies of order when converting old orders. ( #14808 )
2025-11-21 17:26:12 +00:00
Peter Nelson and GitHub
98275ee5d3
Codechange: Use enum class for water-related enums. ( #14804 )
2025-11-19 20:35:11 +00:00
Peter Nelson and Peter Nelson
30955da3ce
Codechange: Use enum class for Roadside.
2025-11-17 20:46:05 +00:00
Peter Nelson and Peter Nelson
2cd5a241c5
Codechange: Use enum class for RoadTileType.
2025-11-17 20:46:05 +00:00
Peter Nelson and Peter Nelson
2851c70a59
Codechange: Use enum class for RailGroundType.
2025-11-17 20:46:05 +00:00
Peter Nelson and Peter Nelson
0f5a4290df
Codechange: Use enum class for RailTileType
2025-11-17 20:46:05 +00:00
Peter Nelson and GitHub
34bbae05db
Codechange: Use enum/EnumBitSet for livery in use flags. ( #14746 )
...
Replaces magic numbers.
2025-11-01 14:25:24 +00:00
Peter Nelson and GitHub
813cde3735
Fix: Don't set set town index for depot tiles. ( #14729 )
2025-10-24 21:30:50 +02:00
Peter Nelson and GitHub
06b830dc07
Codechange: Prefer string equality instead of comparison. ( #14727 )
2025-10-24 21:30:03 +02:00
Peter Nelson and GitHub
8e055156e3
Codefix: Make sure safeguards.h is the last included non-table header. ( #14687 )
2025-10-11 10:22:50 +01:00
Peter Nelson and GitHub
42c9f84d74
Fix 3ac1a2f1e4: Game crash due to invalid vehicle type information. ( #14628 )
...
Use std::variant instead of union for vehicle info.
RailVehicleInfo is now non-POD so using in a union causes undefined behaviour.
2025-09-24 22:44:41 +01:00
Peter Nelson and GitHub
2b164111a9
Codechange: Use EnumBitSet for TownFlags. ( #14651 )
2025-09-22 19:04:55 +00:00
Peter Nelson and GitHub
70d4182850
Fix #14631 , Fix 1cb0cbcb6c: Waypoint customs spec not allocated properly on initial construction. ( #14633 )
...
Split AllocateSpecToStation/RoadStop into Allocate and Assign functions, allowing command tests to occur separately.
2025-09-21 09:32:25 +01:00
Kuhnovic and GitHub
faacae2c3f
Change: Removed disable_node_optimization YAPF setting ( #14578 )
2025-09-15 21:59:12 +02:00
Peter Nelson and GitHub
7240ed5817
Cleanup 3ac1a2f1e4: Don't load/save a train's railtypes property. ( #14618 )
...
A train's railtypes property is always reset by Train::ConsistChanged on load, so storing is not necessary.
2025-09-15 08:21:09 +01:00
Michael Lutz
3ac1a2f1e4
Codechange: Store the rail type of rail engines as a RailTypes bitmask.
2025-09-14 17:11:26 +02:00
Peter Nelson and GitHub
e10200efa4
Change: Allow bridges over locks. ( #14595 )
...
The bridge must be at least 2 levels higher than the lock.
2025-09-10 18:41:56 +01:00
Peter Nelson and GitHub
5f84ff5c3f
Change: Allow bridges over docks. ( #14594 )
2025-09-08 21:43:31 +01:00
Rubidium and rubidium42
7c0f69a8fe
Codefix: typos in comments and strings
2025-08-31 10:30:37 +02:00
Peter Nelson and GitHub
e6323e6760
Fix: File/directory titles not updated if language is changed. ( #14542 )
2025-08-28 17:42:00 +01:00
Peter Nelson and GitHub
2978cfa5c9
Fix fbd71a9d72: Missing space after old file type identifier. ( #14541 )
2025-08-27 18:06:49 +01:00
Jonathan G Rennison and GitHub
c4912c94e4
Fix: Incorrect use of GetDescription in town/industry load handler ( #14526 )
...
GetLoadDescription should be used instead such that skipping incoming
table fields works as expected
2025-08-25 15:16:04 +01:00
9a294ab2ed
Feature: Allow stations and roadstops under bridges.
...
Bridges above stations will have pillars excluded if they conflict with the station layout.
Partly based on the system implemented in JGRPP.
Co-authored-by: <su@angel-island.zone >
2025-08-20 21:40:41 +01:00
Peter Nelson and GitHub
1cb0cbcb6c
Codechange: Standardise how AllocateSpecToStation/RoadStop are called. ( #14525 )
...
Replace use of negative value with std::optional and update doxygen.
2025-08-19 18:52:36 +01:00
Peter Nelson and GitHub
bd57aee3a9
Add: Town cargo history graphs. ( #14461 )
2025-08-02 23:19:43 +01:00
Ian Earle and GitHub
ec7c8dd095
Codefix: Updating doxygen file documentation string for group_sl.cpp ( #14488 )
2025-07-31 12:39:22 -04:00
Peter Nelson and Peter Nelson
56942a15c7
Add: Industry accepted and waiting history graphs.
...
Records amount of cargo accepted, and a rolling average of the waiting amount.
Average waiting samples the waiting amount once per day for each industry, spread out over an economy day.
2025-07-20 14:03:54 +01:00
Peter Nelson and Peter Nelson
290144c5c9
Fix #14396 : Industry production graph showed zero instead of N/A.
...
Record the number of valid history records per industry so that the graph avoids showing values which are not present as zero.
2025-07-09 23:02:58 +01:00
Peter Nelson and GitHub
a46a3a97f3
Change: New company face definition system and UI. ( #14319 )
...
Bits used by company faces are now defined by a variable system instead of being hardcoded, allowing future expansion.
The four face types covering gender and skin colour are now separate face styles with their own definitions.
2025-06-24 07:59:49 +01:00
Jonathan G Rennison and Peter Nelson
63f1c2aa3a
Codechange: Use TypedIndexContainer for typed index containers
...
Instead of ReferenceThroughBaseContainer
2025-06-12 18:50:49 +01:00
Peter Nelson and GitHub
e2d066e5d3
Codefix: Effect vehicles don't use v->tile, so shouldn't be in the vehicle tile hash. ( #14302 )
2025-05-26 21:45:46 +01:00
Peter Nelson and GitHub
b042e7a439
Codefix: Prefer static inline const keyword order. ( #14301 )
2025-05-25 20:32:56 +01:00
Peter Nelson and GitHub
0455627d16
Codechange: Move ownership of Orders to OrderList. ( #13948 )
...
Removes the orders pool, and orders are now stored directly in each OrderList.
Iterating orders now no longer needs to traverse a linked-list, all orders in an OrderList are sequential.
2025-05-23 10:36:28 +01:00
Peter Nelson and Peter Nelson
000a79c093
Codechange: Improve performance of evaluating group hierarchy.
...
Store a list of child groups in each group, to avoid having to iterate the group pool to find its children.
2025-05-21 19:50:07 +01:00
Peter Nelson and GitHub
ce83f583bc
Codechange: Use EnumBitSet for VehicleRailFlags. ( #14280 )
2025-05-19 18:56:45 +01:00
Peter Nelson and GitHub
0aacd7acb3
Codechange: Use GrfSpecFeature type instead of uint8_t. ( #14253 )
2025-05-12 08:44:39 +01:00
Rubidium and rubidium42
568b70e556
Codechange: replace memmove with std::move(_backwards)
2025-05-11 21:51:57 +02:00
Rubidium and rubidium42
f8aceb6c37
Codechange: use value initialisation over memset
2025-05-09 17:20:41 +02:00
Rubidium and rubidium42
96873dee63
Codechange: use std::array.fill over memset
2025-05-09 17:20:41 +02:00
Peter Nelson and Peter Nelson
7c834921b2
Codechange: Use FlatSet for per-industry type industry lists.
2025-05-05 14:00:38 +01:00