aboutsummaryrefslogtreecommitdiff
path: root/saga/animation.h
diff options
context:
space:
mode:
authorTorbjörn Andersson2005-09-24 19:29:55 +0000
committerTorbjörn Andersson2005-09-24 19:29:55 +0000
commit898ddaf04bec6b1215a0bf6db699e772883b2c2e (patch)
treec57967058ede8b766a5f612d9205215f73eed4e6 /saga/animation.h
parentddc0c536b28ee60cebe8a35bcf17f03a0cc5c54f (diff)
downloadscummvm-rg350-898ddaf04bec6b1215a0bf6db699e772883b2c2e.tar.gz
scummvm-rg350-898ddaf04bec6b1215a0bf6db699e772883b2c2e.tar.bz2
scummvm-rg350-898ddaf04bec6b1215a0bf6db699e772883b2c2e.zip
The IHNM intro animations run now, albeit in a slightly buggy fashion:
The intro runs a whole series of animations. Each of these use animation slot 0, like the original. Currently this means we leak a bit of memory for each new animation. More noticeably, we have no way of cancelling outstanding animation events, so unless the animations finish on their own - as some of them do - the events will just pile up, causing the animations to run faster and faster. I don't know if implementing the remaining cutaway opcodes will fix this automagically, or if we need to re-think our approach... svn-id: r18878
Diffstat (limited to 'saga/animation.h')
-rw-r--r--saga/animation.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/saga/animation.h b/saga/animation.h
index a8529ca9ab..0f27ceee35 100644
--- a/saga/animation.h
+++ b/saga/animation.h
@@ -56,7 +56,7 @@ enum AnimationState {
struct Cutaway {
uint16 backgroundResourceId;
uint16 animResourceId;
- int16 maxFrame;
+ int16 cycles;
int16 frameRate;
};
@@ -110,6 +110,8 @@ public:
void loadCutawayList(const byte *resourcePointer, size_t resourceLength);
void freeCutawayList(void);
void playCutaway(int cut, bool fade);
+ void endCutaway(void);
+ void returnFromCutaway(void);
void load(uint16 animId, const byte *animResourceData, size_t animResourceLength);
void freeId(uint16 animId);
@@ -170,6 +172,7 @@ private:
AnimationData *_animations[MAX_ANIMATIONS];
Cutaway *_cutawayList;
int _cutawayListLength;
+ bool _cutawayActive;
};
} // End of namespace Saga