diff options
author | Max Horn | 2003-03-07 21:38:46 +0000 |
---|---|---|
committer | Max Horn | 2003-03-07 21:38:46 +0000 |
commit | 7ec34ab1a971a183ab68ff175d2b848a840b5266 (patch) | |
tree | 430f669754106e15b960ee000a9b67c6f5c9c4d8 /scumm/scumm.h | |
parent | bdd2c50af9fb208dcb40692f8d2d5bf67ee0ab53 (diff) | |
download | scummvm-rg350-7ec34ab1a971a183ab68ff175d2b848a840b5266.tar.gz scummvm-rg350-7ec34ab1a971a183ab68ff175d2b848a840b5266.tar.bz2 scummvm-rg350-7ec34ab1a971a183ab68ff175d2b848a840b5266.zip |
refactored some stuff (and made readMAXS virtual, with V2/V3 code having own implementations); cleaned up V6 array shuffle code; made more Scumm member vars/methods protected
svn-id: r6751
Diffstat (limited to 'scumm/scumm.h')
-rw-r--r-- | scumm/scumm.h | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/scumm/scumm.h b/scumm/scumm.h index bcd8966b6e..913f5ab0fc 100644 --- a/scumm/scumm.h +++ b/scumm/scumm.h @@ -564,41 +564,48 @@ protected: void askForDisk(const char *filename, int disknum); bool openResourceFile(const char *filename); -public: +protected: void loadPtrToResource(int type, int i, byte *ptr); void readResTypeList(int id, uint32 tag, const char *name); char *resTypeFromId(int id); void allocResTypeData(int id, uint32 tag, int num, const char *name, int mode); byte *createResource(int type, int index, uint32 size); + int loadResource(int type, int i); void nukeResource(int type, int i); + +public: + bool isGlobInMemory(int type, int index); + bool isResourceLoaded(int type, int index); byte *getResourceAddress(int type, int i); byte *getStringAddress(int i); byte *getStringAddressVar(int i); void ensureResourceLoaded(int type, int i); - int loadResource(int type, int i); int getResourceRoomNr(int type, int index); + +protected: int readSoundResource(int type, int index); int readSoundResourceSmallHeader(int type, int index); void setResourceCounter(int type, int index, byte flag); bool validateResource(const char *str, int type, int index); void increaseResourceCounter(); bool isResourceInUse(int type, int i); - bool isResourceLoaded(int type, int index); void initRoomSubBlocks(); void clearRoomObjects(); void loadRoomObjects(); void loadRoomObjectsSmall(); void readArrayFromIndexFile(); - void readMAXS(); - bool isGlobInMemory(int type, int index); + virtual void readMAXS(); virtual void readIndexFile(); virtual void loadCharset(int i); void nukeCharset(int i); - int _lastLoadedRoom, _roomResource; + int _lastLoadedRoom; +public: + int _roomResource; // FIXME - should be protected but Sound::pauseSounds accesses it byte *findResourceData(uint32 tag, byte *ptr); int getResourceDataSize(byte *ptr); +protected: int getArrayId(); void nukeArray(int a); int defineArray(int a, int b, int c, int d); @@ -611,7 +618,7 @@ public: void destroy(); void dumpResource(char *tag, int index, byte *ptr); - +public: /* Should be in Object class */ byte OF_OWNER_ROOM; int getInventorySlot(); |