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

Function CreateObject

src/openrct2/object/ObjectFactory.cpp:350–422  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

348 }
349
350 std::unique_ptr<Object> CreateObject(ObjectType type)
351 {
352 std::unique_ptr<Object> result;
353 switch (type)
354 {
355 case ObjectType::ride:
356 result = std::make_unique<RideObject>();
357 break;
358 case ObjectType::smallScenery:
359 result = std::make_unique<SmallSceneryObject>();
360 break;
361 case ObjectType::largeScenery:
362 result = std::make_unique<LargeSceneryObject>();
363 break;
364 case ObjectType::walls:
365 result = std::make_unique<WallObject>();
366 break;
367 case ObjectType::banners:
368 result = std::make_unique<BannerObject>();
369 break;
370 case ObjectType::paths:
371 result = std::make_unique<FootpathObject>();
372 break;
373 case ObjectType::pathAdditions:
374 result = std::make_unique<PathAdditionObject>();
375 break;
376 case ObjectType::sceneryGroup:
377 result = std::make_unique<SceneryGroupObject>();
378 break;
379 case ObjectType::parkEntrance:
380 result = std::make_unique<EntranceObject>();
381 break;
382 case ObjectType::water:
383 result = std::make_unique<WaterObject>();
384 break;
385 case ObjectType::scenarioMeta:
386 result = std::make_unique<ScenarioMetaObject>();
387 break;
388 case ObjectType::terrainSurface:
389 result = std::make_unique<TerrainSurfaceObject>();
390 break;
391 case ObjectType::terrainEdge:
392 result = std::make_unique<TerrainEdgeObject>();
393 break;
394 case ObjectType::station:
395 result = std::make_unique<StationObject>();
396 break;
397 case ObjectType::music:
398 result = std::make_unique<MusicObject>();
399 break;
400 case ObjectType::footpathSurface:
401 result = std::make_unique<FootpathSurfaceObject>();
402 break;
403 case ObjectType::footpathRailings:
404 result = std::make_unique<FootpathRailingsObject>();
405 break;
406 case ObjectType::audio:
407 result = std::make_unique<AudioObject>();

Callers 3

CreateObjectFromJsonFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected