11#ifndef gfCParkDaySimhdr
12#define gfCParkDaySimhdr
78 fsS32 pNeedIntervalMs = 0,
fsS32 pArrivalWeight = 1,
79 fsS32 pPartySize = 1);
82 fsS32 pNeedIntervalMs,
fsS32 pArrivalWeight = 1,
83 fsS32 pPartySize = 1);
146 struct SGuestTemplate
149 std::vector<fsStr> mNeedSlotTypes;
153 fsS32 mNeedIntervalMs;
154 fsS32 mArrivalWeight;
156 fsS32 mSelectionCredit;
160 gfCGuestAgentSim* guestFind(
const fsStr& pName);
164 gfCSlotSim* slotWithRoomFind(
const fsStr& pSlotType,
fsS32 pPatienceRemainingMs);
165 fsBool unstaffedVisitHappyRoll();
169 fsBool guestSlotJoin(gfCGuestAgentSim& pGuest);
170 void guestServiceComplete(gfCGuestAgentSim& pGuest);
172 std::vector<gfCSlotSim> mSlots;
173 std::vector<gfCGuestAgentSim> mGuests;
174 std::vector<SDeparture> mDepartures;
175 std::vector<SGuestTemplate> mGuestTemplates;
177 gfCArrivalDirectorSim mArrivalDirector;
178 gfCDayEconomySim mEconomy;
180 fsS32 mGuestsSpawnedCount;
182 fsS32 mVisitorDemand;
191 SStaffPool* staffPoolFind(
const fsStr& pStaffType);
192 const SStaffPool* staffPoolFind(
const fsStr& pStaffType)
const;
194 std::vector<SStaffPool> mStaffPools;
195 fsS32 mGuestTravelMs;
196 fsS32 mWalkingSatisfactionPercent;
198 fsS32 mUnstaffedVisitHappyChancePercent;
199 fsU32 mUnstaffedVisitRandomState;
202 std::vector<fsStr> mSlotsUnderRepair;
204 gfCSlotSim* slotFind(
const fsStr& pName);
205 const gfCSlotSim* slotFind(
const fsStr& pName)
const;
Definition gfCDayEconomySim.h:19
Definition gfCGuestAgentSim.h:35
fsS32 staffAvailableGet() const
Definition gfCParkDaySim.h:51
fsBool slotBrokenGet(const fsStr &pSlotName) const
Definition gfCParkDaySim.cpp:203
gfCDayEconomySim & economyGet()
Definition gfCParkDaySim.h:142
void staffPoolGrow(const fsStr &pStaffType, fsS32 pBy=1)
Definition gfCParkDaySim.cpp:118
fsBool slotUnlock(const fsStr &pName)
Definition gfCParkDaySim.cpp:59
fsBool slotServiceTimeMsSet(const fsStr &pSlotName, fsS32 pServiceTimeMs)
Definition gfCParkDaySim.cpp:403
void unstaffedVisitHappyChancePercentSet(fsS32 pChancePercent)
Definition gfCParkDaySim.cpp:305
void visitorQuotaSet(fsS32 pVisitorQuota)
Definition gfCParkDaySim.cpp:35
const gfCDayEconomySim & economyGet() const
Definition gfCParkDaySim.h:141
void slotAdd(const fsStr &pName, const fsStr &pSlotType, fsS32 pServiceTimeMs, fsS32 pMaxQueueLength, fsBool pUnlocked)
Definition gfCParkDaySim.cpp:49
fsS32 visitorQuotaGet() const
Definition gfCParkDaySim.h:96
fsS32 guestsSpawnedGet() const
Definition gfCParkDaySim.h:121
fsBool staffRecall(const fsStr &pSlotName)
Definition gfCParkDaySim.cpp:167
fsS32 staffTotalGet() const
Definition gfCParkDaySim.h:50
const SDeparture * departureGetByIndex(fsS32 pIndex) const
Definition gfCParkDaySim.cpp:284
void guestTravelTimeSet(const fsStr &pGuestName, fsS32 pTravelMs)
Definition gfCParkDaySim.cpp:425
static const fsStr mStaffTypeRepair
Definition gfCParkDaySim.h:40
fsS32 walkingSatisfactionPercentGet() const
Definition gfCParkDaySim.h:91
void visitorDemandSet(fsS32 pVisitorDemand)
Definition gfCParkDaySim.cpp:42
gfCParkDaySim(fsS32 pSpawnIntervalMs, fsS32 pMaxGuests, fsS32 pCoinGoal)
Definition gfCParkDaySim.cpp:10
void repairTimeMsSet(fsS32 pRepairTimeMs)
Definition gfCParkDaySim.h:67
fsBool slotRepairingGet(const fsStr &pSlotName) const
Definition gfCParkDaySim.cpp:209
fsBool staffDeploy(const fsStr &pSlotName)
Definition gfCParkDaySim.cpp:145
fsBool slotStaffedGet(const fsStr &pSlotName) const
Definition gfCParkDaySim.cpp:237
void guestTemplateAdd(const fsStr &pNamePrefix, const fsStr &pNeedSlotType, fsS32 pSpend, fsS32 pPatienceMs, fsS32 pVisitMs=5000, fsS32 pNeedIntervalMs=0, fsS32 pArrivalWeight=1, fsS32 pPartySize=1)
Definition gfCParkDaySim.cpp:243
void staffPoolGrow(fsS32 pBy=1)
Definition gfCParkDaySim.h:49
static const fsStr mStaffTypeKiosk
Definition gfCParkDaySim.h:39
void tick(fsS32 pDeltaMs)
Definition gfCParkDaySim.cpp:469
const gfCGuestAgentSim * guestGetByIndex(fsS32 pIndex) const
Definition gfCParkDaySim.cpp:275
fsS32 activeGuestCountGet() const
Definition gfCParkDaySim.h:120
void slotWearLimitsSetAll(fsS32 pServicesBeforeBreak, fsS32 pOpenMsBeforeBreak)
Definition gfCParkDaySim.cpp:195
void guestTravelMsSet(fsS32 pTravelMs)
Definition gfCParkDaySim.h:87
fsS32 departureCountGet() const
Definition gfCParkDaySim.h:139
fsBool slotRepairBegin(const fsStr &pSlotName)
Definition gfCParkDaySim.cpp:215
fsS32 visitorDemandGet() const
Definition gfCParkDaySim.h:98
void walkingSatisfactionPercentSet(fsS32 pPercent)
Definition gfCParkDaySim.cpp:24
fsS32 visitorArrivalTargetGet() const
Definition gfCParkDaySim.h:99
fsBool slotMaxQueueLengthSet(const fsStr &pSlotName, fsS32 pMaxQueueLength)
Definition gfCParkDaySim.cpp:414
unsigned int fsU32
Definition fsBaseTypes.h:21
bool fsBool
Definition fsBaseTypes.h:26
int fsS32
Definition fsBaseTypes.h:20
Definition gfCParkDaySim.h:133
fsS32 mSatisfactionPercent
Definition gfCParkDaySim.h:136
fsBool mHappy
Definition gfCParkDaySim.h:135
fsStr mName
Definition gfCParkDaySim.h:134