diff options
Diffstat (limited to 'engines/mutationofjb/tasks/conversationtask.h')
-rw-r--r-- | engines/mutationofjb/tasks/conversationtask.h | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/engines/mutationofjb/tasks/conversationtask.h b/engines/mutationofjb/tasks/conversationtask.h index 3bcbb6f998..41c82849ee 100644 --- a/engines/mutationofjb/tasks/conversationtask.h +++ b/engines/mutationofjb/tasks/conversationtask.h @@ -27,10 +27,11 @@ namespace MutationOfJB { class SayTask; +class ScriptExecutionContext; class ConversationTask : public Task, public ConversationWidgetCallback { public: - ConversationTask(uint8 sceneId, const ConversationInfo& convInfo) : _sceneId(sceneId), _convInfo(convInfo), _currentLineIndex(0), _currentItem(nullptr), _sayTask(nullptr), _substate(IDLE), _haveChoices(false) {} + ConversationTask(uint8 sceneId, const ConversationInfo& convInfo) : _sceneId(sceneId), _convInfo(convInfo), _currentLineIndex(0), _currentItem(nullptr), _sayTask(nullptr), _substate(IDLE), _haveChoices(false), _innerExecCtx(nullptr) {} virtual ~ConversationTask() {} virtual void start() override; @@ -41,6 +42,8 @@ private: void showChoicesOrPick(); const ConversationInfo::Line *getCurrentLine() const; void finish(); + void startExtra(); + void gotoNextLine(); uint8 _sceneId; const ConversationInfo &_convInfo; @@ -52,11 +55,13 @@ private: IDLE, SAYING_CHOICE, SAYING_RESPONSE, - SAYING_NO_CHOICES + SAYING_NO_CHOICES, + RUNNING_EXTRA }; Substate _substate; bool _haveChoices; + ScriptExecutionContext *_innerExecCtx; }; } |