mirror of https://github.com/OpenRCT2/OpenRCT2.git
Start splitting up ride.h (#16011)
* Start splitting up ride.h * Use cstdint instead of common.h
This commit is contained in:
parent
8b9bcf4adc
commit
275d565e52
|
@ -24,6 +24,7 @@
|
|||
#include <openrct2/network/network.h>
|
||||
#include <openrct2/object/ObjectLimits.h>
|
||||
#include <openrct2/object/ObjectManager.h>
|
||||
#include <openrct2/object/RideObject.h>
|
||||
#include <openrct2/rct1/RCT1.h>
|
||||
#include <openrct2/ride/RideData.h>
|
||||
#include <openrct2/ride/TrackData.h>
|
||||
|
|
|
@ -27,6 +27,7 @@
|
|||
#include "windows/Intent.h"
|
||||
#include "world/Footpath.h"
|
||||
#include "world/LargeScenery.h"
|
||||
#include "world/Scenery.h"
|
||||
|
||||
#include <iterator>
|
||||
#include <vector>
|
||||
|
|
|
@ -51,6 +51,7 @@
|
|||
#include "world/Entrance.h"
|
||||
#include "world/Map.h"
|
||||
#include "world/Park.h"
|
||||
#include "world/Scenery.h"
|
||||
|
||||
#include <cstdint>
|
||||
#include <ctime>
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
#include "../network/network.h"
|
||||
#include "../object/Object.h"
|
||||
#include "../peep/Guest.h"
|
||||
#include "../ride/Ride.h"
|
||||
#include "../ride/RideColour.h"
|
||||
#include "../ride/TrackDesign.h"
|
||||
#include "../world/Location.hpp"
|
||||
#include "../world/TileElement.h"
|
||||
|
|
|
@ -383,7 +383,9 @@
|
|||
<ClInclude Include="ride\gentle\meta\SpiralSlide.h" />
|
||||
<ClInclude Include="ride\Ride.h" />
|
||||
<ClInclude Include="ride\RideAudio.h" />
|
||||
<ClInclude Include="ride\RideColour.h" />
|
||||
<ClInclude Include="ride\RideData.h" />
|
||||
<ClInclude Include="ride\RideEntry.h" />
|
||||
<ClInclude Include="ride\RideRatings.h" />
|
||||
<ClInclude Include="ride\RideTypes.h" />
|
||||
<ClInclude Include="ride\ShopItem.h" />
|
||||
|
|
|
@ -20,9 +20,11 @@
|
|||
#include "../localisation/Localisation.h"
|
||||
#include "../localisation/StringIds.h"
|
||||
#include "../object/ObjectList.h"
|
||||
#include "../object/RideObject.h"
|
||||
#include "../rct1/RCT1.h"
|
||||
#include "../ride/Ride.h"
|
||||
#include "../ride/RideData.h"
|
||||
#include "../ride/RideEntry.h"
|
||||
#include "../ride/TrackData.h"
|
||||
#include "../scenario/Scenario.h"
|
||||
#include "../util/Util.h"
|
||||
|
@ -62,6 +64,35 @@ static bool _researchedSceneryItems[SCENERY_TYPE_COUNT][UINT16_MAX];
|
|||
|
||||
bool gSilentResearch = false;
|
||||
|
||||
// TODO: MOVE TO S4/6 IMPORT
|
||||
ResearchItem::ResearchItem(const RCT12ResearchItem& oldResearchItem)
|
||||
{
|
||||
if (oldResearchItem.IsInventedEndMarker() || oldResearchItem.IsUninventedEndMarker() || oldResearchItem.IsRandomEndMarker())
|
||||
{
|
||||
rawValue = 0;
|
||||
flags = 0;
|
||||
category = ResearchCategory::Transport;
|
||||
SetNull();
|
||||
}
|
||||
else
|
||||
{
|
||||
type = Research::EntryType{ oldResearchItem.type };
|
||||
entryIndex = RCTEntryIndexToOpenRCT2EntryIndex(oldResearchItem.entryIndex);
|
||||
flags = oldResearchItem.flags;
|
||||
category = static_cast<ResearchCategory>(oldResearchItem.category);
|
||||
if (type == Research::EntryType::Ride)
|
||||
{
|
||||
auto* rideEntry = get_ride_entry(entryIndex);
|
||||
baseRideType = rideEntry != nullptr ? RCT2RideTypeToOpenRCT2RideType(oldResearchItem.baseRideType, rideEntry)
|
||||
: oldResearchItem.baseRideType;
|
||||
}
|
||||
else
|
||||
{
|
||||
baseRideType = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* rct2: 0x006671AD, part of 0x00667132
|
||||
|
|
|
@ -11,12 +11,13 @@
|
|||
|
||||
#include "../common.h"
|
||||
#include "../object/ObjectLimits.h"
|
||||
#include "../ride/Ride.h"
|
||||
#include "../rct2/RCT2.h"
|
||||
#include "../util/Util.h"
|
||||
|
||||
#include <optional>
|
||||
|
||||
struct rct_ride_entry;
|
||||
struct ScenerySelection;
|
||||
|
||||
namespace Research
|
||||
{
|
||||
|
@ -105,34 +106,7 @@ struct ResearchItem
|
|||
return retItem;
|
||||
}
|
||||
|
||||
ResearchItem(const RCT12ResearchItem& oldResearchItem)
|
||||
{
|
||||
if (oldResearchItem.IsInventedEndMarker() || oldResearchItem.IsUninventedEndMarker()
|
||||
|| oldResearchItem.IsRandomEndMarker())
|
||||
{
|
||||
rawValue = 0;
|
||||
flags = 0;
|
||||
category = ResearchCategory::Transport;
|
||||
SetNull();
|
||||
}
|
||||
else
|
||||
{
|
||||
type = Research::EntryType{ oldResearchItem.type };
|
||||
entryIndex = RCTEntryIndexToOpenRCT2EntryIndex(oldResearchItem.entryIndex);
|
||||
flags = oldResearchItem.flags;
|
||||
category = static_cast<ResearchCategory>(oldResearchItem.category);
|
||||
if (type == Research::EntryType::Ride)
|
||||
{
|
||||
auto* rideEntry = get_ride_entry(entryIndex);
|
||||
baseRideType = rideEntry != nullptr ? RCT2RideTypeToOpenRCT2RideType(oldResearchItem.baseRideType, rideEntry)
|
||||
: oldResearchItem.baseRideType;
|
||||
}
|
||||
else
|
||||
{
|
||||
baseRideType = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
ResearchItem(const RCT12ResearchItem& oldResearchItem);
|
||||
|
||||
bool operator==(const ResearchItem& rhs) const;
|
||||
};
|
||||
|
|
|
@ -9,12 +9,6 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
#include "../ride/Ride.h"
|
||||
#include "../world/Banner.h"
|
||||
#include "../world/Entrance.h"
|
||||
#include "../world/Footpath.h"
|
||||
#include "../world/Scenery.h"
|
||||
#include "../world/Water.h"
|
||||
#include "Object.h"
|
||||
#include "ObjectLimits.h"
|
||||
|
||||
|
|
|
@ -14,6 +14,7 @@
|
|||
#include "../core/Console.hpp"
|
||||
#include "../core/Memory.hpp"
|
||||
#include "../localisation/StringIds.h"
|
||||
#include "../ride/Ride.h"
|
||||
#include "../util/Util.h"
|
||||
#include "FootpathItemObject.h"
|
||||
#include "LargeSceneryObject.h"
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "../common.h"
|
||||
#include "../object/Object.h"
|
||||
#include "../ride/Ride.h"
|
||||
#include "RideObject.h"
|
||||
|
||||
#include <memory>
|
||||
#include <vector>
|
||||
|
|
|
@ -10,11 +10,15 @@
|
|||
#pragma once
|
||||
|
||||
#include "../core/IStream.hpp"
|
||||
#include "../ride/Ride.h"
|
||||
#include "../ride/RideEntry.h"
|
||||
#include "Object.h"
|
||||
|
||||
#include <vector>
|
||||
|
||||
// TODO: MOVE TO COMMON LIMITS HEADER
|
||||
#define MAX_RIDE_TYPES_PER_RIDE_ENTRY 3
|
||||
#define MAX_CATEGORIES_PER_RIDE 2
|
||||
|
||||
class RideObject final : public Object
|
||||
{
|
||||
private:
|
||||
|
|
|
@ -22,6 +22,7 @@
|
|||
#include "../../object/ObjectManager.h"
|
||||
#include "../../peep/Peep.h"
|
||||
#include "../../peep/Staff.h"
|
||||
#include "../../ride/Ride.h"
|
||||
#include "../../ride/Track.h"
|
||||
#include "../../ride/TrackDesign.h"
|
||||
#include "../../ride/TrackPaint.h"
|
||||
|
|
|
@ -10,6 +10,7 @@
|
|||
#pragma once
|
||||
|
||||
#include "../management/Finance.h"
|
||||
#include "../ride/Ride.h"
|
||||
#include "../ride/ShopItem.h"
|
||||
#include "Peep.h"
|
||||
|
||||
|
@ -201,6 +202,7 @@ struct PeepThought
|
|||
|
||||
struct Guest;
|
||||
struct Staff;
|
||||
struct rct_ride_entry_vehicle;
|
||||
|
||||
struct IntensityRange
|
||||
{
|
||||
|
|
|
@ -12,7 +12,6 @@
|
|||
#include "../management/Award.h"
|
||||
#include "../management/Research.h"
|
||||
#include "../rct12/RCT12.h"
|
||||
#include "../ride/Ride.h"
|
||||
#include "../world/Banner.h"
|
||||
#include "../world/Climate.h"
|
||||
#include "../world/MapAnimation.h"
|
||||
|
@ -32,6 +31,7 @@ namespace RCT1
|
|||
constexpr const uint32_t RCT1_LL_CSG1_DAT_FILE_SIZE = 41402869;
|
||||
constexpr const uint32_t RCT1_NUM_TERRAIN_SURFACES = 16;
|
||||
constexpr const uint32_t RCT1_NUM_TERRAIN_EDGES = 15;
|
||||
constexpr const uint32_t RCT1_CUSTOMER_HISTORY_SIZE = 10;
|
||||
|
||||
enum class RideType : uint8_t
|
||||
{
|
||||
|
@ -222,10 +222,10 @@ namespace RCT1
|
|||
int16_t unk_D0; // 0x0D0
|
||||
int16_t unk_D2; // 0x0D2
|
||||
// Customer count in the last 10 * 960 game ticks (sliding window)
|
||||
uint16_t num_customers[CUSTOMER_HISTORY_SIZE]; // 0xD4
|
||||
money16 price; // 0x0E8
|
||||
RCT12xy8 chairlift_bullwheel_location[2]; // 0x0EA
|
||||
uint8_t chairlift_bullwheel_z[2]; // 0x0EE
|
||||
uint16_t num_customers[RCT1_CUSTOMER_HISTORY_SIZE]; // 0xD4
|
||||
money16 price; // 0x0E8
|
||||
RCT12xy8 chairlift_bullwheel_location[2]; // 0x0EA
|
||||
uint8_t chairlift_bullwheel_z[2]; // 0x0EE
|
||||
union
|
||||
{
|
||||
RatingTuple ratings;
|
||||
|
|
|
@ -9,10 +9,10 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
#include "../common.h"
|
||||
#include "Ride.h"
|
||||
#include <cstdint>
|
||||
|
||||
struct Vehicle;
|
||||
struct Ride;
|
||||
|
||||
Vehicle* cable_lift_segment_create(
|
||||
Ride& ride, int32_t x, int32_t y, int32_t z, int32_t direction, uint16_t var_44, int32_t remaining_distance, bool head);
|
||||
|
|
|
@ -36,6 +36,7 @@
|
|||
#include "../object/MusicObject.h"
|
||||
#include "../object/ObjectList.h"
|
||||
#include "../object/ObjectManager.h"
|
||||
#include "../object/RideObject.h"
|
||||
#include "../object/StationObject.h"
|
||||
#include "../paint/VirtualFloor.h"
|
||||
#include "../peep/Peep.h"
|
||||
|
@ -48,6 +49,7 @@
|
|||
#include "../windows/Intent.h"
|
||||
#include "../world/Banner.h"
|
||||
#include "../world/Climate.h"
|
||||
#include "../world/Entrance.h"
|
||||
#include "../world/Footpath.h"
|
||||
#include "../world/Location.hpp"
|
||||
#include "../world/Map.h"
|
||||
|
@ -57,6 +59,7 @@
|
|||
#include "CableLift.h"
|
||||
#include "RideAudio.h"
|
||||
#include "RideData.h"
|
||||
#include "RideEntry.h"
|
||||
#include "ShopItem.h"
|
||||
#include "Station.h"
|
||||
#include "Track.h"
|
||||
|
|
|
@ -14,10 +14,9 @@
|
|||
#include "../rct12/RCT12.h"
|
||||
#include "../rct2/RCT2.h"
|
||||
#include "../world/Map.h"
|
||||
#include "RideColour.h"
|
||||
#include "RideRatings.h"
|
||||
#include "RideTypes.h"
|
||||
#include "ShopItem.h"
|
||||
#include "VehicleEntry.h"
|
||||
|
||||
#include <limits>
|
||||
#include <string_view>
|
||||
|
@ -31,16 +30,11 @@ struct Guest;
|
|||
struct Staff;
|
||||
struct Vehicle;
|
||||
|
||||
#define MAX_RIDE_TYPES_PER_RIDE_ENTRY 3
|
||||
// The max number of different types of vehicle.
|
||||
// Examples of vehicles here are the locomotive, tender and carriage of the Miniature Railway.
|
||||
#define MAX_VEHICLES_PER_RIDE_ENTRY 4
|
||||
constexpr const uint8_t MAX_VEHICLES_PER_RIDE = 255; // Note: that 255 represents No Train (null) hence why this is not 256
|
||||
constexpr const uint8_t MAX_CIRCUITS_PER_RIDE = 20;
|
||||
constexpr const uint8_t MAX_CARS_PER_TRAIN = 255;
|
||||
constexpr const uint8_t MAX_VEHICLE_COLOURS = std::max(MAX_CARS_PER_TRAIN, MAX_VEHICLES_PER_RIDE);
|
||||
#define NUM_COLOUR_SCHEMES 4
|
||||
#define MAX_CATEGORIES_PER_RIDE 2
|
||||
#define DOWNTIME_HISTORY_SIZE 8
|
||||
#define CUSTOMER_HISTORY_SIZE 10
|
||||
#define MAX_CARS_PER_TRAIN 255
|
||||
|
@ -58,95 +52,6 @@ constexpr uint16_t const MAZE_CLEARANCE_HEIGHT = 4 * COORDS_Z_STEP;
|
|||
|
||||
constexpr const uint8_t NUM_SHOP_ITEMS_PER_RIDE = 2;
|
||||
|
||||
#pragma pack(push, 1)
|
||||
struct TrackColour
|
||||
{
|
||||
uint8_t main;
|
||||
uint8_t additional;
|
||||
uint8_t supports;
|
||||
};
|
||||
assert_struct_size(TrackColour, 3);
|
||||
|
||||
struct vehicle_colour
|
||||
{
|
||||
uint8_t main;
|
||||
uint8_t additional_1;
|
||||
uint8_t additional_2;
|
||||
};
|
||||
assert_struct_size(vehicle_colour, 3);
|
||||
|
||||
struct track_colour_preset_list
|
||||
{
|
||||
uint8_t count;
|
||||
TrackColour list[256];
|
||||
};
|
||||
assert_struct_size(track_colour_preset_list, (1 + 256 * 3));
|
||||
|
||||
struct vehicle_colour_preset_list
|
||||
{
|
||||
uint8_t count;
|
||||
vehicle_colour list[256];
|
||||
};
|
||||
assert_struct_size(vehicle_colour_preset_list, (1 + 256 * 3));
|
||||
|
||||
struct RideNaming
|
||||
{
|
||||
rct_string_id Name;
|
||||
rct_string_id Description;
|
||||
};
|
||||
assert_struct_size(RideNaming, 4);
|
||||
|
||||
#pragma pack(pop)
|
||||
|
||||
/**
|
||||
* Ride type structure.
|
||||
*/
|
||||
struct rct_ride_entry
|
||||
{
|
||||
RideNaming naming;
|
||||
// The first three images are previews. They correspond to the ride_type[] array.
|
||||
uint32_t images_offset;
|
||||
uint32_t flags;
|
||||
uint8_t ride_type[RCT2_MAX_RIDE_TYPES_PER_RIDE_ENTRY];
|
||||
uint8_t min_cars_in_train;
|
||||
uint8_t max_cars_in_train;
|
||||
uint8_t cars_per_flat_ride;
|
||||
// Number of cars that can't hold passengers
|
||||
uint8_t zero_cars;
|
||||
// The index to the vehicle type displayed in the vehicle tab.
|
||||
uint8_t tab_vehicle;
|
||||
uint8_t default_vehicle;
|
||||
// Convert from first - fourth vehicle to vehicle structure
|
||||
uint8_t front_vehicle;
|
||||
uint8_t second_vehicle;
|
||||
uint8_t rear_vehicle;
|
||||
uint8_t third_vehicle;
|
||||
uint8_t BuildMenuPriority;
|
||||
rct_ride_entry_vehicle vehicles[RCT2_MAX_VEHICLES_PER_RIDE_ENTRY];
|
||||
vehicle_colour_preset_list* vehicle_preset_list;
|
||||
int8_t excitement_multiplier;
|
||||
int8_t intensity_multiplier;
|
||||
int8_t nausea_multiplier;
|
||||
uint8_t max_height;
|
||||
ShopItem shop_item[NUM_SHOP_ITEMS_PER_RIDE];
|
||||
rct_string_id capacity;
|
||||
void* obj;
|
||||
|
||||
const rct_ride_entry_vehicle* GetVehicle(size_t id) const
|
||||
{
|
||||
if (id < std::size(vehicles))
|
||||
{
|
||||
return &vehicles[id];
|
||||
}
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
const rct_ride_entry_vehicle* GetDefaultVehicle() const
|
||||
{
|
||||
return GetVehicle(default_vehicle);
|
||||
}
|
||||
};
|
||||
|
||||
struct RideStation
|
||||
{
|
||||
CoordsXY Start;
|
||||
|
@ -961,16 +866,6 @@ enum
|
|||
TRACK_ELEMENT_SET_SEAT_ROTATION = (1 << 5)
|
||||
};
|
||||
|
||||
struct RideOperatingSettings
|
||||
{
|
||||
uint8_t MinValue;
|
||||
uint8_t MaxValue;
|
||||
uint8_t MaxBrakesSpeed;
|
||||
uint8_t PoweredLiftAcceleration;
|
||||
uint8_t BoosterAcceleration;
|
||||
int8_t BoosterSpeedFactor; // The factor to shift the raw booster speed with
|
||||
};
|
||||
|
||||
#define MAX_RIDE_MEASUREMENTS 8
|
||||
#define RIDE_VALUE_UNDEFINED 0xFFFF
|
||||
#define RIDE_INITIAL_RELIABILITY ((100 << 8) | 0xFF) // Upper byte is percentage, lower byte is "decimal".
|
||||
|
@ -1160,14 +1055,12 @@ void ride_set_name(Ride* ride, const char* name, uint32_t flags);
|
|||
int32_t ride_get_refund_price(const Ride* ride);
|
||||
int32_t ride_get_random_colour_preset_index(uint8_t ride_type);
|
||||
money32 ride_get_common_price(Ride* forRide);
|
||||
RideNaming get_ride_naming(const uint8_t rideType, rct_ride_entry* rideEntry);
|
||||
|
||||
void ride_clear_for_construction(Ride* ride);
|
||||
void ride_entrance_exit_place_provisional_ghost();
|
||||
void ride_entrance_exit_remove_ghost();
|
||||
void ride_restore_provisional_track_piece();
|
||||
void ride_remove_provisional_track_piece();
|
||||
void set_vehicle_type_image_max_sizes(rct_ride_entry_vehicle* vehicle_type, int32_t num_images);
|
||||
void invalidate_test_results(Ride* ride);
|
||||
|
||||
void ride_select_next_section();
|
||||
|
|
|
@ -0,0 +1,26 @@
|
|||
/*****************************************************************************
|
||||
* Copyright (c) 2014-2021 OpenRCT2 developers
|
||||
*
|
||||
* For a complete list of all authors, please refer to contributors.md
|
||||
* Interested in contributing? Visit https://github.com/OpenRCT2/OpenRCT2
|
||||
*
|
||||
* OpenRCT2 is licensed under the GNU General Public License version 3.
|
||||
*****************************************************************************/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <cstdint>
|
||||
|
||||
struct TrackColour
|
||||
{
|
||||
uint8_t main;
|
||||
uint8_t additional;
|
||||
uint8_t supports;
|
||||
};
|
||||
|
||||
struct vehicle_colour
|
||||
{
|
||||
uint8_t main;
|
||||
uint8_t additional_1;
|
||||
uint8_t additional_2;
|
||||
};
|
|
@ -25,6 +25,7 @@
|
|||
#include "../sprites.h"
|
||||
#include "../util/Util.h"
|
||||
#include "Ride.h"
|
||||
#include "RideEntry.h"
|
||||
#include "ShopItem.h"
|
||||
#include "Track.h"
|
||||
#include "TrackPaint.h"
|
||||
|
@ -110,6 +111,16 @@ struct RideColourPreview
|
|||
uint32_t Supports;
|
||||
};
|
||||
|
||||
struct RideOperatingSettings
|
||||
{
|
||||
uint8_t MinValue;
|
||||
uint8_t MaxValue;
|
||||
uint8_t MaxBrakesSpeed;
|
||||
uint8_t PoweredLiftAcceleration;
|
||||
uint8_t BoosterAcceleration;
|
||||
int8_t BoosterSpeedFactor; // The factor to shift the raw booster speed with
|
||||
};
|
||||
|
||||
struct UpkeepCostsDescriptor
|
||||
{
|
||||
/**
|
||||
|
|
|
@ -0,0 +1,94 @@
|
|||
/*****************************************************************************
|
||||
* Copyright (c) 2014-2021 OpenRCT2 developers
|
||||
*
|
||||
* For a complete list of all authors, please refer to contributors.md
|
||||
* Interested in contributing? Visit https://github.com/OpenRCT2/OpenRCT2
|
||||
*
|
||||
* OpenRCT2 is licensed under the GNU General Public License version 3.
|
||||
*****************************************************************************/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "../rct2/RCT2.h"
|
||||
#include "RideColour.h"
|
||||
#include "ShopItem.h"
|
||||
#include "VehicleEntry.h"
|
||||
|
||||
#include <cstdint>
|
||||
|
||||
// TODO: MOVE TO COMMON LIMITS HEADER DUPLICATED FROM RIDE.H
|
||||
constexpr const uint8_t NUM_SHOP_ITEMS_PER_RIDE_2 = 2;
|
||||
|
||||
// The max number of different types of vehicle.
|
||||
// Examples of vehicles here are the locomotive, tender and carriage of the Miniature Railway.
|
||||
#define MAX_VEHICLES_PER_RIDE_ENTRY 4
|
||||
|
||||
struct RideNaming
|
||||
{
|
||||
rct_string_id Name;
|
||||
rct_string_id Description;
|
||||
};
|
||||
|
||||
struct track_colour_preset_list
|
||||
{
|
||||
uint8_t count;
|
||||
TrackColour list[256];
|
||||
};
|
||||
|
||||
struct vehicle_colour_preset_list
|
||||
{
|
||||
uint8_t count;
|
||||
vehicle_colour list[256];
|
||||
};
|
||||
|
||||
/**
|
||||
* Ride type structure.
|
||||
*/
|
||||
struct rct_ride_entry
|
||||
{
|
||||
RideNaming naming;
|
||||
// The first three images are previews. They correspond to the ride_type[] array.
|
||||
uint32_t images_offset;
|
||||
uint32_t flags;
|
||||
uint8_t ride_type[RCT2_MAX_RIDE_TYPES_PER_RIDE_ENTRY];
|
||||
uint8_t min_cars_in_train;
|
||||
uint8_t max_cars_in_train;
|
||||
uint8_t cars_per_flat_ride;
|
||||
// Number of cars that can't hold passengers
|
||||
uint8_t zero_cars;
|
||||
// The index to the vehicle type displayed in the vehicle tab.
|
||||
uint8_t tab_vehicle;
|
||||
uint8_t default_vehicle;
|
||||
// Convert from first - fourth vehicle to vehicle structure
|
||||
uint8_t front_vehicle;
|
||||
uint8_t second_vehicle;
|
||||
uint8_t rear_vehicle;
|
||||
uint8_t third_vehicle;
|
||||
uint8_t BuildMenuPriority;
|
||||
rct_ride_entry_vehicle vehicles[RCT2_MAX_VEHICLES_PER_RIDE_ENTRY];
|
||||
vehicle_colour_preset_list* vehicle_preset_list;
|
||||
int8_t excitement_multiplier;
|
||||
int8_t intensity_multiplier;
|
||||
int8_t nausea_multiplier;
|
||||
uint8_t max_height;
|
||||
ShopItem shop_item[NUM_SHOP_ITEMS_PER_RIDE_2];
|
||||
rct_string_id capacity;
|
||||
void* obj;
|
||||
|
||||
const rct_ride_entry_vehicle* GetVehicle(size_t id) const
|
||||
{
|
||||
if (id < std::size(vehicles))
|
||||
{
|
||||
return &vehicles[id];
|
||||
}
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
const rct_ride_entry_vehicle* GetDefaultVehicle() const
|
||||
{
|
||||
return GetVehicle(default_vehicle);
|
||||
}
|
||||
};
|
||||
|
||||
void set_vehicle_type_image_max_sizes(rct_ride_entry_vehicle* vehicle_type, int32_t num_images);
|
||||
RideNaming get_ride_naming(const uint8_t rideType, rct_ride_entry* rideEntry);
|
|
@ -12,6 +12,7 @@
|
|||
#include "../common.h"
|
||||
#include "../localisation/StringIds.h"
|
||||
#include "../peep/Guest.h"
|
||||
#include "../ride/RideEntry.h"
|
||||
#include "../sprites.h"
|
||||
|
||||
ShopItem& operator++(ShopItem& d, int)
|
||||
|
|
|
@ -13,6 +13,7 @@
|
|||
#include "../peep/Guest.h"
|
||||
#include "../scenario/Scenario.h"
|
||||
#include "../world/Location.hpp"
|
||||
#include "RideEntry.h"
|
||||
#include "Track.h"
|
||||
#include "Vehicle.h"
|
||||
|
||||
|
|
|
@ -11,7 +11,8 @@
|
|||
|
||||
#include "../common.h"
|
||||
#include "../object/Object.h"
|
||||
#include "Ride.h"
|
||||
#include "../world/Map.h"
|
||||
#include "../world/TileElement.h"
|
||||
|
||||
constexpr const uint32_t RideConstructionSpecialPieceSelected = 0x10000;
|
||||
|
||||
|
|
|
@ -27,6 +27,7 @@ using track_type_t = uint16_t;
|
|||
|
||||
struct Ride;
|
||||
struct rct_ride_entry;
|
||||
struct rct_ride_entry_vehicle;
|
||||
class DataSerialiser;
|
||||
|
||||
struct GForces
|
||||
|
|
|
@ -15,9 +15,6 @@
|
|||
#include <array>
|
||||
#include <vector>
|
||||
|
||||
#ifdef __TESTPAINT__
|
||||
# pragma pack(push, 1)
|
||||
#endif // __TESTPAINT__
|
||||
/**
|
||||
* Ride type vehicle structure.
|
||||
* size: 0x65
|
||||
|
@ -76,11 +73,3 @@ struct rct_ride_entry_vehicle
|
|||
std::vector<std::array<CoordsXY, 3>> peep_loading_waypoints = {};
|
||||
std::vector<int8_t> peep_loading_positions = {};
|
||||
};
|
||||
#ifdef __TESTPAINT__
|
||||
# pragma pack(pop)
|
||||
#endif // __TESTPAINT__
|
||||
#ifdef PLATFORM_32BIT
|
||||
static_assert(sizeof(rct_ride_entry_vehicle) % 4 == 0, "Invalid struct size");
|
||||
#else
|
||||
static_assert(sizeof(rct_ride_entry_vehicle) % 8 == 0, "Invalid struct size");
|
||||
#endif
|
||||
|
|
|
@ -11,6 +11,8 @@
|
|||
#include "../../interface/Viewport.h"
|
||||
#include "../../paint/Paint.h"
|
||||
#include "../../paint/Supports.h"
|
||||
#include "../Ride.h"
|
||||
#include "../RideEntry.h"
|
||||
#include "../Track.h"
|
||||
#include "../TrackPaint.h"
|
||||
|
||||
|
|
|
@ -11,6 +11,8 @@
|
|||
#include "../../interface/Viewport.h"
|
||||
#include "../../paint/Paint.h"
|
||||
#include "../../paint/Supports.h"
|
||||
#include "../Ride.h"
|
||||
#include "../RideEntry.h"
|
||||
#include "../Track.h"
|
||||
#include "../TrackPaint.h"
|
||||
|
||||
|
|
|
@ -12,6 +12,7 @@
|
|||
#include "../../paint/Paint.h"
|
||||
#include "../../paint/Supports.h"
|
||||
#include "../../util/Util.h"
|
||||
#include "../Ride.h"
|
||||
#include "../Track.h"
|
||||
#include "../TrackPaint.h"
|
||||
|
||||
|
|
|
@ -12,6 +12,8 @@
|
|||
#include "../../paint/Paint.h"
|
||||
#include "../../paint/Supports.h"
|
||||
#include "../../peep/Guest.h"
|
||||
#include "../Ride.h"
|
||||
#include "../RideEntry.h"
|
||||
#include "../Track.h"
|
||||
#include "../TrackPaint.h"
|
||||
#include "../Vehicle.h"
|
||||
|
|
|
@ -11,6 +11,7 @@
|
|||
#include "../../object/StationObject.h"
|
||||
#include "../../paint/Paint.h"
|
||||
#include "../../paint/Supports.h"
|
||||
#include "../Ride.h"
|
||||
#include "../Track.h"
|
||||
#include "../TrackPaint.h"
|
||||
|
||||
|
|
|
@ -11,6 +11,8 @@
|
|||
#include "../../interface/Viewport.h"
|
||||
#include "../../paint/Paint.h"
|
||||
#include "../../paint/Supports.h"
|
||||
#include "../Ride.h"
|
||||
#include "../RideEntry.h"
|
||||
#include "../Track.h"
|
||||
#include "../TrackPaint.h"
|
||||
#include "../Vehicle.h"
|
||||
|
|
|
@ -14,6 +14,7 @@
|
|||
#include "../../paint/tile_element/Paint.Surface.h"
|
||||
#include "../../sprites.h"
|
||||
#include "../../world/Map.h"
|
||||
#include "../Ride.h"
|
||||
#include "../Track.h"
|
||||
#include "../TrackPaint.h"
|
||||
|
||||
|
|
|
@ -11,6 +11,8 @@
|
|||
#include "../../interface/Viewport.h"
|
||||
#include "../../paint/Paint.h"
|
||||
#include "../../paint/Supports.h"
|
||||
#include "../Ride.h"
|
||||
#include "../RideEntry.h"
|
||||
#include "../Track.h"
|
||||
#include "../TrackPaint.h"
|
||||
#include "../Vehicle.h"
|
||||
|
|
|
@ -12,6 +12,7 @@
|
|||
#include "../../paint/Paint.h"
|
||||
#include "../../paint/Supports.h"
|
||||
#include "../../world/Map.h"
|
||||
#include "../Ride.h"
|
||||
#include "../Track.h"
|
||||
#include "../TrackPaint.h"
|
||||
#include "../Vehicle.h"
|
||||
|
|
|
@ -13,6 +13,7 @@
|
|||
#include "../../paint/Paint.h"
|
||||
#include "../../paint/Supports.h"
|
||||
#include "../../peep/Guest.h"
|
||||
#include "../RideEntry.h"
|
||||
#include "../Track.h"
|
||||
#include "../TrackPaint.h"
|
||||
#include "../Vehicle.h"
|
||||
|
|
|
@ -11,6 +11,7 @@
|
|||
#include "../../object/StationObject.h"
|
||||
#include "../../paint/Paint.h"
|
||||
#include "../../paint/Supports.h"
|
||||
#include "../Ride.h"
|
||||
#include "../Track.h"
|
||||
#include "../TrackPaint.h"
|
||||
|
||||
|
|
|
@ -12,6 +12,8 @@
|
|||
#include "../../paint/Supports.h"
|
||||
#include "../../sprites.h"
|
||||
#include "../../world/Map.h"
|
||||
#include "../Ride.h"
|
||||
#include "../RideEntry.h"
|
||||
#include "../Track.h"
|
||||
#include "../TrackPaint.h"
|
||||
|
||||
|
|
|
@ -12,6 +12,8 @@
|
|||
#include "../../paint/Supports.h"
|
||||
#include "../../sprites.h"
|
||||
#include "../../world/Map.h"
|
||||
#include "../Ride.h"
|
||||
#include "../RideEntry.h"
|
||||
#include "../Track.h"
|
||||
#include "../TrackPaint.h"
|
||||
|
||||
|
|
|
@ -11,6 +11,8 @@
|
|||
#include "../../interface/Viewport.h"
|
||||
#include "../../paint/Paint.h"
|
||||
#include "../../paint/Supports.h"
|
||||
#include "../Ride.h"
|
||||
#include "../RideEntry.h"
|
||||
#include "../Track.h"
|
||||
#include "../TrackPaint.h"
|
||||
|
||||
|
|
|
@ -12,6 +12,8 @@
|
|||
#include "../../interface/Viewport.h"
|
||||
#include "../../paint/Paint.h"
|
||||
#include "../../paint/Supports.h"
|
||||
#include "../Ride.h"
|
||||
#include "../RideEntry.h"
|
||||
#include "../Track.h"
|
||||
#include "../TrackPaint.h"
|
||||
#include "../Vehicle.h"
|
||||
|
|
|
@ -12,6 +12,7 @@
|
|||
#include "../../paint/Paint.h"
|
||||
#include "../../paint/Supports.h"
|
||||
#include "../../world/Map.h"
|
||||
#include "../Ride.h"
|
||||
#include "../Track.h"
|
||||
#include "../TrackPaint.h"
|
||||
#include "../VehiclePaint.h"
|
||||
|
|
|
@ -12,6 +12,7 @@
|
|||
#include "../../interface/Viewport.h"
|
||||
#include "../../paint/Paint.h"
|
||||
#include "../../paint/Supports.h"
|
||||
#include "../Ride.h"
|
||||
#include "../Track.h"
|
||||
#include "../TrackPaint.h"
|
||||
#include "../Vehicle.h"
|
||||
|
|
|
@ -12,6 +12,8 @@
|
|||
#include "../../object/StationObject.h"
|
||||
#include "../../paint/Paint.h"
|
||||
#include "../../paint/Supports.h"
|
||||
#include "../Ride.h"
|
||||
#include "../RideEntry.h"
|
||||
#include "../Track.h"
|
||||
#include "../TrackPaint.h"
|
||||
#include "../Vehicle.h"
|
||||
|
|
|
@ -11,6 +11,8 @@
|
|||
#include "../../interface/Viewport.h"
|
||||
#include "../../paint/Paint.h"
|
||||
#include "../../paint/Supports.h"
|
||||
#include "../Ride.h"
|
||||
#include "../RideEntry.h"
|
||||
#include "../Track.h"
|
||||
#include "../TrackPaint.h"
|
||||
#include "../Vehicle.h"
|
||||
|
|
|
@ -11,6 +11,7 @@
|
|||
#include "../../interface/Viewport.h"
|
||||
#include "../../paint/Paint.h"
|
||||
#include "../../paint/Supports.h"
|
||||
#include "../Ride.h"
|
||||
#include "../Track.h"
|
||||
#include "../TrackPaint.h"
|
||||
#include "../Vehicle.h"
|
||||
|
|
|
@ -12,6 +12,8 @@
|
|||
#include "../../object/StationObject.h"
|
||||
#include "../../paint/Paint.h"
|
||||
#include "../../paint/Supports.h"
|
||||
#include "../Ride.h"
|
||||
#include "../RideEntry.h"
|
||||
#include "../Track.h"
|
||||
#include "../TrackPaint.h"
|
||||
#include "../Vehicle.h"
|
||||
|
|
|
@ -12,6 +12,8 @@
|
|||
#include "../../object/StationObject.h"
|
||||
#include "../../paint/Paint.h"
|
||||
#include "../../paint/Supports.h"
|
||||
#include "../Ride.h"
|
||||
#include "../RideEntry.h"
|
||||
#include "../Track.h"
|
||||
#include "../TrackPaint.h"
|
||||
#include "../Vehicle.h"
|
||||
|
|
|
@ -12,6 +12,8 @@
|
|||
#include "../../interface/Viewport.h"
|
||||
#include "../../paint/Paint.h"
|
||||
#include "../../paint/Supports.h"
|
||||
#include "../Ride.h"
|
||||
#include "../RideEntry.h"
|
||||
#include "../Track.h"
|
||||
#include "../TrackPaint.h"
|
||||
#include "../Vehicle.h"
|
||||
|
|
|
@ -10,6 +10,7 @@
|
|||
#include "../../common.h"
|
||||
#include "../../interface/Viewport.h"
|
||||
#include "../../paint/Paint.h"
|
||||
#include "../Ride.h"
|
||||
#include "../Track.h"
|
||||
#include "../TrackPaint.h"
|
||||
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
*****************************************************************************/
|
||||
|
||||
#include "../../common.h"
|
||||
#include "../Ride.h"
|
||||
#include "../Track.h"
|
||||
#include "../TrackPaint.h"
|
||||
#include "../coaster/JuniorRollerCoaster.h"
|
||||
|
|
|
@ -44,6 +44,7 @@
|
|||
#include "../util/Util.h"
|
||||
#include "../windows/Intent.h"
|
||||
#include "../world/Climate.h"
|
||||
#include "../world/Entrance.h"
|
||||
#include "../world/Map.h"
|
||||
#include "../world/Park.h"
|
||||
#include "../world/Scenery.h"
|
||||
|
|
|
@ -15,7 +15,6 @@
|
|||
#include "../management/Finance.h"
|
||||
#include "../management/Research.h"
|
||||
#include "../object/Object.h"
|
||||
#include "../ride/Ride.h"
|
||||
#include "../ride/RideRatings.h"
|
||||
#include "../world/Banner.h"
|
||||
#include "../world/Climate.h"
|
||||
|
|
|
@ -11,6 +11,8 @@
|
|||
|
||||
# include "ScLitter.hpp"
|
||||
|
||||
# include "../../../entity/Litter.h"
|
||||
|
||||
namespace OpenRCT2::Scripting
|
||||
{
|
||||
static const DukEnumMap<Litter::Type> LitterTypeMap({
|
||||
|
|
|
@ -13,6 +13,8 @@
|
|||
|
||||
# include "ScEntity.hpp"
|
||||
|
||||
struct Litter;
|
||||
|
||||
namespace OpenRCT2::Scripting
|
||||
{
|
||||
class ScLitter : public ScEntity
|
||||
|
|
|
@ -15,6 +15,7 @@
|
|||
# include "../../../common.h"
|
||||
# include "../../../core/Guard.hpp"
|
||||
# include "../../../entity/EntityRegistry.h"
|
||||
# include "../../../ride/Ride.h"
|
||||
# include "../../../ride/Track.h"
|
||||
# include "../../../world/Footpath.h"
|
||||
# include "../../../world/Scenery.h"
|
||||
|
|
|
@ -35,6 +35,7 @@
|
|||
#include "Map.h"
|
||||
#include "MapAnimation.h"
|
||||
#include "Park.h"
|
||||
#include "Scenery.h"
|
||||
#include "Surface.h"
|
||||
|
||||
#include <algorithm>
|
||||
|
|
|
@ -10,7 +10,6 @@
|
|||
#pragma once
|
||||
|
||||
#include "../common.h"
|
||||
#include "../ride/Ride.h"
|
||||
#include "Map.h"
|
||||
|
||||
#define MAX_ENTRANCE_FEE MONEY(200, 00)
|
||||
|
|
|
@ -33,6 +33,7 @@
|
|||
#include <openrct2/ride/Ride.h>
|
||||
#include <openrct2/scenario/Scenario.h>
|
||||
#include <openrct2/world/MapAnimation.h>
|
||||
#include <openrct2/world/Scenery.h>
|
||||
#include <stdio.h>
|
||||
#include <string>
|
||||
|
||||
|
|
Loading…
Reference in New Issue