diff options
Diffstat (limited to 'engines/titanic/true_talk/tt_script_base.cpp')
-rw-r--r-- | engines/titanic/true_talk/tt_script_base.cpp | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/engines/titanic/true_talk/tt_script_base.cpp b/engines/titanic/true_talk/tt_script_base.cpp index 16783dec0f..a8e0940471 100644 --- a/engines/titanic/true_talk/tt_script_base.cpp +++ b/engines/titanic/true_talk/tt_script_base.cpp @@ -28,7 +28,7 @@ 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), _hist(nullptr), + _nodesP(nullptr), _field8(0), _hist(nullptr), _field20(0), _field24(0), _field28(0), _field2C(0), _field30(0), _field34(0), _field38(0), _field3C(0), _field40(0), _field44(0), _field48(0), _status(0) { @@ -50,6 +50,13 @@ TTscriptBase::TTscriptBase(int v1, const char *charClass, int v2, reset(); } +TTscriptBase::~TTscriptBase() { + if (_nodesP) { + _nodesP->deleteSiblings(); + delete _nodesP; + } +} + bool TTscriptBase::areNamesValid() { bool result = !_charName.isValid() && !_charClass.isValid(); _status = result ? 0 : 11; @@ -57,7 +64,7 @@ bool TTscriptBase::areNamesValid() { } void TTscriptBase::reset() { - _field4 = 0; + _nodesP = nullptr; _field8 = 4; _hist = nullptr; _field20 = 0; |