aboutsummaryrefslogtreecommitdiff
path: root/engines/sherlock/scalpel/tsage/logo.h
diff options
context:
space:
mode:
Diffstat (limited to 'engines/sherlock/scalpel/tsage/logo.h')
-rw-r--r--engines/sherlock/scalpel/tsage/logo.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/engines/sherlock/scalpel/tsage/logo.h b/engines/sherlock/scalpel/tsage/logo.h
index 94531e4236..c9fac00d9c 100644
--- a/engines/sherlock/scalpel/tsage/logo.h
+++ b/engines/sherlock/scalpel/tsage/logo.h
@@ -185,6 +185,12 @@ public:
void remove() { _visage.clear(); }
};
+struct AnimationFrame {
+ int frame;
+ int x;
+ int y;
+};
+
class Logo {
private:
ScalpelEngine *_vm;
@@ -198,6 +204,11 @@ private:
Object _objects[4];
uint _waitFrames;
uint32 _waitStartFrame;
+ int _animateObject;
+ uint32 _animateStartFrame;
+ uint _animateFrameDelay;
+ const AnimationFrame *_animateFrames;
+ uint _animateFrame;
Logo(ScalpelEngine *vm);
~Logo();
@@ -213,6 +224,13 @@ private:
void waitFrames(uint frames);
/**
+ * Start an animation sequence. Used for sequences that are described
+ * one frame at a time because they do unusual things, or run at
+ * unusual rates.
+ */
+ void startAnimation(uint object, uint frameDelay, const AnimationFrame *frames);
+
+ /**
* Load the background for the scene
*/
void loadBackground();