Rubidium
9015c3651f
Codechange: make EngineID an enum
2025-02-16 14:50:15 +01:00
Rubidium
ab8177ea77
Codechange: strongly type CompanyID
2025-02-16 14:02:18 +01:00
Rubidium
1ffc950e22
Codechange: use prefix operator++ for CompanyID iterations
2025-02-16 14:02:18 +01:00
Rubidium
bdd14063a0
Codechange: move vehicle name to LoadgameState and change to std::vector
2025-02-16 13:45:07 +01:00
Rubidium
e7595c6c85
Codechange: pass oldloader LoadgameState by reference instead of pointer
2025-02-16 12:31:14 +01:00
Peter Nelson
2d7d085e8e
Codechange: Use EncodedString for error messages. ( #13569 )
2025-02-16 10:04:32 +00:00
Rubidium
4fe3f0ccdd
Codechange: simplify management of temporary Engine in saveload
2025-02-14 18:35:12 +01:00
Peter Nelson
6cf7a899e9
Codechange: Use EnumBitSet for PauseMode. ( #13553 )
2025-02-14 08:30:04 +00:00
Peter Nelson
f309b90a1d
Codechange: Use EnumBitSet for Airport blocks.
2025-02-13 22:02:02 +00:00
Peter Nelson
f0777737af
Fix #13459 , Fix #13546 : Crash when changing NewGRFs in game with picker window open.
2025-02-13 21:07:37 +00:00
Peter Nelson
75387b9e2b
Codechange: Use EnumBitSet for StationFacility.
2025-02-13 18:03:13 +00:00
Jonathan G Rennison
d06b371254
Cleanup: Fix various spelling errors
2025-02-12 22:44:51 +01:00
Rubidium
37c215f1fd
Fix #13513 , ec492cb267: std::numeric_limits<CompanyMask> not working causes no vehicles to exist
...
std::numeric_limits<T>::max() returns 0 instead of an error when the type is unknown.
Solve it by implementing and using Set() and All() in BaseBitSet in same way as std::bitset.
2025-02-09 22:50:55 +01:00
Tyler Trahan
521b860394
Feature: Prevent towns from upgrading individually-placed houses ( #13270 )
2025-02-09 20:37:06 +00:00
Peter Nelson
1ed685b5c1
Codechange: Use EnumBitSet.Any(). ( #13512 )
2025-02-09 20:16:16 +00:00
Patric Stout
86841ba1f0
Codechange: no longer add "src" to the include-path ( #13511 )
2025-02-09 19:43:15 +00:00
Rubidium
01b639bb23
Codechange: replace instance of raw uint16_t with CompanyMask
2025-02-09 19:24:51 +01:00
Rubidium
ec492cb267
Codechange: make CompanyMask a BaseBitSet implementation
2025-02-09 19:24:51 +01:00
Rubidium
cd4482b5df
Codechange: make TownID an enum
2025-02-09 18:05:01 +01:00
Rubidium
1e24b41f22
Codechange: strongly type GroupID
2025-02-09 16:52:21 +01:00
Rubidium
798e9f229c
Codechange: strongly type DepotID
2025-02-09 16:52:21 +01:00
Rubidium
155d7de132
Codechange: change Source into a class with conversion helpers
...
A Source is either a CompanyID (Headquarters), IndustryID or TownID.
When making those types stronger a lot of casts would be needed, but
with these simple helpers the intent is shown more clearly.
2025-02-09 15:28:35 +01:00
Rubidium
9ab36b594d
Codechange: strongly type OrderID and OrderListID
2025-02-09 15:07:29 +01:00
Rubidium
cb3db3cedd
Codechange: strongly type ObjectID
2025-02-09 15:07:29 +01:00
Rubidium
07dd5bf01d
Codechange: support strongly typed pool element IDs in squirrel/saveload
2025-02-09 15:07:29 +01:00
Peter Nelson
dccc6185b9
Codechange: Change internal format of encoded strings to improve robustness and allow expansion. ( #13499 )
2025-02-09 12:45:50 +00:00
Rubidium
5f41bc0279
Codechange: put SourceType and SourceID into Source struct
2025-02-08 06:37:23 +01:00
Rubidium
87e228b8b5
Codechange: remove unneeded dereference chunk type flag
2025-02-07 22:49:17 +01:00
Rubidium
266b733095
Codechange: use unique_ptr instead of manual memory allocation to store strings
2025-02-07 22:49:17 +01:00
Rubidium
83479a4e12
Codechange: add method for reading a string from a savegame given a length
2025-02-07 22:49:17 +01:00
Peter Nelson
2bb3f368e3
Codechange: Use EnumBitSet for IndustryBehaviours.
2025-02-07 12:30:06 +00:00
Rubidium
e937c4dcfd
Codechange: change DestinationID into class with conversion helpers
...
A DestinationID is either a DepotID or StationID, where the aircraft hangar
being conceptually a depot is actually a StationID. When making those types
stronger, a lot of casts would need to be added, but this shows the intent
much better.
2025-02-06 21:03:24 +01:00
Rubidium
2f1d0acec9
Codechange: use the appropriate type for OldWaypoint indices
2025-02-05 16:16:40 +01:00
Jonathan G Rennison
3ea4d1d4fc
Fix #12912 : CompanyProperties::inaugurated_year_calendar not saved
2025-02-03 08:09:45 +01:00
Peter Nelson
6f52a977a8
Codechange: Use EnumBitSet for GRFConfigFlags.
...
This is renamed from `GCF_Flag` didn't match convention.
2025-02-02 10:49:45 +00:00
Peter Nelson
59354576d4
Codechange: Use EnumBitSet for LandscapeTypes and remove LandscapeID. ( #13436 )
2025-02-01 23:09:18 +00:00
Peter Nelson
c4c5028862
Codechange: Use EnumBitSet for SettingFlags. ( #13429 )
2025-02-01 15:46:51 +00:00
Peter Nelson
95bd53ddf1
Codechange: Use EnumBitSet for BuildingFlags.
2025-02-01 14:16:25 +00:00
Rubidium
4ca1fe6c32
Codechange: replace MAX_UVALUE with std::numeric_limits::max
2025-02-01 01:29:02 +01:00
Peter Nelson
f8b1e3033f
Codechange: Use EnumBitSet for EngineFlags.
2025-01-31 18:55:31 +00:00
Peter Nelson
6c4ddb242a
Codechange: Use EnumBitSet for EngineMiscFlags.
2025-01-31 18:55:31 +00:00
Peter Nelson
5664b1e2f6
Codechange: Use std::vector for GRFConfig lists. ( #10835 )
...
This replaces the C-style custom managed linked-list and allows use of iterators etc.
2025-01-31 17:09:09 +00:00
Peter Nelson
5ef495da78
Codechange: Use EnumBitSet for GroupFlags.
2025-01-29 21:46:39 +00:00
Peter Nelson
bf6293a13f
Fix: Rail/road type conversion data is not populated on new game. ( #13403 )
...
This means that the rail/road type conversion that happens if NewGRFs are changed does not work the first time for a new game, only with a savegame.
2025-01-29 21:45:16 +00:00
Peter Nelson
afc0745aa2
Codechange: Specify underlying type for all enums excluding those exposed to scripts. ( #13383 )
2025-01-28 22:17:34 +00:00
Peter Nelson
fb6781015a
Codechange: Use std::endian instead of TTD_ENDIAN defines.
2025-01-28 19:37:34 +00:00
Rubidium
4099acb946
Codechange: replace BSWAP32/BSWAP16 with std::byteswap
2025-01-28 19:22:12 +01:00
Rubidium
e894a5880c
Codechange: rename CargoID to CargoType and amend related variables/comments
2025-01-26 18:07:10 +01:00
Rubidium
d05cc2ef92
Codefix: do not consider TTD/TTO engine IDs actual EngineIDs
2025-01-26 18:02:12 +01:00
Rubidium
e7e9a12817
Codefix: Engine constructor's base parameter isn't an actual EngineID
2025-01-26 18:02:12 +01:00