aboutsummaryrefslogtreecommitdiff
path: root/engines/agos/agos.h
diff options
context:
space:
mode:
Diffstat (limited to 'engines/agos/agos.h')
-rw-r--r--engines/agos/agos.h66
1 files changed, 30 insertions, 36 deletions
diff --git a/engines/agos/agos.h b/engines/agos/agos.h
index 87a1228c6a..b6b5e427e1 100644
--- a/engines/agos/agos.h
+++ b/engines/agos/agos.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -25,7 +25,6 @@
#include "engines/engine.h"
-#include "common/archive.h"
#include "common/array.h"
#include "common/error.h"
#include "common/keyboard.h"
@@ -62,6 +61,14 @@ struct Surface;
namespace AGOS {
+enum {
+ kDebugOpcode = 1 << 0,
+ kDebugVGAOpcode = 1 << 1,
+ kDebugSubroutine = 1 << 2,
+ kDebugVGAScript = 1 << 3,
+ kDebugImageDump = 1 << 4
+};
+
uint fileReadItemID(Common::SeekableReadStream *in);
#define CHECK_BOUNDS(x, y) assert((uint)(x) < ARRAYSIZE(y))
@@ -187,27 +194,6 @@ class Debugger;
# define _OPCODE(ver, x) { &ver::x, "" }
#endif
-class ArchiveMan : public Common::SearchSet {
-public:
- ArchiveMan();
-
- void enableFallback(bool val) { _fallBack = val; }
-
-#ifdef ENABLE_AGOS2
- void registerArchive(const Common::String &filename, int priority);
-#endif
-
- virtual bool hasFile(const Common::String &name) const;
- virtual int listMatchingMembers(Common::ArchiveMemberList &list, const Common::String &pattern) const;
- virtual int listMembers(Common::ArchiveMemberList &list) const;
-
- virtual const Common::ArchiveMemberPtr getMember(const Common::String &name) const;
- virtual Common::SeekableReadStream *createReadStreamForMember(const Common::String &filename) const;
-
-private:
- bool _fallBack;
-};
-
class AGOSEngine : public Engine {
protected:
friend class Debugger;
@@ -346,15 +332,9 @@ protected:
bool _fastMode;
bool _backFlag;
- uint16 _debugMode;
Common::Language _language;
bool _copyProtection;
bool _pause;
- bool _dumpScripts;
- bool _dumpOpcodes;
- bool _dumpVgaScripts;
- bool _dumpVgaOpcodes;
- bool _dumpImages;
bool _speech;
bool _subtitles;
bool _vgaVar9;
@@ -606,6 +586,7 @@ protected:
byte _saveLoadType, _saveLoadSlot;
char _saveLoadName[108];
+ char _saveBuf[200];
Graphics::Surface *_backGroundBuf;
Graphics::Surface *_backBuf;
@@ -622,8 +603,6 @@ public:
AGOSEngine(OSystem *system, const AGOSGameDescription *gd);
virtual ~AGOSEngine();
- ArchiveMan _archives;
-
byte *_curSfxFile;
uint32 _curSfxFileSize;
uint16 _sampleEnd, _sampleWait;
@@ -858,6 +837,9 @@ protected:
void displayBoxStars();
void invertBox(HitArea * ha, byte a, byte b, byte c, byte d);
+ virtual void handleMouseWheelUp();
+ virtual void handleMouseWheelDown();
+
virtual void initMouse();
virtual void handleMouseMoved();
virtual void drawMousePointer();
@@ -1730,10 +1712,13 @@ protected:
void setExitState(Item *i, uint16 n, uint16 d, uint16 s);
void setSRExit(Item *i, int n, int d, uint16 s);
- virtual void listSaveGames(char *dst);
+ virtual void handleMouseWheelUp();
+ virtual void handleMouseWheelDown();
+
+ virtual void listSaveGames();
virtual bool confirmOverWrite(WindowBlock *window);
virtual void userGame(bool load);
- virtual int userGameGetKey(bool *b, char *buf, uint maxChar);
+ virtual int userGameGetKey(bool *b, uint maxChar);
virtual Common::String genSaveName(int slot) const;
};
@@ -1853,6 +1838,9 @@ protected:
virtual void clearName();
+ virtual void handleMouseWheelUp();
+ virtual void handleMouseWheelDown();
+
virtual void drawIcon(WindowBlock *window, uint icon, uint x, uint y);
virtual void initMouse();
@@ -1865,9 +1853,9 @@ protected:
virtual void playSpeech(uint16 speechId, uint16 vgaSpriteId);
- virtual void listSaveGames(char *dst);
+ virtual void listSaveGames();
virtual void userGame(bool load);
- virtual int userGameGetKey(bool *b, char *buf, uint maxChar);
+ virtual int userGameGetKey(bool *b, uint maxChar);
virtual void playMusic(uint16 music, uint16 track);
@@ -1951,6 +1939,7 @@ public:
void off_listSaveGames();
void off_checkCD();
void off_screenTextBox();
+ void off_b2Set();
void off_isAdjNoun();
void off_hyperLinkOn();
void off_hyperLinkOff();
@@ -1993,12 +1982,17 @@ protected:
virtual uint16 readUint16Wrapper(const void *src);
virtual uint32 readUint32Wrapper(const void *src);
+ void setLoyaltyRating(byte rating);
+
void playVideo(const char *filename, bool lastSceneUsed = false);
void stopInteractiveVideo();
virtual void drawImage(VC10_state *state);
void scaleClip(int16 h, int16 w, int16 y, int16 x, int16 scrollY);
+ virtual void handleMouseWheelUp();
+ virtual void handleMouseWheelDown();
+
void drawMousePart(int image, byte x, byte y);
virtual void initMouse();
virtual void drawMousePointer();