summaryrefslogtreecommitdiff
path: root/src/newgrf.cpp
AgeCommit message (Collapse)Author
2021-05-02Codechange: Validate custom station platform layout tiles are permitted ↵Peter Nelson
values only.
2021-05-02Codechange: Use std::vector for NewGRF station tile sprite layouts.Peter Nelson
2021-05-02Codechange: Use std::vector for NewGRF station platform layouts.Peter Nelson
This avoids the need to custom memory management and additional members. This also resolves use-after-free if modifying copied layouts, so presumably nobody has ever done that.
2021-05-02Codechange: Warn if randomaction2 group count is not a power of 2.Peter Nelson
Previously noted by a comment, this does not need to be guarded against as non-powers of 2 will not cause issues beyond the choice of results being reduced.
2021-05-02Cleanup: Use std::vector in RandomSpriteGroup.Peter Nelson
2021-05-02Cleanup: Use std::vector in DeterministicSpriteGroup.Peter Nelson
2021-05-02Cleanup: Use std::vector in RealSpriteGroup.Peter Nelson
2021-04-29Codechange: Replace FOR_ALL_CARGOSPECS with range-based for loopsglx22
2021-04-02Fix: Memory leak of airport tile layout in AirportChangeInfo (prop 0A) (#8928)Jonathan G Rennison
2021-03-26Change: rename setting "max_heightlevel" to "map_height_limit"Patric Stout
This better reflects what it is, and hopefully removes a bit of the confusion people are having what this setting actually does. Additionally, update the text on the setting to better inform users what it is doing exactly, so they can make an educated decision on how to change it. Next commit will introduce an "auto" value, which should be the new default. The rename has as added benefit that everyone will start out on the "auto" value.
2021-02-21Fix #8276: Crash when a NewGRF object's size was not setCharles Pigott
2021-01-08Codechange: Remove min/max functions in favour of STL variants (#8502)Charles Pigott
2020-12-27Codechange: Replace assert_compile macro with static_assertCharles Pigott
2020-12-27Add: [NewGRF] Patch flag to test if inflation is on or off.Michael Lutz
2020-12-15Fix: [NewGRF] Action 7/9 conditions 0x0F to 0x12 failed, if 'param' was ↵frosch
0x88. (#8382) Fix: [NewGRF] Action 7/9 conditions 0x0B to 0x12 failed, if 'param' was 0x85. These conditions are supposed to ignore 'param' entirely.
2020-12-15Codechange: Make use of the improved C++17 emplace_back function.Michael Lutz
2020-06-01Codechange: remove has_newindustries globalYexo
2020-06-01Codechange: remove has_newhouses globalYexo
2020-06-01Fix #8166: don't crash on loading an invalid roadtype newgrfYexo
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-05-21Codechange: Use std::string for storing GRF error messages.Michael Lutz
2020-05-21Codechange: Use std::string when translating TTDP NewGRF string codes.Michael Lutz
2020-05-21Codechange: Replace custom linked list for GRF texts with STL vectors and ↵Michael Lutz
strings.
2020-05-21Codechange: Replace SmallPair with std::pair.Michael Lutz
std::pair is already the smallest possible pair, and it already handles non-POD types correctly.
2020-01-26Feature: NewGRF callback profiling (#7868)Niels Martin Hansen
Adds a console command newgrf_profile to collect some profiling data about NewGRF action 2 callbacks and produce a CSV file.
2019-12-23Fix: Action7/9 conditions 0F..12 reported roadtypes as valid tramtypes and ↵frosch
vice versa.
2019-12-23Cleanup: Properties 12 and 15 do not exist for road/tramtypes.frosch
2019-12-21Codechange: Replace FOR_ALL_ENGINES with range-based for loopsglx
2019-11-23Fix #7836: Check coherency of NewGRF parameter min/max (#7840)glx22
2019-11-10Cleanup: Removed SVN headersS. D. Cloudt
2019-10-19Codechange: Use std::vector for industry tile layoutsNiels Martin Hansen
2019-09-29Fix: Some typos found using codespellJMcKiern
2019-05-01Feature: Add NotRoadTypes (NRT)peter1138
2019-04-29Codechange: Set VehicleType's base type to byte instead of using VehicleTypeByteCharles Pigott
2019-04-20Fix: Bounds check access to railtype_map. (#7529)PeterN
2019-04-13Cleanup: Fix alignment after NULL -> nullptr change.peter1138
2019-04-10Codechange: Use null pointer literal instead of the NULL macroHenry Wilson
2019-03-30Fix #7447, 3357cac847: Action 4 has feature 48 'original strings'. (#7449)frosch
2019-03-28Fix: MSVC warnings (#7423)glx22
2019-03-26Codechange: Removed SmallVector completelyHenry Wilson
2019-03-26Codechange: Replaced SmallVector::[Begin|End]() with std alternativesHenry Wilson
2019-03-26Codechange: Replaced SmallVector::Find() with std::find()Henry Wilson
2019-03-26Codechange: Replaced SmallVector::Append() with ↵Henry Wilson
std::vector::[push|emplace]_back()
2019-03-26Codechange: Replaced SmallVector::Get(n) non-const with std::vector::data() + nHenry Wilson
2019-03-26Codechange: Replace SmallVector::Length() with std::vector::size()Henry Wilson
2019-03-26Codechange: Replace SmallVector::Clear() with std::vector::clear()Henry Wilson
2019-03-21Fix: Bounds check NewGRF feature.Peter Nelson
2019-03-21Codechange: NewGRF features are documented in hex, so display as hex.Peter Nelson
2019-03-15Fix e66cec8f86: Permit loading of industry production callback with invalid ↵peter1138
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.
2019-02-28Cleanup: spurious TODOs in newgrf.cpp (#7297)Eddi-z
2019-02-01Fix: Don't consider engines not in the current climate towards used livery ↵Peter Nelson
classes.