aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
Diffstat (limited to 'engines')
-rw-r--r--engines/titanic/pet_control/pet_glyphs.h2
-rw-r--r--engines/titanic/pet_control/pet_rooms_glyphs.cpp6
-rw-r--r--engines/titanic/pet_control/pet_rooms_glyphs.h2
3 files changed, 6 insertions, 4 deletions
diff --git a/engines/titanic/pet_control/pet_glyphs.h b/engines/titanic/pet_control/pet_glyphs.h
index f0b9ef128b..f6c4806d83 100644
--- a/engines/titanic/pet_control/pet_glyphs.h
+++ b/engines/titanic/pet_control/pet_glyphs.h
@@ -195,7 +195,7 @@ public:
virtual void save2(SimpleFile *file, int indent) {}
- virtual int proc33() { return 1; }
+ virtual bool proc33(CPetGlyph *glyph) { return true; }
virtual int proc34() { return 1; }
/**
diff --git a/engines/titanic/pet_control/pet_rooms_glyphs.cpp b/engines/titanic/pet_control/pet_rooms_glyphs.cpp
index 520a649688..7f6ebd6898 100644
--- a/engines/titanic/pet_control/pet_rooms_glyphs.cpp
+++ b/engines/titanic/pet_control/pet_rooms_glyphs.cpp
@@ -168,8 +168,10 @@ void CPetRoomsGlyph::save2(SimpleFile *file, int indent) const {
file->writeNumberLine(_mode, indent);
}
-int CPetRoomsGlyph::proc33() {
- return 1;
+bool CPetRoomsGlyph::proc33(CPetGlyph *glyph) {
+ CPetRoomsGlyph *roomGlyph = static_cast<CPetRoomsGlyph *>(glyph);
+
+ return proc33(glyph) && _roomFlags == roomGlyph->_roomFlags;
}
void CPetRoomsGlyph::loadFlags(SimpleFile *file, int val) {
diff --git a/engines/titanic/pet_control/pet_rooms_glyphs.h b/engines/titanic/pet_control/pet_rooms_glyphs.h
index f0b243ea7c..f3bd2d2b61 100644
--- a/engines/titanic/pet_control/pet_rooms_glyphs.h
+++ b/engines/titanic/pet_control/pet_rooms_glyphs.h
@@ -89,7 +89,7 @@ public:
virtual void save2(SimpleFile *file, int indent) const;
- virtual int proc33();
+ virtual bool proc33(CPetGlyph *glyph);
/**
* Loads flags for the glyph