1
0
mirror of https://github.com/OpenRCT2/OpenRCT2 synced 2026-01-06 06:32:56 +01:00

Set consumption time when giving items to guests (#23581)

This commit is contained in:
Aaron van Geffen
2025-01-09 20:01:53 +01:00
committed by GitHub
parent a55e70bc0b
commit 48be2e911c
2 changed files with 7 additions and 3 deletions

View File

@@ -2,6 +2,7 @@
------------------------------------------------------------------------
- Improved: [#23540] The file browser now optionally shows a file size column.
- Fix: [#21794] Lay-down coaster cars reverse on first frames of downwards corkscrew.
- Fix: [#23581] [Plugin] Food/drink items given to guests have no consumption duration set.
0.4.18 (2025-01-08)
------------------------------------------------------------------------

View File

@@ -1669,9 +1669,6 @@ bool Guest::DecideAndBuyItem(Ride& ride, const ShopItem shopItem, money64 price)
if (shopItem == ShopItem::Map)
ResetPathfindGoal();
uint16_t consumptionTime = shopItemDescriptor.ConsumptionTime;
TimeToConsume = std::min((TimeToConsume + consumptionTime), 255);
if (shopItem == ShopItem::Photo)
Photo1RideRef = ride.id;
@@ -7552,16 +7549,22 @@ void Guest::SetItemFlags(uint64_t itemFlags)
void Guest::RemoveAllItems()
{
ItemFlags = 0;
TimeToConsume = 0;
}
void Guest::RemoveItem(ShopItem item)
{
ItemFlags &= ~EnumToFlag(item);
TimeToConsume = 0;
}
void Guest::GiveItem(ShopItem item)
{
ItemFlags |= EnumToFlag(item);
const auto& shopItemDescriptor = GetShopItemDescriptor(item);
uint16_t consumptionTime = shopItemDescriptor.ConsumptionTime;
TimeToConsume = std::min((TimeToConsume + consumptionTime), 255);
}
bool Guest::HasItem(ShopItem peepItem) const