aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Gilbert2009-11-11 09:56:29 +0000
committerPaul Gilbert2009-11-11 09:56:29 +0000
commitfeab5f63ffba57498cdbbcd3127a770a81903777 (patch)
tree40f5291feca31ff3fb81225eb94e1002ae3e5259
parentfaaec05e65c4d4d1b2e079120df5cc14b003d3fd (diff)
downloadscummvm-rg350-feab5f63ffba57498cdbbcd3127a770a81903777.tar.gz
scummvm-rg350-feab5f63ffba57498cdbbcd3127a770a81903777.tar.bz2
scummvm-rg350-feab5f63ffba57498cdbbcd3127a770a81903777.zip
Beginnings of support for AA file animations. The mads_anim.cpp commit is part of this, not the previous commit
svn-id: r45828
-rw-r--r--engines/m4/mads_anim.h23
1 files changed, 21 insertions, 2 deletions
diff --git a/engines/m4/mads_anim.h b/engines/m4/mads_anim.h
index 4d380bbda8..ad43e57cc7 100644
--- a/engines/m4/mads_anim.h
+++ b/engines/m4/mads_anim.h
@@ -27,6 +27,7 @@
#define M4_MADS_ANIM_H
#include "m4/viewmgr.h"
+#include "m4/compression.h"
namespace M4 {
@@ -86,13 +87,31 @@ public:
typedef void (*AnimviewCallback)(M4Engine *vm);
+class AAFile: public MadsPack {
+public:
+ AAFile(const char *resourceName, M4Engine* vm);
+
+ uint16 seriesCount;
+ uint16 frameCount;
+ uint16 frameEntryCount;
+ uint8 flags;
+ uint16 roomNumber;
+ uint16 frameTicks;
+ Common::StringList filenames;
+ Common::String lbmFilename;
+ Common::String spritesFilename;
+ Common::String soundName;
+ Common::String fontResource;
+};
+
+enum AAFlags {AA_HAS_FONT = 0x20, AA_HAS_SOUND = 0x8000};
+
class AnimviewView: public View {
private:
char _resourceName[80];
Common::SeekableReadStream *_script;
uint32 _previousUpdate;
char _currentLine[80];
- char _currentFile[10];
M4Surface _bgSurface;
AnimviewCallback _callback;
bool _soundDriverLoaded;
@@ -100,7 +119,7 @@ private:
int _transition;
void reset();
- void processLines();
+ void readNextCommand();
void processCommand();
public:
AnimviewView(M4Engine *vm);