22 #ifndef NANCY_ACTION_CONVERSATION_H 23 #define NANCY_ACTION_CONVERSATION_H 25 #include "engines/nancy/action/actionrecord.h" 26 #include "engines/nancy/video.h" 49 void execute()
override;
51 virtual bool isVideoDonePlaying() {
return true; }
60 bool isSatisfied()
const;
68 bool isSatisfied()
const;
72 enum AddRule { kAddIfNotFound, kRemoveAndAddToEnd, kRemove };
77 byte addRule = kAddIfNotFound;
81 bool isOnScreen =
false;
94 static const byte kDefaultNextSceneEnabled = 1;
95 static const byte kDefaultNextSceneDisabled = 2;
97 static const byte kPopNextScene = 1;
98 static const byte kNoPopNextScene = 2;
100 Common::String getRecordTypeName()
const override {
return "ConversationSound"; }
101 bool isViewportRelative()
const override {
return true; }
113 void addConditionalDialogue();
121 byte _conditionalResponseCharacterID;
122 byte _goodbyeResponseCharacterID;
123 byte _defaultNextScene = kDefaultNextSceneEnabled;
124 byte _popNextScene = kNoPopNextScene;
131 bool _hasDrawnTextbox;
132 int16 _pickedResponse;
134 const byte _noResponse;
140 void init()
override;
141 void updateGraphics()
override;
142 void onPause(
bool pause)
override;
146 bool isVideoDonePlaying()
override;
153 uint _videoFormat = kLargeVideoFormat;
154 uint16 _firstFrame = 0;
155 int16 _lastFrame = 0;
159 class ConversationCelLoader;
164 friend class ConversationCelLoader;
169 void init()
override;
170 void registerGraphics()
override;
171 void updateGraphics()
override;
176 Common::String getRecordTypeName()
const override {
return "ConversationCel"; }
188 bool isViewportRelative()
const override {
return true; }
191 static const byte kCelOverrideTreeRectsOff = 1;
192 static const byte kCelOverrideTreeRectsOn = 2;
194 bool isVideoDonePlaying()
override;
202 uint16 _frameTime = 0;
203 uint _videoFormat = kLargeVideoFormat;
204 uint16 _firstFrame = 0;
205 uint16 _lastFrame = 0;
214 uint32 _nextFrameTime = 0;
225 Common::String getRecordTypeName()
const override {
return "ConversationSoundT"; }
234 Common::String getRecordTypeName()
const override {
return "ConversationCelT"; }
246 Common::String getRecordTypeName()
const override {
return "ConversationSoundTerse"; }
255 Common::String getRecordTypeName()
const override {
return "ConversationCelTerse"; }
261 #endif // NANCY_ACTION_CONVERSATION_H Definition: managed_surface.h:51
Definition: conversation.h:178
Definition: commontypes.h:151
Definition: conversation.h:54
Definition: conversation.h:138
Definition: conversation.h:42
Definition: conversation.h:89
Definition: actionrecord.h:149
Definition: renderobject.h:36
Definition: conversation.h:241
Definition: conversation.h:64
Definition: conversation.h:250
Definition: conversation.h:71
Definition: conversation.h:163
Definition: conversation.h:84
Definition: conversation.h:184
Definition: commontypes.h:254
Definition: conversation.h:223
Definition: conversation.h:232
Definition: commontypes.h:166
Definition: actionmanager.h:32