1
0
mirror of https://github.com/OpenRCT2/OpenRCT2 synced 2026-01-30 10:15:36 +01:00

Refactor marketing to be a single vector

This commit is contained in:
Ted John
2019-02-16 20:39:41 +00:00
parent 261dd32697
commit 4013479094
11 changed files with 225 additions and 117 deletions

View File

@@ -541,11 +541,7 @@ void Park::Initialise()
_guestGenerationProbability = 0;
gTotalRideValueForMoney = 0;
gResearchLastItem.rawValue = RESEARCHED_ITEMS_SEPARATOR;
for (size_t i = 0; i < 20; i++)
{
gMarketingCampaignDaysLeft[i] = 0;
}
gMarketingCampaigns.clear();
research_reset_items();
finance_init();
@@ -967,15 +963,12 @@ void Park::GenerateGuests()
}
// Extra guests generated by advertising campaigns
for (int32_t campaign = 0; campaign < ADVERTISING_CAMPAIGN_COUNT; campaign++)
for (const auto& campaign : gMarketingCampaigns)
{
if (gMarketingCampaignDaysLeft[campaign] != 0)
// Random chance of guest generation
if ((int32_t)scenario_rand_max(0xFFFF) < marketing_get_campaign_guest_generation_probability(campaign.Type))
{
// Random chance of guest generation
if ((int32_t)(scenario_rand() & 0xFFFF) < marketing_get_campaign_guest_generation_probability(campaign))
{
GenerateGuestFromCampaign(campaign);
}
GenerateGuestFromCampaign(campaign.Type);
}
}
}