| 514 | } |
| 515 | |
| 516 | static void GetRailIcon(EngineID engine, bool rear_head, int &y, EngineImageType image_type, VehicleSpriteSeq *result) |
| 517 | { |
| 518 | const Engine *e = Engine::Get(engine); |
| 519 | Direction dir = rear_head ? DIR_E : DIR_W; |
| 520 | uint8_t spritenum = e->VehInfo<RailVehicleInfo>().image_index; |
| 521 | |
| 522 | if (IsCustomVehicleSpriteNum(spritenum)) { |
| 523 | GetCustomVehicleIcon(engine, dir, image_type, result); |
| 524 | if (result->IsValid()) { |
| 525 | if (e->GetGRF() != nullptr) { |
| 526 | y += ScaleSpriteTrad(e->GetGRF()->traininfo_vehicle_pitch); |
| 527 | } |
| 528 | return; |
| 529 | } |
| 530 | |
| 531 | spritenum = Engine::Get(engine)->original_image_index; |
| 532 | } |
| 533 | |
| 534 | if (rear_head) spritenum++; |
| 535 | |
| 536 | result->Set(GetDefaultTrainSprite(spritenum, DIR_W)); |
| 537 | } |
| 538 | |
| 539 | void DrawTrainEngine(int left, int right, int preferred_x, int y, EngineID engine, PaletteID pal, EngineImageType image_type) |
| 540 | { |
no test coverage detected