diff options
Diffstat (limited to 'engines')
-rw-r--r-- | engines/titanic/game_manager.h | 2 | ||||
-rw-r--r-- | engines/titanic/module.mk | 9 | ||||
-rw-r--r-- | engines/titanic/true_talk/true_talk_manager.cpp (renamed from engines/titanic/npcs/true_talk_manager.cpp) | 2 | ||||
-rw-r--r-- | engines/titanic/true_talk/true_talk_manager.h (renamed from engines/titanic/npcs/true_talk_manager.h) | 2 | ||||
-rw-r--r-- | engines/titanic/true_talk/tt_named_script.cpp | 171 | ||||
-rw-r--r-- | engines/titanic/true_talk/tt_named_script.h | 104 | ||||
-rw-r--r-- | engines/titanic/true_talk/tt_script_base.cpp | 92 | ||||
-rw-r--r-- | engines/titanic/true_talk/tt_script_base.h | 70 | ||||
-rw-r--r-- | engines/titanic/true_talk/tt_scripts.cpp | 28 | ||||
-rw-r--r-- | engines/titanic/true_talk/tt_scripts.h | 35 | ||||
-rw-r--r-- | engines/titanic/true_talk/tt_string.cpp | 27 | ||||
-rw-r--r-- | engines/titanic/true_talk/tt_string.h | 43 | ||||
-rw-r--r-- | engines/titanic/true_talk/tt_unnamed_script.cpp | 64 | ||||
-rw-r--r-- | engines/titanic/true_talk/tt_unnamed_script.h | 62 |
14 files changed, 707 insertions, 4 deletions
diff --git a/engines/titanic/game_manager.h b/engines/titanic/game_manager.h index 200f34fd5c..37a4a415fb 100644 --- a/engines/titanic/game_manager.h +++ b/engines/titanic/game_manager.h @@ -29,7 +29,7 @@ #include "titanic/input_translator.h" #include "titanic/simple_file.h" #include "titanic/video_surface.h" -#include "titanic/npcs/true_talk_manager.h" +#include "titanic/true_talk/true_talk_manager.h" #include "titanic/sound/music_room.h" #include "titanic/sound/sound.h" diff --git a/engines/titanic/module.mk b/engines/titanic/module.mk index b150ba2fb2..8a248d1595 100644 --- a/engines/titanic/module.mk +++ b/engines/titanic/module.mk @@ -368,7 +368,6 @@ MODULE_OBJS := \ npcs/succubus.o \ npcs/summon_bots.o \ npcs/titania.o \ - npcs/true_talk_manager.o \ npcs/true_talk_npc.o \ pet_control/pet_control.o \ pet_control/pet_control_list_item.o \ @@ -424,7 +423,13 @@ MODULE_OBJS := \ star_control/star_control_sub12.o \ star_control/star_control_sub13.o \ star_control/star_control_sub14.o \ - star_control/star_control_sub15.o + star_control/star_control_sub15.o \ + true_talk/true_talk_manager.o \ + true_talk/tt_script_base.o \ + true_talk/tt_unnamed_script.o \ + true_talk/tt_named_script.o \ + true_talk/tt_scripts.o \ + true_talk/tt_string.o # This module can be built as a plugin ifeq ($(ENABLE_TITANIC), DYNAMIC_PLUGIN) diff --git a/engines/titanic/npcs/true_talk_manager.cpp b/engines/titanic/true_talk/true_talk_manager.cpp index dbf97128a7..aeaa677371 100644 --- a/engines/titanic/npcs/true_talk_manager.cpp +++ b/engines/titanic/true_talk/true_talk_manager.cpp @@ -20,7 +20,7 @@ * */ -#include "titanic/npcs/true_talk_manager.h" +#include "titanic/true_talk/true_talk_manager.h" namespace Titanic { diff --git a/engines/titanic/npcs/true_talk_manager.h b/engines/titanic/true_talk/true_talk_manager.h index d491a61dab..b61bc3d6ad 100644 --- a/engines/titanic/npcs/true_talk_manager.h +++ b/engines/titanic/true_talk/true_talk_manager.h @@ -24,6 +24,7 @@ #define TITANIC_TRUE_TALK_MANAGER_H #include "titanic/simple_file.h" +#include "titanic/true_talk/tt_scripts.h" namespace Titanic { @@ -46,6 +47,7 @@ public: static int _v11[41]; public: CGameManager *_gameManager; + TTScripts _scripts; public: CTrueTalkManager(CGameManager *owner); diff --git a/engines/titanic/true_talk/tt_named_script.cpp b/engines/titanic/true_talk/tt_named_script.cpp new file mode 100644 index 0000000000..6f12012b10 --- /dev/null +++ b/engines/titanic/true_talk/tt_named_script.cpp @@ -0,0 +1,171 @@ +/* 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 "common/textconsole.h" +#include "titanic/true_talk/tt_named_script.h" + +namespace Titanic { + +TTNamedScriptBase::TTNamedScriptBase(int val1, 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), + _val1(val1), _field54(0), _val2(val2) { +} + +/*------------------------------------------------------------------------*/ + +TTNamedScript::TTNamedScript(int val1, const char *charClass, int v2, + const char *charName, int v3, int val2, int v4, int v5, int v6, int v7) : + TTNamedScriptBase(val1, charClass, v2, charName, v3, val2, v4, v5, v6, v7) { + +} + +void TTNamedScript::proc4(int v) { + warning("TODO"); +} + +int TTNamedScript::proc6() const { + return 1; +} + +void TTNamedScript::proc7(int v1, int v2) { + warning("TODO"); +} + +int TTNamedScript::proc8() const { + return 0; +} + +int TTNamedScript::proc9() const { + return 2; +} + +int TTNamedScript::proc10() const { + return 2; +} + +int TTNamedScript::proc11() const { + return 2; +} + +int TTNamedScript::proc12() const { + return 1; +} + +void TTNamedScript::proc13() const { + warning("TODO"); +} + +void TTNamedScript::proc14(int v) { + warning("TODO"); +} + +int TTNamedScript::proc15() const { + return 0; +} + +int TTNamedScript::proc16() const { + return 1; +} + +int TTNamedScript::proc17() const { + return 1; +} + +int TTNamedScript::proc18() const { + return 1; +} + +void TTNamedScript::proc19(int v) { + warning("TODO"); +} + +void TTNamedScript::proc20(int v) { + warning("TODO"); +} + +int TTNamedScript::proc21(int v) { + return v; +} + +int TTNamedScript::proc22() const { + return 0; +} + +int TTNamedScript::proc23() const { + return 0; +} + +int TTNamedScript::proc25() const { + return 0; +} + +void TTNamedScript::proc26() { +} + +void TTNamedScript::save1(SimpleFile *file) { + error("TODO"); +} + +void TTNamedScript::proc28(int v) { + warning("TODO"); +} + +void TTNamedScript::save2(SimpleFile *file) { + error("TODO"); +} + +void TTNamedScript::proc30(int v) { + warning("TODO"); +} + +void TTNamedScript::proc31() { + warning("TODO"); +} + +void TTNamedScript::proc32() { + warning("TODO"); +} + +void TTNamedScript::proc33(int v1, int v2) { + warning("TODO"); +} + +int TTNamedScript::proc34() { + warning("TODO"); + return 0; +} + +int TTNamedScript::proc35(int v1, int v2) { + warning("TODO"); + return 0; +} + +int TTNamedScript::proc36() const { + return 0; +} + +int TTNamedScript::proc37() const { + return 0; +} + +} // End of namespace Titanic diff --git a/engines/titanic/true_talk/tt_named_script.h b/engines/titanic/true_talk/tt_named_script.h new file mode 100644 index 0000000000..cdff44888d --- /dev/null +++ b/engines/titanic/true_talk/tt_named_script.h @@ -0,0 +1,104 @@ +/* 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_NAMED_SCRIPT_H +#define TITANIC_TT_NAMED_SCRIPT_H + +#include "titanic/simple_file.h" +#include "titanic/true_talk/tt_script_base.h" + +namespace Titanic { + + +class TTNamedScriptBase : public TTScriptBase { +protected: + int _val1; + int _field54; + int _val2; +public: + TTNamedScriptBase(int val1, const char *charClass, int v2, + const char *charName, int v3, int val2, int v4, + int v5, int v6, int v7); + + virtual void proc6() = 0; + virtual void proc7() = 0; + virtual void proc8() = 0; + virtual void proc9() = 0; + virtual void proc10() = 0; + virtual void proc11() = 0; + virtual void proc12() = 0; +}; +class TTNamedScript : public TTNamedScriptBase { +private: + int _field5C; + int _field60; + int _field64; + int _field68; + int _field6C; + int _field70; + int _field74; + int _field78; + int _field7C; + int _field80; +public: + TTNamedScript(int val1, const char *charClass, int v2, + const char *charName, int v3, int val2, int v4, + int v5, int v6, int v7); + + virtual void proc4(int v); + virtual int proc6() const; + virtual void proc7(int v1, int v2); + virtual int proc8() const; + virtual int proc9() const; + virtual int proc10() const; + virtual int proc11() const; + virtual int proc12() const; + virtual void proc13() const; + virtual void proc14(int v); + virtual int proc15() const; + virtual int proc16() const; + virtual int proc17() const; + virtual int proc18() const; + virtual void proc19(int v); + virtual void proc20(int v); + virtual int proc21(int v); + virtual int proc22() const; + virtual int proc23() const; + virtual void proc24() = 0; + virtual int proc25() const; + virtual void proc26(); + virtual void save1(SimpleFile *file); + virtual void proc28(int v); + virtual void save2(SimpleFile *file); + virtual void proc30(int v); + virtual void proc31(); + virtual void proc32(); + virtual void proc33(int v1, int v2); + virtual int proc34(); + virtual int proc35(int v1, int v2); + virtual int proc36() const; + virtual int proc37() const; +}; + +} // End of namespace Titanic + +#endif /* TITANIC_TT_CHARACTER1_H */ diff --git a/engines/titanic/true_talk/tt_script_base.cpp b/engines/titanic/true_talk/tt_script_base.cpp new file mode 100644 index 0000000000..1430f031ce --- /dev/null +++ b/engines/titanic/true_talk/tt_script_base.cpp @@ -0,0 +1,92 @@ +/* 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 "common/textconsole.h" +#include "titanic/true_talk/tt_script_base.h" + +namespace Titanic { + +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), + _field20(0), _field24(0), _field28(0), _field2C(0), + _field30(0), _field34(0), _field38(0), _field3C(0), + _field40(0), _field44(0), _field48(0), _status(0) { + if (!areNamesValid()) { + if (!v7 || !getStatus()) { + _field8 = v1; + _field20 = v3; + _field24 = v4; + _field28 = v5; + _field2C = v6; + _field30 = v7; + _field34 = v2; + } else { + _status = 5; + } + } + + if (_status) + reset(); +} + +bool TTScriptBase::areNamesValid() { + bool result = !_charName.isValid() && !_charClass.isValid(); + _status = result ? 0 : 11; + return result; +} + +void TTScriptBase::reset() { + _field4 = 0; + _field8 = 4; + _fieldC = 0; + _field20 = 0; + _field24 = -1; + _field28 = -1; + _field2C = -1; + _field30 = 0; + _field34 = 0; + _field38 = 0; + _field3C = 0; + _field40 = 0; + _field44 = 0; + _field48 = 0; +} + +void TTScriptBase::proc2(int v) { + warning("TODO"); +} + +void TTScriptBase::proc3(int v) { + warning("TODO"); +} + +void TTScriptBase::proc4(int v) { + warning("TODO"); +} + +void TTScriptBase::proc5() { + warning("TODO"); +} + +} // End of namespace Titanic diff --git a/engines/titanic/true_talk/tt_script_base.h b/engines/titanic/true_talk/tt_script_base.h new file mode 100644 index 0000000000..4021a0b738 --- /dev/null +++ b/engines/titanic/true_talk/tt_script_base.h @@ -0,0 +1,70 @@ +/* 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_SCRIPT_BASE_H +#define TITANIC_TT_SCRIPT_BASE_H + +#include "titanic/true_talk/tt_string.h" + +namespace Titanic { + +class TTScriptBase { +private: + void reset(); +protected: + int _field4; + int _field8; + int _fieldC; + TTString _charName, _charClass; + int _field20; + int _field24; + int _field28; + int _field2C; + int _field30; + int _field34; + int _field38; + int _field3C; + int _field40; + int _field44; + int _field48; + int _status; +public: + 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; } + + virtual void proc2(int v); + + virtual void proc3(int v); + + virtual void proc4(int v); + + virtual void proc5(); +}; + + +} // End of namespace Titanic + +#endif /* TITANIC_TT_SCRIPT_BASE_H */ diff --git a/engines/titanic/true_talk/tt_scripts.cpp b/engines/titanic/true_talk/tt_scripts.cpp new file mode 100644 index 0000000000..52368adc7f --- /dev/null +++ b/engines/titanic/true_talk/tt_scripts.cpp @@ -0,0 +1,28 @@ +/* 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_scripts.h" + +namespace Titanic { + + +} // End of namespace Titanic diff --git a/engines/titanic/true_talk/tt_scripts.h b/engines/titanic/true_talk/tt_scripts.h new file mode 100644 index 0000000000..b87a7c2a1a --- /dev/null +++ b/engines/titanic/true_talk/tt_scripts.h @@ -0,0 +1,35 @@ +/* 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_SCRIPTS_H +#define TITANIC_TT_SCRIPTS_H + +namespace Titanic { + +class TTScripts { +public: + TTScripts() {} +}; + +} // End of namespace Titanic + +#endif /* TITANIC_TT_CHARACTERS_H */ diff --git a/engines/titanic/true_talk/tt_string.cpp b/engines/titanic/true_talk/tt_string.cpp new file mode 100644 index 0000000000..f9ae5d6e11 --- /dev/null +++ b/engines/titanic/true_talk/tt_string.cpp @@ -0,0 +1,27 @@ +/* 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_string.h" + +namespace Titanic { + +} // End of namespace Titanic diff --git a/engines/titanic/true_talk/tt_string.h b/engines/titanic/true_talk/tt_string.h new file mode 100644 index 0000000000..8f42e62783 --- /dev/null +++ b/engines/titanic/true_talk/tt_string.h @@ -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. + * + */ + +#ifndef TITANIC_TT_STRING_H +#define TITANIC_TT_STRING_H + +#include "titanic/string.h" + +namespace Titanic { + +class TTString: public CString { +public: + int _status; +public: + TTString() : CString(), _status(0) {} + TTString(const char *str) : CString(str), _status(0) {} + ~TTString(); + + bool isValid() const { return !_status; } +}; + +} // End of namespace Titanic + +#endif /* TITANIC_TT_OBJ8_H */ diff --git a/engines/titanic/true_talk/tt_unnamed_script.cpp b/engines/titanic/true_talk/tt_unnamed_script.cpp new file mode 100644 index 0000000000..8c91290fba --- /dev/null +++ b/engines/titanic/true_talk/tt_unnamed_script.cpp @@ -0,0 +1,64 @@ +/* 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 "common/textconsole.h" +#include "titanic/true_talk/tt_unnamed_script.h" + +namespace Titanic { + +TTUnnamedScriptBase::TTUnnamedScriptBase(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) { +} + +/*------------------------------------------------------------------------*/ + +TTUnnamedScript::TTUnnamedScript(int scriptId) : + TTUnnamedScriptBase(scriptId, "", "", 0, -1, -1, -1, 0, 0) { +} + +void TTUnnamedScript::proc6() { + warning("TODO"); +} + +void TTUnnamedScript::proc7() { + warning("TODO"); +} + +void TTUnnamedScript::proc8() { + warning("TODO"); +} + +void TTUnnamedScript::proc9() { + warning("TODO"); +} + +void TTUnnamedScript::proc10() { + warning("TODO"); +} + +void TTUnnamedScript::proc11() { + warning("TODO"); +} + +} // End of namespace Titanic diff --git a/engines/titanic/true_talk/tt_unnamed_script.h b/engines/titanic/true_talk/tt_unnamed_script.h new file mode 100644 index 0000000000..f4702166b1 --- /dev/null +++ b/engines/titanic/true_talk/tt_unnamed_script.h @@ -0,0 +1,62 @@ +/* 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_UNNAMED_SCRIPT_H +#define TITANIC_TT_UNNAMED_SCRIPT_H + +#include "titanic/true_talk/tt_script_base.h" + +namespace Titanic { + +class TTUnnamedScriptBase : public TTScriptBase { +protected: + int _scriptId; +public: + TTUnnamedScriptBase(int scriptId, const char *charClass, const char *charName, + int v3, int v4, int v5, int v6, int v2, int v7); + + virtual void proc6() = 0; + virtual void proc7() = 0; + virtual void proc8() = 0; + virtual void proc9() = 0; + virtual void proc10() = 0; + virtual void proc11() = 0; +}; + + +class TTUnnamedScript : public TTUnnamedScriptBase { +private: + int _field54; +public: + TTUnnamedScript(int scriptId); + + virtual void proc6(); + virtual void proc7(); + virtual void proc8(); + virtual void proc9(); + virtual void proc10(); + virtual void proc11(); +}; + +} // End of namespace Titanic + +#endif /* TITANIC_TT_UNNAMED_SCRIPT_H */ |