static SpriteID GetShipIcon(EngineID engine) { const Engine *e = Engine::Get(engine); uint8 spritenum = e->u.ship.image_index; if (is_custom_sprite(spritenum)) { SpriteID sprite = GetCustomVehicleIcon(engine, DIR_W); if (sprite != 0) return sprite; spritenum = e->original_image_index; } return DIR_W + _ship_sprites[spritenum]; }
static void GetShipIcon(EngineID engine, EngineImageType image_type, VehicleSpriteSeq *result) { const Engine *e = Engine::Get(engine); uint8 spritenum = e->u.ship.image_index; if (is_custom_sprite(spritenum)) { GetCustomVehicleIcon(engine, DIR_W, image_type, result); if (result->IsValid()) return; spritenum = e->original_image_index; } assert(IsValidImageIndex<VEH_SHIP>(spritenum)); result->Set(DIR_W + _ship_sprites[spritenum]); }