aboutsummaryrefslogtreecommitdiff
path: root/engines/drascula/drascula.h
diff options
context:
space:
mode:
Diffstat (limited to 'engines/drascula/drascula.h')
-rw-r--r--engines/drascula/drascula.h20
1 files changed, 19 insertions, 1 deletions
diff --git a/engines/drascula/drascula.h b/engines/drascula/drascula.h
index e4ff03ffc0..86642319de 100644
--- a/engines/drascula/drascula.h
+++ b/engines/drascula/drascula.h
@@ -36,6 +36,7 @@
#include "common/events.h"
#include "common/keyboard.h"
#include "common/unarj.h"
+#include "common/archive.h"
#include "sound/mixer.h"
@@ -251,6 +252,22 @@ struct CharInfo {
byte charType; // 0 - letters, 1 - signs, 2 - accented
};
+class ArjFile : public Common::SearchSet {
+public:
+ ArjFile();
+ ~ArjFile();
+
+ void enableFallback(bool val) { _fallBack = val; }
+
+ void registerArchive(const Common::String &filename);
+
+ Common::SeekableReadStream *open(const Common::String &filename);
+
+private:
+ bool _fallBack;
+
+};
+
#define NUM_SAVES 10
#define NUM_FLAGS 50
#define DIF_MASK 55
@@ -365,7 +382,7 @@ public:
byte cPal[768];
- Common::ArjFile _arj;
+ ArjFile _arj;
int actorFrames[8];
@@ -754,6 +771,7 @@ private:
void freeTexts(char **ptr);
};
+
} // End of namespace Drascula
#endif /* DRASCULA_H */