mirror of https://github.com/OpenRCT2/OpenRCT2.git
Include RideConstructionDefaultTrackType
This commit is contained in:
parent
082e4c76fa
commit
9288029bd6
|
@ -1429,7 +1429,7 @@ static void ride_construction_reset_current_piece()
|
|||
|
||||
ride = get_ride(_currentRideIndex);
|
||||
if (!ride_type_has_flag(ride->type, RIDE_TYPE_FLAG_HAS_NO_TRACK) || ride->num_stations == 0) {
|
||||
_currentTrackCurve = RCT2_GLOBAL(0x0097CC68 + (ride->type * 2), uint8) | 0x100;
|
||||
_currentTrackCurve = RideConstructionDefaultTrackType[ride->type] | 0x100;
|
||||
_currentTrackSlopeEnd = 0;
|
||||
_currentTrackBankEnd = 0;
|
||||
_currentTrackLiftHill = 0;
|
||||
|
@ -1882,7 +1882,7 @@ int sub_6CC3FB(int rideIndex)
|
|||
|
||||
ride = get_ride(_currentRideIndex);
|
||||
|
||||
_currentTrackCurve = RCT2_ADDRESS(0x0097CC68, uint8)[ride->type * 2] | 0x100;
|
||||
_currentTrackCurve = RideConstructionDefaultTrackType[ride->type] | 0x100;
|
||||
_currentTrackSlopeEnd = 0;
|
||||
_currentTrackBankEnd = 0;
|
||||
_currentTrackLiftHill = 0;
|
||||
|
@ -4578,8 +4578,8 @@ static rct_vehicle *vehicle_create_car(
|
|||
direction = 4;
|
||||
} else {
|
||||
if (ride_type_has_flag(ride->type, RIDE_TYPE_FLAG_16)) {
|
||||
if (RCT2_GLOBAL(0x0097CC68 + (ride->type * 2), uint8) != FLAT_TRACK_ELEM_1_X_4_B) {
|
||||
if (RCT2_GLOBAL(0x0097CC68 + (ride->type * 2), uint8) != FLAT_TRACK_ELEM_1_X_4_A) {
|
||||
if (RideConstructionDefaultTrackType[ride->type] != FLAT_TRACK_ELEM_1_X_4_B) {
|
||||
if (RideConstructionDefaultTrackType[ride->type] != FLAT_TRACK_ELEM_1_X_4_A) {
|
||||
if (ride->type == RIDE_TYPE_ENTERPRISE) {
|
||||
direction += 5;
|
||||
} else {
|
||||
|
|
|
@ -27,6 +27,7 @@
|
|||
#include "../localisation/localisation.h"
|
||||
#include "ride.h"
|
||||
#include "ride_data.h"
|
||||
#include "track.h"
|
||||
#include "../audio/audio.h"
|
||||
#include "../sprites.h"
|
||||
|
||||
|
@ -2387,3 +2388,98 @@ const rct_shop_item_stats ShopItemStats[SHOP_ITEM_COUNT] = {
|
|||
{ 5, 16, 16, 20 }, // SHOP_ITEM_ROAST_SAUSAGE
|
||||
{ 0, 0, 0, 0 }, // SHOP_ITEM_EMPTY_BOWL_BLUE
|
||||
};
|
||||
|
||||
/** rct2: 0x0097CC68 */
|
||||
const uint8 RideConstructionDefaultTrackType[] = {
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_SPIRAL_ROLLER_COASTER
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_STAND_UP_ROLLER_COASTER
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_SUSPENDED_SWINGING_COASTER
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_INVERTED_ROLLER_COASTER
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_JUNIOR_ROLLER_COASTER
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_MINIATURE_RAILWAY
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_MONORAIL
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_MINI_SUSPENDED_COASTER
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_BOAT_RIDE
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_WOODEN_WILD_MOUSE
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_STEEPLECHASE
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_CAR_RIDE
|
||||
TRACK_ELEM_TOWER_BASE, // RIDE_TYPE_LAUNCHED_FREEFALL
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_BOBSLEIGH_COASTER
|
||||
TRACK_ELEM_TOWER_BASE, // RIDE_TYPE_OBSERVATION_TOWER
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_LOOPING_ROLLER_COASTER
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_DINGHY_SLIDE
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_MINE_TRAIN_COASTER
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_CHAIRLIFT
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_CORKSCREW_ROLLER_COASTER
|
||||
TRACK_ELEM_MAZE, // RIDE_TYPE_MAZE
|
||||
FLAT_TRACK_ELEM_2_X_2, // RIDE_TYPE_SPIRAL_SLIDE
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_GO_KARTS
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_LOG_FLUME
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_RIVER_RAPIDS
|
||||
FLAT_TRACK_ELEM_4_X_4, // RIDE_TYPE_DODGEMS
|
||||
FLAT_TRACK_ELEM_1_X_5, // RIDE_TYPE_PIRATE_SHIP
|
||||
FLAT_TRACK_ELEM_1_X_4_B, // RIDE_TYPE_SWINGING_INVERTER_SHIP
|
||||
FLAT_TRACK_ELEM_1_X_1_A, // RIDE_TYPE_FOOD_STALL
|
||||
FLAT_TRACK_ELEM_1_X_1_B, // RIDE_TYPE_1D
|
||||
FLAT_TRACK_ELEM_1_X_1_A, // RIDE_TYPE_DRINK_STALL
|
||||
FLAT_TRACK_ELEM_1_X_1_B, // RIDE_TYPE_1F
|
||||
FLAT_TRACK_ELEM_1_X_1_A, // RIDE_TYPE_SHOP
|
||||
FLAT_TRACK_ELEM_3_X_3, // RIDE_TYPE_MERRY_GO_ROUND
|
||||
FLAT_TRACK_ELEM_1_X_1_B, // RIDE_TYPE_22
|
||||
FLAT_TRACK_ELEM_1_X_1_B, // RIDE_TYPE_INFORMATION_KIOSK
|
||||
FLAT_TRACK_ELEM_1_X_1_A, // RIDE_TYPE_TOILETS
|
||||
FLAT_TRACK_ELEM_1_X_4_C, // RIDE_TYPE_FERRIS_WHEEL
|
||||
FLAT_TRACK_ELEM_2_X_2, // RIDE_TYPE_MOTION_SIMULATOR
|
||||
FLAT_TRACK_ELEM_3_X_3, // RIDE_TYPE_3D_CINEMA
|
||||
FLAT_TRACK_ELEM_3_X_3, // RIDE_TYPE_TOP_SPIN
|
||||
FLAT_TRACK_ELEM_3_X_3, // RIDE_TYPE_SPACE_RINGS
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_REVERSE_FREEFALL_COASTER
|
||||
TRACK_ELEM_TOWER_BASE, // RIDE_TYPE_LIFT
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_VERTICAL_DROP_ROLLER_COASTER
|
||||
FLAT_TRACK_ELEM_1_X_1_A, // RIDE_TYPE_CASH_MACHINE
|
||||
FLAT_TRACK_ELEM_3_X_3, // RIDE_TYPE_TWIST
|
||||
FLAT_TRACK_ELEM_3_X_3, // RIDE_TYPE_HAUNTED_HOUSE
|
||||
FLAT_TRACK_ELEM_1_X_1_A, // RIDE_TYPE_FIRST_AID
|
||||
FLAT_TRACK_ELEM_3_X_3, // RIDE_TYPE_CIRCUS_SHOW
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_GHOST_TRAIN
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_TWISTER_ROLLER_COASTER
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_WOODEN_ROLLER_COASTER
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_SIDE_FRICTION_ROLLER_COASTER
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_WILD_MOUSE
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_MULTI_DIMENSION_ROLLER_COASTER
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_38
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_FLYING_ROLLER_COASTER
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_3A
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_VIRGINIA_REEL
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_SPLASH_BOATS
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_MINI_HELICOPTERS
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_LAY_DOWN_ROLLER_COASTER
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_SUSPENDED_MONORAIL
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_40
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_REVERSER_ROLLER_COASTER
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_HEARTLINE_TWISTER_COASTER
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_MINI_GOLF
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_GIGA_COASTER
|
||||
TRACK_ELEM_TOWER_BASE, // RIDE_TYPE_ROTO_DROP
|
||||
FLAT_TRACK_ELEM_4_X_4, // RIDE_TYPE_FLYING_SAUCERS
|
||||
FLAT_TRACK_ELEM_3_X_3, // RIDE_TYPE_CROOKED_HOUSE
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_MONORAIL_CYCLES
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_COMPACT_INVERTED_COASTER
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_WATER_COASTER
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_AIR_POWERED_VERTICAL_COASTER
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_INVERTED_HAIRPIN_COASTER
|
||||
FLAT_TRACK_ELEM_1_X_4_A, // RIDE_TYPE_MAGIC_CARPET
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_SUBMARINE_RIDE
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_RIVER_RAFTS
|
||||
FLAT_TRACK_ELEM_1_X_1_A, // RIDE_TYPE_50
|
||||
FLAT_TRACK_ELEM_4_X_4, // RIDE_TYPE_ENTERPRISE
|
||||
FLAT_TRACK_ELEM_1_X_1_A, // RIDE_TYPE_52
|
||||
FLAT_TRACK_ELEM_1_X_1_A, // RIDE_TYPE_53
|
||||
FLAT_TRACK_ELEM_1_X_1_A, // RIDE_TYPE_54
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_55
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_INVERTED_IMPULSE_COASTER
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_MINI_ROLLER_COASTER
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_MINE_RIDE
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_59
|
||||
TRACK_ELEM_END_STATION, // RIDE_TYPE_LIM_LAUNCHED_ROLLER_COASTER
|
||||
};
|
||||
|
|
|
@ -164,4 +164,6 @@ extern const rating_tuple RideRatings[91];
|
|||
|
||||
extern const rct_shop_item_stats ShopItemStats[SHOP_ITEM_COUNT];
|
||||
|
||||
extern const uint8 RideConstructionDefaultTrackType[91];
|
||||
|
||||
#endif
|
||||
|
|
|
@ -909,7 +909,7 @@ static void window_new_ride_paint_ride_information(rct_window *w, rct_drawpixeli
|
|||
// Price
|
||||
if (!(gParkFlags & PARK_FLAGS_NO_MONEY)) {
|
||||
// Get price of ride
|
||||
int unk2 = RCT2_GLOBAL(0x0097CC68 + (item.type * 2), uint8);
|
||||
int unk2 = RideConstructionDefaultTrackType[item.type];
|
||||
money32 price = RideTrackCosts[item.type].track_price;
|
||||
if (ride_type_has_flag(item.type, RIDE_TYPE_FLAG_FLAT_RIDE)) {
|
||||
price *= RCT2_ADDRESS(0x0099DE34, uint32)[unk2];
|
||||
|
|
|
@ -573,7 +573,7 @@ rct_window *window_ride_construction_open()
|
|||
if (ride->type == RIDE_TYPE_AIR_POWERED_VERTICAL_COASTER)
|
||||
RCT2_GLOBAL(0x00F440CE, uint8) = 30;
|
||||
|
||||
_currentTrackCurve = RCT2_ADDRESS(0x0097CC68, uint8)[ride->type * 2] | 0x100;
|
||||
_currentTrackCurve = RideConstructionDefaultTrackType[ride->type] | 0x100;
|
||||
_currentTrackSlopeEnd = 0;
|
||||
_currentTrackBankEnd = 0;
|
||||
_currentTrackLiftHill = 0;
|
||||
|
|
Loading…
Reference in New Issue