peter1138
ae94d7b26f
(svn r4496) - NewGRF: switch custom engine names from storing a char* to using the new StringID based text system. Vehicle name
...
translations now work.
19 years ago
belugas
aab91d287a
(svn r4493) Newgrf : Action 04. Beginning of implementation.
...
Some TODOs left, but the core is there.
Thanks to Peter1138 for code, advice and patience
And to Patchman for letting us define a lot of langids :)
19 years ago
peter1138
92d8af75db
(svn r4486) - NewGRF: Create and use a memory pool to manage sprite groups. This
...
reduces the amount of house keeping we do and the chance of memory
leaks.
19 years ago
peter1138
9ed8c6d4ac
(svn r4483) - NewGRF: Dynamically allocate memory for 'real' spritegroups. This removes the limit of 16 loading/unloading states, although will result in less memory usage as most of the time the full fixed allocation wasn't used.
19 years ago
peter1138
0c889ec8c6
(svn r4474) - NewGRF: Skip non-fatal errors when not in stage 2.
19 years ago
celestar
22f82bba2e
(svn r4463) -Codechange. Include vehicle.h directly instead of implicitly via station.h in a number of source files
19 years ago
peter1138
e3cd311d35
(svn r4453) - NewGRF: fix two compile warnings.
19 years ago
peter1138
2766728629
(svn r4452) - NewGRF: switch to unsigned ints for array indices.
19 years ago
Darkvater
b5bbc23b2c
(svn r4447) - NewGRF: It seems I committed printing action NOP Action 0x0C which is mainly used for comments. So leave it in, but fix the created warning. Use proper action name for check_length() in Action 0x10
19 years ago
Darkvater
12770adba6
(svn r4439) - NewGRF: Add support for Action 0x10. This also required an extra pre-stage (before initialize and activation) to scan the GRF file for GOTO labels. Big thanks for peter1138 for the guidance and answers, as well as parts of the code.
19 years ago
peter1138
3e8423f5d8
(svn r4431) - NewGRF: rename nfo_line to _nfo_line, to avoid confusing Darkvater ;)
19 years ago
Darkvater
5c9acdb182
(svn r4429) - CodeChange[newgrf]: Action0, prop 0x0D. use calloc to allocate memory and zero it out and change the loop a little
19 years ago
peter1138
1a1148c247
(svn r4414) - NewGRF: Don't execute sprite replacements (action 0x0A) in the
...
initialization stage.
19 years ago
peter1138
96e794be2d
(svn r4356) - NewGRF: Load more newstation properties.
19 years ago
peter1138
64a237b192
(svn r4355) - NewGRF: Minor clean up; use the correct return type and remove extraneous brackets.
19 years ago
peter1138
5e345e0e7f
(svn r4352) - NewGRF Codechange: dynamically allocate the memory used to store custom station data. This saves us approximately 40KB per GRF file, if there are no stations defined.
19 years ago
peter1138
32622f2c7b
(svn r4339) - Comment Change: NewGRF, update comments for units of speed
19 years ago
celestar
a7d8ad0004
(svn r4150) -Feature: Merged elrails into trunk. Thanks to Tron for lots of code and proofreading, thanks to peter1138 for another lot of code and ideas.
19 years ago
peter1138
56c3f42397
(svn r3684) - NewGRF: Support loading of miscellaneous flags (not used yet)
19 years ago
peter1138
d6cb4c82da
(svn r3678) - NewGRF Codechange: remove redundant braces and temporary variables.
19 years ago
tron
49c7eb934b
(svn r3613) Some more const, indentation, whitespace and similar stuff
19 years ago
peter1138
9936e39924
(svn r3606) - NewGRF: Convert from TTDP railtype values to our own railtypes. (These are currently the same, but won't be forever...)
19 years ago
peter1138
b5b4491471
(svn r3603) - NewGRF: Support loading of AI rank data
19 years ago
peter1138
67573ed605
(svn r3586) - NewGRF: Load callback masks for all vehicle types.
19 years ago
peter1138
500a7e6627
(svn r3546) - NewGRF feature: Implement rail vehicle 'property' 0x1A: allows shuffling order of rail vehicle purchase list (and replace vehicle list)
19 years ago
peter1138
b88904f345
(svn r3524) - Split newgrf features from engine.[ch] into newgrf_engine.[ch], and add the new files to project files.
19 years ago
tron
b844aa2db3
(svn r3520) Remove unused parameters from some functions
19 years ago
peter1138
e2dda7bce6
(svn r3491) - NewGRF Fix: Handle loading of rail vehicle flags (unimplemented)
19 years ago
peter1138
876813cd9d
(svn r3486) - NewGRF fix: Always reinitialize the ttdpatch flags as patch settings may have changed.
19 years ago
peter1138
571bbc06d7
(svn r3449) - NewGRF Fix: When changing the sprite ID of a vehicle, if it is not FD (custom graphics), the value needs to changed from a 16bit array offset to an array index. (fixes tropicstw.grf)
19 years ago
peter1138
ec7d2fbb39
(svn r3424) - NewGRF fix: Only power should decide whether a rail vehicle is an engine or a wagon. (fixes SHIKI 810 in jpsetw.grf)
19 years ago
peter1138
2a746ffa2d
(svn r3397) - NewGRF fix: Show nfo sprite number instead of current sprite id for warning messages -- this makes this output more useful...
19 years ago
peter1138
2067b2e7b4
(svn r3394) - NewGRF fix: ignore non-climate dependent cargo types. The spec is rather vague on this, but we don't support newcargos anyway.
19 years ago
peter1138
e81c316134
(svn r3388) - NewGRF: Allow train running cost class to differ from engine class. Also fix typo in r3384.
19 years ago
peter1138
793a0099d4
(svn r3386) - NewGRF: Small comment update, and fix for possible issue with engine class not getting set.
19 years ago
peter1138
473b3072ea
(svn r3384) - NewGRF fix: running cost should be halved for dual head vehicles.
19 years ago
peter1138
f55153ce3c
(svn r3360) Fix initialization of engines for precalculation of default refit mask.
19 years ago
peter1138
3532b91eef
(svn r3316) - NewGRF: Unload engine names before loading grf files. This fixes names in climates where the engines don't get loaded. Renamed function to reflect its purpose.
19 years ago
tron
2956b119b2
(svn r3311) Remove the unnecessary global variable _grffile_count: It's just the scroll count of a list and furthermore only used in one file
19 years ago
tron
23bfc03054
(svn r3297) Staticise
19 years ago
tron
24f857ed5e
(svn r3187) Simplify overly complicated ifs, especially if (foo) return false; else return true; is confusing
19 years ago
peter1138
422bea5a0b
(svn r3170) - NewGRF: make ttdpatch flags to reflect patch option status, and added some more values.
19 years ago
peter1138
b3056bc799
(svn r3169) Little bit of coding style fixing, and change from value to lengthof()
19 years ago
peter1138
ff8223150a
(svn r3167) - NewGRF: Start moving custom station code to separate files.
...
Rewrite handling of station classes.
Allow for more than 8 station tile layouts.
Start of code to unload custom stations.
19 years ago
peter1138
b1075ca7a4
(svn r3166) Constify read-only accesses of custom stations
19 years ago
peter1138
7304bbe500
(svn r3152) - NewGRF: [ 1340189 ] Action 7/9 new value : is it TTDPatch or OpenTTD? (belugas)
19 years ago
peter1138
bc25cd89bf
(svn r3148) -NewGRF, Feature: Add support for cargo refitting specification by cargo classes.
19 years ago
tron
422a8654e3
(svn r3119) Don't pretend to be the Windows version of TTD all the time. When being asked answer according to _use_dos_palette. (Suggestion by Belugas)
19 years ago
tron
47137cefb7
(svn r3078) Some more stuff, which piled up:
...
- const, whitespace, indentation, bracing, GB/SB, pointless casts
- use the trinary operator where appropriate
- data types (uint[] -> AcceptedCargo, ...)
- if cascade -> switch
- if (ptr) -> if (ptr != NULL)
- DeMorgan's Law
- Fix some comments
- 0 -> '\0', change magic numbers to symbolic constants
19 years ago
peter1138
8bf11c2e41
(svn r3074) -NewGrf: Fix stupid typo in weight setting.
19 years ago
peter1138
d5eb4183b8
(svn r3071) -NewGRF: Add support for rail vehicle weight greater than 255 tons.
19 years ago
tron
f3de172560
(svn r3059) Use bitfields to encode railtype and climates of engines instead of manual shifting/anding
19 years ago
peter1138
ab41ccb23c
(svn r3045) -NewGRF, Codechange: Don't attempt to map and empty sprite group to a vehicle.
19 years ago
peter1138
5c3625b88f
(svn r3044) -NewGRF, Codechange: Improve handling of non-existent sprite sets.
19 years ago
peter1138
5551b423fc
(svn r3034) -NewGRF: Improve error checking of setting price bases.
19 years ago
peter1138
c78e87d4da
(svn r3032) -NewGRF, Feature: Add support for changing base prices.
19 years ago
peter1138
abe60acbbb
(svn r3017) -NewGRF: Implement sprite group unreferencing and unloading.
19 years ago
peter1138
c655e13e92
(svn r3016) -NewGRF: Implement the start of reference counting for sprite groups. This will allow unloading.
19 years ago
peter1138
d1591e864d
(svn r3015) -NewGRF: Add a new sprite group result type, and support loading of callbacks results within random and "real" groups. (Not fully supported yet.)
19 years ago
peter1138
9fabe008a0
(svn r3014) -NewGRF, Codechange: Make all sprite group references be pointers instead of copying the data around.
19 years ago
peter1138
c294de06b9
(svn r3006) -Fix, NewGRF: Don't assert on user input, skip data instead.
...
-Codechange, NewGRF: Remove unnecessary NULL check.
19 years ago
peter1138
4fe06ceecc
(svn r3005) -Fix, NewGRF: Some GRF files don't specify a name or description, in which case the Action 8 is 8 bytes, not 9. (pb_viaduct)
19 years ago
peter1138
adc5c1230f
(svn r3004) -Feature, NewGRF: Support loading of bridge attributes and tables from GRF. Currently drawing tall pillars uses old data.
19 years ago
peter1138
eb1d025d08
(svn r3002) -Fix, Newgrf: Max speed of 0xFFFF means no max speed.
...
-Fix, Newgrf: Don't mark an engine as a wagon after setting speed -- wagons can have speed limits.
19 years ago
peter1138
fbf06041ca
(svn r2990) Remove _engine_original_sprites and replace all uses with references to our (new) original engine/vehicle tables.
19 years ago
peter1138
2314431a59
(svn r2989) - Make engine/vehicle information tables constant. Duplicate them so NewGRF data can be loaded without wiping out the default data.
19 years ago
tron
c2c865e4b9
(svn r2984) Use adequate types, this should aid portability a bit
19 years ago
peter1138
c02b1d555d
(svn r2982) Newgrf: Added patch option for wagon speed limits. This is enabled by default.
19 years ago
peter1138
eeeeecb030
(svn r2971) - Newgrf: Support loading VarAction2 parameter for variables 0x60-0x7F. This parameter isn't used yet.
19 years ago
peter1138
e380abec97
(svn r2970) - Newgrf: Allocate spritegroups dynamically; this allows a cargo ID to reference the previous definition of the same cargo ID, instead of causing loops.
19 years ago
peter1138
1195076373
(svn r2968) -Newgrf: Implement current set of action D (ParamSet) operations.
19 years ago
peter1138
5676cc32b4
(svn r2966) Fix: newgrf: Replace special case with a check for the existence of a handler in VehicleChangeInfo.
19 years ago
peter1138
2f0616e9f2
(svn r2965) Fix: newgrf: Add bounds checking to VehicleChangeInfo for vehicles and change
...
station special case to vehicle special case.
19 years ago
peter1138
a3b3c3cf31
(svn r2964) Fix: newgrf: Include missing grf feature canal.
19 years ago
tron
42813c5426
(svn r2947) Reorder some code to prepare for future enhancements and get rid of some gotos (peter1138)
19 years ago
tron
4b59946ffe
(svn r2926) -Fix: Use the same file slots in both initialisation stages when loading a patch grf
19 years ago
tron
0c7af4a5ad
(svn r2872) -Feature: [NewGRF] Add support for "extended bytes"
...
While here work around a buffer overflow in action 4
19 years ago
tron
1637df1788
(svn r2871) -Feature/Fix: Per GRF parameter lists
19 years ago
tron
52c859cbe8
(svn r2868) Change the way NewGRFs are loaded: The loading process i no longer bolted onto the normal graphics loading.
...
This has two major advantages:
- Removal of a maze of global variables and distinction of cases from the sprite loading routines, which weren't directly related to the loading process in the first place
- NewGRF actions no longer occupy sprite slots - for example when using DBSetXL this saves about 2000 slots! (you could regard this as a bug fix)
If i didn't make a major mistake this change should have no negative effect on NewGRF support, please test!
19 years ago
tron
19f5036c46
(svn r2866) Move all functions and tables which aren't directly involved in managing the sprite heap to a new file gfxinit.c.
...
This doesn't ease the global variable mess, but makes the distinction between sprite heap and gfx loading routines easier.
19 years ago
tron
302055fc15
(svn r2862) Return a proper version number, when testing the TTDPatch version in the SkipIf action. Pretend to be version 2.0.1 alpha 49 for now.
...
Also change the type of the variables, which get compared, to uint32, because the values are at most 32bits wide and always seem to be unsigned.
19 years ago
miham
f7593f1b99
(svn r2850) [newgrf] Patch from peter1139
19 years ago
tron
af9f55c977
(svn r2720) Remove unused declarations and definitions
19 years ago
tron
a227065ab7
(svn r2701) Insert Id tags into all source files
19 years ago
tron
559babcdc9
(svn r2673) Include functions.h directly, not globally via openttd.h
19 years ago
tron
0762aa9ec9
(svn r2669) Shuffle some more stuff around to reduce dependencies
19 years ago
celestar
b29556e6b5
(svn r2521) -Codechange: Removed trailing "\n"s from DEBUG statements
19 years ago
hackykid
7b0c767238
(svn r2474) - Fix: [newgrf] Some road vehicle action 0 properties were loaded as the wrong type (int8,int16,int32) causing undefined results. (like cargo types being wrong)
19 years ago
hackykid
6d78b70075
(svn r2428) - Feature: [newgrf] Implement shorter train vehicles (Therax), and the callback that goes with it.
...
- Codechange: Remove some magic numbers (PALETTE_CRASH)
20 years ago
hackykid
1018d3b786
(svn r2414) - Feature: [newgrf] Implement powered wagons, and the callback that goes with it.
20 years ago
hackykid
ad2eef0a30
(svn r2401) - Fix: [newgrf] Finish up callback mechanism, implement 'refit capacity' callback slightly more correct.
20 years ago
hackykid
3f3cbea5c4
(svn r2400) - Fix: [newgrf] Load power for dual-headed engines correctly
20 years ago
Darkvater
b438b1248c
(svn r2397) - CodeChange: rename all "ttd" files to "openttd" files.
20 years ago
hackykid
351d7aaa9f
(svn r2389) - Feature: [newgrf] Implement the mechanism for handling newgrf callbacks.
...
- Feature: [newgrf] Implement the 'refit capacity' callback.
20 years ago
orudge
98b3840a3e
(svn r2379) - Fix: [newgrf] Note to self, check thoroughly before committing!
20 years ago
orudge
8ef11fc41f
(svn r2378) - Fix: [newgrf] Further property stubs, help prevents subsequent incorrect reading of newgrf data
20 years ago
orudge
188d1e2e19
(svn r2377) - Fix: [newgrf] Ignore action 0 prop 0x20 (air drag)
20 years ago
Darkvater
72f673f36d
(svn r2368) - Fix: Add 'multihead' TTDPatch option to OpenTTD newgrf flags-emulation (DBSETXLW doesn't complain about it anymore)
20 years ago
Darkvater
5174d3adfe
(svn r2306) - CodeChange: Check the last commands; refits. This needed an extensive rewrite and global/local-cargo ID juggling and bitmasking. However with this done it looks better as well and is compatible with newgrf handling. Big thanks to HackyKid for doing most of the work. This also closes patch "[ 1199277 ] Command checks"
20 years ago
tron
3d6d4b1bfd
(svn r2115) Spring cleaning, no functional changes
20 years ago