1
0
mirror of https://github.com/OpenRCT2/OpenRCT2 synced 2025-12-22 15:23:01 +01:00

Move .suggestedGuestMaximum into ParkData struct

This commit is contained in:
Aaron van Geffen
2025-08-13 23:20:59 +02:00
parent b40c5bd3b4
commit a99ffd9736
7 changed files with 13 additions and 13 deletions

View File

@@ -105,11 +105,6 @@ namespace OpenRCT2
ObjectEntryIndex lastEntranceStyle;
/**
* In a difficult guest generation scenario, no guests will be generated if over this value.
*/
uint32_t suggestedGuestMaximum;
CheatsState cheats;
};

View File

@@ -641,7 +641,7 @@ namespace OpenRCT2
auto& gameState = getGameState();
serialiser << gameState.park.guestGenerationProbability;
serialiser << gameState.suggestedGuestMaximum;
serialiser << gameState.park.suggestedGuestMaximum;
serialiser << Config::Get().general.ShowRealNamesOfGuests;
// To make this a little bit less volatile against updates

View File

@@ -1002,7 +1002,7 @@ namespace OpenRCT2
cs.ReadWrite(gameState.park.numGuestsInParkLastWeek);
cs.ReadWrite(gameState.park.guestChangeModifier);
cs.ReadWrite(gameState.park.guestGenerationProbability);
cs.ReadWrite(gameState.suggestedGuestMaximum);
cs.ReadWrite(gameState.park.suggestedGuestMaximum);
cs.ReadWriteArray(gameState.peepWarningThrottle, [&cs](uint8_t& value) {
cs.ReadWrite(value);

View File

@@ -529,7 +529,7 @@ namespace OpenRCT2::RCT2
gameState.mapSize = { _s6.MapSize, _s6.MapSize };
gameState.park.samePriceThroughoutPark = _s6.SamePriceThroughout
| (static_cast<uint64_t>(_s6.SamePriceThroughoutExtended) << 32);
gameState.suggestedGuestMaximum = _s6.SuggestedMaxGuests;
gameState.park.suggestedGuestMaximum = _s6.SuggestedMaxGuests;
gameState.scenarioParkRatingWarningDays = _s6.ParkRatingWarningDays;
gameState.lastEntranceStyle = _s6.LastEntranceStyle;
// rct1_water_colour

View File

@@ -144,7 +144,7 @@ namespace OpenRCT2::Scripting
uint32_t ScPark::suggestedGuestMaximum_get() const
{
return getGameState().suggestedGuestMaximum;
return getGameState().park.suggestedGuestMaximum;
}
int32_t ScPark::guestGenerationProbability_get() const

View File

@@ -184,7 +184,7 @@ namespace OpenRCT2::Park
// The more guests, the lower the chance of a new one
uint32_t numGuests = gameState.park.numGuestsInPark + gameState.park.numGuestsHeadingForPark;
if (numGuests > gameState.suggestedGuestMaximum)
if (numGuests > gameState.park.suggestedGuestMaximum)
{
probability /= 4;
// Even lower for difficult guest generation
@@ -235,7 +235,7 @@ namespace OpenRCT2::Park
if (static_cast<int32_t>(ScenarioRand() & 0xFFFF) < gameState.park.guestGenerationProbability)
{
bool difficultGeneration = (gameState.park.Flags & PARK_FLAGS_DIFFICULT_GUEST_GENERATION) != 0;
if (!difficultGeneration || gameState.suggestedGuestMaximum + 150 >= gameState.park.numGuestsInPark)
if (!difficultGeneration || gameState.park.suggestedGuestMaximum + 150 >= gameState.park.numGuestsInPark)
{
GenerateGuest();
}
@@ -288,7 +288,7 @@ namespace OpenRCT2::Park
gameState.park.Rating = 0;
gameState.park.guestGenerationProbability = 0;
gameState.park.totalRideValueForMoney = 0;
gameState.suggestedGuestMaximum = 0;
gameState.park.suggestedGuestMaximum = 0;
gameState.researchLastItem = std::nullopt;
gameState.park.marketingCampaigns.clear();
@@ -347,7 +347,7 @@ namespace OpenRCT2::Park
gameState.park.Value = Park::CalculateParkValue();
gameState.park.companyValue = CalculateCompanyValue();
gameState.park.totalRideValueForMoney = calculateTotalRideValueForMoney();
gameState.suggestedGuestMaximum = calculateSuggestedMaxGuests();
gameState.park.suggestedGuestMaximum = calculateSuggestedMaxGuests();
gameState.park.guestGenerationProbability = calculateGuestGenerationProbability();
windowMgr->InvalidateByClass(WindowClass::Finances);

View File

@@ -99,6 +99,11 @@ namespace OpenRCT2::Park
*/
int32_t guestGenerationProbability;
/**
* In a difficult guest generation scenario, no guests will be generated if over this value.
*/
uint32_t suggestedGuestMaximum;
uint64_t totalAdmissions;
money64 totalIncomeFromAdmissions;