From 1c5b7a7bdde5c8e7bc04f874cffab74ab5ad8714 Mon Sep 17 00:00:00 2001 From: Gymnasiast Date: Sun, 9 May 2021 19:44:58 +0200 Subject: [PATCH] Correctly import ride profits --- src/openrct2/rct1/S4Importer.cpp | 6 +++--- src/openrct2/rct2/S6Importer.cpp | 6 +++--- src/openrct2/ride/Ride.cpp | 6 +++--- src/openrct2/ride/Ride.h | 2 +- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/openrct2/rct1/S4Importer.cpp b/src/openrct2/rct1/S4Importer.cpp index 5be2ea7452..db9e819980 100644 --- a/src/openrct2/rct1/S4Importer.cpp +++ b/src/openrct2/rct1/S4Importer.cpp @@ -987,10 +987,10 @@ private: dst->upkeep_cost = src->upkeep_cost; dst->price[0] = src->price; dst->price[1] = src->price_secondary; - dst->income_per_hour = src->income_per_hour; + dst->income_per_hour = ToMoney64(src->income_per_hour); dst->total_customers = src->total_customers; - dst->profit = src->profit; - dst->total_profit = src->total_profit; + dst->profit = ToMoney64(src->profit); + dst->total_profit = ToMoney64(src->total_profit); dst->value = src->value; for (size_t i = 0; i < std::size(src->num_customers); i++) { diff --git a/src/openrct2/rct2/S6Importer.cpp b/src/openrct2/rct2/S6Importer.cpp index 18e46fc53e..044458d404 100644 --- a/src/openrct2/rct2/S6Importer.cpp +++ b/src/openrct2/rct2/S6Importer.cpp @@ -697,7 +697,7 @@ public: // pad_14E[0x02]; dst->total_customers = src->total_customers; - dst->total_profit = src->total_profit; + dst->total_profit = ToMoney64(src->total_profit); dst->popularity = src->popularity; dst->popularity_time_out = src->popularity_time_out; dst->popularity_next = src->popularity_next; @@ -748,8 +748,8 @@ public: dst->last_crash_type = src->last_crash_type; dst->connected_message_throttle = src->connected_message_throttle; - dst->income_per_hour = src->income_per_hour; - dst->profit = src->profit; + dst->income_per_hour = ToMoney64(src->income_per_hour); + dst->profit = ToMoney64(src->profit); for (uint8_t i = 0; i < RCT12_NUM_COLOUR_SCHEMES; i++) { diff --git a/src/openrct2/ride/Ride.cpp b/src/openrct2/ride/Ride.cpp index 2caa30f4e9..76600e058b 100644 --- a/src/openrct2/ride/Ride.cpp +++ b/src/openrct2/ride/Ride.cpp @@ -382,7 +382,7 @@ void ride_update_favourited_stat() * * rct2: 0x006AC3AB */ -money32 Ride::CalculateIncomePerHour() const +money64 Ride::CalculateIncomePerHour() const { // Get entry by ride to provide better reporting rct_ride_entry* entry = GetRideEntry(); @@ -390,8 +390,8 @@ money32 Ride::CalculateIncomePerHour() const { return 0; } - money32 customersPerHour = ride_customers_per_hour(this); - money32 priceMinusCost = ride_get_price(this); + auto customersPerHour = ride_customers_per_hour(this); + money64 priceMinusCost = ride_get_price(this); ShopItem currentShopItem = entry->shop_item[0]; if (currentShopItem != ShopItem::None) diff --git a/src/openrct2/ride/Ride.h b/src/openrct2/ride/Ride.h index 99bc30bb89..8967224b9f 100644 --- a/src/openrct2/ride/Ride.h +++ b/src/openrct2/ride/Ride.h @@ -390,7 +390,7 @@ private: void UpdateQueueLength(StationIndex stationIndex); bool CreateVehicles(const CoordsXYE& element, bool isApplying); void MoveTrainsToBlockBrakes(TrackElement* firstBlock); - money32 CalculateIncomePerHour() const; + money64 CalculateIncomePerHour() const; void ChainQueues() const; void ConstructMissingEntranceOrExit() const;