diff -r 8026128fe055 -r 03d870cc3dcd spritecache.c --- a/spritecache.c Sun Apr 16 10:26:46 2006 +0000 +++ b/spritecache.c Sun Apr 16 11:26:23 2006 +0000 @@ -71,6 +71,13 @@ return true; } +/* Check if the given Sprite ID exists */ +bool SpriteExists(SpriteID id) +{ + /* Special case for Sprite ID zero -- its position is also 0... */ + return _sprite_file_pos[id] != 0 || id == 0; +} + static void* AllocSprite(size_t); static void* ReadSprite(SpriteID id) @@ -80,7 +87,7 @@ DEBUG(spritecache, 9) ("load sprite %d", id); - if (_sprite_file_pos[id] == 0 && id != 0) { + if (!SpriteExists(id)) { error( "Tried to load non-existing sprite #%d.\n" "Probable cause: Wrong/missing NewGRFs",