aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Gilbert2016-05-21 22:03:48 -0400
committerPaul Gilbert2016-07-15 19:14:02 -0400
commit006c98cfa425a99aff2e7fa9f2ae426fa8992f51 (patch)
treee8640ecf57b9add4a7e76e53984336f112bd26ae
parent59796e03e4d2d366a3a6f4d00738fe9795b4fce3 (diff)
downloadscummvm-rg350-006c98cfa425a99aff2e7fa9f2ae426fa8992f51.tar.gz
scummvm-rg350-006c98cfa425a99aff2e7fa9f2ae426fa8992f51.tar.bz2
scummvm-rg350-006c98cfa425a99aff2e7fa9f2ae426fa8992f51.zip
TITANIC: Added ParserAction enum
-rw-r--r--engines/titanic/true_talk/tt_parser.cpp28
-rw-r--r--engines/titanic/true_talk/tt_parser.h10
2 files changed, 34 insertions, 4 deletions
diff --git a/engines/titanic/true_talk/tt_parser.cpp b/engines/titanic/true_talk/tt_parser.cpp
index 1a2944d890..9b56aef558 100644
--- a/engines/titanic/true_talk/tt_parser.cpp
+++ b/engines/titanic/true_talk/tt_parser.cpp
@@ -770,7 +770,7 @@ int TTparser::considerRequests(TTword *word) {
flag = true;
break;
- case 2:
+ case EXPECT_THING:
if (!word->_wordClass) {
word->_wordClass = WC_THING;
addToConceptList(word);
@@ -780,11 +780,35 @@ int TTparser::considerRequests(TTword *word) {
flag = true;
break;
- case 3:
+ case OBJECT_IS_TO:
// TODO
//flag = _sentenceSub
break;
+ case SEEK_ACTOR:
+ case SEEK_OBJECT:
+ case SEEK_OBJECT_OVERRIDE:
+ case SEEK_TO:
+ case SEEK_FROM:
+ case SEEK_TO_OVERRIDE:
+ case SEEK_FROM_OVERRIDE:
+ case SEEK_LOCATION:
+ case SEEK_OWNERSHIP:
+ case SEEK_STATE:
+ case SEEK_MODIFIERS:
+ case SEEK_NEW_FRAME:
+ case SEEK_STATE_OBJECT:
+ case SET_ACTION:
+ case SET_COLOR:
+ case ACTOR_IS_TO:
+ case ACTOR_IS_FROM:
+ case ACTOR_IS_OBJECT:
+ case STATE_IDENTITY:
+ case WORD_TYPE_IS_SENTENCE_TYPE:
+ case COMPLEX_VERB:
+ // TODO
+ break;
+
default:
break;
}
diff --git a/engines/titanic/true_talk/tt_parser.h b/engines/titanic/true_talk/tt_parser.h
index 6b490f8228..aba034416c 100644
--- a/engines/titanic/true_talk/tt_parser.h
+++ b/engines/titanic/true_talk/tt_parser.h
@@ -32,8 +32,14 @@ namespace Titanic {
enum NumberFlag { NF_1 = 1, NF_2 = 2, NF_4 = 4, NF_8 = 8, NF_10 = 0x10 };
-enum ParserTag {
- CHECK_COMMAND_FORM = 1
+enum ParserAction {
+ NO_ACTION = 0, CHECK_COMMAND_FORM, EXPECT_THING, OBJECT_IS_TO,
+ SEEK_ACTOR, SEEK_OBJECT, SEEK_OBJECT_OVERRIDE, SEEK_TO,
+ SEEK_FROM, SEEK_TO_OVERRIDE, SEEK_FROM_OVERRIDE, SEEK_LOCATION,
+ SEEK_OWNERSHIP, SEEK_STATE, SEEK_MODIFIERS, SEEK_NEW_FRAME,
+ SEEK_STATE_OBJECT, SET_ACTION, SET_COLOR, ACTOR_IS_TO,
+ ACTOR_IS_FROM, ACTOR_IS_OBJECT, STATE_IDENTITY,
+ WORD_TYPE_IS_SENTENCE_TYPE, COMPLEX_VERB
};
class CScriptHandler;