22 #ifndef HARVESTER_FLOW_H 23 #define HARVESTER_FLOW_H 25 #include "common/array.h" 26 #include "common/error.h" 27 #include "common/rect.h" 28 #include "common/str.h" 29 #include "harvester/dialogue.h" 30 #include "harvester/inventory.h" 31 #include "harvester/menu.h" 32 #include "harvester/room.h" 33 #include "harvester/script.h" 41 class HarvesterEngine;
42 class DialogueFlowAccess;
43 class RoomInteractionProcessor;
57 friend class DialogueFlowAccess;
71 float paletteBrightness,
bool canSaveGame);
77 bool ensureCursorEntity();
83 Common::Error fadeInRoomScene(
const byte *palette,
float targetBrightness);
84 Common::Error fadePalette(
const byte *palette,
float fromBrightness,
float toBrightness);
89 bool hasQueuedDebugInteraction()
const {
return _hasQueuedDebugInteraction; }
92 void prepareForNewGame();
93 void requestNewGameRestart();
94 bool hasPendingNewGameRestart()
const;
95 bool takePendingNewGameRestart();
96 void clearPendingNewGameRestart();
97 void requestGameOverReturn();
98 bool hasPendingGameOverReturn()
const;
99 bool takePendingGameOverReturn();
100 void clearPendingGameOverReturn();
101 void requestMainMenuReturn();
102 bool hasPendingMainMenuReturn()
const;
103 bool takePendingMainMenuReturn();
104 void clearPendingMainMenuReturn();
105 void requestCloseupParentRestart();
106 bool hasPendingCloseupParentRestart()
const;
107 bool takePendingCloseupParentRestart();
108 void clearPendingCloseupParentRestart();
110 bool hasPendingDebugRoomChange()
const {
return !_pendingDebugRoomName.empty(); }
112 void resetRoomNpcDialogueState();
113 void resetCursorAnimationSequence();
114 bool tickRuntimeEntities();
126 bool _hasQueuedDialogueInteraction =
false;
128 bool _hasQueuedDebugInteraction =
false;
129 bool _pendingNewGameRestart =
false;
130 bool _pendingGameOverReturn =
false;
131 bool _pendingMainMenuReturn =
false;
132 bool _pendingCloseupParentRestart =
false;
134 uint _roomLoopDepth = 0;
135 uint32 _roomSetupTransitionShownTick = 0;
140 #endif // HARVESTER_FLOW_H
Definition: dialogue.h:44
Definition: room_interaction.h:56
Definition: inventory.h:53
Definition: algorithm.h:29
Definition: harvester.h:47