Peter Nelson
21d2a94809
Codechange: Use EnumBitSet for GrfMiscBits. ( #13873 )
2025-03-22 21:07:59 +00:00
Rubidium
3e511f2ce7
Codechange: remove ZeroedMemoryAllocator from GRFFile
2025-02-22 14:58:26 +01:00
Peter Nelson
8f14894024
Add: NewGRF Badges.
2025-02-16 22:24:25 +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
40aeedeade
Codechange: Use EnumBitSet for callback masks.
2025-01-31 17:08:24 +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
Rubidium
45444f9666
Codechange: rename DECLARE_POSTFIX_INCREMENT to DECLARE_INCREMENT_DECREMENT_OPERATORS
2025-01-28 18:56:58 +01:00
Peter Nelson
9b947a37b8
Codechange: Pass GRFConfig by reference where feasible. ( #13388 )
...
In places where a GRFConfig is passed by pointer and not checked for nullptr, use a reference instead.
2025-01-26 22:41:08 +00:00
Rubidium
e894a5880c
Codechange: rename CargoID to CargoType and amend related variables/comments
2025-01-26 18:07:10 +01:00
Peter Nelson
2d372fa516
Codechange: NewGRF strings are not StringIDs.
...
Add GRFStringID type and use it when dealing with GRF-local string IDs.
2025-01-02 20:03:40 +00:00
Peter Nelson
7af16bff11
Codechange: Use vector for GRFFile parameters instead of array. ( #13157 )
...
This simplifies assigning default parameters and removes the param_end member.
2024-12-07 22:08:59 +00:00
Peter Nelson
e750d10cee
Codechange: Use std::array for per-NewGRF rail/road type maps. ( #13142 )
...
This allows initialisation to be simplified.
2024-12-05 18:17:25 +00:00
Peter Nelson
e076aaf740
Codefix: Use SpriteID when passing sprite IDs. ( #13037 )
2024-10-27 18:54:49 +00:00
Peter Nelson
ad5da0c924
Codechange: Use __VA_OPT__(,)
instead of , ##
( #12921 )
...
`__VA_OPT__` is a C++20 standard, `##` is, apparently, a GNU extension.
MSVC needs /Zc:preprocessor adding for whatever reason.
2024-09-12 07:06:15 +01:00
Peter Nelson
55acc1b36d
Codechange: Don't format strings passed to GrfMsg unless the message will be used.
...
This makes GrfMsg() behave more like Debug().
2024-07-10 12:53:23 +01:00
Peter Nelson
66044472d7
Codechange: Use std::unordered_map for NewGRF language_map.
...
NewGRFs only use a small subset of the available language IDs. Using an unordered_map allows only the reference languages to have space allocated.
This avoids manual new/delete of array.
2024-06-06 19:53:10 +01:00
Patric Stout
a3cfd23cf9
Codechange: rename byte to uint8_t ( #12308 )
2024-03-16 23:59:32 +01:00
Rubidium
3a676a5af0
Codechange: replace static inline with static for non-class functions
2024-01-06 13:37:33 +01:00
Peter Nelson
bc8e26f4e7
Codechange: Simplify usage of GRFFile cargo_map. ( #11349 )
2023-10-20 18:38:54 +01:00
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
2023-07-19 19:30:14 +02:00
Rubidium
3323402aaa
Codechange: rename smallvec_type to container_func and use only when needed
2023-05-20 16:53:10 +02:00
Peter Nelson
6b87fe6540
Codechange: Use std::array for GRF(File|Config) parameters.
...
This simplifies comparison, copying and assignment operations.
2023-05-19 16:53:56 +01:00
Rubidium
3901ef9760
Codechange: use std::string for the GRF filenames
2023-05-04 23:23:32 +02:00
Rubidium
7088f5b7c7
Codechange: use string/fmt instead of printf for grfmsg
2023-04-18 23:21:08 +02:00
Peter Nelson
7b0797d1cd
Codechange: Use unique ptrs for NewGRF specs.
2023-04-16 15:09:10 +01:00
Peter Nelson
ef6b307465
Change: Use std::vector for NewGRF spec tables.
...
Pointer space is allocated only for the number of IDs used, instead of
the max number of IDs for each feature.
2023-04-16 15:09:10 +01:00
Jonathan G Rennison
4c1406a4b5
Add: NewGRF road stops
2023-02-26 21:28:30 +01:00
PeterN
4f26f6b8aa
Cleanup: Simplify GRFLabel linked-list with std::vector. ( #10284 )
2022-12-25 22:32:22 +00:00
Rubidium
10e35ca8e4
Codechange: let NewGRF make use of SpriteFile instead of most of the FIO slot functions
2021-05-08 12:39:34 +02:00
Rubidium
fdc11a9f94
Codechange: introduce SpriteFile to be used by the sprite loader instead of the global FIO slot functionality
2021-05-08 12:39:34 +02:00
Yexo
1507902d00
Codechange: remove has_newindustries global
2020-06-01 22:46:06 +02:00
Yexo
a82572d0f5
Codechange: remove has_newhouses global
2020-06-01 22:46:06 +02:00
Yexo
f827bc8c1a
Fix #8166 : don't crash on loading an invalid roadtype newgrf
...
Initialization code for GRFFile::roadtype_map was copied from
railtype_map. But while RailType is a byte-sized enum and could thus
be initialized via memset, RoadType doesn't have a defined size.
2020-06-01 12:44:02 +02:00
S. D. Cloudt
13cc8a0cee
Cleanup: Removed SVN headers
2019-11-10 17:59:20 +00:00
JMcKiern
04f659e768
Fix: Some typos found using codespell
2019-09-29 21:27:32 +01:00
peter1138
c02ef3e456
Feature: Add NotRoadTypes (NRT)
2019-05-01 21:36:27 +02:00
Charles Pigott
931d32f414
Codechange: Remove RailTypeByte type
2019-04-29 17:40:22 +01:00
stormcone
79343762a4
Fix: Typos. ( #7517 )
2019-04-15 22:06:41 +02:00
Henry Wilson
cc62f4163f
Cleanup: Remove unused size template parameters from SmallMap and Auto[Free|Delete]SmallVector
2019-03-26 20:15:57 +00:00
Henry Wilson
c01a2e2a81
Codechange: Removed SmallVector completely
2019-03-26 20:15:57 +00:00
frosch
1aedadb49b
(svn r27730) -Change: Split openttd.grf into openttd.grf and orig_extra.grf
...
openttd.grf is now always loaded and provides all extra graphics in case the (possibly outdated) baseset does not.
orig_extra.grf contains graphics specific to the original baseset only.
2017-01-14 15:48:19 +00:00
frosch
a3b356e057
(svn r27725) -Codechange: Remove IsOpenTTDBaseGRF and test for GCF_CONFIG instead, which does the same in all use-cases.
2017-01-07 21:36:25 +00:00
frosch
4d310eafc5
(svn r27200) -Feature/Fix [FS#6260]: [NewGRF] Add Misc. GRF Feature Flag 6 to enable the second rocky tile set.
2015-03-20 19:27:15 +00:00
rubidium
2b10ee1891
(svn r26364) -Fix [FS#5892]: writing out of the bounds of the rail type map
2014-02-22 21:12:28 +00:00
planetmaker
c24374f99c
(svn r24900) -Fix [FS#5389]: Comments with typos (most fixes supplied by Eagle_rainbow)
2013-01-08 22:46:42 +00:00
frosch
522e5ec86b
(svn r24277) -Codechange: Store cargo and railtype translation tables in a SmallVector.
2012-05-25 20:57:36 +00:00
frosch
b8f6b300d6
(svn r24276) -Codechange: Enhance GRFFile with constructor and destructor.
2012-05-25 20:54:54 +00:00
michi_cc
6db39410a1
(svn r23887) -Feature: [NewGRF] Support for container version 2.
2012-02-04 13:29:04 +00:00
truebrain
da460f6928
(svn r23703) -Codechange: allow a compiler to inline a wrapper function, avoiding creation of a function stack, massively increasing its speed, for a function that is called often
2012-01-01 16:38:38 +00:00
rubidium
df16ebd730
(svn r23595) -Codechange: add comma after last enum to get a more uniform coding style
2011-12-19 17:48:04 +00:00