aboutsummaryrefslogtreecommitdiff
path: root/engines/gob/minigames/geisha/diving.h
diff options
context:
space:
mode:
authorSven Hesse2011-09-12 18:00:22 +0200
committerSven Hesse2011-09-14 18:54:28 +0200
commit5caf4ac4003180bcbf897d6bfa1812eba8d5e76c (patch)
tree626dc716bf4f4438e3b1d5721c7b829372c5eeda /engines/gob/minigames/geisha/diving.h
parente21b1af568fd255da8b2a1d45b42b9d9cb170eb4 (diff)
downloadscummvm-rg350-5caf4ac4003180bcbf897d6bfa1812eba8d5e76c.tar.gz
scummvm-rg350-5caf4ac4003180bcbf897d6bfa1812eba8d5e76c.tar.bz2
scummvm-rg350-5caf4ac4003180bcbf897d6bfa1812eba8d5e76c.zip
GOB: Implement the fish shooting part of the Diving minigame
Diffstat (limited to 'engines/gob/minigames/geisha/diving.h')
-rw-r--r--engines/gob/minigames/geisha/diving.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/engines/gob/minigames/geisha/diving.h b/engines/gob/minigames/geisha/diving.h
index 023ac919a7..dd0773a9c4 100644
--- a/engines/gob/minigames/geisha/diving.h
+++ b/engines/gob/minigames/geisha/diving.h
@@ -33,8 +33,12 @@ class DECFile;
class ANIFile;
class ANIObject;
+enum MouseButtons;
+
namespace Geisha {
+class EvilFish;
+
/** Geisha's "Diving" minigame. */
class Diving {
public:
@@ -44,6 +48,9 @@ public:
bool play(uint16 playerCount, bool hasPearlLocation);
private:
+ static const uint kEvilFishCount = 3;
+ static const uint kMaxShotCount = 10;
+
GobEngine *_vm;
DECFile *_background;
@@ -55,19 +62,38 @@ private:
ANIObject *_lungs;
ANIObject *_heart;
+ EvilFish *_evilFish[kEvilFishCount];
+
+ ANIObject *_shot[kMaxShotCount];
+
+ Common::List<int> _activeShots;
+
+ Common::List<ANIObject *> _anims;
+
Surface *_blackPearl;
uint8 _whitePearlCount;
uint8 _blackPearlCount;
+ uint8 _currentShot;
+
void init();
void deinit();
void initScreen();
void initCursor();
+ void evilFishEnter();
+
void foundBlackPearl();
void foundWhitePearl();
+
+ void updateAnims();
+
+ int16 checkInput(int16 &mouseX, int16 &mouseY, MouseButtons &mouseButtons);
+
+ void shoot(int16 mouseX, int16 mouseY);
+ void checkShots();
};
} // End of namespace Geisha