Merge branch 'ride-ratings'

This commit is contained in:
IntelOrca 2014-10-12 01:07:20 +01:00
commit 101ad48bc5
4 changed files with 1100 additions and 108 deletions

View File

@ -117,7 +117,8 @@ typedef struct {
uint8 var_0D0;
uint8 pad_0D1[0x3];
uint8 measurement_index; // 0x0D4
uint8 pad_0D5[0x3];
uint8 var_0D5;
uint8 pad_0D6[0x2];
sint32 max_speed; // 0x0D8
sint32 average_speed; // 0x0DC
uint8 pad_0E0[0x4];
@ -126,13 +127,21 @@ typedef struct {
fixed16_2dp max_positive_vertical_g; // 0x0FC
fixed16_2dp max_negative_vertical_g; // 0x0FE
fixed16_2dp max_lateral_g; // 0x100
uint8 pad_102[0x12];
uint8 inversions; // 0x114 (???X XXXX) holes for mini golf
uint8 pad_102[0xC];
uint16 var_10E;
uint16 var_110;
uint16 var_112;
union {
uint8 inversions; // 0x114 (???X XXXX)
uint8 holes; // 0x114 (???X XXXX)
};
uint8 drops; // 0x115 (??XX XXXX)
uint8 pad_116;
uint8 highest_drop_height; // 0x117
uint32 var_118;
uint8 pad_11C[0x08];
uint8 pad_11C[0x02];
uint8 var_11E;
uint8 pad_11F[0x05];
sint16 var_124;
sint16 var_126;
sint16 var_128;
@ -145,9 +154,14 @@ typedef struct {
sint16 var_136;
money16 price; // 0x138
uint8 pad_13A[0x06];
ride_rating excitement; // 0x140
ride_rating intensity; // 0x142
ride_rating nausea; // 0x144
union {
rating_tuple ratings; // 0x140
struct {
ride_rating excitement; // 0x140
ride_rating intensity; // 0x142
ride_rating nausea; // 0x144
};
};
uint16 reliability; // 0x146
uint16 pad_148;
uint16 var_14A;
@ -159,7 +173,9 @@ typedef struct {
uint16 var_158;
uint8 pad_15A;
uint8 num_riders; // 0x15B
uint8 pad_15C[0x24];
uint8 pad_15C[2];
uint16 maze_tiles;
uint8 pad_160[0x20];
sint16 build_date; // 0x180
money16 upkeep_cost; // 0x182
uint16 race_winner; // 0x184

File diff suppressed because it is too large Load Diff

View File

@ -25,11 +25,5 @@
#include "ride.h"
void ride_ratings_update_all();
void crooked_house_excitement(rct_ride *ride);
void sub_655FD6(rct_ride *ride);
ride_rating apply_intensity_penalty(ride_rating excitement, ride_rating intensity);
rating_tuple per_ride_rating_adjustments(rct_ride *ride, ride_rating excitement,
ride_rating intensity, ride_rating nausea);
uint16 compute_upkeep(rct_ride *ride);
#endif

View File

@ -4602,7 +4602,7 @@ static void window_ride_measurements_paint()
if (!(ride->lifecycle_flags & RIDE_LIFECYCLE_NO_RAW_STATS)) {
if (ride->type == RIDE_TYPE_MINI_GOLF) {
// Holes
holes = ride->inversions & 0x1F;
holes = ride->holes & 0x1F;
gfx_draw_string_left(dpi, STR_HOLES, &holes, 0, x, y);
y += 10;
} else {