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

Function TrackDesignCreateRide

src/openrct2/ride/TrackDesign.cpp:1864–1884  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1862}
1863
1864static money64 TrackDesignCreateRide(int32_t type, int32_t subType, CommandFlags flags, RideId* outRideIndex)
1865{
1866 // Don't set colours as will be set correctly later.
1867 auto gameAction = GameActions::RideCreateAction(
1868 type, subType, 0, 0, getGameState().lastEntranceStyle, Config::Get().general.defaultInspectionInterval);
1869 gameAction.SetFlags(flags);
1870
1871 auto& gameState = getGameState();
1872
1873 auto res = GameActions::ExecuteNested(&gameAction, gameState);
1874
1875 // Callee's of this function expect kMoney64Undefined in case of failure.
1876 if (res.error != GameActions::Status::ok)
1877 {
1878 return kMoney64Undefined;
1879 }
1880
1881 *outRideIndex = res.getData<RideId>();
1882
1883 return res.cost;
1884}
1885
1886/**
1887 *

Callers 1

TrackDesignPlacePreviewFunction · 0.85

Calls 3

RideCreateActionClass · 0.85
ExecuteNestedFunction · 0.85
SetFlagsMethod · 0.80

Tested by

no test coverage detected