aboutsummaryrefslogtreecommitdiff
path: root/engines/titanic/pet_control/pet_remote_glyphs.h
diff options
context:
space:
mode:
authorPaul Gilbert2016-05-02 22:23:21 -0400
committerPaul Gilbert2016-07-10 16:38:15 -0400
commit6166c33734efdeabca0fa9d3eeda34389af6b79b (patch)
treefff43e1b69aa5466eb2b690efc217110598fc246 /engines/titanic/pet_control/pet_remote_glyphs.h
parent8551f08d0d006b0a2be483420e8920be501d1d55 (diff)
downloadscummvm-rg350-6166c33734efdeabca0fa9d3eeda34389af6b79b.tar.gz
scummvm-rg350-6166c33734efdeabca0fa9d3eeda34389af6b79b.tar.bz2
scummvm-rg350-6166c33734efdeabca0fa9d3eeda34389af6b79b.zip
TITANIC: Implemented more PET Remote glyph classes
Diffstat (limited to 'engines/titanic/pet_control/pet_remote_glyphs.h')
-rw-r--r--engines/titanic/pet_control/pet_remote_glyphs.h80
1 files changed, 79 insertions, 1 deletions
diff --git a/engines/titanic/pet_control/pet_remote_glyphs.h b/engines/titanic/pet_control/pet_remote_glyphs.h
index 0043ea97d8..e6dfc115c0 100644
--- a/engines/titanic/pet_control/pet_remote_glyphs.h
+++ b/engines/titanic/pet_control/pet_remote_glyphs.h
@@ -37,7 +37,8 @@ enum RemoteGlyph {
GLYPH_INFLATE_RELAXATION = 10, GLYPH_DEPLOY_MAINTENANCE = 11,
GLYPH_DEPLOY_WORK_SURFACE = 12, GLYPH_DEPLOY_MINOR_RELAXATION = 13,
GLYPH_DEPLOY_SINK = 14, GLYPH_DEPLOY_MAJOR_STORAGE = 15,
- GLYPH_SUCCUBUS_DELIVERY = 16
+ GLYPH_SUCCUBUS_DELIVERY = 16, GLYPH_NAVIGATION_CONTROLLER = 17,
+ GLYPH_BOTTOM_OF_WELL = 18
};
enum RemoteMessage {
@@ -143,6 +144,34 @@ public:
bool elementMouseButtonUpMsg(const Point &pt, int petNum);
};
+class CRemoteGotoGlyph : public CPetRemoteGlyph {
+protected:
+ int _roomIndex;
+ CPetGfxElement *_gfxElement;
+public:
+ CRemoteGotoGlyph() : CPetRemoteGlyph(), _gfxElement(nullptr), _roomIndex(21) {}
+
+ /**
+ * Setup the glyph
+ */
+ virtual bool setup(CPetControl *petControl, CPetGlyphs *owner);
+
+ /**
+ * Handles any secondary drawing of the glyph
+ */
+ virtual void draw2(CScreenManager *screenManager);
+
+ /**
+ * Called for mouse button down messages
+ */
+ virtual bool MouseButtonDownMsg(const Point &pt);
+
+ /**
+ * Handles mouse button up messages
+ */
+ virtual bool MouseButtonUpMsg(const Point &pt);
+};
+
class CSummonElevatorGlyph : public CBasicRemoteGlyph {
public:
CSummonElevatorGlyph() : CBasicRemoteGlyph(
@@ -587,6 +616,55 @@ public:
virtual void getTooltip(CPetText *text);
};
+class CNavigationControllerGlyph : public CPetRemoteGlyph {
+private:
+ bool _flag;
+ CPetGfxElement *_gfxElement;
+public:
+ CNavigationControllerGlyph() : CPetRemoteGlyph(),
+ _flag(false), _gfxElement(nullptr) {}
+
+ /**
+ * Setup the glyph
+ */
+ virtual bool setup(CPetControl *petControl, CPetGlyphs *owner);
+
+ /**
+ * Handles any secondary drawing of the glyph
+ */
+ virtual void draw2(CScreenManager *screenManager);
+
+ /**
+ * Called for mouse button down messages
+ */
+ virtual bool MouseButtonDownMsg(const Point &pt);
+
+ /**
+ * Handles mouse button up messages
+ */
+ virtual bool MouseButtonUpMsg(const Point &pt);
+
+ /**
+ * Returns the tooltip text for when the glyph is selected
+ */
+ virtual void getTooltip(CPetText *text);
+};
+
+class CBottomOfWellGlyph : public CRemoteGotoGlyph {
+public:
+ CBottomOfWellGlyph() : CRemoteGotoGlyph() {}
+
+ /**
+ * Setup the glyph
+ */
+ virtual bool setup(CPetControl *petControl, CPetGlyphs *owner);
+
+ /**
+ * Returns the tooltip text for when the glyph is selected
+ */
+ virtual void getTooltip(CPetText *text);
+};
+
} // End of namespace Titanic
#endif /* TITANIC_PET_REMOTE_GLYPHS_H */