aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/titanic/true_talk/deskbot_script.cpp31
1 files changed, 29 insertions, 2 deletions
diff --git a/engines/titanic/true_talk/deskbot_script.cpp b/engines/titanic/true_talk/deskbot_script.cpp
index 56f20f9581..3f358889dc 100644
--- a/engines/titanic/true_talk/deskbot_script.cpp
+++ b/engines/titanic/true_talk/deskbot_script.cpp
@@ -137,8 +137,35 @@ int DeskbotScript::process(const TTroomScript *roomScript, const TTsentence *sen
}
ScriptChangedResult DeskbotScript::scriptChanged(const TTroomScript *roomScript, uint id) {
- warning("TODO");
- return SCR_1;
+ switch (id) {
+ case 3:
+ case 100:
+ case 108:
+ CTrueTalkManager::setFlags(21, getValue(21) + 1);
+ addResponse(getDialogueId(getValue(22) ? 240577 : 241261));
+ applyResponse();
+ break;
+
+ case 109:
+ addResponse(getDialogueId(241627));
+ applyResponse();
+ break;
+
+ case 140:
+ if (getValue(1) == 3)
+ addAssignedRoomDialogue3();
+ break;
+
+ case 148:
+ CTrueTalkManager::setFlags(3, 1);
+ break;
+
+ case 150:
+ CTrueTalkManager::setFlags(2, 1);
+ break;
+ }
+
+ return SCR_2;
}
int DeskbotScript::handleQuote(const TTroomScript *roomScript, const TTsentence *sentence,