mirror of
https://github.com/OpenRCT2/OpenRCT2
synced 2025-12-10 09:32:29 +01:00
Handle peep state directly in the update switch
This commit is contained in:
@@ -5324,57 +5324,47 @@ void Guest::Update()
|
||||
case PeepState::Picked:
|
||||
UpdatePicked();
|
||||
break;
|
||||
case PeepState::QueuingFront:
|
||||
UpdateRide();
|
||||
break;
|
||||
case PeepState::LeavingRide:
|
||||
UpdateRide();
|
||||
break;
|
||||
case PeepState::Walking:
|
||||
UpdateWalking();
|
||||
break;
|
||||
case PeepState::Queuing:
|
||||
UpdateQueuing();
|
||||
break;
|
||||
case PeepState::EnteringRide:
|
||||
UpdateRide();
|
||||
break;
|
||||
case PeepState::Sitting:
|
||||
UpdateSitting();
|
||||
break;
|
||||
case PeepState::EnteringPark:
|
||||
UpdateEnteringPark();
|
||||
break;
|
||||
case PeepState::LeavingPark:
|
||||
UpdateLeavingPark();
|
||||
break;
|
||||
case PeepState::Buying:
|
||||
UpdateBuying();
|
||||
break;
|
||||
case PeepState::Watching:
|
||||
UpdateWatching();
|
||||
break;
|
||||
case PeepState::UsingBin:
|
||||
UpdateUsingBin();
|
||||
break;
|
||||
default:
|
||||
UpdateGuest();
|
||||
// TODO reset to default state
|
||||
assert(false);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void Guest::UpdateGuest()
|
||||
{
|
||||
switch (State)
|
||||
{
|
||||
case PeepState::QueuingFront:
|
||||
UpdateRide();
|
||||
break;
|
||||
case PeepState::LeavingRide:
|
||||
UpdateRide();
|
||||
break;
|
||||
case PeepState::Walking:
|
||||
UpdateWalking();
|
||||
break;
|
||||
case PeepState::Queuing:
|
||||
UpdateQueuing();
|
||||
break;
|
||||
case PeepState::EnteringRide:
|
||||
UpdateRide();
|
||||
break;
|
||||
case PeepState::Sitting:
|
||||
UpdateSitting();
|
||||
break;
|
||||
case PeepState::EnteringPark:
|
||||
UpdateEnteringPark();
|
||||
break;
|
||||
case PeepState::LeavingPark:
|
||||
UpdateLeavingPark();
|
||||
break;
|
||||
case PeepState::Buying:
|
||||
UpdateBuying();
|
||||
break;
|
||||
case PeepState::Watching:
|
||||
UpdateWatching();
|
||||
break;
|
||||
case PeepState::UsingBin:
|
||||
UpdateUsingBin();
|
||||
break;
|
||||
default:
|
||||
// TODO reset to default state
|
||||
assert(false);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* rct2: 0x691A30
|
||||
|
||||
@@ -321,7 +321,6 @@ public:
|
||||
uint64_t ItemFlags;
|
||||
|
||||
void Update();
|
||||
void UpdateGuest();
|
||||
void Tick128UpdateGuest(uint32_t index);
|
||||
uint64_t GetFoodOrDrinkFlags() const;
|
||||
uint64_t GetEmptyContainerFlags() const;
|
||||
|
||||
@@ -1732,51 +1732,41 @@ void Staff::Update()
|
||||
case PeepState::Picked:
|
||||
UpdatePicked();
|
||||
break;
|
||||
case PeepState::Patrolling:
|
||||
UpdatePatrolling();
|
||||
break;
|
||||
case PeepState::Mowing:
|
||||
UpdateMowing();
|
||||
break;
|
||||
case PeepState::Sweeping:
|
||||
UpdateSweeping();
|
||||
break;
|
||||
case PeepState::Answering:
|
||||
UpdateAnswering();
|
||||
break;
|
||||
case PeepState::Fixing:
|
||||
UpdateFixing(stepsToTake);
|
||||
break;
|
||||
case PeepState::Inspecting:
|
||||
UpdateFixing(stepsToTake);
|
||||
break;
|
||||
case PeepState::EmptyingBin:
|
||||
UpdateEmptyingBin();
|
||||
break;
|
||||
case PeepState::Watering:
|
||||
UpdateWatering();
|
||||
break;
|
||||
case PeepState::HeadingToInspection:
|
||||
UpdateHeadingToInspect();
|
||||
break;
|
||||
default:
|
||||
UpdateStaff(stepsToTake);
|
||||
// TODO reset to default state
|
||||
assert(false);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void Staff::UpdateStaff(uint32_t stepsToTake)
|
||||
{
|
||||
switch (State)
|
||||
{
|
||||
case PeepState::Patrolling:
|
||||
UpdatePatrolling();
|
||||
break;
|
||||
case PeepState::Mowing:
|
||||
UpdateMowing();
|
||||
break;
|
||||
case PeepState::Sweeping:
|
||||
UpdateSweeping();
|
||||
break;
|
||||
case PeepState::Answering:
|
||||
UpdateAnswering();
|
||||
break;
|
||||
case PeepState::Fixing:
|
||||
UpdateFixing(stepsToTake);
|
||||
break;
|
||||
case PeepState::Inspecting:
|
||||
UpdateFixing(stepsToTake);
|
||||
break;
|
||||
case PeepState::EmptyingBin:
|
||||
UpdateEmptyingBin();
|
||||
break;
|
||||
case PeepState::Watering:
|
||||
UpdateWatering();
|
||||
break;
|
||||
case PeepState::HeadingToInspection:
|
||||
UpdateHeadingToInspect();
|
||||
break;
|
||||
default:
|
||||
// TODO reset to default state
|
||||
assert(false);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* rct2: 0x006BF1FD
|
||||
|
||||
@@ -60,7 +60,6 @@ public:
|
||||
uint32_t StaffBinsEmptied;
|
||||
|
||||
void Update();
|
||||
void UpdateStaff(uint32_t stepsToTake);
|
||||
void Tick128UpdateStaff();
|
||||
bool IsMechanic() const;
|
||||
bool IsPatrolAreaSet(const CoordsXY& coords) const;
|
||||
|
||||
Reference in New Issue
Block a user