mirror of https://github.com/OpenRCT2/OpenRCT2.git
Clean up track retrieval
This commit is contained in:
parent
9b8b90964e
commit
88d0f8c60b
|
@ -5658,3 +5658,146 @@ const TRACK_PAINT_FUNCTION_GETTER RideTypeTrackPaintFunctions[91] = {
|
|||
0, // RIDE_TYPE_59
|
||||
0, // RIDE_TYPE_LIM_LAUNCHED_ROLLER_COASTER
|
||||
};
|
||||
|
||||
const track_descriptor gTrackDescriptors[140] = {
|
||||
{ true, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_ELEM_DIAG_60_DEG_DOWN },
|
||||
{ true, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_ELEM_DIAG_60_DEG_DOWN_TO_25_DEG_DOWN },
|
||||
{ true, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_DIAG_60_DEG_DOWN_TO_FLAT },
|
||||
{ true, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_ELEM_DIAG_25_DEG_DOWN_TO_60_DEG_DOWN },
|
||||
{ true, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_ELEM_DIAG_25_DEG_DOWN },
|
||||
{ true, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_ELEM_DIAG_25_DEG_DOWN_TO_LEFT_BANK },
|
||||
{ true, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_DIAG_25_DEG_DOWN_TO_FLAT },
|
||||
{ true, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_ELEM_DIAG_25_DEG_DOWN_TO_RIGHT_BANK },
|
||||
{ true, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_CURVE_LEFT_LARGE, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_ELEM_LEFT_EIGHTH_BANK_TO_ORTHOGONAL },
|
||||
{ true, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_ELEM_DIAG_LEFT_BANK_TO_25_DEG_DOWN },
|
||||
{ true, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_ELEM_DIAG_LEFT_BANK },
|
||||
{ true, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_DIAG_LEFT_BANK_TO_FLAT },
|
||||
{ true, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_DIAG_LEFT_BANK_TO_25_DEG_UP },
|
||||
{ true, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_LEFT_LARGE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_LEFT_EIGHTH_TO_ORTHOGONAL },
|
||||
{ true, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_ELEM_DIAG_FLAT_TO_60_DEG_DOWN },
|
||||
{ true, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_ELEM_DIAG_FLAT_TO_25_DEG_DOWN },
|
||||
{ true, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_ELEM_DIAG_FLAT_TO_LEFT_BANK },
|
||||
{ true, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_DIAG_FLAT },
|
||||
{ true, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_ELEM_DIAG_FLAT_TO_RIGHT_BANK },
|
||||
{ true, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_DIAG_FLAT_TO_25_DEG_UP },
|
||||
{ true, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_ELEM_DIAG_FLAT_TO_60_DEG_UP },
|
||||
{ true, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_RIGHT_LARGE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_EIGHTH_TO_ORTHOGONAL },
|
||||
{ true, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_ELEM_DIAG_RIGHT_BANK_TO_25_DEG_DOWN },
|
||||
{ true, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_DIAG_RIGHT_BANK_TO_FLAT },
|
||||
{ true, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_ELEM_DIAG_RIGHT_BANK },
|
||||
{ true, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_DIAG_RIGHT_BANK_TO_25_DEG_UP },
|
||||
{ true, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_CURVE_RIGHT_LARGE, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_ELEM_RIGHT_EIGHTH_BANK_TO_ORTHOGONAL },
|
||||
{ true, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_ELEM_DIAG_25_DEG_UP_TO_LEFT_BANK },
|
||||
{ true, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_DIAG_25_DEG_UP_TO_FLAT },
|
||||
{ true, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_ELEM_DIAG_25_DEG_UP_TO_RIGHT_BANK },
|
||||
{ true, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_DIAG_25_DEG_UP },
|
||||
{ true, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_ELEM_DIAG_25_DEG_UP_TO_60_DEG_UP },
|
||||
{ true, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_DIAG_60_DEG_UP_TO_FLAT },
|
||||
{ true, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_DIAG_60_DEG_UP_TO_25_DEG_UP },
|
||||
{ true, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_ELEM_DIAG_60_DEG_UP },
|
||||
{ false, TRACK_SLOPE_DOWN_90, TRACK_BANK_NONE, TRACK_CURVE_LEFT_SMALL, TRACK_SLOPE_DOWN_90, TRACK_BANK_NONE, TRACK_ELEM_LEFT_QUARTER_TURN_1_TILE_90_DEG_DOWN },
|
||||
{ false, TRACK_SLOPE_DOWN_90, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_90, TRACK_BANK_NONE, TRACK_ELEM_90_DEG_DOWN },
|
||||
{ false, TRACK_SLOPE_DOWN_90, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_ELEM_90_DEG_DOWN_TO_60_DEG_DOWN },
|
||||
{ false, TRACK_SLOPE_DOWN_90, TRACK_BANK_NONE, TRACK_CURVE_RIGHT_SMALL, TRACK_SLOPE_DOWN_90, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_QUARTER_TURN_1_TILE_90_DEG_DOWN },
|
||||
{ false, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_CURVE_LEFT_SMALL, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_ELEM_LEFT_QUARTER_TURN_1_TILE_60_DEG_DOWN },
|
||||
{ false, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_90, TRACK_BANK_NONE, TRACK_ELEM_60_DEG_DOWN_TO_90_DEG_DOWN },
|
||||
{ false, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_ELEM_60_DEG_DOWN },
|
||||
{ false, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_ELEM_60_DEG_DOWN_TO_25_DEG_DOWN },
|
||||
{ false, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_60_DEG_DOWN_TO_FLAT },
|
||||
{ false, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_CURVE_RIGHT_SMALL, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_QUARTER_TURN_1_TILE_60_DEG_DOWN },
|
||||
{ false, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_CURVE_LEFT_SMALL, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_ELEM_LEFT_BANKED_QUARTER_TURN_3_TILE_25_DEG_DOWN },
|
||||
{ false, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_CURVE_LEFT, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_ELEM_LEFT_BANKED_QUARTER_TURN_5_TILE_25_DEG_DOWN },
|
||||
{ false, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_ELEM_25_DEG_DOWN_LEFT_BANKED },
|
||||
{ false, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_ELEM_LEFT_BANKED_25_DEG_DOWN_TO_25_DEG_DOWN },
|
||||
{ false, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_ELEM_LEFT_BANKED_25_DEG_DOWN_TO_LEFT_BANKED_FLAT },
|
||||
{ false, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_LEFT_BANKED_25_DEG_DOWN_TO_FLAT },
|
||||
{ false, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_LEFT_SMALL, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_ELEM_LEFT_QUARTER_TURN_3_TILES_25_DEG_DOWN },
|
||||
{ false, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_LEFT, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_ELEM_LEFT_QUARTER_TURN_5_TILES_25_DEG_DOWN },
|
||||
{ false, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_ELEM_25_DEG_DOWN_TO_60_DEG_DOWN },
|
||||
{ false, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_ELEM_25_DEG_DOWN_TO_LEFT_BANKED_25_DEG_DOWN },
|
||||
{ false, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_ELEM_25_DEG_DOWN },
|
||||
{ false, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_ELEM_25_DEG_DOWN_TO_RIGHT_BANKED_25_DEG_DOWN },
|
||||
{ false, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_ELEM_25_DEG_DOWN_TO_LEFT_BANK },
|
||||
{ false, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_25_DEG_DOWN_TO_FLAT },
|
||||
{ false, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_ELEM_25_DEG_DOWN_TO_RIGHT_BANK },
|
||||
{ false, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_RIGHT, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_QUARTER_TURN_5_TILES_25_DEG_DOWN },
|
||||
{ false, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_RIGHT_SMALL, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_QUARTER_TURN_3_TILES_25_DEG_DOWN },
|
||||
{ false, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_BANKED_25_DEG_DOWN_TO_25_DEG_DOWN },
|
||||
{ false, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_ELEM_25_DEG_DOWN_RIGHT_BANKED },
|
||||
{ false, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_BANKED_25_DEG_DOWN_TO_FLAT },
|
||||
{ false, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_ELEM_RIGHT_BANKED_25_DEG_DOWN_TO_RIGHT_BANKED_FLAT },
|
||||
{ false, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_CURVE_RIGHT, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_ELEM_RIGHT_BANKED_QUARTER_TURN_5_TILE_25_DEG_DOWN },
|
||||
{ false, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_CURVE_RIGHT_SMALL, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_ELEM_RIGHT_BANKED_QUARTER_TURN_3_TILE_25_DEG_DOWN },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_CURVE_LEFT_SMALL, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_ELEM_LEFT_QUARTER_TURN_3_TILES_BANK },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_CURVE_LEFT_SMALL, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_LEFT_BANK_TO_LEFT_QUARTER_TURN_3_TILES_25_DEG_UP },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_CURVE_LEFT, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_ELEM_BANKED_LEFT_QUARTER_TURN_5_TILES },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_CURVE_LEFT_LARGE, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_ELEM_LEFT_EIGHTH_BANK_TO_DIAG },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_ELEM_LEFT_BANKED_FLAT_TO_LEFT_BANKED_25_DEG_DOWN },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_ELEM_LEFT_BANK_TO_25_DEG_DOWN },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_ELEM_LEFT_BANK },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_LEFT_BANK_TO_FLAT },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_ELEM_LEFT_BANKED_FLAT_TO_LEFT_BANKED_25_DEG_UP },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_LEFT_BANK_TO_25_DEG_UP },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_LEFT_SMALL, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_LEFT_QUARTER_TURN_3_TILES },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_LEFT, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_LEFT_QUARTER_TURN_5_TILES },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_LEFT_LARGE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_LEFT_EIGHTH_TO_DIAG },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_ELEM_FLAT_TO_60_DEG_DOWN },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_ELEM_FLAT_TO_LEFT_BANKED_25_DEG_DOWN },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_ELEM_FLAT_TO_25_DEG_DOWN },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_ELEM_FLAT_TO_RIGHT_BANKED_25_DEG_DOWN },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_ELEM_FLAT_TO_LEFT_BANK },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_FLAT },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_LEFT_VERY_SMALL, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_LEFT_QUARTER_TURN_1_TILE },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_RIGHT_VERY_SMALL, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_QUARTER_TURN_1_TILE },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_ELEM_FLAT_TO_RIGHT_BANK },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_ELEM_FLAT_TO_LEFT_BANKED_25_DEG_UP },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_FLAT_TO_25_DEG_UP },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_ELEM_FLAT_TO_RIGHT_BANKED_25_DEG_UP },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_ELEM_FLAT_TO_60_DEG_UP },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_RIGHT_LARGE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_EIGHTH_TO_DIAG },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_RIGHT, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_QUARTER_TURN_5_TILES },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_RIGHT_SMALL, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_QUARTER_TURN_3_TILES },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_BANK_TO_25_DEG_DOWN },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_ELEM_RIGHT_BANKED_FLAT_TO_RIGHT_BANKED_25_DEG_DOWN },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_BANK_TO_FLAT },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_ELEM_RIGHT_BANK },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_BANK_TO_25_DEG_UP },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_ELEM_RIGHT_BANKED_FLAT_TO_RIGHT_BANKED_25_DEG_UP },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_CURVE_RIGHT_LARGE, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_ELEM_RIGHT_EIGHTH_BANK_TO_DIAG },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_CURVE_RIGHT, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_ELEM_BANKED_RIGHT_QUARTER_TURN_5_TILES },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_CURVE_RIGHT_SMALL, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_ELEM_RIGHT_QUARTER_TURN_3_TILES_BANK },
|
||||
{ false, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_CURVE_RIGHT_SMALL, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_BANK_TO_RIGHT_QUARTER_TURN_3_TILES_25_DEG_UP },
|
||||
{ false, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_CURVE_LEFT_SMALL, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_ELEM_LEFT_BANKED_QUARTER_TURN_3_TILE_25_DEG_UP },
|
||||
{ false, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_CURVE_LEFT, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_ELEM_LEFT_BANKED_QUARTER_TURN_5_TILE_25_DEG_UP },
|
||||
{ false, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_ELEM_LEFT_BANKED_25_DEG_UP_TO_LEFT_BANKED_FLAT },
|
||||
{ false, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_LEFT_BANKED_25_DEG_UP_TO_FLAT },
|
||||
{ false, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_ELEM_25_DEG_UP_LEFT_BANKED },
|
||||
{ false, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_LEFT_BANKED_25_DEG_UP_TO_25_DEG_UP },
|
||||
{ false, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_LEFT_SMALL, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_LEFT_QUARTER_TURN_3_TILES_25_DEG_UP },
|
||||
{ false, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_LEFT, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_LEFT_QUARTER_TURN_5_TILES_25_DEG_UP },
|
||||
{ false, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_ELEM_25_DEG_UP_TO_LEFT_BANK },
|
||||
{ false, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_25_DEG_UP_TO_FLAT },
|
||||
{ false, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_ELEM_25_DEG_UP_TO_RIGHT_BANK },
|
||||
{ false, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_ELEM_25_DEG_UP_TO_LEFT_BANKED_25_DEG_UP },
|
||||
{ false, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_25_DEG_UP },
|
||||
{ false, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_ELEM_25_DEG_UP_TO_RIGHT_BANKED_25_DEG_UP },
|
||||
{ false, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_ELEM_25_DEG_UP_TO_60_DEG_UP },
|
||||
{ false, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_RIGHT, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_QUARTER_TURN_5_TILES_25_DEG_UP },
|
||||
{ false, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_RIGHT_SMALL, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_QUARTER_TURN_3_TILES_25_DEG_UP },
|
||||
{ false, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_BANKED_25_DEG_UP_TO_FLAT },
|
||||
{ false, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_ELEM_RIGHT_BANKED_25_DEG_UP_TO_RIGHT_BANKED_FLAT },
|
||||
{ false, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_BANKED_25_DEG_UP_TO_25_DEG_UP },
|
||||
{ false, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_ELEM_25_DEG_UP_RIGHT_BANKED },
|
||||
{ false, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_CURVE_RIGHT, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_ELEM_RIGHT_BANKED_QUARTER_TURN_5_TILE_25_DEG_UP },
|
||||
{ false, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_CURVE_RIGHT_SMALL, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_ELEM_RIGHT_BANKED_QUARTER_TURN_3_TILE_25_DEG_UP },
|
||||
{ false, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_CURVE_LEFT_SMALL, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_ELEM_LEFT_QUARTER_TURN_1_TILE_60_DEG_UP },
|
||||
{ false, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_60_DEG_UP_TO_FLAT },
|
||||
{ false, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_60_DEG_UP_TO_25_DEG_UP },
|
||||
{ false, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_ELEM_60_DEG_UP },
|
||||
{ false, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_90, TRACK_BANK_NONE, TRACK_ELEM_60_DEG_UP_TO_90_DEG_UP },
|
||||
{ false, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_CURVE_RIGHT_SMALL, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_QUARTER_TURN_1_TILE_60_DEG_UP },
|
||||
{ false, TRACK_SLOPE_UP_90, TRACK_BANK_NONE, TRACK_CURVE_LEFT_SMALL, TRACK_SLOPE_UP_90, TRACK_BANK_NONE, TRACK_ELEM_LEFT_QUARTER_TURN_1_TILE_90_DEG_UP },
|
||||
{ false, TRACK_SLOPE_UP_90, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_ELEM_90_DEG_UP_TO_60_DEG_UP },
|
||||
{ false, TRACK_SLOPE_UP_90, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_90, TRACK_BANK_NONE, TRACK_ELEM_90_DEG_UP },
|
||||
{ false, TRACK_SLOPE_UP_90, TRACK_BANK_NONE, TRACK_CURVE_RIGHT_SMALL, TRACK_SLOPE_UP_90, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_QUARTER_TURN_1_TILE_90_DEG_UP },
|
||||
};
|
||||
|
|
|
@ -43,3 +43,15 @@ extern const track_curve_chain gFlatRideTrackCurveChain[256];
|
|||
|
||||
extern const TRACK_PAINT_FUNCTION_GETTER RideTypeTrackPaintFunctions[91];
|
||||
extern const uint32 RideTypeTrackPaintFunctionsOld[91];
|
||||
|
||||
typedef struct {
|
||||
bool starts_diagonal;
|
||||
uint8 slope_start;
|
||||
uint8 bank_start;
|
||||
uint8 track_curve;
|
||||
uint8 slope_end;
|
||||
uint8 bank_end;
|
||||
uint8 track_element;
|
||||
} track_descriptor;
|
||||
|
||||
extern const track_descriptor gTrackDescriptors[140];
|
||||
|
|
|
@ -446,160 +446,6 @@ rct_string_id RideConfigurationStringIds[] = {
|
|||
|
||||
#pragma endregion
|
||||
|
||||
|
||||
typedef struct {
|
||||
bool is_diagonal;
|
||||
uint8 slope_start;
|
||||
uint8 bank_start;
|
||||
uint8 track_curve;
|
||||
uint8 slope_end;
|
||||
uint8 bank_end;
|
||||
uint8 track_element;
|
||||
} track_descriptor;
|
||||
|
||||
const track_descriptor TrackDescriptors[140] = {
|
||||
{true, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_ELEM_DIAG_60_DEG_DOWN},
|
||||
{true, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_ELEM_DIAG_60_DEG_DOWN_TO_25_DEG_DOWN},
|
||||
{true, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_DIAG_60_DEG_DOWN_TO_FLAT},
|
||||
{true, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_ELEM_DIAG_25_DEG_DOWN_TO_60_DEG_DOWN},
|
||||
{true, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_ELEM_DIAG_25_DEG_DOWN},
|
||||
{true, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_ELEM_DIAG_25_DEG_DOWN_TO_LEFT_BANK},
|
||||
{true, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_DIAG_25_DEG_DOWN_TO_FLAT},
|
||||
{true, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_ELEM_DIAG_25_DEG_DOWN_TO_RIGHT_BANK},
|
||||
{true, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_CURVE_LEFT_LARGE, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_ELEM_LEFT_EIGHTH_BANK_TO_ORTHOGONAL},
|
||||
{true, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_ELEM_DIAG_LEFT_BANK_TO_25_DEG_DOWN},
|
||||
{true, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_ELEM_DIAG_LEFT_BANK},
|
||||
{true, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_DIAG_LEFT_BANK_TO_FLAT},
|
||||
{true, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_DIAG_LEFT_BANK_TO_25_DEG_UP},
|
||||
{true, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_LEFT_LARGE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_LEFT_EIGHTH_TO_ORTHOGONAL},
|
||||
{true, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_ELEM_DIAG_FLAT_TO_60_DEG_DOWN},
|
||||
{true, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_ELEM_DIAG_FLAT_TO_25_DEG_DOWN},
|
||||
{true, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_ELEM_DIAG_FLAT_TO_LEFT_BANK},
|
||||
{true, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_DIAG_FLAT},
|
||||
{true, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_ELEM_DIAG_FLAT_TO_RIGHT_BANK},
|
||||
{true, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_DIAG_FLAT_TO_25_DEG_UP},
|
||||
{true, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_ELEM_DIAG_FLAT_TO_60_DEG_UP},
|
||||
{true, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_RIGHT_LARGE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_EIGHTH_TO_ORTHOGONAL},
|
||||
{true, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_ELEM_DIAG_RIGHT_BANK_TO_25_DEG_DOWN},
|
||||
{true, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_DIAG_RIGHT_BANK_TO_FLAT},
|
||||
{true, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_ELEM_DIAG_RIGHT_BANK},
|
||||
{true, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_DIAG_RIGHT_BANK_TO_25_DEG_UP},
|
||||
{true, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_CURVE_RIGHT_LARGE, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_ELEM_RIGHT_EIGHTH_BANK_TO_ORTHOGONAL},
|
||||
{true, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_ELEM_DIAG_25_DEG_UP_TO_LEFT_BANK},
|
||||
{true, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_DIAG_25_DEG_UP_TO_FLAT},
|
||||
{true, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_ELEM_DIAG_25_DEG_UP_TO_RIGHT_BANK},
|
||||
{true, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_DIAG_25_DEG_UP},
|
||||
{true, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_ELEM_DIAG_25_DEG_UP_TO_60_DEG_UP},
|
||||
{true, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_DIAG_60_DEG_UP_TO_FLAT},
|
||||
{true, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_DIAG_60_DEG_UP_TO_25_DEG_UP},
|
||||
{true, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_ELEM_DIAG_60_DEG_UP},
|
||||
{false, TRACK_SLOPE_DOWN_90, TRACK_BANK_NONE, TRACK_CURVE_LEFT_SMALL, TRACK_SLOPE_DOWN_90, TRACK_BANK_NONE, TRACK_ELEM_LEFT_QUARTER_TURN_1_TILE_90_DEG_DOWN},
|
||||
{false, TRACK_SLOPE_DOWN_90, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_90, TRACK_BANK_NONE, TRACK_ELEM_90_DEG_DOWN},
|
||||
{false, TRACK_SLOPE_DOWN_90, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_ELEM_90_DEG_DOWN_TO_60_DEG_DOWN},
|
||||
{false, TRACK_SLOPE_DOWN_90, TRACK_BANK_NONE, TRACK_CURVE_RIGHT_SMALL, TRACK_SLOPE_DOWN_90, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_QUARTER_TURN_1_TILE_90_DEG_DOWN},
|
||||
{false, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_CURVE_LEFT_SMALL, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_ELEM_LEFT_QUARTER_TURN_1_TILE_60_DEG_DOWN},
|
||||
{false, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_90, TRACK_BANK_NONE, TRACK_ELEM_60_DEG_DOWN_TO_90_DEG_DOWN},
|
||||
{false, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_ELEM_60_DEG_DOWN},
|
||||
{false, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_ELEM_60_DEG_DOWN_TO_25_DEG_DOWN},
|
||||
{false, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_60_DEG_DOWN_TO_FLAT},
|
||||
{false, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_CURVE_RIGHT_SMALL, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_QUARTER_TURN_1_TILE_60_DEG_DOWN},
|
||||
{false, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_CURVE_LEFT_SMALL, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_ELEM_LEFT_BANKED_QUARTER_TURN_3_TILE_25_DEG_DOWN},
|
||||
{false, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_CURVE_LEFT, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_ELEM_LEFT_BANKED_QUARTER_TURN_5_TILE_25_DEG_DOWN},
|
||||
{false, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_ELEM_25_DEG_DOWN_LEFT_BANKED},
|
||||
{false, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_ELEM_LEFT_BANKED_25_DEG_DOWN_TO_25_DEG_DOWN},
|
||||
{false, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_ELEM_LEFT_BANKED_25_DEG_DOWN_TO_LEFT_BANKED_FLAT},
|
||||
{false, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_LEFT_BANKED_25_DEG_DOWN_TO_FLAT},
|
||||
{false, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_LEFT_SMALL, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_ELEM_LEFT_QUARTER_TURN_3_TILES_25_DEG_DOWN},
|
||||
{false, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_LEFT, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_ELEM_LEFT_QUARTER_TURN_5_TILES_25_DEG_DOWN},
|
||||
{false, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_ELEM_25_DEG_DOWN_TO_60_DEG_DOWN},
|
||||
{false, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_ELEM_25_DEG_DOWN_TO_LEFT_BANKED_25_DEG_DOWN},
|
||||
{false, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_ELEM_25_DEG_DOWN},
|
||||
{false, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_ELEM_25_DEG_DOWN_TO_RIGHT_BANKED_25_DEG_DOWN},
|
||||
{false, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_ELEM_25_DEG_DOWN_TO_LEFT_BANK},
|
||||
{false, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_25_DEG_DOWN_TO_FLAT},
|
||||
{false, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_ELEM_25_DEG_DOWN_TO_RIGHT_BANK},
|
||||
{false, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_RIGHT, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_QUARTER_TURN_5_TILES_25_DEG_DOWN},
|
||||
{false, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_RIGHT_SMALL, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_QUARTER_TURN_3_TILES_25_DEG_DOWN},
|
||||
{false, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_BANKED_25_DEG_DOWN_TO_25_DEG_DOWN},
|
||||
{false, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_ELEM_25_DEG_DOWN_RIGHT_BANKED},
|
||||
{false, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_BANKED_25_DEG_DOWN_TO_FLAT},
|
||||
{false, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_ELEM_RIGHT_BANKED_25_DEG_DOWN_TO_RIGHT_BANKED_FLAT},
|
||||
{false, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_CURVE_RIGHT, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_ELEM_RIGHT_BANKED_QUARTER_TURN_5_TILE_25_DEG_DOWN},
|
||||
{false, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_CURVE_RIGHT_SMALL, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_ELEM_RIGHT_BANKED_QUARTER_TURN_3_TILE_25_DEG_DOWN},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_CURVE_LEFT_SMALL, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_ELEM_LEFT_QUARTER_TURN_3_TILES_BANK},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_CURVE_LEFT_SMALL, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_LEFT_BANK_TO_LEFT_QUARTER_TURN_3_TILES_25_DEG_UP},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_CURVE_LEFT, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_ELEM_BANKED_LEFT_QUARTER_TURN_5_TILES},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_CURVE_LEFT_LARGE, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_ELEM_LEFT_EIGHTH_BANK_TO_DIAG},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_ELEM_LEFT_BANKED_FLAT_TO_LEFT_BANKED_25_DEG_DOWN},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_ELEM_LEFT_BANK_TO_25_DEG_DOWN},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_ELEM_LEFT_BANK},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_LEFT_BANK_TO_FLAT},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_ELEM_LEFT_BANKED_FLAT_TO_LEFT_BANKED_25_DEG_UP},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_LEFT_BANK_TO_25_DEG_UP},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_LEFT_SMALL, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_LEFT_QUARTER_TURN_3_TILES},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_LEFT, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_LEFT_QUARTER_TURN_5_TILES},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_LEFT_LARGE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_LEFT_EIGHTH_TO_DIAG},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_ELEM_FLAT_TO_60_DEG_DOWN},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_ELEM_FLAT_TO_LEFT_BANKED_25_DEG_DOWN},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_ELEM_FLAT_TO_25_DEG_DOWN},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_ELEM_FLAT_TO_RIGHT_BANKED_25_DEG_DOWN},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_ELEM_FLAT_TO_LEFT_BANK},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_FLAT},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_LEFT_VERY_SMALL, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_LEFT_QUARTER_TURN_1_TILE},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_RIGHT_VERY_SMALL, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_QUARTER_TURN_1_TILE},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_ELEM_FLAT_TO_RIGHT_BANK},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_ELEM_FLAT_TO_LEFT_BANKED_25_DEG_UP},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_FLAT_TO_25_DEG_UP},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_ELEM_FLAT_TO_RIGHT_BANKED_25_DEG_UP},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_ELEM_FLAT_TO_60_DEG_UP},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_RIGHT_LARGE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_EIGHTH_TO_DIAG},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_RIGHT, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_QUARTER_TURN_5_TILES},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_RIGHT_SMALL, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_QUARTER_TURN_3_TILES},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_BANK_TO_25_DEG_DOWN},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_ELEM_RIGHT_BANKED_FLAT_TO_RIGHT_BANKED_25_DEG_DOWN},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_BANK_TO_FLAT},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_ELEM_RIGHT_BANK},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_BANK_TO_25_DEG_UP},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_ELEM_RIGHT_BANKED_FLAT_TO_RIGHT_BANKED_25_DEG_UP},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_CURVE_RIGHT_LARGE, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_ELEM_RIGHT_EIGHTH_BANK_TO_DIAG},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_CURVE_RIGHT, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_ELEM_BANKED_RIGHT_QUARTER_TURN_5_TILES},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_CURVE_RIGHT_SMALL, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_ELEM_RIGHT_QUARTER_TURN_3_TILES_BANK},
|
||||
{false, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_CURVE_RIGHT_SMALL, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_BANK_TO_RIGHT_QUARTER_TURN_3_TILES_25_DEG_UP},
|
||||
{false, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_CURVE_LEFT_SMALL, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_ELEM_LEFT_BANKED_QUARTER_TURN_3_TILE_25_DEG_UP},
|
||||
{false, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_CURVE_LEFT, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_ELEM_LEFT_BANKED_QUARTER_TURN_5_TILE_25_DEG_UP},
|
||||
{false, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_ELEM_LEFT_BANKED_25_DEG_UP_TO_LEFT_BANKED_FLAT},
|
||||
{false, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_LEFT_BANKED_25_DEG_UP_TO_FLAT},
|
||||
{false, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_ELEM_25_DEG_UP_LEFT_BANKED},
|
||||
{false, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_LEFT_BANKED_25_DEG_UP_TO_25_DEG_UP},
|
||||
{false, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_LEFT_SMALL, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_LEFT_QUARTER_TURN_3_TILES_25_DEG_UP},
|
||||
{false, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_LEFT, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_LEFT_QUARTER_TURN_5_TILES_25_DEG_UP},
|
||||
{false, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_ELEM_25_DEG_UP_TO_LEFT_BANK},
|
||||
{false, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_25_DEG_UP_TO_FLAT},
|
||||
{false, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_ELEM_25_DEG_UP_TO_RIGHT_BANK},
|
||||
{false, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_ELEM_25_DEG_UP_TO_LEFT_BANKED_25_DEG_UP},
|
||||
{false, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_25_DEG_UP},
|
||||
{false, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_ELEM_25_DEG_UP_TO_RIGHT_BANKED_25_DEG_UP},
|
||||
{false, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_ELEM_25_DEG_UP_TO_60_DEG_UP},
|
||||
{false, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_RIGHT, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_QUARTER_TURN_5_TILES_25_DEG_UP},
|
||||
{false, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_RIGHT_SMALL, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_QUARTER_TURN_3_TILES_25_DEG_UP},
|
||||
{false, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_BANKED_25_DEG_UP_TO_FLAT},
|
||||
{false, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_ELEM_RIGHT_BANKED_25_DEG_UP_TO_RIGHT_BANKED_FLAT},
|
||||
{false, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_BANKED_25_DEG_UP_TO_25_DEG_UP},
|
||||
{false, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_ELEM_25_DEG_UP_RIGHT_BANKED},
|
||||
{false, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_CURVE_RIGHT, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_ELEM_RIGHT_BANKED_QUARTER_TURN_5_TILE_25_DEG_UP},
|
||||
{false, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_CURVE_RIGHT_SMALL, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_ELEM_RIGHT_BANKED_QUARTER_TURN_3_TILE_25_DEG_UP},
|
||||
{false, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_CURVE_LEFT_SMALL, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_ELEM_LEFT_QUARTER_TURN_1_TILE_60_DEG_UP},
|
||||
{false, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_ELEM_60_DEG_UP_TO_FLAT},
|
||||
{false, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_ELEM_60_DEG_UP_TO_25_DEG_UP},
|
||||
{false, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_ELEM_60_DEG_UP},
|
||||
{false, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_90, TRACK_BANK_NONE, TRACK_ELEM_60_DEG_UP_TO_90_DEG_UP},
|
||||
{false, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_CURVE_RIGHT_SMALL, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_QUARTER_TURN_1_TILE_60_DEG_UP},
|
||||
{false, TRACK_SLOPE_UP_90, TRACK_BANK_NONE, TRACK_CURVE_LEFT_SMALL, TRACK_SLOPE_UP_90, TRACK_BANK_NONE, TRACK_ELEM_LEFT_QUARTER_TURN_1_TILE_90_DEG_UP},
|
||||
{false, TRACK_SLOPE_UP_90, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TRACK_ELEM_90_DEG_UP_TO_60_DEG_UP},
|
||||
{false, TRACK_SLOPE_UP_90, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_90, TRACK_BANK_NONE, TRACK_ELEM_90_DEG_UP},
|
||||
{false, TRACK_SLOPE_UP_90, TRACK_BANK_NONE, TRACK_CURVE_RIGHT_SMALL, TRACK_SLOPE_UP_90, TRACK_BANK_NONE, TRACK_ELEM_RIGHT_QUARTER_TURN_1_TILE_90_DEG_UP},
|
||||
};
|
||||
|
||||
#define _trackPlaceCtrlState RCT2_GLOBAL(0x00F44159, uint8)
|
||||
static int _trackPlaceCtrlZ;
|
||||
#define _trackPlaceShiftState RCT2_GLOBAL(0x00F4415C, uint8)
|
||||
|
@ -2535,274 +2381,60 @@ void sub_6C84CE()
|
|||
window_ride_construction_update_widgets(w);
|
||||
}
|
||||
|
||||
char *track_curve_description(uint16 trackCurve) {
|
||||
switch (trackCurve) {
|
||||
case TRACK_CURVE_NONE:
|
||||
return "TRACK_CURVE_NONE";
|
||||
|
||||
case TRACK_CURVE_LEFT:
|
||||
return "TRACK_CURVE_LEFT";
|
||||
|
||||
case TRACK_CURVE_RIGHT:
|
||||
return "TRACK_CURVE_RIGHT";
|
||||
|
||||
case TRACK_CURVE_LEFT_SMALL:
|
||||
return "TRACK_CURVE_LEFT_SMALL";
|
||||
|
||||
case TRACK_CURVE_RIGHT_SMALL:
|
||||
return "TRACK_CURVE_RIGHT_SMALL";
|
||||
|
||||
case TRACK_CURVE_LEFT_VERY_SMALL:
|
||||
return "TRACK_CURVE_LEFT_VERY_SMALL";
|
||||
|
||||
case TRACK_CURVE_RIGHT_VERY_SMALL:
|
||||
return "TRACK_CURVE_RIGHT_VERY_SMALL";
|
||||
|
||||
case TRACK_CURVE_LEFT_LARGE:
|
||||
return "TRACK_CURVE_LEFT_LARGE";
|
||||
|
||||
case TRACK_CURVE_RIGHT_LARGE:
|
||||
return "TRACK_CURVE_RIGHT_LARGE";
|
||||
|
||||
default:
|
||||
return "";
|
||||
}
|
||||
}
|
||||
|
||||
char *track_slope_description(uint8 trackSlope) {
|
||||
switch (trackSlope) {
|
||||
case TRACK_SLOPE_NONE:
|
||||
return "TRACK_SLOPE_NONE";
|
||||
|
||||
case TRACK_SLOPE_UP_25:
|
||||
return "TRACK_SLOPE_UP_25";
|
||||
|
||||
case TRACK_SLOPE_UP_60:
|
||||
return "TRACK_SLOPE_UP_60";
|
||||
|
||||
case TRACK_SLOPE_DOWN_25:
|
||||
return "TRACK_SLOPE_DOWN_25";
|
||||
|
||||
case TRACK_SLOPE_DOWN_60:
|
||||
return "TRACK_SLOPE_DOWN_60";
|
||||
|
||||
case TRACK_SLOPE_UP_90:
|
||||
return "TRACK_SLOPE_UP_90";
|
||||
|
||||
case TRACK_SLOPE_DOWN_90:
|
||||
return "TRACK_SLOPE_DOWN_90";
|
||||
|
||||
default:
|
||||
return "";
|
||||
}
|
||||
}
|
||||
|
||||
char *track_bank_description(uint8 trackBank) {
|
||||
switch (trackBank) {
|
||||
case TRACK_BANK_NONE:
|
||||
return "TRACK_BANK_NONE";
|
||||
|
||||
case TRACK_BANK_LEFT:
|
||||
return "TRACK_BANK_LEFT";
|
||||
|
||||
case TRACK_BANK_RIGHT:
|
||||
return "TRACK_BANK_RIGHT";
|
||||
|
||||
default:
|
||||
return "";
|
||||
}
|
||||
}
|
||||
|
||||
int log_6CA2DF_ids[255];
|
||||
|
||||
static void log_6CA2DF(uint8 trackType) {
|
||||
if (log_6CA2DF_ids[trackType] == 1) {
|
||||
return;;
|
||||
}
|
||||
|
||||
log_6CA2DF_ids[trackType] = 1;
|
||||
|
||||
uint8 bl = _previousTrackSlopeEnd;
|
||||
uint8 bh = _currentTrackSlopeEnd;
|
||||
uint8 cl = _previousTrackBankEnd;
|
||||
uint8 ch = _currentTrackBankEnd;
|
||||
|
||||
if (_rideConstructionState == RIDE_CONSTRUCTION_STATE_BACK) {
|
||||
bl = _currentTrackSlopeEnd;
|
||||
bh = _previousTrackSlopeEnd;
|
||||
cl = _currentTrackBankEnd;
|
||||
ch = _previousTrackBankEnd;
|
||||
}
|
||||
|
||||
if (_currentTrackCurve > 8) {
|
||||
return;
|
||||
}
|
||||
|
||||
char *string_ax = track_curve_description(_currentTrackCurve);
|
||||
char *string_bl = track_slope_description(bl);
|
||||
char *string_bh = track_slope_description(bh);
|
||||
char *string_cl = track_bank_description(cl);
|
||||
char *string_ch = track_bank_description(ch);
|
||||
char *string_lt_4 = (RCT2_GLOBAL(RCT2_ADDRESS_TRACK_PREVIEW_ROTATION, uint8) >= 4) ? "true" : "false";
|
||||
uint8 rotation = RCT2_GLOBAL(RCT2_ADDRESS_TRACK_PREVIEW_ROTATION, uint8);
|
||||
if (_rideConstructionState == RIDE_CONSTRUCTION_STATE_BACK) {
|
||||
rotation = rotation ^ 0x04;
|
||||
}
|
||||
char *string_xor_4 = (rotation & (1 << 2)) ? "true" : "false";
|
||||
|
||||
printf("(%s || %s), %s, %s, %s, %s, %s, %d\n", string_lt_4, string_xor_4, string_bl, string_cl, string_ax, string_bh, string_ch, trackType);
|
||||
}
|
||||
|
||||
static bool sub_6CA2DF_get_dh(uint8 *dh, bool *must_refactor) {
|
||||
static bool sub_6CA2DF_get_track_element(uint8 *trackElement) {
|
||||
window_ride_construction_update_enabled_track_pieces();
|
||||
|
||||
uint32 edi = 0;
|
||||
uint8 bl = _previousTrackSlopeEnd;
|
||||
uint8 bh = _currentTrackSlopeEnd;
|
||||
uint8 cl = _previousTrackBankEnd;
|
||||
uint8 ch = _currentTrackBankEnd;
|
||||
uint8 startSlope = _previousTrackSlopeEnd;
|
||||
uint8 endSlope = _currentTrackSlopeEnd;
|
||||
uint8 startBank = _previousTrackBankEnd;
|
||||
uint8 endBank = _currentTrackBankEnd;
|
||||
|
||||
if (_rideConstructionState == RIDE_CONSTRUCTION_STATE_BACK) {
|
||||
bl = _currentTrackSlopeEnd;
|
||||
bh = _previousTrackSlopeEnd;
|
||||
cl = _currentTrackBankEnd;
|
||||
ch = _previousTrackBankEnd;
|
||||
startSlope = _currentTrackSlopeEnd;
|
||||
endSlope = _previousTrackSlopeEnd;
|
||||
startBank = _currentTrackBankEnd;
|
||||
endBank = _previousTrackBankEnd;
|
||||
}
|
||||
|
||||
uint16 ax = _currentTrackCurve;
|
||||
if (ax == 0xFFFF) {
|
||||
uint16 curve = _currentTrackCurve;
|
||||
if (curve == 0xFFFF) {
|
||||
return false;
|
||||
}
|
||||
|
||||
bool isDiagonal = RCT2_GLOBAL(RCT2_ADDRESS_TRACK_PREVIEW_ROTATION, uint8) >= 4;
|
||||
|
||||
if (ax == 7 || ax == 8) {
|
||||
uint8 tmp_dh = RCT2_GLOBAL(RCT2_ADDRESS_TRACK_PREVIEW_ROTATION, uint8);
|
||||
bool startsDiagonal = RCT2_GLOBAL(RCT2_ADDRESS_TRACK_PREVIEW_ROTATION, uint8) & (1 << 2);
|
||||
if (curve == TRACK_CURVE_LEFT_LARGE || curve == TRACK_CURVE_RIGHT_LARGE) {
|
||||
if (_rideConstructionState == RIDE_CONSTRUCTION_STATE_BACK) {
|
||||
tmp_dh = tmp_dh ^ 0x04;
|
||||
startsDiagonal = !startsDiagonal;
|
||||
}
|
||||
|
||||
isDiagonal = (tmp_dh & 0x04);
|
||||
}
|
||||
|
||||
if (ax <= 8) {
|
||||
if (curve <= 8) {
|
||||
for (int i = 0; i < 140; i++) {
|
||||
track_descriptor trackDescriptor = TrackDescriptors[i];
|
||||
if (trackDescriptor.track_curve != ax) continue;
|
||||
if (trackDescriptor.is_diagonal != isDiagonal) continue;
|
||||
if (trackDescriptor.slope_start != bl) continue;
|
||||
if (trackDescriptor.slope_end != bh) continue;
|
||||
if (trackDescriptor.bank_start != cl) continue;
|
||||
if (trackDescriptor.bank_end != ch) continue;
|
||||
track_descriptor trackDescriptor = gTrackDescriptors[i];
|
||||
if (trackDescriptor.track_curve != curve) continue;
|
||||
if (trackDescriptor.starts_diagonal != startsDiagonal) continue;
|
||||
if (trackDescriptor.slope_start != startSlope) continue;
|
||||
if (trackDescriptor.slope_end != endSlope) continue;
|
||||
if (trackDescriptor.bank_start != startBank) continue;
|
||||
if (trackDescriptor.bank_end != endBank) continue;
|
||||
|
||||
*dh = trackDescriptor.track_element;
|
||||
return true;
|
||||
}
|
||||
|
||||
log_error("missing element");
|
||||
*must_refactor = true;
|
||||
}
|
||||
|
||||
|
||||
if (ax == TRACK_CURVE_LEFT_SMALL) {
|
||||
if (bl == TRACK_SLOPE_DOWN_25 && bh == TRACK_SLOPE_NONE && cl == TRACK_BANK_NONE && ch == TRACK_BANK_LEFT) {
|
||||
*dh = TRACK_ELEM_LEFT_QUARTER_TURN_3_TILES_25_DEG_DOWN_TO_LEFT_BANK;
|
||||
*trackElement = trackDescriptor.track_element;
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
if (ax == TRACK_CURVE_RIGHT_SMALL) {
|
||||
if (bl == TRACK_SLOPE_DOWN_25 && bh == TRACK_SLOPE_NONE && cl == TRACK_BANK_NONE && ch == TRACK_BANK_RIGHT) {
|
||||
*dh = TRACK_ELEM_RIGHT_QUARTER_TURN_3_TILES_25_DEG_DOWN_TO_RIGHT_BANK;
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
if (ax == TRACK_CURVE_LEFT_VERY_SMALL) {
|
||||
if (bl != bh) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (bl == TRACK_SLOPE_UP_25 || bl == TRACK_SLOPE_DOWN_25) {
|
||||
return false;
|
||||
}
|
||||
|
||||
*dh = TRACK_ELEM_LEFT_QUARTER_TURN_1_TILE_60_DEG_DOWN;
|
||||
if (bh == TRACK_SLOPE_DOWN_60) {
|
||||
return true;
|
||||
}
|
||||
|
||||
*dh = TRACK_ELEM_LEFT_QUARTER_TURN_1_TILE_60_DEG_UP;
|
||||
if (bh == TRACK_SLOPE_UP_60) {
|
||||
return true;
|
||||
}
|
||||
|
||||
*dh = TRACK_ELEM_LEFT_QUARTER_TURN_1_TILE_90_DEG_DOWN;
|
||||
if (bh == TRACK_SLOPE_DOWN_90) {
|
||||
return true;
|
||||
}
|
||||
|
||||
*dh = TRACK_ELEM_LEFT_QUARTER_TURN_1_TILE_90_DEG_UP;
|
||||
if (bh == TRACK_SLOPE_UP_90) {
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
if (ax == TRACK_CURVE_RIGHT_VERY_SMALL) {
|
||||
if (bl != bh) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (bl == TRACK_SLOPE_UP_25 || bl == TRACK_SLOPE_DOWN_25) {
|
||||
return false;
|
||||
}
|
||||
|
||||
*dh = TRACK_ELEM_RIGHT_QUARTER_TURN_1_TILE_60_DEG_DOWN;
|
||||
if (bh == TRACK_SLOPE_DOWN_60) {
|
||||
// DOWN_60, ?, RIGHT_VERY_SMALL, DOWN_60, ?
|
||||
return true;
|
||||
}
|
||||
|
||||
*dh = TRACK_ELEM_RIGHT_QUARTER_TURN_1_TILE_60_DEG_UP;
|
||||
if (bh == TRACK_SLOPE_UP_60) {
|
||||
// UP_60, ?, RIGHT_VERY_SMALL, UP_60, ?
|
||||
return true;
|
||||
}
|
||||
|
||||
*dh = TRACK_ELEM_RIGHT_QUARTER_TURN_1_TILE_90_DEG_DOWN;
|
||||
if (bh == TRACK_SLOPE_DOWN_90) {
|
||||
// DOWN_90, ?, RIGHT_VERY_SMALL, DOWN_90, ?
|
||||
return true;
|
||||
}
|
||||
|
||||
*dh = TRACK_ELEM_RIGHT_QUARTER_TURN_1_TILE_90_DEG_UP;
|
||||
if (bh == TRACK_SLOPE_UP_90) {
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
if (ax <= 8) {
|
||||
return false;
|
||||
}
|
||||
|
||||
*dh = ax & 0xFF;
|
||||
switch (*dh) {
|
||||
*trackElement = curve & 0xFF;
|
||||
switch (*trackElement) {
|
||||
case TRACK_ELEM_END_STATION:
|
||||
case TRACK_ELEM_S_BEND_LEFT:
|
||||
case TRACK_ELEM_S_BEND_RIGHT:
|
||||
if (bl != 0 || bh != 0) {
|
||||
if (startSlope != TRACK_SLOPE_NONE || endSlope != TRACK_SLOPE_NONE) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (cl != 0 || ch != 0) {
|
||||
if (startBank != TRACK_BANK_NONE || endBank != TRACK_BANK_NONE) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
@ -2810,16 +2442,16 @@ static bool sub_6CA2DF_get_dh(uint8 *dh, bool *must_refactor) {
|
|||
|
||||
case TRACK_ELEM_LEFT_VERTICAL_LOOP:
|
||||
case TRACK_ELEM_RIGHT_VERTICAL_LOOP:
|
||||
if (cl != 0 || ch != 0) {
|
||||
if (startBank != TRACK_BANK_NONE || endBank != TRACK_BANK_NONE) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (_rideConstructionState == 2) {
|
||||
if (bh != 6) {
|
||||
if (_rideConstructionState == RIDE_CONSTRUCTION_STATE_BACK) {
|
||||
if (endSlope != TRACK_SLOPE_DOWN_25) {
|
||||
return false;
|
||||
}
|
||||
} else {
|
||||
if (bl != 2) {
|
||||
if (startSlope != TRACK_SLOPE_UP_25) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
@ -2848,16 +2480,11 @@ static bool new_sub_6CA2DF(uint8 *_trackType, uint8 *_trackDirection, uint8 *_ri
|
|||
uint8 trackType, trackDirection, rideIndex;
|
||||
uint16 z, x, y, edxRS16;
|
||||
uint32 properties;
|
||||
bool mustRefactor = false;
|
||||
|
||||
if (!sub_6CA2DF_get_dh(&trackType, &mustRefactor)) {
|
||||
if (!sub_6CA2DF_get_track_element(&trackType)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (mustRefactor) {
|
||||
log_6CA2DF(trackType);
|
||||
}
|
||||
|
||||
edxRS16 = 0;
|
||||
rideIndex = _currentRideIndex;
|
||||
if (_currentTrackLiftHill & 1) {
|
||||
|
|
Loading…
Reference in New Issue