aboutsummaryrefslogtreecommitdiff
path: root/engines/mohawk/riven_graphics.h
diff options
context:
space:
mode:
authorBastien Bouclet2017-02-11 18:33:40 +0100
committerEugene Sandulenko2017-07-03 08:50:10 +0200
commit3900597996000ecb28f1c2cb366c8faf59495734 (patch)
treebbd75bf11a4d810d5607b685d10233779f052e4f /engines/mohawk/riven_graphics.h
parent3f58a795e724cde51966cb7e8b6fd8550d576b16 (diff)
downloadscummvm-rg350-3900597996000ecb28f1c2cb366c8faf59495734.tar.gz
scummvm-rg350-3900597996000ecb28f1c2cb366c8faf59495734.tar.bz2
scummvm-rg350-3900597996000ecb28f1c2cb366c8faf59495734.zip
MOHAWK: Implement card transitions for Riven
Diffstat (limited to 'engines/mohawk/riven_graphics.h')
-rw-r--r--engines/mohawk/riven_graphics.h17
1 files changed, 13 insertions, 4 deletions
diff --git a/engines/mohawk/riven_graphics.h b/engines/mohawk/riven_graphics.h
index 18b1e1dcd3..565a51d08e 100644
--- a/engines/mohawk/riven_graphics.h
+++ b/engines/mohawk/riven_graphics.h
@@ -44,6 +44,13 @@ enum RivenTransition {
kRivenTransitionBlend2 = 17
};
+enum RivenTransitionMode {
+ kRivenTransitionModeDisabled = 5000,
+ kRivenTransitionModeFastest = 5001,
+ kRivenTransitionModeNormal = 5002,
+ kRivenTransitionModeBest = 5003
+};
+
class RivenGraphics : public GraphicsManager {
public:
RivenGraphics(MohawkEngine_Riven *vm);
@@ -66,7 +73,7 @@ public:
// Water Effect
void scheduleWaterEffect(uint16);
void clearWaterEffects();
- bool runScheduledWaterEffects();
+ void runScheduledWaterEffects();
// Flies Effect
void setFliesEffect(uint16 count, bool fireflies);
@@ -74,10 +81,10 @@ public:
void runFliesEffect();
// Transitions
- void scheduleTransition(RivenTransition id, Common::Rect rect = Common::Rect(0, 0, 608, 392));
+ void scheduleTransition(RivenTransition id, const Common::Rect &rect = Common::Rect(0, 0, 608, 392));
void runScheduledTransition();
void fadeToBlack();
- void setTransitionSpeed(uint32 speed) { _transitionSpeed = speed; }
+ void setTransitionMode(RivenTransitionMode mode);
// Credits
void beginCredits();
@@ -114,7 +121,9 @@ private:
// Transitions
RivenTransition _scheduledTransition;
Common::Rect _transitionRect;
- uint32 _transitionSpeed;
+ RivenTransitionMode _transitionMode;
+ uint _transitionFrames;
+ uint _transitionDuration;
// Screen Related
Graphics::Surface *_mainScreen;