aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Gilbert2016-05-14 00:12:47 -0400
committerPaul Gilbert2016-07-10 16:39:32 -0400
commite5e0e22c56ed6dca6a3471b444720b76255025e0 (patch)
tree11c89642647eca2dc81d15ce417830ded510bcbe
parenteb948946885bc128c01f5c09da0bbdba95d2c472 (diff)
downloadscummvm-rg350-e5e0e22c56ed6dca6a3471b444720b76255025e0.tar.gz
scummvm-rg350-e5e0e22c56ed6dca6a3471b444720b76255025e0.tar.bz2
scummvm-rg350-e5e0e22c56ed6dca6a3471b444720b76255025e0.zip
TITANIC: Beginnings of TTinput class
-rw-r--r--engines/titanic/module.mk1
-rw-r--r--engines/titanic/pet_control/pet_conversations.cpp8
-rw-r--r--engines/titanic/pet_control/pet_conversations.h4
-rw-r--r--engines/titanic/titanic.h2
-rw-r--r--engines/titanic/true_talk/barbot_script.h4
-rw-r--r--engines/titanic/true_talk/bellbot_script.cpp2
-rw-r--r--engines/titanic/true_talk/bellbot_script.h2
-rw-r--r--engines/titanic/true_talk/deskbot_script.cpp2
-rw-r--r--engines/titanic/true_talk/deskbot_script.h2
-rw-r--r--engines/titanic/true_talk/doorbot_script.h4
-rw-r--r--engines/titanic/true_talk/liftbot_script.h4
-rw-r--r--engines/titanic/true_talk/maitred_script.cpp2
-rw-r--r--engines/titanic/true_talk/maitred_script.h2
-rw-r--r--engines/titanic/true_talk/parrot_script.h4
-rw-r--r--engines/titanic/true_talk/script_handler.cpp14
-rw-r--r--engines/titanic/true_talk/script_handler.h7
-rw-r--r--engines/titanic/true_talk/succubus_script.h4
-rw-r--r--engines/titanic/true_talk/title_engine.h6
-rw-r--r--engines/titanic/true_talk/true_talk_manager.cpp26
-rw-r--r--engines/titanic/true_talk/true_talk_manager.h14
-rw-r--r--engines/titanic/true_talk/tt_input.cpp43
-rw-r--r--engines/titanic/true_talk/tt_input.h77
-rw-r--r--engines/titanic/true_talk/tt_npc_script.cpp76
-rw-r--r--engines/titanic/true_talk/tt_npc_script.h14
-rw-r--r--engines/titanic/true_talk/tt_parser.cpp5
-rw-r--r--engines/titanic/true_talk/tt_parser.h7
-rw-r--r--engines/titanic/true_talk/tt_room_script.cpp20
-rw-r--r--engines/titanic/true_talk/tt_room_script.h14
-rw-r--r--engines/titanic/true_talk/tt_script_base.cpp18
-rw-r--r--engines/titanic/true_talk/tt_script_base.h11
-rw-r--r--engines/titanic/true_talk/tt_scripts.cpp30
-rw-r--r--engines/titanic/true_talk/tt_scripts.h38
-rw-r--r--engines/titanic/true_talk/tt_string.h2
-rw-r--r--engines/titanic/true_talk/tt_title_script.cpp2
-rw-r--r--engines/titanic/true_talk/tt_title_script.h2
35 files changed, 313 insertions, 160 deletions
diff --git a/engines/titanic/module.mk b/engines/titanic/module.mk
index d52dc568ff..f8fe8f50b1 100644
--- a/engines/titanic/module.mk
+++ b/engines/titanic/module.mk
@@ -462,6 +462,7 @@ MODULE_OBJS := \
true_talk/true_talk_manager.o \
true_talk/tt_action.o \
true_talk/tt_adj.o \
+ true_talk/tt_input.o \
true_talk/tt_major_word.o \
true_talk/tt_npc_script.o \
true_talk/tt_parser.o \
diff --git a/engines/titanic/pet_control/pet_conversations.cpp b/engines/titanic/pet_control/pet_conversations.cpp
index d2efdcf2e4..4e2d905960 100644
--- a/engines/titanic/pet_control/pet_conversations.cpp
+++ b/engines/titanic/pet_control/pet_conversations.cpp
@@ -432,7 +432,7 @@ void CPetConversations::stopNPCTimer() {
_petControl->stopPetTimer(1);
}
-TTNpcScript *CPetConversations::getNPCScript(const CString &name) const {
+TTnpcScript *CPetConversations::getNPCScript(const CString &name) const {
if (name.empty() || !_petControl)
return nullptr;
CGameManager *gameManager = _petControl->getGameManager();
@@ -517,13 +517,13 @@ void CPetConversations::copyColors(uint tableNum, uint colors[5]) {
}
void CPetConversations::updateDial(uint dialNum, const CString &npcName) {
- TTNpcScript *script = getNPCScript(npcName);
+ TTnpcScript *script = getNPCScript(npcName);
uint newLevel = getDialLevel(dialNum, script);
npcDialChange(dialNum, _npcLevels[dialNum], newLevel);
_npcLevels[dialNum] = newLevel;
}
-uint CPetConversations::getDialLevel(uint dialNum, TTNpcScript *script, int v) {
+uint CPetConversations::getDialLevel(uint dialNum, TTnpcScript *script, int v) {
bool flag = v != 0;
if (!script)
@@ -559,7 +559,7 @@ void CPetConversations::npcDialChange(uint dialNum, int oldLevel, int newLevel)
}
void CPetConversations::resetDials(const CString &name) {
- TTNpcScript *script = getNPCScript(name);
+ TTnpcScript *script = getNPCScript(name);
for (int idx = 0; idx < TOTAL_DIALS; ++idx) {
uint oldLevel = _npcLevels[idx];
diff --git a/engines/titanic/pet_control/pet_conversations.h b/engines/titanic/pet_control/pet_conversations.h
index 4073360a37..b88ddfacd5 100644
--- a/engines/titanic/pet_control/pet_conversations.h
+++ b/engines/titanic/pet_control/pet_conversations.h
@@ -112,7 +112,7 @@ private:
/**
* Get the TrueTalk script associated with a given NPC
*/
- TTNpcScript *getNPCScript(const CString &name) const;
+ TTnpcScript *getNPCScript(const CString &name) const;
/**
* Handle a keypress
@@ -142,7 +142,7 @@ private:
/**
* Get a dial level
*/
- uint getDialLevel(uint dialNum, TTNpcScript *script, int v = 1);
+ uint getDialLevel(uint dialNum, TTnpcScript *script, int v = 1);
/**
* Called when the dial for an NPC is being changed
diff --git a/engines/titanic/titanic.h b/engines/titanic/titanic.h
index 78f19c5ba1..c30ad36ac2 100644
--- a/engines/titanic/titanic.h
+++ b/engines/titanic/titanic.h
@@ -119,7 +119,7 @@ public:
CMainGameWindow *_window;
Common::RandomSource _randomSource;
CScriptHandler *_scriptHandler;
- TTScriptBase *_script;
+ TTscriptBase *_script;
CExeResources _exeResources;
CMovieList _activeMovies;
CString _itemNames[TOTAL_ITEMS];
diff --git a/engines/titanic/true_talk/barbot_script.h b/engines/titanic/true_talk/barbot_script.h
index 18886c299b..ac074e2b94 100644
--- a/engines/titanic/true_talk/barbot_script.h
+++ b/engines/titanic/true_talk/barbot_script.h
@@ -27,11 +27,11 @@
namespace Titanic {
-class BarbotScript : public TTNpcScript {
+class BarbotScript : public TTnpcScript {
public:
BarbotScript(int val1, const char *charClass, int v2,
const char *charName, int v3, int val2, int v4, int v5, int v6, int v7) :
- TTNpcScript(val1, charClass, v2, charName, v3, val2, v4, v5, v6, v7) {}
+ TTnpcScript(val1, charClass, v2, charName, v3, val2, v4, v5, v6, v7) {}
virtual int proc6() const;
virtual void proc7(int v1, int v2);
diff --git a/engines/titanic/true_talk/bellbot_script.cpp b/engines/titanic/true_talk/bellbot_script.cpp
index 2042ca9bab..ccd83d011f 100644
--- a/engines/titanic/true_talk/bellbot_script.cpp
+++ b/engines/titanic/true_talk/bellbot_script.cpp
@@ -28,7 +28,7 @@ namespace Titanic {
BellbotScript::BellbotScript(int val1, const char *charClass, int v2,
const char *charName, int v3, int val2) :
- TTNpcScript(val1, charClass, v2, charName, v3, val2, -1, -1, -1, 0),
+ TTnpcScript(val1, charClass, v2, charName, v3, val2, -1, -1, -1, 0),
_field2D0(0), _field2D4(0), _field2D8(0), _field2DC(0) {
CTrueTalkManager::setFlags(25, 0);
CTrueTalkManager::setFlags(24, 0);
diff --git a/engines/titanic/true_talk/bellbot_script.h b/engines/titanic/true_talk/bellbot_script.h
index ff9f849d09..d759583513 100644
--- a/engines/titanic/true_talk/bellbot_script.h
+++ b/engines/titanic/true_talk/bellbot_script.h
@@ -27,7 +27,7 @@
namespace Titanic {
-class BellbotScript : public TTNpcScript {
+class BellbotScript : public TTnpcScript {
private:
int _array[150];
int _field2D0;
diff --git a/engines/titanic/true_talk/deskbot_script.cpp b/engines/titanic/true_talk/deskbot_script.cpp
index 5844664a4a..65a13b5ce1 100644
--- a/engines/titanic/true_talk/deskbot_script.cpp
+++ b/engines/titanic/true_talk/deskbot_script.cpp
@@ -28,7 +28,7 @@ namespace Titanic {
DeskbotScript::DeskbotScript(int val1, const char *charClass, int v2,
const char *charName, int v3, int val2) :
- TTNpcScript(val1, charClass, v2, charName, v3, val2, -1, -1, -1, 0) {
+ TTnpcScript(val1, charClass, v2, charName, v3, val2, -1, -1, -1, 0) {
CTrueTalkManager::setFlags(18, 0);
CTrueTalkManager::setFlags(19, 0);
CTrueTalkManager::setFlags(20, 0);
diff --git a/engines/titanic/true_talk/deskbot_script.h b/engines/titanic/true_talk/deskbot_script.h
index d001f56075..8db1a80a9c 100644
--- a/engines/titanic/true_talk/deskbot_script.h
+++ b/engines/titanic/true_talk/deskbot_script.h
@@ -27,7 +27,7 @@
namespace Titanic {
-class DeskbotScript : public TTNpcScript {
+class DeskbotScript : public TTnpcScript {
public:
DeskbotScript(int val1, const char *charClass, int v2,
const char *charName, int v3, int val2);
diff --git a/engines/titanic/true_talk/doorbot_script.h b/engines/titanic/true_talk/doorbot_script.h
index b52c802f23..c812d3129a 100644
--- a/engines/titanic/true_talk/doorbot_script.h
+++ b/engines/titanic/true_talk/doorbot_script.h
@@ -27,13 +27,13 @@
namespace Titanic {
-class DoorbotScript : public TTNpcScript {
+class DoorbotScript : public TTnpcScript {
private:
int _array[148];
public:
DoorbotScript(int val1, const char *charClass, int v2,
const char *charName, int v3, int val2, int v4, int v5, int v6, int v7) :
- TTNpcScript(val1, charClass, v2, charName, v3, val2, v4, v5, v6, v7) {}
+ TTnpcScript(val1, charClass, v2, charName, v3, val2, v4, v5, v6, v7) {}
virtual int proc6() const;
virtual void proc7(int v1, int v2);
diff --git a/engines/titanic/true_talk/liftbot_script.h b/engines/titanic/true_talk/liftbot_script.h
index a6c3ed878b..7bb355a666 100644
--- a/engines/titanic/true_talk/liftbot_script.h
+++ b/engines/titanic/true_talk/liftbot_script.h
@@ -27,11 +27,11 @@
namespace Titanic {
-class LiftbotScript : public TTNpcScript {
+class LiftbotScript : public TTnpcScript {
public:
LiftbotScript(int val1, const char *charClass, int v2,
const char *charName, int v3, int val2, int v4, int v5, int v6, int v7) :
- TTNpcScript(val1, charClass, v2, charName, v3, val2, v4, v5, v6, v7) {}
+ TTnpcScript(val1, charClass, v2, charName, v3, val2, v4, v5, v6, v7) {}
virtual int proc6() const;
virtual void proc7(int v1, int v2);
diff --git a/engines/titanic/true_talk/maitred_script.cpp b/engines/titanic/true_talk/maitred_script.cpp
index 47ae96ccd8..35f1efa68c 100644
--- a/engines/titanic/true_talk/maitred_script.cpp
+++ b/engines/titanic/true_talk/maitred_script.cpp
@@ -28,7 +28,7 @@ namespace Titanic {
MaitreDScript::MaitreDScript(int val1, const char *charClass, int v2,
const char *charName, int v3, int val2) :
- TTNpcScript(val1, charClass, v2, charName, v3, val2, -1, -1, -1, 0) {
+ TTnpcScript(val1, charClass, v2, charName, v3, val2, -1, -1, -1, 0) {
CTrueTalkManager::setFlags(9, 1);
CTrueTalkManager::setFlags(10, 0);
CTrueTalkManager::setFlags(11, 0);
diff --git a/engines/titanic/true_talk/maitred_script.h b/engines/titanic/true_talk/maitred_script.h
index 7aaddf971d..bd3e440ea9 100644
--- a/engines/titanic/true_talk/maitred_script.h
+++ b/engines/titanic/true_talk/maitred_script.h
@@ -27,7 +27,7 @@
namespace Titanic {
-class MaitreDScript : public TTNpcScript {
+class MaitreDScript : public TTnpcScript {
public:
MaitreDScript(int val1, const char *charClass, int v2,
const char *charName, int v3, int val2);
diff --git a/engines/titanic/true_talk/parrot_script.h b/engines/titanic/true_talk/parrot_script.h
index 354f3061b3..246ceb4234 100644
--- a/engines/titanic/true_talk/parrot_script.h
+++ b/engines/titanic/true_talk/parrot_script.h
@@ -27,11 +27,11 @@
namespace Titanic {
-class ParrotScript : public TTNpcScript {
+class ParrotScript : public TTnpcScript {
public:
ParrotScript(int val1, const char *charClass, int v2,
const char *charName, int v3, int val2, int v4, int v5, int v6, int v7) :
- TTNpcScript(val1, charClass, v2, charName, v3, val2, v4, v5, v6, v7) {}
+ TTnpcScript(val1, charClass, v2, charName, v3, val2, v4, v5, v6, v7) {}
virtual int proc6() const;
virtual void proc7(int v1, int v2);
diff --git a/engines/titanic/true_talk/script_handler.cpp b/engines/titanic/true_talk/script_handler.cpp
index e923c377da..041d4909f7 100644
--- a/engines/titanic/true_talk/script_handler.cpp
+++ b/engines/titanic/true_talk/script_handler.cpp
@@ -21,6 +21,7 @@
*/
#include "titanic/true_talk/script_handler.h"
+#include "titanic/true_talk/tt_input.h"
#include "titanic/titanic.h"
namespace Titanic {
@@ -41,7 +42,7 @@ CScriptHandler::~CScriptHandler() {
delete _vocab;
}
-ScriptChangedResult CScriptHandler::scriptChanged(TTRoomScript *roomScript, TTNpcScript *npcScript, uint dialogueId) {
+ScriptChangedResult CScriptHandler::scriptChanged(TTroomScript *roomScript, TTnpcScript *npcScript, uint dialogueId) {
if (!npcScript || !roomScript) {
++_inputCtr;
return SCR_5;
@@ -57,12 +58,19 @@ ScriptChangedResult CScriptHandler::scriptChanged(TTRoomScript *roomScript, TTNp
error("TODO: CScriptHandler::scriptChanged");
}
-void CScriptHandler::processInput(TTRoomScript *roomScript, TTNpcScript *npcScript,
+int CScriptHandler::processInput(TTroomScript *roomScript, TTnpcScript *npcScript,
const TTstring &line) {
if (!roomScript || !line.isValid())
- return;
+ return SS_5;
+ TTinput *input = new TTinput(_inputCtr++, line, this, roomScript, npcScript);
+ _parser.processInput(input);
+
+ warning("TODO: CScriptHandler::processInput");
+
// TODO
+ delete input;
+ return SS_VALID;
}
SimpleFile *CScriptHandler::openResource(const CString &name) {
diff --git a/engines/titanic/true_talk/script_handler.h b/engines/titanic/true_talk/script_handler.h
index 2da9371e7d..86cc99cdf9 100644
--- a/engines/titanic/true_talk/script_handler.h
+++ b/engines/titanic/true_talk/script_handler.h
@@ -50,7 +50,7 @@ public:
class CScriptHandler {
private:
CTitleEngine *_owner;
- TTScriptBase *_script;
+ TTscriptBase *_script;
TTvocab *_vocab;
CExeResources &_resources;
int _field10;
@@ -69,9 +69,10 @@ public:
/**
* Set the character and room
*/
- ScriptChangedResult scriptChanged(TTRoomScript *roomScript, TTNpcScript *npcScript, uint dialogueId);
+ ScriptChangedResult scriptChanged(TTroomScript *roomScript,
+ TTnpcScript *npcScript, uint dialogueId);
- void processInput(TTRoomScript *roomScript, TTNpcScript *npcScript,
+ int processInput(TTroomScript *roomScript, TTnpcScript *npcScript,
const TTstring &line);
/**
diff --git a/engines/titanic/true_talk/succubus_script.h b/engines/titanic/true_talk/succubus_script.h
index 0aba07ecd0..6917d0a8b1 100644
--- a/engines/titanic/true_talk/succubus_script.h
+++ b/engines/titanic/true_talk/succubus_script.h
@@ -27,13 +27,13 @@
namespace Titanic {
-class SuccUBusScript : public TTNpcScript {
+class SuccUBusScript : public TTnpcScript {
private:
int _field2D0;
public:
SuccUBusScript(int val1, const char *charClass, int v2,
const char *charName, int v3, int val2, int v4, int v5, int v6, int v7) :
- TTNpcScript(val1, charClass, v2, charName, v3, val2, v4, v5, v6, v7),
+ TTnpcScript(val1, charClass, v2, charName, v3, val2, v4, v5, v6, v7),
_field2D0(0) {}
virtual int proc6() const;
diff --git a/engines/titanic/true_talk/title_engine.h b/engines/titanic/true_talk/title_engine.h
index 87491bf7b6..10c32a7634 100644
--- a/engines/titanic/true_talk/title_engine.h
+++ b/engines/titanic/true_talk/title_engine.h
@@ -42,10 +42,10 @@ public:
class CTitleEngine {
public:
CScriptHandler *_scriptHandler;
- TTScriptBase *_script;
+ TTscriptBase *_script;
public:
CTitleEngine();
- ~CTitleEngine();
+ virtual ~CTitleEngine();
/**
* Setup the engine
@@ -75,7 +75,7 @@ public:
Common::Array<byte> _data;
public:
STtitleEngine();
- ~STtitleEngine();
+ virtual ~STtitleEngine();
void reset();
diff --git a/engines/titanic/true_talk/true_talk_manager.cpp b/engines/titanic/true_talk/true_talk_manager.cpp
index 7743d81509..da3b207434 100644
--- a/engines/titanic/true_talk/true_talk_manager.cpp
+++ b/engines/titanic/true_talk/true_talk_manager.cpp
@@ -179,13 +179,13 @@ void CTrueTalkManager::setFlags(int index, int val) {
}
void CTrueTalkManager::loadNPC(SimpleFile *file, int charId) {
- TTNpcScript *script = _scripts.getNpcScript(charId);
+ TTnpcScript *script = _scripts.getNpcScript(charId);
if (script)
script->load(file);
}
void CTrueTalkManager::saveNPC(SimpleFile *file, int charId) const {
- TTNpcScript *script = _scripts.getNpcScript(charId);
+ TTnpcScript *script = _scripts.getNpcScript(charId);
if (script) {
script->save(file);
file->writeNumber(MKTAG_BE('U', 'R', 'A', 'H'));
@@ -218,8 +218,8 @@ void CTrueTalkManager::update2() {
}
void CTrueTalkManager::start(CTrueTalkNPC *npc, uint id, CViewItem *view) {
- TTNpcScript *npcScript = getNpcScript(npc);
- TTRoomScript *roomScript = getRoomScript();
+ TTnpcScript *npcScript = getNpcScript(npc);
+ TTroomScript *roomScript = getRoomScript();
_titleEngine.reset();
uint charId = npcScript->charId();
@@ -232,7 +232,7 @@ void CTrueTalkManager::start(CTrueTalkNPC *npc, uint id, CViewItem *view) {
setDialogue(npc, roomScript, view);
}
-TTNpcScript *CTrueTalkManager::getTalker(const CString &name) const {
+TTnpcScript *CTrueTalkManager::getTalker(const CString &name) const {
if (name.contains("Doorbot"))
return _scripts.getNpcScript(104);
else if (name.contains("DeskBot"))
@@ -255,9 +255,9 @@ TTNpcScript *CTrueTalkManager::getTalker(const CString &name) const {
return nullptr;
}
-TTNpcScript *CTrueTalkManager::getNpcScript(CTrueTalkNPC *npc) const {
+TTnpcScript *CTrueTalkManager::getNpcScript(CTrueTalkNPC *npc) const {
CString npcName = npc->getName();
- TTNpcScript *script = getTalker(npcName);
+ TTnpcScript *script = getTalker(npcName);
if (!script) {
// Fall back on the default NPC script
@@ -267,9 +267,9 @@ TTNpcScript *CTrueTalkManager::getNpcScript(CTrueTalkNPC *npc) const {
return script;
}
-TTRoomScript *CTrueTalkManager::getRoomScript() const {
+TTroomScript *CTrueTalkManager::getRoomScript() const {
CRoomItem *room = _gameManager->getRoom();
- TTRoomScript *script = nullptr;
+ TTroomScript *script = nullptr;
if (room) {
int scriptId = room->getScriptId();
if (scriptId)
@@ -303,8 +303,8 @@ void CTrueTalkManager::loadAssets(CTrueTalkNPC *npc, int charId) {
}
void CTrueTalkManager::processInput(CTrueTalkNPC *npc, CTextInputMsg *msg, CViewItem *view) {
- TTNpcScript *npcScript = getNpcScript(npc);
- TTRoomScript *roomScript = getRoomScript();
+ TTnpcScript *npcScript = getNpcScript(npc);
+ TTroomScript *roomScript = getRoomScript();
_titleEngine.reset();
if (npcScript && roomScript) {
@@ -320,7 +320,7 @@ void CTrueTalkManager::processInput(CTrueTalkNPC *npc, CTextInputMsg *msg, CView
_currentNPC = nullptr;
}
-void CTrueTalkManager::setDialogue(CTrueTalkNPC *npc, TTRoomScript *roomScript, CViewItem *view) {
+void CTrueTalkManager::setDialogue(CTrueTalkNPC *npc, TTroomScript *roomScript, CViewItem *view) {
// Get the dialog text
CString dialogueStr = readDialogueString();
if (dialogueStr.empty())
@@ -422,7 +422,7 @@ void CTrueTalkManager::triggerNPC(CTrueTalkNPC *npc) {
}
}
-void CTrueTalkManager::setTalker(TTTalker *talker, TTRoomScript *roomScript, CViewItem *view, bool isParrot) {
+void CTrueTalkManager::setTalker(TTTalker *talker, TTroomScript *roomScript, CViewItem *view, bool isParrot) {
warning("TODO: CTrueTalkManager::setTalker");
}
diff --git a/engines/titanic/true_talk/true_talk_manager.h b/engines/titanic/true_talk/true_talk_manager.h
index 071291964e..524f13e1f2 100644
--- a/engines/titanic/true_talk/true_talk_manager.h
+++ b/engines/titanic/true_talk/true_talk_manager.h
@@ -42,7 +42,7 @@ class CTrueTalkManager {
private:
CGameManager *_gameManager;
STtitleEngine _titleEngine;
- TTScripts _scripts;
+ TTscripts _scripts;
int _currentCharId;
CDialogueFile *_dialogueFile;
int _dialogueId;
@@ -72,19 +72,19 @@ private:
/**
* Gets the script associated with an NPC game object
*/
- TTNpcScript *getNpcScript(CTrueTalkNPC *npc) const;
+ TTnpcScript *getNpcScript(CTrueTalkNPC *npc) const;
/**
* Gets the script associated with the current room
*/
- TTRoomScript *getRoomScript() const;
+ TTroomScript *getRoomScript() const;
/**
* Loads assets for the current character, if it's changed
*/
void loadAssets(CTrueTalkNPC *npc, int charId);
- void setDialogue(CTrueTalkNPC *npc, TTRoomScript *roomScript, CViewItem *view);
+ void setDialogue(CTrueTalkNPC *npc, TTroomScript *roomScript, CViewItem *view);
/**
* Read in text from the dialogue file
@@ -101,7 +101,7 @@ private:
*/
void triggerNPC(CTrueTalkNPC *npc);
- void setTalker(TTTalker *talker, TTRoomScript *roomScript, CViewItem *view, bool isParrot);
+ void setTalker(TTTalker *talker, TTroomScript *roomScript, CViewItem *view, bool isParrot);
public:
static int _v1;
static int _v2;
@@ -169,7 +169,7 @@ public:
/**
* Returns the scripts for the manager
*/
- TTScripts &getScripts() { return _scripts; }
+ TTscripts &getScripts() { return _scripts; }
/**
* Remove any completed talkers
@@ -186,7 +186,7 @@ public:
/**
* Return a TrueTalk talker/script
*/
- TTNpcScript *getTalker(const CString &name) const;
+ TTnpcScript *getTalker(const CString &name) const;
/**
* Process player's input
diff --git a/engines/titanic/true_talk/tt_input.cpp b/engines/titanic/true_talk/tt_input.cpp
new file mode 100644
index 0000000000..20fe86319b
--- /dev/null
+++ b/engines/titanic/true_talk/tt_input.cpp
@@ -0,0 +1,43 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "titanic/true_talk/tt_input.h"
+#include "titanic/true_talk/script_handler.h"
+
+namespace Titanic {
+
+TTinputSubBase::TTinputSubBase() : _field0(0), _field4(0), _field8(0),
+ _fieldC(0), _field10(0), _field14(0), _field18(0), _field1C(0),
+ _field20(0), _field24(0) {
+}
+
+/*------------------------------------------------------------------------*/
+
+TTinput::TTinput(int inputCtr, const TTstring &line, CScriptHandler *owner,
+ TTroomScript *roomScript, TTnpcScript *npcScript) :
+ _owner(owner), _field2C(1), _inputCtr(inputCtr), _field34(0),
+ _field38(0), _line(line), _field4C(0), _roomScript(roomScript),
+ _npcScript(npcScript), _field58(0), _field5C(0) {
+ _status = _line.isValid() && _string2.isValid() ? SS_11: SS_VALID;
+}
+
+} // End of namespace Titanic
diff --git a/engines/titanic/true_talk/tt_input.h b/engines/titanic/true_talk/tt_input.h
new file mode 100644
index 0000000000..9cb4b72c23
--- /dev/null
+++ b/engines/titanic/true_talk/tt_input.h
@@ -0,0 +1,77 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef TITANIC_TT_INPUT_H
+#define TITANIC_TT_INPUT_H
+
+#include "titanic/true_talk/tt_npc_script.h"
+#include "titanic/true_talk/tt_room_script.h"
+#include "titanic/true_talk/tt_string.h"
+
+namespace Titanic {
+
+class CScriptHandler;
+
+class TTinputSubBase {
+public:
+ int _field0;
+ int _field4;
+ int _field8;
+ int _fieldC;
+ int _field10;
+ int _field14;
+ int _field18;
+ int _field1C;
+ int _field20;
+ int _field24;
+public:
+ TTinputSubBase();
+};
+
+class TTinputSub : public TTinputSubBase {
+public:
+};
+
+class TTinput {
+private:
+ CScriptHandler *_owner;
+ TTinputSub _sub;
+ int _field2C;
+ int _inputCtr;
+ int _field34;
+ int _field38;
+ TTstring _line;
+ TTstring _string2;
+ int _field4C;
+ TTroomScript *_roomScript;
+ TTnpcScript *_npcScript;
+ int _field58;
+ int _field5C;
+ int _status;
+public:
+ TTinput(int inputCtr, const TTstring &line, CScriptHandler *owner,
+ TTroomScript *roomScript, TTnpcScript *npcScript);
+};
+
+} // End of namespace Titanic
+
+#endif /* TITANIC_TT_INPUT_H */
diff --git a/engines/titanic/true_talk/tt_npc_script.cpp b/engines/titanic/true_talk/tt_npc_script.cpp
index 40a50be030..46b350da39 100644
--- a/engines/titanic/true_talk/tt_npc_script.cpp
+++ b/engines/titanic/true_talk/tt_npc_script.cpp
@@ -26,17 +26,17 @@
namespace Titanic {
-TTNpcScriptBase::TTNpcScriptBase(int charId, const char *charClass, int v2,
+TTnpcScriptBase::TTnpcScriptBase(int charId, const char *charClass, int v2,
const char *charName, int v3, int val2, int v4, int v5, int v6, int v7) :
- TTScriptBase(0, charClass, v2, charName, v3, v4, v5, v6, v7),
+ TTscriptBase(0, charClass, v2, charName, v3, v4, v5, v6, v7),
_charId(charId), _field54(0), _val2(val2) {
}
/*------------------------------------------------------------------------*/
-TTNpcScript::TTNpcScript(int charId, const char *charClass, int v2,
+TTnpcScript::TTnpcScript(int charId, const char *charClass, int v2,
const char *charName, int v3, int val2, int v4, int v5, int v6, int v7) :
- TTNpcScriptBase(charId, charClass, v2, charName, v3, val2, v4, v5, v6, v7),
+ TTnpcScriptBase(charId, charClass, v2, charName, v3, val2, v4, v5, v6, v7),
_subPtr(nullptr), _field60(0), _field64(0), _field68(0),
_field6C(0), _field70(0), _field74(0), _field78(0),
_field7C(0), _field80(0) {
@@ -51,95 +51,95 @@ TTNpcScript::TTNpcScript(int charId, const char *charClass, int v2,
resetFlags();
}
-void TTNpcScript::resetFlags() {
+void TTnpcScript::resetFlags() {
Common::fill(&_array[26], &_array[146], 0);
}
-void TTNpcScript::randomizeFlags() {
+void TTnpcScript::randomizeFlags() {
warning("TODO");
}
-void TTNpcScript::proc4(int v) {
+void TTnpcScript::proc4(int v) {
warning("TODO");
}
-int TTNpcScript::proc6() const {
+int TTnpcScript::proc6() const {
return 1;
}
-void TTNpcScript::proc7(int v1, int v2) {
+void TTnpcScript::proc7(int v1, int v2) {
warning("TODO");
}
-int TTNpcScript::proc8() const {
+int TTnpcScript::proc8() const {
return 0;
}
-int TTNpcScript::proc9() const {
+int TTnpcScript::proc9() const {
return 2;
}
-int TTNpcScript::proc11() const {
+int TTnpcScript::proc11() const {
return 2;
}
-int TTNpcScript::proc12() const {
+int TTnpcScript::proc12() const {
return 1;
}
-bool TTNpcScript::proc13() const {
+bool TTnpcScript::proc13() const {
warning("TODO");
return true;
}
-void TTNpcScript::proc14(int v) {
+void TTnpcScript::proc14(int v) {
warning("TODO");
}
-int TTNpcScript::proc15() const {
+int TTnpcScript::proc15() const {
return 0;
}
-bool TTNpcScript::proc16() const {
+bool TTnpcScript::proc16() const {
return true;
}
-bool TTNpcScript::proc17() const {
+bool TTnpcScript::proc17() const {
return true;
}
-bool TTNpcScript::proc18() const {
+bool TTnpcScript::proc18() const {
return true;
}
-void TTNpcScript::proc19(int v) {
+void TTnpcScript::proc19(int v) {
warning("TODO");
}
-void TTNpcScript::proc20(int v) {
+void TTnpcScript::proc20(int v) {
warning("TODO");
}
-int TTNpcScript::proc21(int v) {
+int TTnpcScript::proc21(int v) {
return v;
}
-int TTNpcScript::proc22() const {
+int TTnpcScript::proc22() const {
return 0;
}
-int TTNpcScript::proc23() const {
+int TTnpcScript::proc23() const {
return 0;
}
-int TTNpcScript::proc25() const {
+int TTnpcScript::proc25() const {
return 0;
}
-void TTNpcScript::proc26() {
+void TTnpcScript::proc26() {
}
-void TTNpcScript::save(SimpleFile *file) {
+void TTnpcScript::save(SimpleFile *file) {
file->writeNumber(charId());
saveBody(file);
@@ -154,7 +154,7 @@ void TTNpcScript::save(SimpleFile *file) {
file->writeNumber(_array[idx]);
}
-void TTNpcScript::load(SimpleFile *file) {
+void TTnpcScript::load(SimpleFile *file) {
loadBody(file);
int count = file->readNumber();
@@ -174,7 +174,7 @@ void TTNpcScript::load(SimpleFile *file) {
}
}
-void TTNpcScript::saveBody(SimpleFile *file) {
+void TTnpcScript::saveBody(SimpleFile *file) {
int v = proc31();
file->writeNumber(v);
@@ -183,7 +183,7 @@ void TTNpcScript::saveBody(SimpleFile *file) {
}
}
-void TTNpcScript::loadBody(SimpleFile *file) {
+void TTnpcScript::loadBody(SimpleFile *file) {
int count = file->readNumber();
preLoad();
@@ -196,38 +196,38 @@ void TTNpcScript::loadBody(SimpleFile *file) {
}
}
-int TTNpcScript::proc31() {
+int TTnpcScript::proc31() {
warning("TODO");
return 0;
}
-void TTNpcScript::proc32() {
+void TTnpcScript::proc32() {
warning("TODO");
}
-void TTNpcScript::proc33(int v1, int v2) {
+void TTnpcScript::proc33(int v1, int v2) {
warning("TODO");
}
-int TTNpcScript::proc34() {
+int TTnpcScript::proc34() {
warning("TODO");
return 0;
}
-int TTNpcScript::getDialLevel(uint dialNum, bool flag) {
+int TTnpcScript::getDialLevel(uint dialNum, bool flag) {
warning("TODO");
return 0;
}
-int TTNpcScript::proc36() const {
+int TTnpcScript::proc36() const {
return 0;
}
-int TTNpcScript::proc37() const {
+int TTnpcScript::proc37() const {
return 0;
}
-void TTNpcScript::preLoad() {
+void TTnpcScript::preLoad() {
if (_subPtr) {
error("TODO");
}
diff --git a/engines/titanic/true_talk/tt_npc_script.h b/engines/titanic/true_talk/tt_npc_script.h
index f3df956850..58c1d346f5 100644
--- a/engines/titanic/true_talk/tt_npc_script.h
+++ b/engines/titanic/true_talk/tt_npc_script.h
@@ -29,14 +29,14 @@
namespace Titanic {
-class TTNpcScriptBase : public TTScriptBase {
+class TTnpcScriptBase : public TTscriptBase {
protected:
int _field54;
int _val2;
public:
int _charId;
public:
- TTNpcScriptBase(int charId, const char *charClass, int v2,
+ TTnpcScriptBase(int charId, const char *charClass, int v2,
const char *charName, int v3, int val2, int v4,
int v5, int v6, int v7);
@@ -48,7 +48,7 @@ public:
/**
* Called when the script/id changes
*/
- virtual ScriptChangedResult scriptChanged(TTScriptBase *roomScript, uint id) = 0;
+ virtual ScriptChangedResult scriptChanged(TTscriptBase *roomScript, uint id) = 0;
virtual int proc11() const = 0;
virtual int proc12() const = 0;
@@ -56,7 +56,7 @@ public:
int charId() const { return _charId; }
};
-class TTNpcScript : public TTNpcScriptBase {
+class TTnpcScript : public TTnpcScriptBase {
protected:
byte *_subPtr;
int _field60;
@@ -74,7 +74,7 @@ protected:
void randomizeFlags();
public:
- TTNpcScript(int charId, const char *charClass, int v2,
+ TTnpcScript(int charId, const char *charClass, int v2,
const char *charName, int v3, int val2, int v4,
int v5, int v6, int v7);
@@ -87,7 +87,7 @@ public:
/**
* Called when the script/id changes
*/
- virtual ScriptChangedResult scriptChanged(TTScriptBase *roomScript, uint id) {
+ virtual ScriptChangedResult scriptChanged(TTscriptBase *roomScript, uint id) {
return SCR_2;
}
@@ -129,7 +129,7 @@ public:
/**
* Called with the script and id changes
*/
- ScriptChangedResult notifyScript(TTScriptBase *npcScript, int id) {
+ ScriptChangedResult notifyScript(TTscriptBase *npcScript, int id) {
return scriptChanged(npcScript, id);
}
};
diff --git a/engines/titanic/true_talk/tt_parser.cpp b/engines/titanic/true_talk/tt_parser.cpp
index ad40cbcad4..5bae72ce33 100644
--- a/engines/titanic/true_talk/tt_parser.cpp
+++ b/engines/titanic/true_talk/tt_parser.cpp
@@ -22,7 +22,12 @@
#include "titanic/true_talk/tt_parser.h"
#include "titanic/true_talk/script_handler.h"
+#include "titanic/true_talk/tt_input.h"
namespace Titanic {
+void TTparser::processInput(TTinput *input) {
+ warning("TODO: TTparser::processInput");
+}
+
} // End of namespace Titanic
diff --git a/engines/titanic/true_talk/tt_parser.h b/engines/titanic/true_talk/tt_parser.h
index 767406adb1..89977067cb 100644
--- a/engines/titanic/true_talk/tt_parser.h
+++ b/engines/titanic/true_talk/tt_parser.h
@@ -23,6 +23,8 @@
#ifndef TITANIC_TT_PARSER_H
#define TITANIC_TT_PARSER_H
+#include "titanic/true_talk/tt_input.h"
+
namespace Titanic {
class CScriptHandler;
@@ -39,6 +41,11 @@ public:
public:
TTparser(CScriptHandler *owner) : _owner(owner), _field4(0), _field8(0),
_fieldC(0), _field10(0), _field14(0), _field18(0) {}
+
+ /**
+ * Gets passed a newly created input wrapper during conversation text processing
+ */
+ void processInput(TTinput *input);
};
} // End of namespace Titanic
diff --git a/engines/titanic/true_talk/tt_room_script.cpp b/engines/titanic/true_talk/tt_room_script.cpp
index 2ade0495cf..62f60f428c 100644
--- a/engines/titanic/true_talk/tt_room_script.cpp
+++ b/engines/titanic/true_talk/tt_room_script.cpp
@@ -25,42 +25,42 @@
namespace Titanic {
-TTRoomScriptBase::TTRoomScriptBase(int scriptId,
+TTroomScriptBase::TTroomScriptBase(int scriptId,
const char *charClass, const char *charName,
int v3, int v4, int v5, int v6, int v2, int v7) : _scriptId(scriptId),
- TTScriptBase(3, charClass, v2, charName, v3, v4, v5, v6, v7) {
+ TTscriptBase(3, charClass, v2, charName, v3, v4, v5, v6, v7) {
}
/*------------------------------------------------------------------------*/
-TTRoomScript::TTRoomScript(int scriptId) :
- TTRoomScriptBase(scriptId, "", "", 0, -1, -1, -1, 0, 0) {
+TTroomScript::TTroomScript(int scriptId) :
+ TTroomScriptBase(scriptId, "", "", 0, -1, -1, -1, 0, 0) {
}
-void TTRoomScript::proc6() {
+void TTroomScript::proc6() {
warning("TODO");
}
-void TTRoomScript::proc7() {
+void TTroomScript::proc7() {
warning("TODO");
}
-void TTRoomScript::proc8() {
+void TTroomScript::proc8() {
warning("TODO");
}
-void TTRoomScript::proc9() {
+void TTroomScript::proc9() {
warning("TODO");
}
-ScriptChangedResult TTRoomScript::scriptChanged(TTScriptBase *npcScript, int id) {
+ScriptChangedResult TTroomScript::scriptChanged(TTscriptBase *npcScript, int id) {
if (id == 1)
_field54 = 1;
return SCR_1;
}
-void TTRoomScript::proc11() {
+void TTroomScript::proc11() {
warning("TODO");
}
diff --git a/engines/titanic/true_talk/tt_room_script.h b/engines/titanic/true_talk/tt_room_script.h
index 30133b24da..7f72573dec 100644
--- a/engines/titanic/true_talk/tt_room_script.h
+++ b/engines/titanic/true_talk/tt_room_script.h
@@ -27,11 +27,11 @@
namespace Titanic {
-class TTRoomScriptBase : public TTScriptBase {
+class TTroomScriptBase : public TTscriptBase {
public:
int _scriptId;
public:
- TTRoomScriptBase(int scriptId, const char *charClass, const char *charName,
+ TTroomScriptBase(int scriptId, const char *charClass, const char *charName,
int v3, int v4, int v5, int v6, int v2, int v7);
virtual void proc6() = 0;
@@ -42,17 +42,17 @@ public:
/**
* Called when the script changes
*/
- virtual ScriptChangedResult scriptChanged(TTScriptBase *npcScript, int id) = 0;
+ virtual ScriptChangedResult scriptChanged(TTscriptBase *npcScript, int id) = 0;
virtual void proc11() = 0;
};
-class TTRoomScript : public TTRoomScriptBase {
+class TTroomScript : public TTroomScriptBase {
private:
int _field54;
public:
- TTRoomScript(int scriptId);
+ TTroomScript(int scriptId);
virtual void proc6();
virtual void proc7();
@@ -62,14 +62,14 @@ public:
/**
* Called when the script changes
*/
- virtual ScriptChangedResult scriptChanged(TTScriptBase *npcScript, int id);
+ virtual ScriptChangedResult scriptChanged(TTscriptBase *npcScript, int id);
virtual void proc11();
/**
* Called with the new script and id
*/
- ScriptChangedResult notifyScript(TTScriptBase *npcScript, int id) {
+ ScriptChangedResult notifyScript(TTscriptBase *npcScript, int id) {
return scriptChanged(npcScript, id);
}
};
diff --git a/engines/titanic/true_talk/tt_script_base.cpp b/engines/titanic/true_talk/tt_script_base.cpp
index 1430f031ce..e937f0ac64 100644
--- a/engines/titanic/true_talk/tt_script_base.cpp
+++ b/engines/titanic/true_talk/tt_script_base.cpp
@@ -25,7 +25,7 @@
namespace Titanic {
-TTScriptBase::TTScriptBase(int v1, const char *charClass, int v2,
+TTscriptBase::TTscriptBase(int v1, const char *charClass, int v2,
const char *charName, int v3, int v4, int v5, int v6, int v7) :
_charName(charName), _charClass(charClass),
_field4(0), _field8(0), _fieldC(0),
@@ -50,13 +50,13 @@ TTScriptBase::TTScriptBase(int v1, const char *charClass, int v2,
reset();
}
-bool TTScriptBase::areNamesValid() {
+bool TTscriptBase::areNamesValid() {
bool result = !_charName.isValid() && !_charClass.isValid();
_status = result ? 0 : 11;
return result;
}
-void TTScriptBase::reset() {
+void TTscriptBase::reset() {
_field4 = 0;
_field8 = 4;
_fieldC = 0;
@@ -73,19 +73,23 @@ void TTScriptBase::reset() {
_field48 = 0;
}
-void TTScriptBase::proc2(int v) {
+void TTscriptBase::processInput(TTinput *input) {
+ warning("TODO: TTscriptBase::processInput");
+}
+
+void TTscriptBase::proc2(int v) {
warning("TODO");
}
-void TTScriptBase::proc3(int v) {
+void TTscriptBase::proc3(int v) {
warning("TODO");
}
-void TTScriptBase::proc4(int v) {
+void TTscriptBase::proc4(int v) {
warning("TODO");
}
-void TTScriptBase::proc5() {
+void TTscriptBase::proc5() {
warning("TODO");
}
diff --git a/engines/titanic/true_talk/tt_script_base.h b/engines/titanic/true_talk/tt_script_base.h
index dc0db2ceb8..0aac1ed2e7 100644
--- a/engines/titanic/true_talk/tt_script_base.h
+++ b/engines/titanic/true_talk/tt_script_base.h
@@ -31,7 +31,9 @@ enum ScriptChangedResult {
SCR_1 = 1, SCR_2 = 2, SCR_3 = 3, SCR_4 = 4, SCR_5 = 5
};
-class TTScriptBase {
+class TTinput;
+
+class TTscriptBase {
private:
void reset();
protected:
@@ -52,13 +54,18 @@ protected:
int _field48;
int _status;
public:
- TTScriptBase(int v1, const char *charClass, int v2, const char *charName,
+ TTscriptBase(int v1, const char *charClass, int v2, const char *charName,
int v3, int v4, int v5, int v6, int v7);
bool areNamesValid();
int getStatus() const { return _status; }
+ /**
+ * Gets passed a newly created input wrapper during conversation text processing
+ */
+ void processInput(TTinput *input);
+
virtual void proc2(int v);
virtual void proc3(int v);
diff --git a/engines/titanic/true_talk/tt_scripts.cpp b/engines/titanic/true_talk/tt_scripts.cpp
index 96daf76827..fbdf52fdc0 100644
--- a/engines/titanic/true_talk/tt_scripts.cpp
+++ b/engines/titanic/true_talk/tt_scripts.cpp
@@ -33,9 +33,9 @@
namespace Titanic {
-TTNpcScript *TTNpcScriptList::findById(int charId) const {
- for (TTNpcScriptList::const_iterator i = begin(); i != end(); ++i) {
- const TTNpcScriptListItem *item = *i;
+TTnpcScript *TTnpcScriptList::findById(int charId) const {
+ for (TTnpcScriptList::const_iterator i = begin(); i != end(); ++i) {
+ const TTnpcScriptListItem *item = *i;
if (item->_npcScript->_charId == charId)
return item->_npcScript;
}
@@ -45,9 +45,9 @@ TTNpcScript *TTNpcScriptList::findById(int charId) const {
/*------------------------------------------------------------------------*/
-TTRoomScript *TTRoomScriptList::findById(int scriptId) const {
- for (TTRoomScriptList::const_iterator i = begin(); i != end(); ++i) {
- const TTRoomScriptListItem *item = *i;
+TTroomScript *TTroomScriptList::findById(int scriptId) const {
+ for (TTroomScriptList::const_iterator i = begin(); i != end(); ++i) {
+ const TTroomScriptListItem *item = *i;
if (item->_item->_scriptId == scriptId)
return item->_item;
}
@@ -57,11 +57,11 @@ TTRoomScript *TTRoomScriptList::findById(int scriptId) const {
/*------------------------------------------------------------------------*/
-TTScripts::TTScripts(CTitleEngine *titleEngine) :
+TTscripts::TTscripts(CTitleEngine *titleEngine) :
_titleEngine(titleEngine), _field24(0), _field28(0) {
// Load room scripts
for (int scriptNum = 100; scriptNum < 133; ++scriptNum)
- addScript(new TTRoomScript(scriptNum));
+ addScript(new TTroomScript(scriptNum));
// Load npc scripts
addScript(new DoorbotScript(104, "Doorbot", 0, "Fentible", 11, 1, -1, -1, -1, 0), 100);
@@ -74,25 +74,25 @@ TTScripts::TTScripts(CTitleEngine *titleEngine) :
addScript(new SuccUBusScript(111, "Succubus", 0, "Shorbert", 9, 1, -1, -1, -1, 0), 110);
}
-void TTScripts::addScript(TTNpcScript *script, int scriptId) {
+void TTscripts::addScript(TTnpcScript *script, int scriptId) {
script->proc13();
// Find the room script this is associated with
- TTRoomScript *roomScript = getRoomScript(scriptId);
+ TTroomScript *roomScript = getRoomScript(scriptId);
assert(roomScript);
- _npcScripts.push_back(new TTNpcScriptListItem(script, roomScript));
+ _npcScripts.push_back(new TTnpcScriptListItem(script, roomScript));
}
-void TTScripts::addScript(TTRoomScript *script) {
- _roomScripts.push_back(new TTRoomScriptListItem(script));
+void TTscripts::addScript(TTroomScript *script) {
+ _roomScripts.push_back(new TTroomScriptListItem(script));
}
-TTRoomScript *TTScripts::getRoomScript(int scriptId) const {
+TTroomScript *TTscripts::getRoomScript(int scriptId) const {
return _roomScripts.findById(scriptId);
}
-TTNpcScript *TTScripts::getNpcScript(int charId) const {
+TTnpcScript *TTscripts::getNpcScript(int charId) const {
return _npcScripts.findById(charId);
}
diff --git a/engines/titanic/true_talk/tt_scripts.h b/engines/titanic/true_talk/tt_scripts.h
index 8dd2e9305d..afcc2c3aef 100644
--- a/engines/titanic/true_talk/tt_scripts.h
+++ b/engines/titanic/true_talk/tt_scripts.h
@@ -31,33 +31,33 @@ namespace Titanic {
class CTitleEngine;
-class TTNpcScriptListItem : public ListItem {
+class TTnpcScriptListItem : public ListItem {
public:
- TTNpcScript *_npcScript;
- TTRoomScript *_roomScript;
+ TTnpcScript *_npcScript;
+ TTroomScript *_roomScript;
public:
- TTNpcScriptListItem() : _npcScript(nullptr), _roomScript(nullptr) {}
- TTNpcScriptListItem(TTNpcScript *script, TTRoomScript *roomScript) :
+ TTnpcScriptListItem() : _npcScript(nullptr), _roomScript(nullptr) {}
+ TTnpcScriptListItem(TTnpcScript *script, TTroomScript *roomScript) :
_npcScript(script), _roomScript(roomScript) {}
- virtual ~TTNpcScriptListItem() { delete _npcScript; }
+ virtual ~TTnpcScriptListItem() { delete _npcScript; }
};
-PTR_LIST_ITEM(TTRoomScript);
+PTR_LIST_ITEM(TTroomScript);
-class TTNpcScriptList : public List<TTNpcScriptListItem> {
+class TTnpcScriptList : public List<TTnpcScriptListItem> {
public:
- TTNpcScript *findById(int charId) const;
+ TTnpcScript *findById(int charId) const;
};
-class TTRoomScriptList : public List<TTRoomScriptListItem> {
+class TTroomScriptList : public List<TTroomScriptListItem> {
public:
- TTRoomScript *findById(int scriptId) const;
+ TTroomScript *findById(int scriptId) const;
};
-class TTScripts {
+class TTscripts {
private:
- TTNpcScriptList _npcScripts;
- TTRoomScriptList _roomScripts;
+ TTnpcScriptList _npcScripts;
+ TTroomScriptList _roomScripts;
CTitleEngine *_titleEngine;
int _field24;
int _field28;
@@ -65,24 +65,24 @@ private:
/**
* Add a named script to the named scripts list
*/
- void addScript(TTNpcScript *script, int charId);
+ void addScript(TTnpcScript *script, int charId);
/**
* Add an unnamed script to the unnamed scripts list
*/
- void addScript(TTRoomScript *script);
+ void addScript(TTroomScript *script);
public:
- TTScripts(CTitleEngine *titleEngine);
+ TTscripts(CTitleEngine *titleEngine);
/**
* Return a pointer to the specified room script
*/
- TTRoomScript *getRoomScript(int scriptId) const;
+ TTroomScript *getRoomScript(int scriptId) const;
/**
* Return a pointer to the specified character script
*/
- TTNpcScript *getNpcScript(int charId) const;
+ TTnpcScript *getNpcScript(int charId) const;
};
} // End of namespace Titanic
diff --git a/engines/titanic/true_talk/tt_string.h b/engines/titanic/true_talk/tt_string.h
index 0256f1022f..1a95b4e4be 100644
--- a/engines/titanic/true_talk/tt_string.h
+++ b/engines/titanic/true_talk/tt_string.h
@@ -38,7 +38,7 @@ struct TTstringData {
TTstringData(const CString &str) : _string(str), _referenceCount(1) {}
};
-enum TTstringStatus { SS_VALID = 0, SS_5 = 5, SS_7 = 7, SS_8 = 8, SS_13 = 13 };
+enum TTstringStatus { SS_VALID = 0, SS_5 = 5, SS_7 = 7, SS_8 = 8, SS_11 = 11, SS_13 = 13 };
class TTstring {
private:
diff --git a/engines/titanic/true_talk/tt_title_script.cpp b/engines/titanic/true_talk/tt_title_script.cpp
index af784e3352..85b56d0e1e 100644
--- a/engines/titanic/true_talk/tt_title_script.cpp
+++ b/engines/titanic/true_talk/tt_title_script.cpp
@@ -24,7 +24,7 @@
namespace Titanic {
-TTTitleScript::TTTitleScript() : TTScriptBase(1, "", 0, "", 0, -1, -1, -1, 0),
+TTTitleScript::TTTitleScript() : TTscriptBase(1, "", 0, "", 0, -1, -1, -1, 0),
_field50(0), _field5C(-1), _field60(0) {
}
diff --git a/engines/titanic/true_talk/tt_title_script.h b/engines/titanic/true_talk/tt_title_script.h
index a1efd11270..f02e591c54 100644
--- a/engines/titanic/true_talk/tt_title_script.h
+++ b/engines/titanic/true_talk/tt_title_script.h
@@ -28,7 +28,7 @@
namespace Titanic {
-class TTTitleScript : public TTScriptBase {
+class TTTitleScript : public TTscriptBase {
private:
int _field50;
TTstring _string1;