frosch
d5f05fb781
Fix: [NewGRF] Action 7/9 conditions 0x0F to 0x12 failed, if 'param' was 0x88. ( #8382 )
...
Fix: [NewGRF] Action 7/9 conditions 0x0B to 0x12 failed, if 'param' was 0x85.
These conditions are supposed to ignore 'param' entirely.
4 years ago
Michael Lutz
79240eab1e
Codechange: Make use of the improved C++17 emplace_back function.
4 years ago
Yexo
1507902d00
Codechange: remove has_newindustries global
4 years ago
Yexo
a82572d0f5
Codechange: remove has_newhouses global
4 years ago
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.
4 years ago
Michael Lutz
9c2e47d03c
Codechange: Use std::string for storing GRF error messages.
4 years ago
Michael Lutz
c082f570ce
Codechange: Use std::string when translating TTDP NewGRF string codes.
4 years ago
Michael Lutz
43cd892e0c
Codechange: Replace custom linked list for GRF texts with STL vectors and strings.
4 years ago
Michael Lutz
f2b40f40aa
Codechange: Replace SmallPair with std::pair.
...
std::pair is already the smallest possible pair, and it already handles non-POD types correctly.
4 years ago
Niels Martin Hansen
c8779fb311
Feature: NewGRF callback profiling ( #7868 )
...
Adds a console command newgrf_profile to collect some profiling data about NewGRF action 2 callbacks and produce a CSV file.
5 years ago
frosch
7f351fd7c1
Fix: Action7/9 conditions 0F..12 reported roadtypes as valid tramtypes and vice versa.
5 years ago
frosch
e5dd19b0de
Cleanup: Properties 12 and 15 do not exist for road/tramtypes.
5 years ago
glx
1f6b3a37f9
Codechange: Replace FOR_ALL_ENGINES with range-based for loops
5 years ago
glx22
d865916a07
Fix #7836 : Check coherency of NewGRF parameter min/max ( #7840 )
5 years ago
S. D. Cloudt
13cc8a0cee
Cleanup: Removed SVN headers
5 years ago
Niels Martin Hansen
53f8d0b815
Codechange: Use std::vector for industry tile layouts
5 years ago
JMcKiern
04f659e768
Fix: Some typos found using codespell
5 years ago
peter1138
c02ef3e456
Feature: Add NotRoadTypes (NRT)
5 years ago
Charles Pigott
69a6c494bf
Codechange: Set VehicleType's base type to byte instead of using VehicleTypeByte
5 years ago
PeterN
be073b46da
Fix: Bounds check access to railtype_map. ( #7529 )
6 years ago
peter1138
4f052fc2a4
Cleanup: Fix alignment after NULL -> nullptr change.
6 years ago
Henry Wilson
7c8e7c6b6e
Codechange: Use null pointer literal instead of the NULL macro
6 years ago
frosch
0cf25e84df
Fix #7447 , 3357cac847: Action 4 has feature 48 'original strings'. ( #7449 )
6 years ago
glx22
66dd7c3879
Fix: MSVC warnings ( #7423 )
6 years ago
Henry Wilson
c01a2e2a81
Codechange: Removed SmallVector completely
6 years ago
Henry Wilson
ab711e6942
Codechange: Replaced SmallVector::[Begin|End]() with std alternatives
6 years ago
Henry Wilson
2bc2de9034
Codechange: Replaced SmallVector::Find() with std::find()
6 years ago
Henry Wilson
a0f36a50e6
Codechange: Replaced SmallVector::Append() with std::vector::[push|emplace]_back()
6 years ago
Henry Wilson
aa7ca7fe64
Codechange: Replaced SmallVector::Get(n) non-const with std::vector::data() + n
6 years ago
Henry Wilson
a690936ed7
Codechange: Replace SmallVector::Length() with std::vector::size()
6 years ago
Henry Wilson
bfd79e59dc
Codechange: Replace SmallVector::Clear() with std::vector::clear()
6 years ago
Peter Nelson
3357cac847
Fix: Bounds check NewGRF feature.
6 years ago
Peter Nelson
054d05b132
Codechange: NewGRF features are documented in hex, so display as hex.
6 years ago
peter1138
fc5f67123a
Fix e66cec8f86: Permit loading of industry production callback with invalid cargo type.
...
It is only an error if the invalid result is actually used. This will be silently ignored at the moment.
It is still an error if a duplicate cargo type is returned.
6 years ago
Eddi-z
1447661d20
Cleanup: spurious TODOs in newgrf.cpp ( #7297 )
6 years ago
Peter Nelson
21dc725762
Fix: Don't consider engines not in the current climate towards used livery classes.
6 years ago
Niels Martin Hansen
48b334cf97
Add: Houses can accept up to 16 different cargo types via NewGRF.
...
New Action0 property 23 for feature 07, variable length, format B n*(B B). Initial byte is number of structures following. First byte in structure is cargo id, second is acceptance level in 1/8 units.
6 years ago
Niels Martin Hansen
e66cec8f86
Add: NewGRF support for 16-in-16-out industries
6 years ago
Charles Pigott
e0c0394e37
Fix: Remove various dead or unnecessary assignments
6 years ago
Charles Pigott
f5b1115039
Doc: Lots and lots of doxymentation fixes
6 years ago
Michael Lutz
4b0b4e0643
Feature: [NewGRF] Increase size of persistent storage to 256.
6 years ago
frosch
6391d49277
Fix: Variable 0x85 had no bounds checks.
6 years ago
Niels Martin Hansen
836d25e738
Codechange: Address some MSVC compiler warnings
6 years ago
PeterN
4cebebcf68
Change: Add CargoTypes type for cargo masks. ( #6790 )
6 years ago
Patric Stout
88be2413ce
Codechange #6729 : mute bogus GCC 7 warning ( #6733 )
...
We do a memset of (byte - byte), which strictly seen ranges from -254 .. 255, for which GCC warns.
But just before this memset is an if() which says the first byte has to be bigger than the second.
So this is a bogus warning.
7 years ago
frosch
55a503e6f2
(svn r27989) -Fix (r27985): VA2 optimisation failed in various special cases:
...
- nvar=0 is meant to return the calculated result.
- Missing references resolve to NULL and got identified with the default result.
- Missing 'break' broke overlapping cases.
- Splitting into non-overlapping cases could result in more than 256 cases.
7 years ago
frosch
07d841d0ef
(svn r27985) -Codechange: Convert VA2 switches into ones with non-overlapping ranges, sort them and resolve them using binary search. Speedup sprite resolving by about 7 percent.
7 years ago
peter1138
dacd8d87ef
(svn r27974) -Fix (r27907) [FS#6627]: free() called on static airport rotation data (JGR)
7 years ago
adf88
6dec889306
(svn r27908) -Codechange: Mark airport tile tables and FTAs "const" to be sure that they are really constant
7 years ago
adf88
b56453f93b
(svn r27907) -Fix: AirportSpec::rotation was memleaking
7 years ago