aboutsummaryrefslogtreecommitdiff
path: root/engines/gob/minigames/geisha/penetration.h
diff options
context:
space:
mode:
authorSven Hesse2012-06-05 16:18:05 +0200
committerSven Hesse2012-06-05 16:19:19 +0200
commit25938316a881679a923bce1986f3a978432b0e76 (patch)
tree35c87e018bb54e7764368490b3bd84bbfa7c2ded /engines/gob/minigames/geisha/penetration.h
parent7d29e4017d37f7aee4035b3d7288c8c5478633be (diff)
downloadscummvm-rg350-25938316a881679a923bce1986f3a978432b0e76.tar.gz
scummvm-rg350-25938316a881679a923bce1986f3a978432b0e76.tar.bz2
scummvm-rg350-25938316a881679a923bce1986f3a978432b0e76.zip
GOB: Animate mouths in Geisha's Penetration
Diffstat (limited to 'engines/gob/minigames/geisha/penetration.h')
-rw-r--r--engines/gob/minigames/geisha/penetration.h20
1 files changed, 18 insertions, 2 deletions
diff --git a/engines/gob/minigames/geisha/penetration.h b/engines/gob/minigames/geisha/penetration.h
index 4d3455b638..ef0e3b10f0 100644
--- a/engines/gob/minigames/geisha/penetration.h
+++ b/engines/gob/minigames/geisha/penetration.h
@@ -36,6 +36,7 @@ class ANIFile;
namespace Geisha {
class Meter;
+class Mouth;
/** Geisha's "Penetration" minigame. */
class Penetration {
@@ -61,6 +62,19 @@ private:
Position(uint16 pX, uint16 pY);
};
+ enum MouthType {
+ kMouthTypeBite,
+ kMouthTypeKiss
+ };
+
+ struct ManagedMouth : public Position {
+ Mouth *mouth;
+ MouthType type;
+
+ ManagedMouth(uint16 pX, uint16 pY, MouthType t);
+ ~ManagedMouth();
+ };
+
GobEngine *_vm;
bool _hasAccessPass;
@@ -74,6 +88,7 @@ private:
ANIObject *_sub;
Common::List<ANIObject *> _anims;
+ Common::List<ANIObject *> _mapAnims;
Meter *_shieldMeter;
Meter *_healthMeter;
@@ -83,14 +98,14 @@ private:
Surface *_map;
byte _mapTiles[kMapWidth * kMapHeight];
- bool _mapUpdate;
uint16 _mapX;
uint16 _mapY;
uint8 _subTileX;
uint8 _subTileY;
- Common::List<Position> _shields;
+ Common::List<Position> _shields;
+ Common::List<ManagedMouth> _mouths;
void init();
@@ -110,6 +125,7 @@ private:
bool isWalkable(byte tile) const;
void checkShields();
+ void checkMouths();
};
} // End of namespace Geisha