diff options
author | Torbjörn Andersson | 2015-06-07 22:00:14 +0200 |
---|---|---|
committer | Torbjörn Andersson | 2015-06-07 22:01:50 +0200 |
commit | 359d4cdb2442aab8d10c21b7724798a3c8c4ed2c (patch) | |
tree | 4eac73cabc6e441453aa225c1fad2414d1525ff2 /engines/sherlock/scalpel/tsage/logo.h | |
parent | 247f6d43f84e30f2b17ac75cc9c9b11d66cf016e (diff) | |
download | scummvm-rg350-359d4cdb2442aab8d10c21b7724798a3c8c4ed2c.tar.gz scummvm-rg350-359d4cdb2442aab8d10c21b7724798a3c8c4ed2c.tar.bz2 scummvm-rg350-359d4cdb2442aab8d10c21b7724798a3c8c4ed2c.zip |
SHERLOCK: Clean up EA logo animation
Since I don't know the TsAGE engine, it's possible that this could
be done in some better way, but I think it's still an improvement
over the old code.
Diffstat (limited to 'engines/sherlock/scalpel/tsage/logo.h')
-rw-r--r-- | engines/sherlock/scalpel/tsage/logo.h | 18 |
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(); |