aboutsummaryrefslogtreecommitdiff
path: root/engines/titanic/true_talk/tt_pronoun.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/titanic/true_talk/tt_pronoun.cpp')
-rw-r--r--engines/titanic/true_talk/tt_pronoun.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/engines/titanic/true_talk/tt_pronoun.cpp b/engines/titanic/true_talk/tt_pronoun.cpp
index 764489d127..120946bb59 100644
--- a/engines/titanic/true_talk/tt_pronoun.cpp
+++ b/engines/titanic/true_talk/tt_pronoun.cpp
@@ -24,6 +24,8 @@
namespace Titanic {
+bool TTpronoun::_staticFlag;
+
TTpronoun::TTpronoun(TTString &str, int val1, int val2, int val3, int val4) :
TTmajorWord(str, val1, val2, val3), _field30(val4) {
}
@@ -52,4 +54,20 @@ int TTpronoun::load(SimpleFile *file) {
}
}
+TTword *TTpronoun::copy() {
+ TTpronoun *returnWordP = new TTpronoun(this);
+ returnWordP->_status = _status;
+ if (!_status) {
+ _staticFlag = false;
+ return returnWordP;
+ } else if (_status == SS_13 && !_staticFlag) {
+ _staticFlag = true;
+ delete returnWordP;
+ return copy();
+ } else {
+ delete returnWordP;
+ return nullptr;
+ }
+}
+
} // End of namespace Titanic