@@ -603,12 +603,19 @@ uint16 GetCallBackResult(uint16 callback
byte cargo = GC_DEFAULT;
if (v != NULL)
cargo = _global_cargo_id[_opt.landscape][v->cargo_type];
group = &_engine_custom_sprites[engine][cargo];
if (v != NULL && v->type == VEH_Train) {
SpriteGroup *overset = GetWagonOverrideSpriteSet(engine, v->u.rail.first_engine);
if (overset != NULL) group = overset;
}
group = ResolveVehicleSpriteGroup(group, v, callback_info, (resolve_callback) ResolveVehicleSpriteGroup);
if (group->type == SGT_REAL && group->g.real.sprites_per_set == 0 && cargo != GC_DEFAULT) {
// This group is empty but perhaps there'll be a default one.
group = ResolveVehicleSpriteGroup(&_engine_custom_sprites[engine][GC_DEFAULT], v, callback_info,
(resolve_callback) ResolveVehicleSpriteGroup);
Status change: