mirror of
https://github.com/JGRennison/OpenTTD-patches.git
synced 2024-11-04 06:00:15 +00:00
(svn r7031) -Codechange: Use _skip_sprites to skip the rest of the NewGRF when disabled by GRM, and add a shortcut so that the rest of the file isn't scanned.
This commit is contained in:
parent
5dc56b3f9e
commit
2073980e82
12
newgrf.c
12
newgrf.c
@ -2664,6 +2664,9 @@ static void ParamSet(byte *buf, int len)
|
||||
/* Deactivate GRF */
|
||||
grfmsg(GMS_FATAL, "GRM: Unable to allocate %d vehicles, deactivating", count);
|
||||
SETBIT(_cur_grffile->flags, 2);
|
||||
CLRBIT(_cur_grffile->flags, 1);
|
||||
|
||||
_skip_sprites = -1;
|
||||
return;
|
||||
}
|
||||
|
||||
@ -3459,11 +3462,10 @@ static void LoadNewGRFFile(const char* filename, uint file_index, uint stage)
|
||||
if (type == 0xFF) {
|
||||
if (_skip_sprites == 0) {
|
||||
DecodeSpecialSprite(num, stage);
|
||||
if (HASBIT(_cur_grffile->flags, 2)) {
|
||||
/* GRF has been deactivated... */
|
||||
CLRBIT(_cur_grffile->flags, 1);
|
||||
return;
|
||||
}
|
||||
|
||||
/* Stop all processing if we are to skip the remaining sprites */
|
||||
if (_skip_sprites == -1) break;
|
||||
|
||||
continue;
|
||||
} else {
|
||||
FioSkipBytes(num);
|
||||
|
Loading…
Reference in New Issue
Block a user