aboutsummaryrefslogtreecommitdiff
path: root/scumm/intern.h
diff options
context:
space:
mode:
authorMax Horn2005-04-03 22:56:02 +0000
committerMax Horn2005-04-03 22:56:02 +0000
commit3feadcac28466679ce6559877e9144f6410c6ddd (patch)
tree999d544d281fb91ba40ff24491778e5ddce39239 /scumm/intern.h
parent1419f0d5ef32d8ae811b567616070cf916792320 (diff)
downloadscummvm-rg350-3feadcac28466679ce6559877e9144f6410c6ddd.tar.gz
scummvm-rg350-3feadcac28466679ce6559877e9144f6410c6ddd.tar.bz2
scummvm-rg350-3feadcac28466679ce6559877e9144f6410c6ddd.zip
Turned readRoomsOffsets into a virtual method
svn-id: r17363
Diffstat (limited to 'scumm/intern.h')
-rw-r--r--scumm/intern.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/scumm/intern.h b/scumm/intern.h
index f27b314e35..df813bb47c 100644
--- a/scumm/intern.h
+++ b/scumm/intern.h
@@ -187,6 +187,9 @@ protected:
void o5_walkActorToObject();
};
+/**
+ * Engine for version 4 SCUMM games; GF_SMALL_HEADER is always set for these.
+ */
class ScummEngine_v4 : public ScummEngine_v5 {
public:
ScummEngine_v4(GameDetector *detector, OSystem *syst, const ScummGameSettings &gs, uint8 md5sum[16]);
@@ -202,14 +205,21 @@ protected:
void setupRoomObject(ObjectData *od, const byte *room, const byte *searchptr = NULL);
};
+/**
+ * Engine for version 3 SCUMM games; GF_SMALL_NAMES is always set for these.
+ */
class ScummEngine_v3 : public ScummEngine_v4 {
public:
ScummEngine_v3(GameDetector *detector, OSystem *syst, const ScummGameSettings &gs, uint8 md5sum[16]);
protected:
+ void readRoomsOffsets();
void loadCharset(int no);
};
+/**
+ * Engine for old format version 3 SCUMM games; GF_OLD_BUNDLE is always set for these.
+ */
class ScummEngine_v3old : public ScummEngine_v3 {
public:
ScummEngine_v3old(GameDetector *detector, OSystem *syst, const ScummGameSettings &gs, uint8 md5sum[16]);
@@ -221,6 +231,9 @@ protected:
void loadRoomObjects();
};
+/**
+ * Engine for version 2 SCUMM games.
+ */
class ScummEngine_v2 : public ScummEngine_v3old {
protected:
void readIndexFile();
@@ -674,6 +687,8 @@ protected:
virtual void executeOpcode(byte i);
virtual const char *getOpcodeDesc(byte i);
+ void readRoomsOffsets();
+
virtual void redrawBGAreas();
int getStringCharWidth(byte chr);