Commit Graph

759 Commits (c8779fb311c2665d3fc45c18b2f3460cd998d179)

Author SHA1 Message Date
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.
4 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) 5 years ago
peter1138 4f052fc2a4 Cleanup: Fix alignment after NULL -> nullptr change. 5 years ago
Henry Wilson 7c8e7c6b6e Codechange: Use null pointer literal instead of the NULL macro 5 years ago
frosch 0cf25e84df Fix #7447, 3357cac847: Action 4 has feature 48 'original strings'. (#7449) 5 years ago
glx22 66dd7c3879
Fix: MSVC warnings (#7423) 5 years ago
Henry Wilson c01a2e2a81 Codechange: Removed SmallVector completely 5 years ago
Henry Wilson ab711e6942 Codechange: Replaced SmallVector::[Begin|End]() with std alternatives 5 years ago
Henry Wilson 2bc2de9034 Codechange: Replaced SmallVector::Find() with std::find() 5 years ago
Henry Wilson a0f36a50e6 Codechange: Replaced SmallVector::Append() with std::vector::[push|emplace]_back() 5 years ago
Henry Wilson aa7ca7fe64 Codechange: Replaced SmallVector::Get(n) non-const with std::vector::data() + n 5 years ago
Henry Wilson a690936ed7 Codechange: Replace SmallVector::Length() with std::vector::size() 5 years ago
Henry Wilson bfd79e59dc Codechange: Replace SmallVector::Clear() with std::vector::clear() 5 years ago
Peter Nelson 3357cac847 Fix: Bounds check NewGRF feature. 5 years ago
Peter Nelson 054d05b132 Codechange: NewGRF features are documented in hex, so display as hex. 5 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.
5 years ago
Eddi-z 1447661d20 Cleanup: spurious TODOs in newgrf.cpp (#7297) 5 years ago
Peter Nelson 21dc725762 Fix: Don't consider engines not in the current climate towards used livery classes. 5 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.
5 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.
6 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.
6 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. 6 years ago
peter1138 dacd8d87ef (svn r27974) -Fix (r27907) [FS#6627]: free() called on static airport rotation data (JGR) 6 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
frosch b4b98e5165 (svn r27893) -Codechange: Use fallthrough attribute. (LordAro) 7 years ago
frosch fa8d85b632 (svn r27769) -Change: [NewGRF] Extend the DCxx range to D800-DFFF. 7 years ago
frosch 5846aa5bfc (svn r27768) -Codechange: Use if and IsInsideMM instead of switch-case sequences to test for consecutive values. 7 years ago
frosch b5d1e58b0e (svn r27767) -Codechange: Industries and houses should just use the default-case in Action 4. 7 years ago
frosch 1a9e1c5e91 (svn r27766) -Fix: Obiwan opposed translations for text id D3FF and DCFF in Action 13. 7 years ago
frosch 7b553d255e (svn r27732) -Change: Turn the message about 'missing baseset sprites' from a popup into a static message that only shows in non-release versions, just like the 'missing translations' message. 7 years ago
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.
7 years ago
frosch ec9a920aab (svn r27729) -Codechange: Do not count static NewGRF when checking for the maximum number of NewGRFs in a game.
-Codechange: Remove LAST_GRF_SLOT and MAX_NEWGRFS. Now NETWORK_MAX_GRF_COUNT is the only constant to specify the maximum number of non-static NewGRF.
-Codechange: Increase the number of file slots, effectively increasing the maximum number of static NewGRF and baseset GRFs.
7 years ago
frosch a3b356e057 (svn r27725) -Codechange: Remove IsOpenTTDBaseGRF and test for GCF_CONFIG instead, which does the same in all use-cases. 8 years ago