aboutsummaryrefslogtreecommitdiff
path: root/engines/gob/minigames/geisha/diving.h
diff options
context:
space:
mode:
Diffstat (limited to 'engines/gob/minigames/geisha/diving.h')
-rw-r--r--engines/gob/minigames/geisha/diving.h16
1 files changed, 13 insertions, 3 deletions
diff --git a/engines/gob/minigames/geisha/diving.h b/engines/gob/minigames/geisha/diving.h
index 962aaf8072..e386d783d7 100644
--- a/engines/gob/minigames/geisha/diving.h
+++ b/engines/gob/minigames/geisha/diving.h
@@ -50,8 +50,9 @@ public:
bool play(uint16 playerCount, bool hasPearlLocation);
private:
- static const uint kEvilFishCount = 3;
- static const uint kMaxShotCount = 10;
+ static const uint kEvilFishCount = 3;
+ static const uint kDecorFishCount = 3;
+ static const uint kMaxShotCount = 10;
struct ManagedEvilFish {
EvilFish *evilFish;
@@ -60,6 +61,13 @@ private:
uint32 leaveAt;
};
+ struct ManagedDecorFish {
+ ANIObject *decorFish;
+
+ uint32 enterAt;
+ int8 deltaX;
+ };
+
GobEngine *_vm;
DECFile *_background;
@@ -71,7 +79,8 @@ private:
ANIObject *_lungs;
ANIObject *_heart;
- ManagedEvilFish _evilFish[kEvilFishCount];
+ ManagedEvilFish _evilFish[kEvilFishCount];
+ ManagedDecorFish _decorFish[kDecorFishCount];
ANIObject *_shot[kMaxShotCount];
@@ -102,6 +111,7 @@ private:
void foundWhitePearl();
void updateEvilFish();
+ void updateDecorFish();
void updateAnims();
int16 checkInput(int16 &mouseX, int16 &mouseY, MouseButtons &mouseButtons);