| 340 | } |
| 341 | |
| 342 | std::optional<SpriteLayoutProcessor> GetRoadStopLayout(TileInfo *ti, const RoadStopSpec *spec, BaseStation *st, StationType type, int view, std::span<int32_t> regs100) |
| 343 | { |
| 344 | RoadStopResolverObject object(spec, st, ti->tile, INVALID_ROADTYPE, type, view); |
| 345 | auto group = object.Resolve<TileLayoutSpriteGroup>(); |
| 346 | if (group == nullptr) return std::nullopt; |
| 347 | for (uint i = 0; i < regs100.size(); ++i) { |
| 348 | regs100[i] = object.GetRegister(0x100 + i); |
| 349 | } |
| 350 | return group->ProcessRegisters(object, nullptr); |
| 351 | } |
| 352 | |
| 353 | /** Wrapper for animation control, see GetRoadStopCallback. */ |
| 354 | uint16_t GetAnimRoadStopCallback(CallbackID callback, uint32_t param1, uint32_t param2, const RoadStopSpec *roadstopspec, BaseStation *st, TileIndex tile, int) |
no test coverage detected