aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorPaul Gilbert2016-07-29 22:41:12 -0400
committerPaul Gilbert2016-07-29 22:41:12 -0400
commita97dd2cda9a3352d74b66e1c317fa3aa2369ffe7 (patch)
treefbe6113cf7f2dd8075debac4f2fae7f668676f41 /engines
parent6aef21517f5f65f6421103e1b2d150f44a6f17c6 (diff)
downloadscummvm-rg350-a97dd2cda9a3352d74b66e1c317fa3aa2369ffe7.tar.gz
scummvm-rg350-a97dd2cda9a3352d74b66e1c317fa3aa2369ffe7.tar.bz2
scummvm-rg350-a97dd2cda9a3352d74b66e1c317fa3aa2369ffe7.zip
TITANIC: Handle NPC getDialsBitset methods
Diffstat (limited to 'engines')
-rw-r--r--engines/titanic/true_talk/barbot_script.h3
-rw-r--r--engines/titanic/true_talk/bellbot_script.cpp5
-rw-r--r--engines/titanic/true_talk/bellbot_script.h5
-rw-r--r--engines/titanic/true_talk/deskbot_script.cpp8
-rw-r--r--engines/titanic/true_talk/deskbot_script.h10
-rw-r--r--engines/titanic/true_talk/doorbot_script.h3
-rw-r--r--engines/titanic/true_talk/liftbot_script.h3
-rw-r--r--engines/titanic/true_talk/maitred_script.cpp5
-rw-r--r--engines/titanic/true_talk/maitred_script.h4
-rw-r--r--engines/titanic/true_talk/parrot_script.cpp4
-rw-r--r--engines/titanic/true_talk/parrot_script.h4
-rw-r--r--engines/titanic/true_talk/succubus_script.cpp5
-rw-r--r--engines/titanic/true_talk/succubus_script.h4
13 files changed, 35 insertions, 28 deletions
diff --git a/engines/titanic/true_talk/barbot_script.h b/engines/titanic/true_talk/barbot_script.h
index d7fb1906f6..77c7cce857 100644
--- a/engines/titanic/true_talk/barbot_script.h
+++ b/engines/titanic/true_talk/barbot_script.h
@@ -90,6 +90,9 @@ public:
*/
virtual uint getDialsBitset() const;
+ /**
+ * Process a sentence fragment entry
+ */
virtual int doSentenceEntry(int val1, const int *srcIdP, TTroomScript *roomScript, TTsentence *sentence);
/**
diff --git a/engines/titanic/true_talk/bellbot_script.cpp b/engines/titanic/true_talk/bellbot_script.cpp
index d3fa24bcb4..3149439b1f 100644
--- a/engines/titanic/true_talk/bellbot_script.cpp
+++ b/engines/titanic/true_talk/bellbot_script.cpp
@@ -318,11 +318,6 @@ int BellbotScript::preResponse(uint id) {
return newId;
}
-int BellbotScript::proc23() const {
- warning("TODO");
- return 0;
-}
-
int BellbotScript::doSentenceEntry(int val1, const int *srcIdP, TTroomScript *roomScript, TTsentence *sentence) {
switch (val1) {
case 1:
diff --git a/engines/titanic/true_talk/bellbot_script.h b/engines/titanic/true_talk/bellbot_script.h
index ace2862ac1..8b43e32005 100644
--- a/engines/titanic/true_talk/bellbot_script.h
+++ b/engines/titanic/true_talk/bellbot_script.h
@@ -86,8 +86,9 @@ public:
*/
virtual int preResponse(uint id);
- virtual int proc23() const;
-
+ /**
+ * Process a sentence fragment entry
+ */
virtual int doSentenceEntry(int val1, const int *srcIdP, TTroomScript *roomScript, TTsentence *sentence);
virtual int proc36(int val) const;
diff --git a/engines/titanic/true_talk/deskbot_script.cpp b/engines/titanic/true_talk/deskbot_script.cpp
index 88bf1112d1..debd6ea7ba 100644
--- a/engines/titanic/true_talk/deskbot_script.cpp
+++ b/engines/titanic/true_talk/deskbot_script.cpp
@@ -262,9 +262,11 @@ int DeskbotScript::preResponse(uint id) {
return newId;
}
-int DeskbotScript::proc23() const {
- warning("TODO");
- return 0;
+uint DeskbotScript::getDialsBitset() const {
+ if (getDialRegion(1))
+ return getDialRegion(0) ? 2 : 3;
+ else
+ return getDialRegion(0) ? 0 : 1;
}
int DeskbotScript::doSentenceEntry(int val1, const int *srcIdP, TTroomScript *roomScript, TTsentence *sentence) {
diff --git a/engines/titanic/true_talk/deskbot_script.h b/engines/titanic/true_talk/deskbot_script.h
index 2991e06636..7a09c28d76 100644
--- a/engines/titanic/true_talk/deskbot_script.h
+++ b/engines/titanic/true_talk/deskbot_script.h
@@ -89,8 +89,16 @@ public:
*/
virtual int preResponse(uint id);
- virtual int proc23() const;
+ /**
+ * Returns a bitset of the first three dialgs being on or not
+ */
+ virtual uint getDialsBitset() const;
+
+ /**
+ * Process a sentence fragment entry
+ */
virtual int doSentenceEntry(int val1, const int *srcIdP, TTroomScript *roomScript, TTsentence *sentence);
+
virtual int proc36(int val) const;
/**
diff --git a/engines/titanic/true_talk/doorbot_script.h b/engines/titanic/true_talk/doorbot_script.h
index 5f740dba17..4c3c9eddd2 100644
--- a/engines/titanic/true_talk/doorbot_script.h
+++ b/engines/titanic/true_talk/doorbot_script.h
@@ -88,6 +88,9 @@ public:
*/
virtual uint getDialsBitset() const;
+ /**
+ * Process a sentence fragment entry
+ */
virtual int doSentenceEntry(int val1, const int *srcIdP, TTroomScript *roomScript, TTsentence *sentence);
/**
diff --git a/engines/titanic/true_talk/liftbot_script.h b/engines/titanic/true_talk/liftbot_script.h
index 04d4b024b3..118d6585bd 100644
--- a/engines/titanic/true_talk/liftbot_script.h
+++ b/engines/titanic/true_talk/liftbot_script.h
@@ -85,6 +85,9 @@ public:
*/
virtual uint getDialsBitset() const;
+ /**
+ * Process a sentence fragment entry
+ */
virtual int doSentenceEntry(int val1, const int *srcIdP, TTroomScript *roomScript, TTsentence *sentence);
/**
diff --git a/engines/titanic/true_talk/maitred_script.cpp b/engines/titanic/true_talk/maitred_script.cpp
index 08e8119b00..d013380fe7 100644
--- a/engines/titanic/true_talk/maitred_script.cpp
+++ b/engines/titanic/true_talk/maitred_script.cpp
@@ -301,11 +301,6 @@ int MaitreDScript::preResponse(uint id) {
return 0;
}
-int MaitreDScript::proc23() const {
- warning("TODO");
- return 0;
-}
-
int MaitreDScript::doSentenceEntry(int val1, const int *srcIdP, TTroomScript *roomScript, TTsentence *sentence) {
warning("TODO");
return 0;
diff --git a/engines/titanic/true_talk/maitred_script.h b/engines/titanic/true_talk/maitred_script.h
index 5d26bec5a2..b3185d3b61 100644
--- a/engines/titanic/true_talk/maitred_script.h
+++ b/engines/titanic/true_talk/maitred_script.h
@@ -88,7 +88,9 @@ public:
*/
virtual int preResponse(uint id);
- virtual int proc23() const;
+ /**
+ * Process a sentence fragment entry
+ */
virtual int doSentenceEntry(int val1, const int *srcIdP, TTroomScript *roomScript, TTsentence *sentence);
};
diff --git a/engines/titanic/true_talk/parrot_script.cpp b/engines/titanic/true_talk/parrot_script.cpp
index 5894cd022c..0cd8082272 100644
--- a/engines/titanic/true_talk/parrot_script.cpp
+++ b/engines/titanic/true_talk/parrot_script.cpp
@@ -103,10 +103,6 @@ ScriptChangedResult ParrotScript::scriptChanged(TTscriptBase *roomScript, uint i
return (id == 3) ? SCR_2 : SCR_1;
}
-int ParrotScript::proc23() const {
- return 0;
-}
-
int ParrotScript::doSentenceEntry(int val1, const int *srcIdP, TTroomScript *roomScript, TTsentence *sentence) {
return 0;
}
diff --git a/engines/titanic/true_talk/parrot_script.h b/engines/titanic/true_talk/parrot_script.h
index f83d1f55a6..a27c159c79 100644
--- a/engines/titanic/true_talk/parrot_script.h
+++ b/engines/titanic/true_talk/parrot_script.h
@@ -52,7 +52,9 @@ public:
*/
virtual ScriptChangedResult scriptChanged(TTscriptBase *roomScript, uint id);
- virtual int proc23() const;
+ /**
+ * Process a sentence fragment entry
+ */
virtual int doSentenceEntry(int val1, const int *srcIdP, TTroomScript *roomScript, TTsentence *sentence);
};
diff --git a/engines/titanic/true_talk/succubus_script.cpp b/engines/titanic/true_talk/succubus_script.cpp
index 2a44043fef..07442ed758 100644
--- a/engines/titanic/true_talk/succubus_script.cpp
+++ b/engines/titanic/true_talk/succubus_script.cpp
@@ -89,11 +89,6 @@ int SuccUBusScript::updateState(uint oldId, uint newId, int index) {
return 0;
}
-int SuccUBusScript::proc23() const {
- warning("TODO");
- return 0;
-}
-
int SuccUBusScript::doSentenceEntry(int val1, const int *srcIdP, TTroomScript *roomScript, TTsentence *sentence) {
warning("TODO");
return 0;
diff --git a/engines/titanic/true_talk/succubus_script.h b/engines/titanic/true_talk/succubus_script.h
index 6401df08d7..4710e79a49 100644
--- a/engines/titanic/true_talk/succubus_script.h
+++ b/engines/titanic/true_talk/succubus_script.h
@@ -59,7 +59,9 @@ public:
*/
virtual int updateState(uint oldId, uint newId, int index);
- virtual int proc23() const;
+ /**
+ * Process a sentence fragment entry
+ */
virtual int doSentenceEntry(int val1, const int *srcIdP, TTroomScript *roomScript, TTsentence *sentence);
};