MCPcopy Create free account
hub / github.com/OpenTTD/OpenTTD / GetRoadStopLayout

Function GetRoadStopLayout

src/newgrf_roadstop.cpp:342–351  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

340}
341
342std::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. */
354uint16_t GetAnimRoadStopCallback(CallbackID callback, uint32_t param1, uint32_t param2, const RoadStopSpec *roadstopspec, BaseStation *st, TileIndex tile, int)

Callers 1

DrawTile_StationFunction · 0.85

Calls 3

GetRegisterMethod · 0.80
sizeMethod · 0.45
ProcessRegistersMethod · 0.45

Tested by

no test coverage detected