MCPcopy Create free account
hub / github.com/OpenRCT2/OpenRCT2 / TrackDesignSaveAddSmallScenery

Function TrackDesignSaveAddSmallScenery

src/openrct2/ride/TrackDesignSave.cpp:234–247  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

232}
233
234static TrackDesignAddStatus TrackDesignSaveAddSmallScenery(const CoordsXY& loc, SmallSceneryElement* sceneryElement)
235{
236 auto entryIndex = sceneryElement->GetEntryIndex();
237 auto obj = ObjectEntryGetObject(ObjectType::smallScenery, entryIndex);
238 if (obj != nullptr && TrackDesignSaveIsSupportedObject(obj))
239 {
240 auto item = TrackDesignSaveCreateSmallSceneryDesc(*obj, loc, *sceneryElement);
241 TrackDesignSavePushTileElement(loc, reinterpret_cast<TileElement*>(sceneryElement));
242 _trackSavedTileElementsDesc.push_back(std::move(item));
243 return TrackDesignAddStatus::Success();
244 }
245
246 return TrackDesignAddStatus::Fail(STR_UNSUPPORTED_OBJECT_FORMAT);
247}
248
249static TrackDesignSceneryElement TrackDesignSaveCreateLargeSceneryDesc(
250 const Object& object, const CoordsXYZ& loc, const LargeSceneryElement& largeSceneryElement)

Callers 1

Calls 7

ObjectEntryGetObjectFunction · 0.85
FailFunction · 0.85
GetEntryIndexMethod · 0.45
push_backMethod · 0.45

Tested by

no test coverage detected