aboutsummaryrefslogtreecommitdiff
path: root/engines/titanic/pet_control
diff options
context:
space:
mode:
authorPaul Gilbert2016-03-04 20:21:02 -0500
committerPaul Gilbert2016-03-04 20:21:02 -0500
commit61518fb20882d556615a025074659cdd2f89fb69 (patch)
tree64564dc024e8e252f64533c9d0d83972cc5a977d /engines/titanic/pet_control
parentd07fbeb25552b9deaa00f607aaca15e51353f8da (diff)
downloadscummvm-rg350-61518fb20882d556615a025074659cdd2f89fb69.tar.gz
scummvm-rg350-61518fb20882d556615a025074659cdd2f89fb69.tar.bz2
scummvm-rg350-61518fb20882d556615a025074659cdd2f89fb69.zip
TITANIC: Move CPetControl and direct support classes to new folder
Diffstat (limited to 'engines/titanic/pet_control')
-rw-r--r--engines/titanic/pet_control/pet_control.cpp79
-rw-r--r--engines/titanic/pet_control/pet_control.h85
-rw-r--r--engines/titanic/pet_control/pet_control_sub1.cpp35
-rw-r--r--engines/titanic/pet_control/pet_control_sub1.h45
-rw-r--r--engines/titanic/pet_control/pet_control_sub2.cpp35
-rw-r--r--engines/titanic/pet_control/pet_control_sub2.h45
-rw-r--r--engines/titanic/pet_control/pet_control_sub3.cpp35
-rw-r--r--engines/titanic/pet_control/pet_control_sub3.h45
-rw-r--r--engines/titanic/pet_control/pet_control_sub4.cpp35
-rw-r--r--engines/titanic/pet_control/pet_control_sub4.h45
-rw-r--r--engines/titanic/pet_control/pet_control_sub5.cpp35
-rw-r--r--engines/titanic/pet_control/pet_control_sub5.h45
-rw-r--r--engines/titanic/pet_control/pet_control_sub6.cpp35
-rw-r--r--engines/titanic/pet_control/pet_control_sub6.h45
-rw-r--r--engines/titanic/pet_control/pet_control_sub7.cpp35
-rw-r--r--engines/titanic/pet_control/pet_control_sub7.h45
-rw-r--r--engines/titanic/pet_control/pet_control_sub8.cpp35
-rw-r--r--engines/titanic/pet_control/pet_control_sub8.h45
-rw-r--r--engines/titanic/pet_control/pet_control_sub_base.cpp27
-rw-r--r--engines/titanic/pet_control/pet_control_sub_base.h49
20 files changed, 880 insertions, 0 deletions
diff --git a/engines/titanic/pet_control/pet_control.cpp b/engines/titanic/pet_control/pet_control.cpp
new file mode 100644
index 0000000000..354ed393a8
--- /dev/null
+++ b/engines/titanic/pet_control/pet_control.cpp
@@ -0,0 +1,79 @@
+/* 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/pet_control/pet_control.h"
+
+namespace Titanic {
+
+void CPetControl::save(SimpleFile *file, int indent) const {
+ file->writeNumberLine(0, indent);
+ file->writeNumberLine(_fieldBC, indent);
+ file->writeQuotedLine(_string1, indent);
+ file->writeQuotedLine(_string2, indent);
+
+ saveSubObjects(file, indent);
+ CGameObject::save(file, indent);
+}
+
+void CPetControl::load(SimpleFile *file) {
+ int val = file->readNumber();
+ // TODO: sub_43A9E0
+
+ if (!val) {
+ _fieldBC = file->readNumber();
+ _string1 = file->readString();
+ _string2 = file->readString();
+
+ loadSubObjects(file);
+ }
+
+ CGameObject::load(file);
+}
+
+void CPetControl::gameLoaded() {
+ // TODO
+}
+
+void CPetControl::loadSubObjects(SimpleFile *file) {
+ _sub1.load(file);
+ _sub2.load(file);
+ _sub3.load(file);
+ _sub4.load(file);
+ _sub5.load(file);
+ _sub6.load(file);
+ _sub7.load(file);
+ _sub8.load(file);
+}
+
+void CPetControl::saveSubObjects(SimpleFile *file, int indent) const {
+ _sub1.save(file, indent);
+ _sub2.save(file, indent);
+ _sub3.save(file, indent);
+ _sub4.save(file, indent);
+ _sub5.save(file, indent);
+ _sub6.save(file, indent);
+ _sub7.save(file, indent);
+ _sub8.save(file, indent);
+}
+
+
+} // End of namespace Titanic
diff --git a/engines/titanic/pet_control/pet_control.h b/engines/titanic/pet_control/pet_control.h
new file mode 100644
index 0000000000..dab44266c4
--- /dev/null
+++ b/engines/titanic/pet_control/pet_control.h
@@ -0,0 +1,85 @@
+/* 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_PET_CONTROL_H
+#define TITANIC_PET_CONTROL_H
+
+#include "titanic/core/game_object.h"
+#include "titanic/pet_control/pet_control_sub1.h"
+#include "titanic/pet_control/pet_control_sub2.h"
+#include "titanic/pet_control/pet_control_sub3.h"
+#include "titanic/pet_control/pet_control_sub4.h"
+#include "titanic/pet_control/pet_control_sub5.h"
+#include "titanic/pet_control/pet_control_sub6.h"
+#include "titanic/pet_control/pet_control_sub7.h"
+#include "titanic/pet_control/pet_control_sub8.h"
+
+namespace Titanic {
+
+class CPetControl : public CGameObject {
+private:
+ int _fieldBC;
+ int _fieldC0;
+ int _fieldC4;
+ int _fieldC8;
+ CPetControlSub1 _sub1;
+ CPetControlSub2 _sub2;
+ CPetControlSub3 _sub3;
+ CPetControlSub4 _sub4;
+ CPetControlSub5 _sub5;
+ CPetControlSub6 _sub6;
+ CPetControlSub7 _sub7;
+ CPetControlSub8 _sub8;
+ int _field1384;
+ CString _string1;
+ int _field1394;
+ CString _string2;
+ int _field13A4;
+private:
+ void loadSubObjects(SimpleFile *file);
+
+ void saveSubObjects(SimpleFile *file, int indent) const;
+public:
+ /**
+ * Return the class name
+ */
+ virtual const char *getClassName() const { return "CPetControl"; }
+
+ /**
+ * Save the data for the class to file
+ */
+ virtual void save(SimpleFile *file, int indent) const;
+
+ /**
+ * Load the data for the class from file
+ */
+ virtual void load(SimpleFile *file);
+
+ /**
+ * Called after loading a game has finished
+ */
+ void gameLoaded();
+};
+
+} // End of namespace Titanic
+
+#endif /* TITANIC_PET_CONTROL_H */
diff --git a/engines/titanic/pet_control/pet_control_sub1.cpp b/engines/titanic/pet_control/pet_control_sub1.cpp
new file mode 100644
index 0000000000..808358678a
--- /dev/null
+++ b/engines/titanic/pet_control/pet_control_sub1.cpp
@@ -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.
+ *
+ */
+
+#include "titanic/pet_control/pet_control_sub1.h"
+
+namespace Titanic {
+
+void CPetControlSub1::save(SimpleFile *file, int indent) const {
+
+}
+
+void CPetControlSub1::load(SimpleFile *file) {
+
+}
+
+} // End of namespace Titanic
diff --git a/engines/titanic/pet_control/pet_control_sub1.h b/engines/titanic/pet_control/pet_control_sub1.h
new file mode 100644
index 0000000000..5e38523858
--- /dev/null
+++ b/engines/titanic/pet_control/pet_control_sub1.h
@@ -0,0 +1,45 @@
+/* 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_PET_CONTROL_SUB1_H
+#define TITANIC_PET_CONTROL_SUB1_H
+
+#include "titanic/pet_control/pet_control_sub_base.h"
+
+namespace Titanic {
+
+class CPetControlSub1 : public CPetControlSubBase {
+public:
+ /**
+ * Save the data for the class to file
+ */
+ virtual void save(SimpleFile *file, int indent) const;
+
+ /**
+ * Load the data for the class from file
+ */
+ virtual void load(SimpleFile *file);
+};
+
+} // End of namespace Titanic
+
+#endif /* TITANIC_PET_CONTROL_H */
diff --git a/engines/titanic/pet_control/pet_control_sub2.cpp b/engines/titanic/pet_control/pet_control_sub2.cpp
new file mode 100644
index 0000000000..a48869e806
--- /dev/null
+++ b/engines/titanic/pet_control/pet_control_sub2.cpp
@@ -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.
+ *
+ */
+
+#include "titanic/pet_control/pet_control_sub2.h"
+
+namespace Titanic {
+
+void CPetControlSub2::save(SimpleFile *file, int indent) const {
+
+}
+
+void CPetControlSub2::load(SimpleFile *file) {
+
+}
+
+} // End of namespace Titanic
diff --git a/engines/titanic/pet_control/pet_control_sub2.h b/engines/titanic/pet_control/pet_control_sub2.h
new file mode 100644
index 0000000000..a54142c225
--- /dev/null
+++ b/engines/titanic/pet_control/pet_control_sub2.h
@@ -0,0 +1,45 @@
+/* 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_PET_CONTROL_SUB2_H
+#define TITANIC_PET_CONTROL_SUB2_H
+
+#include "titanic/pet_control/pet_control_sub_base.h"
+
+namespace Titanic {
+
+class CPetControlSub2 : public CPetControlSubBase {
+public:
+ /**
+ * Save the data for the class to file
+ */
+ virtual void save(SimpleFile *file, int indent) const;
+
+ /**
+ * Load the data for the class from file
+ */
+ virtual void load(SimpleFile *file);
+};
+
+} // End of namespace Titanic
+
+#endif /* TITANIC_PET_CONTROL_SUB2_H */
diff --git a/engines/titanic/pet_control/pet_control_sub3.cpp b/engines/titanic/pet_control/pet_control_sub3.cpp
new file mode 100644
index 0000000000..2f508be3e6
--- /dev/null
+++ b/engines/titanic/pet_control/pet_control_sub3.cpp
@@ -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.
+ *
+ */
+
+#include "titanic/pet_control/pet_control_sub3.h"
+
+namespace Titanic {
+
+void CPetControlSub3::save(SimpleFile *file, int indent) const {
+
+}
+
+void CPetControlSub3::load(SimpleFile *file) {
+
+}
+
+} // End of namespace Titanic
diff --git a/engines/titanic/pet_control/pet_control_sub3.h b/engines/titanic/pet_control/pet_control_sub3.h
new file mode 100644
index 0000000000..1b37628131
--- /dev/null
+++ b/engines/titanic/pet_control/pet_control_sub3.h
@@ -0,0 +1,45 @@
+/* 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_PET_CONTROL_SUB3_H
+#define TITANIC_PET_CONTROL_SUB3_H
+
+#include "titanic/pet_control/pet_control_sub_base.h"
+
+namespace Titanic {
+
+class CPetControlSub3 : public CPetControlSubBase {
+public:
+ /**
+ * Save the data for the class to file
+ */
+ virtual void save(SimpleFile *file, int indent) const;
+
+ /**
+ * Load the data for the class from file
+ */
+ virtual void load(SimpleFile *file);
+};
+
+} // End of namespace Titanic
+
+#endif /* TITANIC_PET_CONTROL_SUB3_H */
diff --git a/engines/titanic/pet_control/pet_control_sub4.cpp b/engines/titanic/pet_control/pet_control_sub4.cpp
new file mode 100644
index 0000000000..35367a6186
--- /dev/null
+++ b/engines/titanic/pet_control/pet_control_sub4.cpp
@@ -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.
+ *
+ */
+
+#include "titanic/pet_control/pet_control_sub4.h"
+
+namespace Titanic {
+
+void CPetControlSub4::save(SimpleFile *file, int indent) const {
+
+}
+
+void CPetControlSub4::load(SimpleFile *file) {
+
+}
+
+} // End of namespace Titanic
diff --git a/engines/titanic/pet_control/pet_control_sub4.h b/engines/titanic/pet_control/pet_control_sub4.h
new file mode 100644
index 0000000000..b00acffdd9
--- /dev/null
+++ b/engines/titanic/pet_control/pet_control_sub4.h
@@ -0,0 +1,45 @@
+/* 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_PET_CONTROL_SUB4_H
+#define TITANIC_PET_CONTROL_SUB4_H
+
+#include "titanic/pet_control/pet_control_sub_base.h"
+
+namespace Titanic {
+
+class CPetControlSub4 : public CPetControlSubBase {
+public:
+ /**
+ * Save the data for the class to file
+ */
+ virtual void save(SimpleFile *file, int indent) const;
+
+ /**
+ * Load the data for the class from file
+ */
+ virtual void load(SimpleFile *file);
+};
+
+} // End of namespace Titanic
+
+#endif /* TITANIC_PET_CONTROL_SUB4_H */
diff --git a/engines/titanic/pet_control/pet_control_sub5.cpp b/engines/titanic/pet_control/pet_control_sub5.cpp
new file mode 100644
index 0000000000..461fb1ebc1
--- /dev/null
+++ b/engines/titanic/pet_control/pet_control_sub5.cpp
@@ -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.
+ *
+ */
+
+#include "titanic/pet_control/pet_control_sub5.h"
+
+namespace Titanic {
+
+void CPetControlSub5::save(SimpleFile *file, int indent) const {
+
+}
+
+void CPetControlSub5::load(SimpleFile *file) {
+
+}
+
+} // End of namespace Titanic
diff --git a/engines/titanic/pet_control/pet_control_sub5.h b/engines/titanic/pet_control/pet_control_sub5.h
new file mode 100644
index 0000000000..2142a1050c
--- /dev/null
+++ b/engines/titanic/pet_control/pet_control_sub5.h
@@ -0,0 +1,45 @@
+/* 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_PET_CONTROL_SUB5_H
+#define TITANIC_PET_CONTROL_SUB5_H
+
+#include "titanic/pet_control/pet_control_sub_base.h"
+
+namespace Titanic {
+
+class CPetControlSub5 : public CPetControlSubBase {
+public:
+ /**
+ * Save the data for the class to file
+ */
+ virtual void save(SimpleFile *file, int indent) const;
+
+ /**
+ * Load the data for the class from file
+ */
+ virtual void load(SimpleFile *file);
+};
+
+} // End of namespace Titanic
+
+#endif /* TITANIC_PET_CONTROL_SUB5_H */
diff --git a/engines/titanic/pet_control/pet_control_sub6.cpp b/engines/titanic/pet_control/pet_control_sub6.cpp
new file mode 100644
index 0000000000..d33ea1f824
--- /dev/null
+++ b/engines/titanic/pet_control/pet_control_sub6.cpp
@@ -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.
+ *
+ */
+
+#include "titanic/pet_control/pet_control_sub6.h"
+
+namespace Titanic {
+
+void CPetControlSub6::save(SimpleFile *file, int indent) const {
+
+}
+
+void CPetControlSub6::load(SimpleFile *file) {
+
+}
+
+} // End of namespace Titanic
diff --git a/engines/titanic/pet_control/pet_control_sub6.h b/engines/titanic/pet_control/pet_control_sub6.h
new file mode 100644
index 0000000000..d26c8f2753
--- /dev/null
+++ b/engines/titanic/pet_control/pet_control_sub6.h
@@ -0,0 +1,45 @@
+/* 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_PET_CONTROL_SUB6_H
+#define TITANIC_PET_CONTROL_SUB6_H
+
+#include "titanic/pet_control/pet_control_sub_base.h"
+
+namespace Titanic {
+
+class CPetControlSub6 : public CPetControlSubBase {
+public:
+ /**
+ * Save the data for the class to file
+ */
+ virtual void save(SimpleFile *file, int indent) const;
+
+ /**
+ * Load the data for the class from file
+ */
+ virtual void load(SimpleFile *file);
+};
+
+} // End of namespace Titanic
+
+#endif /* TITANIC_PET_CONTROL_SUB6_H */
diff --git a/engines/titanic/pet_control/pet_control_sub7.cpp b/engines/titanic/pet_control/pet_control_sub7.cpp
new file mode 100644
index 0000000000..8333dc1508
--- /dev/null
+++ b/engines/titanic/pet_control/pet_control_sub7.cpp
@@ -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.
+ *
+ */
+
+#include "titanic/pet_control/pet_control_sub7.h"
+
+namespace Titanic {
+
+void CPetControlSub7::save(SimpleFile *file, int indent) const {
+
+}
+
+void CPetControlSub7::load(SimpleFile *file) {
+
+}
+
+} // End of namespace Titanic
diff --git a/engines/titanic/pet_control/pet_control_sub7.h b/engines/titanic/pet_control/pet_control_sub7.h
new file mode 100644
index 0000000000..660fe2a542
--- /dev/null
+++ b/engines/titanic/pet_control/pet_control_sub7.h
@@ -0,0 +1,45 @@
+/* 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_PET_CONTROL_SUB7_H
+#define TITANIC_PET_CONTROL_SUB7_H
+
+#include "titanic/pet_control/pet_control_sub_base.h"
+
+namespace Titanic {
+
+class CPetControlSub7 : public CPetControlSubBase {
+public:
+ /**
+ * Save the data for the class to file
+ */
+ virtual void save(SimpleFile *file, int indent) const;
+
+ /**
+ * Load the data for the class from file
+ */
+ virtual void load(SimpleFile *file);
+};
+
+} // End of namespace Titanic
+
+#endif /* TITANIC_PET_CONTROL_SUB7_H */
diff --git a/engines/titanic/pet_control/pet_control_sub8.cpp b/engines/titanic/pet_control/pet_control_sub8.cpp
new file mode 100644
index 0000000000..471630835f
--- /dev/null
+++ b/engines/titanic/pet_control/pet_control_sub8.cpp
@@ -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.
+ *
+ */
+
+#include "titanic/pet_control/pet_control_sub8.h"
+
+namespace Titanic {
+
+void CPetControlSub8::save(SimpleFile *file, int indent) const {
+
+}
+
+void CPetControlSub8::load(SimpleFile *file) {
+
+}
+
+} // End of namespace Titanic
diff --git a/engines/titanic/pet_control/pet_control_sub8.h b/engines/titanic/pet_control/pet_control_sub8.h
new file mode 100644
index 0000000000..e6de1f89e1
--- /dev/null
+++ b/engines/titanic/pet_control/pet_control_sub8.h
@@ -0,0 +1,45 @@
+/* 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_PET_CONTROL_SUB8_H
+#define TITANIC_PET_CONTROL_SUB8_H
+
+#include "titanic/pet_control/pet_control_sub_base.h"
+
+namespace Titanic {
+
+class CPetControlSub8 : public CPetControlSubBase {
+public:
+ /**
+ * Save the data for the class to file
+ */
+ virtual void save(SimpleFile *file, int indent) const;
+
+ /**
+ * Load the data for the class from file
+ */
+ virtual void load(SimpleFile *file);
+};
+
+} // End of namespace Titanic
+
+#endif /* TITANIC_PET_CONTROL_SUB8_H */
diff --git a/engines/titanic/pet_control/pet_control_sub_base.cpp b/engines/titanic/pet_control/pet_control_sub_base.cpp
new file mode 100644
index 0000000000..35194317c3
--- /dev/null
+++ b/engines/titanic/pet_control/pet_control_sub_base.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/pet_control/pet_control_sub_base.h"
+
+namespace Titanic {
+
+} // End of namespace Titanic
diff --git a/engines/titanic/pet_control/pet_control_sub_base.h b/engines/titanic/pet_control/pet_control_sub_base.h
new file mode 100644
index 0000000000..b11f5cc78b
--- /dev/null
+++ b/engines/titanic/pet_control/pet_control_sub_base.h
@@ -0,0 +1,49 @@
+/* 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_PET_CONTROL_SUB_BASE_H
+#define TITANIC_PET_CONTROL_SUB_BASE_H
+
+#include "titanic/simple_file.h"
+
+namespace Titanic {
+
+class CPetControlSubBase {
+protected:
+ int _field4;
+public:
+ CPetControlSubBase() : _field4(0) {}
+
+ /**
+ * Save the data for the class to file
+ */
+ virtual void save(SimpleFile *file, int indent) const = 0;
+
+ /**
+ * Load the data for the class from file
+ */
+ virtual void load(SimpleFile *file) = 0;
+};
+
+} // End of namespace Titanic
+
+#endif /* TITANIC_PET_CONTROL_SUB_BASE_H */