equal
deleted
inserted
replaced
460 } |
460 } |
461 |
461 |
462 static SpriteGroup *GetVehicleSpriteGroup(byte engine, const Vehicle *v) |
462 static SpriteGroup *GetVehicleSpriteGroup(byte engine, const Vehicle *v) |
463 { |
463 { |
464 SpriteGroup *group; |
464 SpriteGroup *group; |
465 uint16 overriding_engine = -1; |
|
466 byte cargo = CID_PURCHASE; |
465 byte cargo = CID_PURCHASE; |
467 |
466 |
468 if (v != NULL) { |
467 if (v != NULL) { |
469 overriding_engine = v->type == VEH_Train ? v->u.rail.first_engine : -1; |
|
470 cargo = _global_cargo_id[_opt.landscape][v->cargo_type]; |
468 cargo = _global_cargo_id[_opt.landscape][v->cargo_type]; |
471 } |
469 } |
472 |
470 |
473 group = &_engine_custom_sprites[engine][cargo]; |
471 group = &_engine_custom_sprites[engine][cargo]; |
474 |
472 |
475 if (overriding_engine != 0xffff) { |
473 if (v != NULL && v->type == VEH_Train) { |
476 SpriteGroup *overset = GetWagonOverrideSpriteSet(engine, overriding_engine); |
474 SpriteGroup *overset = GetWagonOverrideSpriteSet(engine, v->u.rail.first_engine); |
477 |
475 |
478 if (overset != NULL) group = overset; |
476 if (overset != NULL) group = overset; |
479 } |
477 } |
480 |
478 |
481 return group; |
479 return group; |