diff options
Diffstat (limited to 'engines/sherlock/scalpel/scalpel.h')
-rw-r--r-- | engines/sherlock/scalpel/scalpel.h | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/engines/sherlock/scalpel/scalpel.h b/engines/sherlock/scalpel/scalpel.h index 40e4937b5d..8743bfb7a9 100644 --- a/engines/sherlock/scalpel/scalpel.h +++ b/engines/sherlock/scalpel/scalpel.h @@ -30,32 +30,83 @@ namespace Sherlock { namespace Scalpel { +enum { BLACKWOOD_CAPTURE = 2, BAKER_STREET = 4, DRAWING_ROOM = 12, STATION = 17, PUB_INTERIOR = 19, + LAWYER_OFFICE = 27, BAKER_ST_EXTERIOR = 39, RESCUE_ANNA = 52, MOOREHEAD_DEATH = 53, EXIT_GAME = 55, + BRUMWELL_SUICIDE = 70, OVERHEAD_MAP2 = 98, DARTS_GAME = 99, OVERHEAD_MAP = 100 }; + class ScalpelEngine : public SherlockEngine { private: Darts *_darts; int _mapResult; + /** + * Show the starting city cutscene which shows the game title + */ bool showCityCutscene(); + + /** + * Show the back alley where the initial murder takes place + */ bool showAlleyCutscene(); + + /** + * Show the Baker Street outside cutscene + */ bool showStreetCutscene(); + + /** + * Show Holmes and Watson at the breakfast table, lestrade's note, and then the scrolling credits + */ bool showOfficeCutscene(); + + /** + * Show the game credits + */ bool scrollCredits(); + /** + * Load the default inventory for the game, which includes both the initial active inventory, + * as well as special pending inventory items which can appear automatically in the player's + * inventory once given required flags are set + */ void loadInventory(); + /** + * Transition to show an image + */ void showLBV(const Common::String &filename); protected: + /** + * Game initialization + */ virtual void initialize(); + /** + * Show the opening sequence + */ virtual void showOpening(); + /** + * Starting a scene within the game + */ virtual void startScene(); public: ScalpelEngine(OSystem *syst, const SherlockGameDescription *gameDesc); virtual ~ScalpelEngine(); + /** + * Takes care of clearing the mirror in scene 12 (mansion drawing room), in case anything drew over it + */ void eraseMirror12(); + + /** + * Takes care of drawing Holme's reflection onto the mirror in scene 12 (mansion drawing room) + */ void doMirror12(); + + /** + * This clears the mirror in scene 12 (mansion drawing room) in case anything messed draw over it + */ void flushMirror12(); }; |