From 006c98cfa425a99aff2e7fa9f2ae426fa8992f51 Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Sat, 21 May 2016 22:03:48 -0400 Subject: TITANIC: Added ParserAction enum --- engines/titanic/true_talk/tt_parser.cpp | 28 ++++++++++++++++++++++++++-- engines/titanic/true_talk/tt_parser.h | 10 ++++++++-- 2 files changed, 34 insertions(+), 4 deletions(-) (limited to 'engines/titanic') 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; -- cgit v1.2.3