Move PhotoItem to RTD (#11415)

This commit is contained in:
Michael Steenbeek 2020-04-24 04:47:40 +02:00 committed by GitHub
parent 144d312ead
commit 44f62a97c2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
85 changed files with 174 additions and 105 deletions

View File

@ -6408,7 +6408,7 @@ static void window_ride_income_toggle_secondary_price(rct_window* w)
auto shop_item = rideEntry->shop_item_secondary;
if (shop_item == SHOP_ITEM_NONE)
shop_item = RidePhotoItems[ride->type];
shop_item = RideTypeDescriptors[ride->type].PhotoItem;
update_same_price_throughout_flags(shop_item);
@ -6709,7 +6709,7 @@ static void window_ride_income_invalidate(rct_window* w)
}
// Get secondary item
auto secondaryItem = RidePhotoItems[ride->type];
auto secondaryItem = RideTypeDescriptors[ride->type].PhotoItem;
if (!(ride->lifecycle_flags & RIDE_LIFECYCLE_ON_RIDE_PHOTO))
{
if ((secondaryItem = rideEntry->shop_item_secondary) != SHOP_ITEM_NONE)
@ -6795,7 +6795,7 @@ static void window_ride_income_paint(rct_window* w, rct_drawpixelinfo* dpi)
y += 44;
// Secondary item profit / loss per item sold
secondaryItem = RidePhotoItems[ride->type];
secondaryItem = RideTypeDescriptors[ride->type].PhotoItem;
if (!(ride->lifecycle_flags & RIDE_LIFECYCLE_ON_RIDE_PHOTO))
secondaryItem = rideEntry->shop_item_secondary;
@ -7045,7 +7045,7 @@ static void window_ride_customer_paint(rct_window* w, rct_drawpixelinfo* dpi)
}
// Secondary shop items sold / on-ride photos sold
shopItem = (ride->lifecycle_flags & RIDE_LIFECYCLE_ON_RIDE_PHOTO) ? RidePhotoItems[ride->type]
shopItem = (ride->lifecycle_flags & RIDE_LIFECYCLE_ON_RIDE_PHOTO) ? RideTypeDescriptors[ride->type].PhotoItem
: ride->GetRideEntry()->shop_item_secondary;
if (shopItem != SHOP_ITEM_NONE)
{

View File

@ -126,7 +126,7 @@ public:
shopItem = rideEntry->shop_item_secondary;
if (shopItem == SHOP_ITEM_NONE)
{
shopItem = RidePhotoItems[ride->type];
shopItem = RideTypeDescriptors[ride->type].PhotoItem;
if ((ride->lifecycle_flags & RIDE_LIFECYCLE_ON_RIDE_PHOTO) == 0)
{
ride->price_secondary = _price;

View File

@ -4398,7 +4398,7 @@ void Guest::UpdateRideInExit()
if (ride->lifecycle_flags & RIDE_LIFECYCLE_ON_RIDE_PHOTO)
{
uint8_t secondaryItem = RidePhotoItems[ride->type];
uint8_t secondaryItem = RideTypeDescriptors[ride->type].PhotoItem;
if (DecideAndBuyItem(ride, secondaryItem, ride->price_secondary))
{
ride->no_secondary_items_sold++;

View File

@ -361,7 +361,8 @@ money32 Ride::CalculateIncomePerHour() const
priceMinusCost -= ShopItems[currentShopItem].Cost;
}
currentShopItem = (lifecycle_flags & RIDE_LIFECYCLE_ON_RIDE_PHOTO) ? RidePhotoItems[type] : entry->shop_item_secondary;
currentShopItem = (lifecycle_flags & RIDE_LIFECYCLE_ON_RIDE_PHOTO) ? RideTypeDescriptors[type].PhotoItem
: entry->shop_item_secondary;
if (currentShopItem != SHOP_ITEM_NONE)
{

View File

@ -739,101 +739,6 @@ const uint16_t RideFilmLength[3] = {
7000 // SPACE_RAIDERS
};
/** rct2: 0x0097D7CB */
const int32_t RidePhotoItems[] = {
SHOP_ITEM_PHOTO, // RIDE_TYPE_SPIRAL_ROLLER_COASTER
SHOP_ITEM_PHOTO, // RIDE_TYPE_STAND_UP_ROLLER_COASTER
SHOP_ITEM_PHOTO2, // RIDE_TYPE_SUSPENDED_SWINGING_COASTER
SHOP_ITEM_PHOTO2, // RIDE_TYPE_INVERTED_ROLLER_COASTER
SHOP_ITEM_PHOTO, // RIDE_TYPE_JUNIOR_ROLLER_COASTER
SHOP_ITEM_PHOTO, // RIDE_TYPE_MINIATURE_RAILWAY
SHOP_ITEM_PHOTO, // RIDE_TYPE_MONORAIL
SHOP_ITEM_PHOTO2, // RIDE_TYPE_MINI_SUSPENDED_COASTER
SHOP_ITEM_PHOTO, // RIDE_TYPE_BOAT_HIRE
SHOP_ITEM_PHOTO3, // RIDE_TYPE_WOODEN_WILD_MOUSE
SHOP_ITEM_PHOTO, // RIDE_TYPE_STEEPLECHASE
SHOP_ITEM_PHOTO, // RIDE_TYPE_CAR_RIDE
SHOP_ITEM_PHOTO, // RIDE_TYPE_LAUNCHED_FREEFALL
SHOP_ITEM_PHOTO, // RIDE_TYPE_BOBSLEIGH_COASTER
SHOP_ITEM_PHOTO, // RIDE_TYPE_OBSERVATION_TOWER
SHOP_ITEM_PHOTO, // RIDE_TYPE_LOOPING_ROLLER_COASTER
SHOP_ITEM_PHOTO4, // RIDE_TYPE_DINGHY_SLIDE
SHOP_ITEM_PHOTO, // RIDE_TYPE_MINE_TRAIN_COASTER
SHOP_ITEM_PHOTO, // RIDE_TYPE_CHAIRLIFT
SHOP_ITEM_PHOTO, // RIDE_TYPE_CORKSCREW_ROLLER_COASTER
SHOP_ITEM_PHOTO, // RIDE_TYPE_MAZE
SHOP_ITEM_PHOTO, // RIDE_TYPE_SPIRAL_SLIDE
SHOP_ITEM_PHOTO, // RIDE_TYPE_GO_KARTS
SHOP_ITEM_PHOTO4, // RIDE_TYPE_LOG_FLUME
SHOP_ITEM_PHOTO4, // RIDE_TYPE_RIVER_RAPIDS
SHOP_ITEM_PHOTO, // RIDE_TYPE_DODGEMS
SHOP_ITEM_PHOTO, // RIDE_TYPE_SWINGING_SHIP
SHOP_ITEM_PHOTO, // RIDE_TYPE_SWINGING_INVERTER_SHIP
SHOP_ITEM_PHOTO, // RIDE_TYPE_FOOD_STALL
SHOP_ITEM_PHOTO, // RIDE_TYPE_1D
SHOP_ITEM_PHOTO, // RIDE_TYPE_DRINK_STALL
SHOP_ITEM_PHOTO, // RIDE_TYPE_1F
SHOP_ITEM_PHOTO, // RIDE_TYPE_SHOP
SHOP_ITEM_PHOTO, // RIDE_TYPE_MERRY_GO_ROUND
SHOP_ITEM_PHOTO, // RIDE_TYPE_22
SHOP_ITEM_PHOTO, // RIDE_TYPE_INFORMATION_KIOSK
SHOP_ITEM_PHOTO, // RIDE_TYPE_TOILETS
SHOP_ITEM_PHOTO, // RIDE_TYPE_FERRIS_WHEEL
SHOP_ITEM_PHOTO, // RIDE_TYPE_MOTION_SIMULATOR
SHOP_ITEM_PHOTO, // RIDE_TYPE_3D_CINEMA
SHOP_ITEM_PHOTO, // RIDE_TYPE_TOP_SPIN
SHOP_ITEM_PHOTO, // RIDE_TYPE_SPACE_RINGS
SHOP_ITEM_PHOTO, // RIDE_TYPE_REVERSE_FREEFALL_COASTER
SHOP_ITEM_PHOTO, // RIDE_TYPE_LIFT
SHOP_ITEM_PHOTO, // RIDE_TYPE_VERTICAL_DROP_ROLLER_COASTER
SHOP_ITEM_PHOTO, // RIDE_TYPE_CASH_MACHINE
SHOP_ITEM_PHOTO, // RIDE_TYPE_TWIST
SHOP_ITEM_PHOTO, // RIDE_TYPE_HAUNTED_HOUSE
SHOP_ITEM_PHOTO, // RIDE_TYPE_FIRST_AID
SHOP_ITEM_PHOTO, // RIDE_TYPE_CIRCUS
SHOP_ITEM_PHOTO, // RIDE_TYPE_GHOST_TRAIN
SHOP_ITEM_PHOTO, // RIDE_TYPE_TWISTER_ROLLER_COASTER
SHOP_ITEM_PHOTO3, // RIDE_TYPE_WOODEN_ROLLER_COASTER
SHOP_ITEM_PHOTO3, // RIDE_TYPE_SIDE_FRICTION_ROLLER_COASTER
SHOP_ITEM_PHOTO, // RIDE_TYPE_STEEL_WILD_MOUSE
SHOP_ITEM_PHOTO2, // RIDE_TYPE_MULTI_DIMENSION_ROLLER_COASTER
SHOP_ITEM_PHOTO2, // RIDE_TYPE_MULTI_DIMENSION_ROLLER_COASTER_ALT
SHOP_ITEM_PHOTO2, // RIDE_TYPE_FLYING_ROLLER_COASTER
SHOP_ITEM_PHOTO2, // RIDE_TYPE_FLYING_ROLLER_COASTER_ALT
SHOP_ITEM_PHOTO3, // RIDE_TYPE_VIRGINIA_REEL
SHOP_ITEM_PHOTO4, // RIDE_TYPE_SPLASH_BOATS
SHOP_ITEM_PHOTO, // RIDE_TYPE_MINI_HELICOPTERS
SHOP_ITEM_PHOTO2, // RIDE_TYPE_LAY_DOWN_ROLLER_COASTER
SHOP_ITEM_PHOTO, // RIDE_TYPE_SUSPENDED_MONORAIL
SHOP_ITEM_PHOTO2, // RIDE_TYPE_LAY_DOWN_ROLLER_COASTER_ALT
SHOP_ITEM_PHOTO3, // RIDE_TYPE_REVERSER_ROLLER_COASTER
SHOP_ITEM_PHOTO, // RIDE_TYPE_HEARTLINE_TWISTER_COASTER
SHOP_ITEM_PHOTO, // RIDE_TYPE_MINI_GOLF
SHOP_ITEM_PHOTO, // RIDE_TYPE_GIGA_COASTER
SHOP_ITEM_PHOTO, // RIDE_TYPE_ROTO_DROP
SHOP_ITEM_PHOTO, // RIDE_TYPE_FLYING_SAUCERS
SHOP_ITEM_PHOTO, // RIDE_TYPE_CROOKED_HOUSE
SHOP_ITEM_PHOTO, // RIDE_TYPE_MONORAIL_CYCLES
SHOP_ITEM_PHOTO2, // RIDE_TYPE_COMPACT_INVERTED_COASTER
SHOP_ITEM_PHOTO4, // RIDE_TYPE_WATER_COASTER
SHOP_ITEM_PHOTO, // RIDE_TYPE_AIR_POWERED_VERTICAL_COASTER
SHOP_ITEM_PHOTO2, // RIDE_TYPE_INVERTED_HAIRPIN_COASTER
SHOP_ITEM_PHOTO, // RIDE_TYPE_MAGIC_CARPET
SHOP_ITEM_PHOTO, // RIDE_TYPE_SUBMARINE_RIDE
SHOP_ITEM_PHOTO4, // RIDE_TYPE_RIVER_RAFTS
SHOP_ITEM_PHOTO, // RIDE_TYPE_50
SHOP_ITEM_PHOTO, // RIDE_TYPE_ENTERPRISE
SHOP_ITEM_PHOTO, // RIDE_TYPE_52
SHOP_ITEM_PHOTO, // RIDE_TYPE_53
SHOP_ITEM_PHOTO, // RIDE_TYPE_54
SHOP_ITEM_PHOTO, // RIDE_TYPE_55
SHOP_ITEM_PHOTO2, // RIDE_TYPE_INVERTED_IMPULSE_COASTER
SHOP_ITEM_PHOTO, // RIDE_TYPE_MINI_ROLLER_COASTER
SHOP_ITEM_PHOTO, // RIDE_TYPE_MINE_RIDE
SHOP_ITEM_PHOTO, // RIDE_TYPE_59
SHOP_ITEM_PHOTO, // RIDE_TYPE_LIM_LAUNCHED_ROLLER_COASTER
};
// rct2: 0x0097CD1E
const rating_tuple RideRatings[RIDE_TYPE_COUNT] = {
{ 50, 30, 10 }, // RIDE_TYPE_SPIRAL_ROLLER_COASTER
@ -1633,6 +1538,7 @@ static constexpr const RideTypeDescriptor DummyRTD =
SET_FIELD(AvailableBreakdowns, 0),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 50, 1, 0, 0, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -107,7 +107,7 @@ struct RideTypeDescriptor
{
uint8_t AlternateType;
uint8_t Category;
// rct2: 0x0097C468 (0 - 31) and 0x0097C5D4 (32 - 63)
/** rct2: 0x0097C468 (0 - 31) and 0x0097C5D4 (32 - 63) */
uint64_t EnabledTrackPieces;
// Pieces that this ride type _can_ draw, but are disabled because their vehicles lack the relevant sprites,
// or because they are not realistic for the ride type (e.g. LIM boosters in Mini Roller Coasters).
@ -118,9 +118,11 @@ struct RideTypeDescriptor
uint64_t Flags;
RideNameConvention NameConvention;
uint8_t AvailableBreakdowns;
/* rct2: 0x0097D7C8, 0x0097D7C9, 0x0097D7CA */
/** rct2: 0x0097D7C8, 0x0097D7C9, 0x0097D7CA */
rct_ride_lift_data LiftData;
UpkeepCostsDescriptor UpkeepCosts;
/** rct2: 0x0097D7CB */
uint8_t PhotoItem;
bool HasFlag(uint64_t flag) const;
uint64_t GetAvailableTrackPieces() const;
@ -247,7 +249,6 @@ extern const uint8_t RideAvailableModes[];
extern const uint8_t AllRideModesAvailable[];
extern const rct_ride_data_4 RideData4[RIDE_TYPE_COUNT];
extern const int32_t RidePhotoItems[RIDE_TYPE_COUNT];
extern const ride_cost RideTrackCosts[RIDE_TYPE_COUNT];
extern const rct_ride_data_5 RideData5[RIDE_TYPE_COUNT];

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -26,5 +27,6 @@ constexpr const RideTypeDescriptor AirPoweredVerticalCoasterRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_RESTRAINTS_STUCK_CLOSED) | (1 << BREAKDOWN_RESTRAINTS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 90, 20, 0, 0, 0, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -28,5 +29,6 @@ constexpr const RideTypeDescriptor BobsleighCoasterRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION) | (1 << BREAKDOWN_BRAKES_FAILURE)),
SET_FIELD(LiftData, { SoundId::LiftFrictionWheels, 4, 5 }),
SET_FIELD(UpkeepCosts, { 40, 20, 80, 10, 3, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -28,5 +29,6 @@ constexpr const RideTypeDescriptor CompactInvertedCoasterRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_RESTRAINTS_STUCK_CLOSED) | (1 << BREAKDOWN_RESTRAINTS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION) | (1 << BREAKDOWN_BRAKES_FAILURE)),
SET_FIELD(LiftData, { SoundId::LiftFrictionWheels, 4, 6 }),
SET_FIELD(UpkeepCosts, { 40, 20, 80, 13, 3, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO2),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -28,5 +29,6 @@ constexpr const RideTypeDescriptor CorkscrewRollerCoasterRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_RESTRAINTS_STUCK_CLOSED) | (1 << BREAKDOWN_RESTRAINTS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION) | (1 << BREAKDOWN_BRAKES_FAILURE)),
SET_FIELD(LiftData, { SoundId::LiftArrow, 4, 6 }),
SET_FIELD(UpkeepCosts, { 40, 20, 80, 11, 3, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -30,6 +31,7 @@ constexpr const RideTypeDescriptor FlyingRollerCoasterRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_RESTRAINTS_STUCK_CLOSED) | (1 << BREAKDOWN_RESTRAINTS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION) | (1 << BREAKDOWN_BRAKES_FAILURE)),
SET_FIELD(LiftData, { SoundId::LiftBM, 4, 6 }),
SET_FIELD(UpkeepCosts, { 49, 20, 90, 11, 3, 15 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO2),
};
// Inverted variant
@ -48,5 +50,6 @@ constexpr const RideTypeDescriptor FlyingRollerCoasterAltRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_RESTRAINTS_STUCK_CLOSED) | (1 << BREAKDOWN_RESTRAINTS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION) | (1 << BREAKDOWN_BRAKES_FAILURE)),
SET_FIELD(LiftData, { SoundId::LiftBM, 4, 6 }),
SET_FIELD(UpkeepCosts, { 49, 20, 90, 11, 3, 15 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO2),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -28,5 +29,6 @@ constexpr const RideTypeDescriptor GigaCoasterRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_RESTRAINTS_STUCK_CLOSED) | (1 << BREAKDOWN_RESTRAINTS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION) | (1 << BREAKDOWN_BRAKES_FAILURE)),
SET_FIELD(LiftData, { SoundId::LiftClassic, 5, 8 }),
SET_FIELD(UpkeepCosts, { 10, 20, 80, 12, 3, 40 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -27,5 +28,6 @@ constexpr const RideTypeDescriptor HeartlineTwisterCoasterRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_RESTRAINTS_STUCK_CLOSED) | (1 << BREAKDOWN_RESTRAINTS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION)),
SET_FIELD(LiftData, { SoundId::LiftClassic, 4, 6 }),
SET_FIELD(UpkeepCosts, { 47, 20, 80, 11, 3, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -28,5 +29,6 @@ constexpr const RideTypeDescriptor InvertedHairpinCoasterRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_RESTRAINTS_STUCK_CLOSED) | (1 << BREAKDOWN_RESTRAINTS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION) | (1 << BREAKDOWN_BRAKES_FAILURE)),
SET_FIELD(LiftData, { SoundId::LiftWildMouse, 4, 6 }),
SET_FIELD(UpkeepCosts, { 40, 20, 80, 9, 3, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO2),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -28,5 +29,6 @@ constexpr const RideTypeDescriptor InvertedImpulseCoasterRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_RESTRAINTS_STUCK_CLOSED) | (1 << BREAKDOWN_RESTRAINTS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION)),
SET_FIELD(LiftData, { SoundId::LiftClassic, 4, 7 }),
SET_FIELD(UpkeepCosts, { 180, 20, 80, 11, 3, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO2),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -28,5 +29,6 @@ constexpr const RideTypeDescriptor InvertedRollerCoasterRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_RESTRAINTS_STUCK_CLOSED) | (1 << BREAKDOWN_RESTRAINTS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION) | (1 << BREAKDOWN_BRAKES_FAILURE)),
SET_FIELD(LiftData, { SoundId::LiftBM, 5, 7 }),
SET_FIELD(UpkeepCosts, { 40, 20, 80, 13, 3, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO2),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -29,5 +30,6 @@ constexpr const RideTypeDescriptor JuniorRollerCoasterRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_RESTRAINTS_STUCK_CLOSED) | (1 << BREAKDOWN_RESTRAINTS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION) | (1 << BREAKDOWN_BRAKES_FAILURE)),
SET_FIELD(LiftData, { SoundId::LiftFrictionWheels, 4, 6 }),
SET_FIELD(UpkeepCosts, { 40, 20, 80, 8, 3, 5 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -28,5 +29,6 @@ constexpr const RideTypeDescriptor LIMLaunchedRollerCoasterRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_RESTRAINTS_STUCK_CLOSED) | (1 << BREAKDOWN_RESTRAINTS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION) | (1 << BREAKDOWN_BRAKES_FAILURE)),
SET_FIELD(LiftData, { SoundId::Null, 4, 6 }),
SET_FIELD(UpkeepCosts, { 42, 20, 80, 9, 3, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -28,6 +29,7 @@ constexpr const RideTypeDescriptor LayDownRollerCoasterRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_RESTRAINTS_STUCK_CLOSED) | (1 << BREAKDOWN_RESTRAINTS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION) | (1 << BREAKDOWN_BRAKES_FAILURE)),
SET_FIELD(LiftData, { SoundId::LiftClassic, 4, 6 }),
SET_FIELD(UpkeepCosts, { 49, 20, 90, 11, 3, 15 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO2),
};
constexpr const RideTypeDescriptor LayDownRollerCoasterAltRTD =
@ -44,5 +46,6 @@ constexpr const RideTypeDescriptor LayDownRollerCoasterAltRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_RESTRAINTS_STUCK_CLOSED) | (1 << BREAKDOWN_RESTRAINTS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION) | (1 << BREAKDOWN_BRAKES_FAILURE)),
SET_FIELD(LiftData, { SoundId::LiftClassic, 4, 6 }),
SET_FIELD(UpkeepCosts, { 49, 20, 90, 11, 3, 15 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO2),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -28,5 +29,6 @@ constexpr const RideTypeDescriptor LoopingRollerCoasterRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_RESTRAINTS_STUCK_CLOSED) | (1 << BREAKDOWN_RESTRAINTS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION) | (1 << BREAKDOWN_BRAKES_FAILURE)),
SET_FIELD(LiftData, { SoundId::LiftClassic, 4, 6 }),
SET_FIELD(UpkeepCosts, { 40, 20, 80, 10, 3, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -28,5 +29,6 @@ constexpr const RideTypeDescriptor MineRideRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_RESTRAINTS_STUCK_CLOSED) | (1 << BREAKDOWN_RESTRAINTS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 50, 20, 80, 10, 3, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -28,5 +29,6 @@ constexpr const RideTypeDescriptor MineTrainCoasterRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_RESTRAINTS_STUCK_CLOSED) | (1 << BREAKDOWN_RESTRAINTS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION) | (1 << BREAKDOWN_BRAKES_FAILURE)),
SET_FIELD(LiftData, { SoundId::LiftArrow, 4, 6 }),
SET_FIELD(UpkeepCosts, { 40, 20, 80, 10, 3, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -28,5 +29,6 @@ constexpr const RideTypeDescriptor MiniRollerCoasterRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_RESTRAINTS_STUCK_CLOSED) | (1 << BREAKDOWN_RESTRAINTS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION) | (1 << BREAKDOWN_BRAKES_FAILURE)),
SET_FIELD(LiftData, { SoundId::LiftClassic, 4, 6 }),
SET_FIELD(UpkeepCosts, { 35, 20, 80, 8, 3, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -29,5 +30,6 @@ constexpr const RideTypeDescriptor MiniSuspendedCoasterRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_RESTRAINTS_STUCK_CLOSED) | (1 << BREAKDOWN_RESTRAINTS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION) | (1 << BREAKDOWN_BRAKES_FAILURE)),
SET_FIELD(LiftData, { SoundId::LiftFrictionWheels, 4, 5 }),
SET_FIELD(UpkeepCosts, { 40, 20, 80, 10, 3, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO2),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -29,6 +30,7 @@ constexpr const RideTypeDescriptor MultiDimensionRollerCoasterRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_RESTRAINTS_STUCK_CLOSED) | (1 << BREAKDOWN_RESTRAINTS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION) | (1 << BREAKDOWN_BRAKES_FAILURE)),
SET_FIELD(LiftData, { SoundId::LiftFrictionWheels, 4, 6 }),
SET_FIELD(UpkeepCosts, { 75, 20, 90, 11, 3, 15 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO2),
};
constexpr const RideTypeDescriptor MultiDimensionRollerCoasterAltRTD =
@ -45,5 +47,6 @@ constexpr const RideTypeDescriptor MultiDimensionRollerCoasterAltRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_RESTRAINTS_STUCK_CLOSED) | (1 << BREAKDOWN_RESTRAINTS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION) | (1 << BREAKDOWN_BRAKES_FAILURE)),
SET_FIELD(LiftData, { SoundId::LiftFrictionWheels, 4, 6 }),
SET_FIELD(UpkeepCosts, { 75, 20, 90, 11, 3, 15 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO2),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -26,5 +27,6 @@ constexpr const RideTypeDescriptor ReverseFreefallCoasterRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_RESTRAINTS_STUCK_CLOSED) | (1 << BREAKDOWN_RESTRAINTS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 80, 20, 0, 0, 0, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -27,5 +28,6 @@ constexpr const RideTypeDescriptor ReverserRollerCoasterRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION) | (1 << BREAKDOWN_BRAKES_FAILURE)),
SET_FIELD(LiftData, { SoundId::LiftClassic, 3, 4 }),
SET_FIELD(UpkeepCosts, { 39, 20, 80, 10, 3, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO3),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -28,5 +29,6 @@ constexpr const RideTypeDescriptor SideFrictionRollerCoasterRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION) | (1 << BREAKDOWN_BRAKES_FAILURE)),
SET_FIELD(LiftData, { SoundId::LiftWood, 3, 4 }),
SET_FIELD(UpkeepCosts, { 39, 20, 80, 10, 3, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO3),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -28,5 +29,6 @@ constexpr const RideTypeDescriptor SpiralRollerCoasterRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION) | (1 << BREAKDOWN_BRAKES_FAILURE)),
SET_FIELD(LiftData, { SoundId::LiftFrictionWheels, 7, 7 }),
SET_FIELD(UpkeepCosts, { 41, 20, 80, 10, 3, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -28,5 +29,6 @@ constexpr const RideTypeDescriptor StandUpRollerCoasterRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_RESTRAINTS_STUCK_CLOSED) | (1 << BREAKDOWN_RESTRAINTS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION) | (1 << BREAKDOWN_BRAKES_FAILURE)),
SET_FIELD(LiftData, { SoundId::LiftClassic, 4, 6 }),
SET_FIELD(UpkeepCosts, { 40, 20, 80, 10, 3, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -28,5 +29,6 @@ constexpr const RideTypeDescriptor SteelWildMouseRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_RESTRAINTS_STUCK_CLOSED) | (1 << BREAKDOWN_RESTRAINTS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION) | (1 << BREAKDOWN_BRAKES_FAILURE)),
SET_FIELD(LiftData, { SoundId::LiftWildMouse, 4, 6 }),
SET_FIELD(UpkeepCosts, { 40, 20, 80, 9, 3, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -28,5 +29,6 @@ constexpr const RideTypeDescriptor SteeplechaseRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION) | (1 << BREAKDOWN_BRAKES_FAILURE)),
SET_FIELD(LiftData, { SoundId::LiftClassic, 4, 5 }),
SET_FIELD(UpkeepCosts, { 40, 20, 80, 10, 3, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -28,5 +29,6 @@ constexpr const RideTypeDescriptor SuspendedSwingingCoasterRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_RESTRAINTS_STUCK_CLOSED) | (1 << BREAKDOWN_RESTRAINTS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION) | (1 << BREAKDOWN_BRAKES_FAILURE)),
SET_FIELD(LiftData, { SoundId::LiftClassic, 4, 6 }),
SET_FIELD(UpkeepCosts, { 40, 20, 80, 20, 3, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO2),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -28,5 +29,6 @@ constexpr const RideTypeDescriptor TwisterRollerCoasterRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_RESTRAINTS_STUCK_CLOSED) | (1 << BREAKDOWN_RESTRAINTS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION) | (1 << BREAKDOWN_BRAKES_FAILURE)),
SET_FIELD(LiftData, { SoundId::LiftBM, 5, 8 }),
SET_FIELD(UpkeepCosts, { 43, 20, 80, 11, 3, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -28,5 +29,6 @@ constexpr const RideTypeDescriptor VerticalDropCoasterRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_RESTRAINTS_STUCK_CLOSED) | (1 << BREAKDOWN_RESTRAINTS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION) | (1 << BREAKDOWN_BRAKES_FAILURE)),
SET_FIELD(LiftData, { SoundId::LiftBM, 4, 5 }),
SET_FIELD(UpkeepCosts, { 44, 20, 80, 11, 3, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -27,5 +28,6 @@ constexpr const RideTypeDescriptor VirginiaReelRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION) | (1 << BREAKDOWN_BRAKES_FAILURE)),
SET_FIELD(LiftData, { SoundId::LiftClassic, 3, 4 }),
SET_FIELD(UpkeepCosts, { 39, 20, 80, 10, 3, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO3),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -28,5 +29,6 @@ constexpr const RideTypeDescriptor WaterCoasterRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_RESTRAINTS_STUCK_CLOSED) | (1 << BREAKDOWN_RESTRAINTS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION) | (1 << BREAKDOWN_BRAKES_FAILURE)),
SET_FIELD(LiftData, { SoundId::LiftClassic, 4, 6 }),
SET_FIELD(UpkeepCosts, { 60, 20, 80, 8, 3, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO4),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -28,5 +29,6 @@ constexpr const RideTypeDescriptor WoodenRollerCoasterRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_RESTRAINTS_STUCK_CLOSED) | (1 << BREAKDOWN_RESTRAINTS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION) | (1 << BREAKDOWN_BRAKES_FAILURE)),
SET_FIELD(LiftData, { SoundId::LiftWood, 5, 7 }),
SET_FIELD(UpkeepCosts, { 40, 20, 80, 10, 3, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO3),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -29,5 +30,6 @@ constexpr const RideTypeDescriptor WoodenWildMouseRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION) | (1 << BREAKDOWN_BRAKES_FAILURE)),
SET_FIELD(LiftData, { SoundId::LiftClassic, 4, 5 }),
SET_FIELD(UpkeepCosts, { 40, 20, 80, 9, 3, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO3),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -31,5 +32,6 @@ constexpr const RideTypeDescriptor CarRideRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 70, 20, 0, 8, 3, 5 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -29,5 +30,6 @@ constexpr const RideTypeDescriptor CircusRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 50, 1, 0, 0, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -29,5 +30,6 @@ constexpr const RideTypeDescriptor CrookedHouseRTD =
SET_FIELD(AvailableBreakdowns, 0),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 30, 1, 0, 0, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -29,5 +30,6 @@ constexpr const RideTypeDescriptor DodgemsRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 50, 1, 0, 5, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -29,5 +30,6 @@ constexpr const RideTypeDescriptor FerrisWheelRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 50, 1, 0, 0, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -30,5 +31,6 @@ constexpr const RideTypeDescriptor FlyingSaucersRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 90, 1, 0, 5, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -31,5 +32,6 @@ constexpr const RideTypeDescriptor GhostTrainRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 80, 20, 0, 8, 3, 5 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -29,5 +30,6 @@ constexpr const RideTypeDescriptor HauntedHouseRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 50, 1, 0, 0, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -27,5 +28,6 @@ constexpr const RideTypeDescriptor MazeRTD =
SET_FIELD(AvailableBreakdowns, 0),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 50, 1, 0, 0, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -29,5 +30,6 @@ constexpr const RideTypeDescriptor MerryGoRoundRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_CONTROL_FAILURE)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 50, 1, 0, 0, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -28,5 +29,6 @@ constexpr const RideTypeDescriptor MiniGolfRTD =
SET_FIELD(AvailableBreakdowns, 0),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 30, 20, 80, 11, 3, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -31,5 +32,6 @@ constexpr const RideTypeDescriptor MiniHelicoptersRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 70, 20, 0, 8, 3, 5 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -30,5 +31,6 @@ constexpr const RideTypeDescriptor MonorailCyclesRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_VEHICLE_MALFUNCTION)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 47, 20, 0, 8, 3, 5 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -29,5 +30,6 @@ constexpr const RideTypeDescriptor ObservationTowerRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 50, 20, 0, 10, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -29,5 +30,6 @@ constexpr const RideTypeDescriptor SpaceRingsRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 50, 1, 0, 0, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -29,5 +30,6 @@ constexpr const RideTypeDescriptor SpiralSlideRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 50, 1, 0, 0, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -27,5 +28,6 @@ constexpr const RideTypeDescriptor CashMachineRTD =
SET_FIELD(AvailableBreakdowns, 0),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 40, 1, 0, 0, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -28,5 +29,6 @@ constexpr const RideTypeDescriptor DrinkStallRTD =
SET_FIELD(AvailableBreakdowns, 0),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 50, 1, 0, 0, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -28,5 +29,6 @@ constexpr const RideTypeDescriptor FirstAidRTD =
SET_FIELD(AvailableBreakdowns, 0),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 45, 1, 0, 0, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -28,5 +29,6 @@ constexpr const RideTypeDescriptor FoodStallRTD =
SET_FIELD(AvailableBreakdowns, 0),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 50, 1, 0, 0, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -28,5 +29,6 @@ constexpr const RideTypeDescriptor InformationKioskRTD =
SET_FIELD(AvailableBreakdowns, 0),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 50, 1, 0, 0, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -28,5 +29,6 @@ constexpr const RideTypeDescriptor ShopRTD =
SET_FIELD(AvailableBreakdowns, 0),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 50, 1, 0, 0, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -28,5 +29,6 @@ constexpr const RideTypeDescriptor ToiletsRTD =
SET_FIELD(AvailableBreakdowns, 0),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 50, 1, 0, 0, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -30,5 +31,6 @@ constexpr const RideTypeDescriptor CinemaRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 50, 1, 0, 0, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -30,5 +31,6 @@ constexpr const RideTypeDescriptor EnterpriseRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 50, 1, 0, 0, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -28,5 +29,6 @@ constexpr const RideTypeDescriptor GoKartsRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_VEHICLE_MALFUNCTION)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 50, 20, 0, 8, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -29,5 +30,6 @@ constexpr const RideTypeDescriptor LaunchedFreefallRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_RESTRAINTS_STUCK_CLOSED) | (1 << BREAKDOWN_RESTRAINTS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 50, 20, 0, 10, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -30,5 +31,6 @@ constexpr const RideTypeDescriptor MagicCarpetRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 50, 1, 0, 0, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -30,5 +31,6 @@ constexpr const RideTypeDescriptor MotionSimulatorRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 50, 1, 0, 0, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -30,5 +31,6 @@ constexpr const RideTypeDescriptor RotoDropRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_RESTRAINTS_STUCK_CLOSED) | (1 << BREAKDOWN_RESTRAINTS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 50, 20, 0, 10, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -29,5 +30,6 @@ constexpr const RideTypeDescriptor SwingingInverterShipRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 50, 1, 0, 0, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -30,5 +31,6 @@ constexpr const RideTypeDescriptor SwingingShipRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 50, 1, 0, 0, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -29,5 +30,6 @@ constexpr const RideTypeDescriptor TopSpinRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 50, 1, 0, 0, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -29,5 +30,6 @@ constexpr const RideTypeDescriptor TwistRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 50, 1, 0, 0, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -30,5 +31,6 @@ constexpr const RideTypeDescriptor ChairliftRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 60, 20, 0, 4, 3, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -29,5 +30,6 @@ constexpr const RideTypeDescriptor LiftRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_DOORS_STUCK_CLOSED) | (1 << BREAKDOWN_DOORS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 50, 20, 0, 10, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -31,5 +32,6 @@ constexpr const RideTypeDescriptor MiniatureRailwayRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 60, 20, 0, 10, 3, 5 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -31,5 +32,6 @@ constexpr const RideTypeDescriptor MonorailRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_DOORS_STUCK_CLOSED) | (1 << BREAKDOWN_DOORS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 65, 20, 0, 10, 3, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -32,5 +33,6 @@ constexpr const RideTypeDescriptor SuspendedMonorailRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_DOORS_STUCK_CLOSED) | (1 << BREAKDOWN_DOORS_STUCK_OPEN) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 70, 20, 0, 10, 3, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -28,5 +29,6 @@ constexpr const RideTypeDescriptor BoatHireRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_VEHICLE_MALFUNCTION)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 50, 1, 0, 4, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -32,5 +33,6 @@ constexpr const RideTypeDescriptor DinghySlideRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT)),
SET_FIELD(LiftData, { SoundId::LiftFrictionWheels, 4, 5 }),
SET_FIELD(UpkeepCosts, { 40, 20, 80, 4, 3, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO4),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -31,5 +32,6 @@ constexpr const RideTypeDescriptor LogFlumeRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_CONTROL_FAILURE)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 80, 20, 0, 9, 0, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO4),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -31,5 +32,6 @@ constexpr const RideTypeDescriptor RiverRaftsRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 50, 20, 0, 9, 0, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO4),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -32,5 +33,6 @@ constexpr const RideTypeDescriptor RiverRapidsRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_CONTROL_FAILURE)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 82, 20, 0, 10, 0, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO4),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -31,5 +32,6 @@ constexpr const RideTypeDescriptor SplashBoatsRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_CONTROL_FAILURE)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 70, 20, 0, 9, 0, 10 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO4),
};
// clang-format on

View File

@ -10,6 +10,7 @@
#pragma once
#include "../../RideData.h"
#include "../../ShopItem.h"
#include "../../Track.h"
// clang-format off
@ -30,5 +31,6 @@ constexpr const RideTypeDescriptor SubmarineRideRTD =
SET_FIELD(AvailableBreakdowns, (1 << BREAKDOWN_SAFETY_CUT_OUT) | (1 << BREAKDOWN_VEHICLE_MALFUNCTION)),
SET_FIELD(LiftData, { SoundId::Null, 5, 5 }),
SET_FIELD(UpkeepCosts, { 50, 1, 0, 4, 0, 0 }),
SET_FIELD(PhotoItem, SHOP_ITEM_PHOTO),
};
// clang-format on