diff options
author | Travis Howell | 2007-04-15 05:04:48 +0000 |
---|---|---|
committer | Travis Howell | 2007-04-15 05:04:48 +0000 |
commit | 2d3e77db85b50ae7f6b36bfff658dd02c29f9155 (patch) | |
tree | d4e75497f6706675ff8531826688e21828a94d98 /engines/agos | |
parent | 1c00843f2be1ccfd74182d0268d43fdf8dfcec6f (diff) | |
download | scummvm-rg350-2d3e77db85b50ae7f6b36bfff658dd02c29f9155.tar.gz scummvm-rg350-2d3e77db85b50ae7f6b36bfff658dd02c29f9155.tar.bz2 scummvm-rg350-2d3e77db85b50ae7f6b36bfff658dd02c29f9155.zip |
Split game engines, to allow further cleanups.
svn-id: r26481
Diffstat (limited to 'engines/agos')
-rw-r--r-- | engines/agos/agos.cpp | 29 | ||||
-rw-r--r-- | engines/agos/agos.h | 107 | ||||
-rw-r--r-- | engines/agos/cursor.cpp | 7 | ||||
-rw-r--r-- | engines/agos/draw.cpp | 2 | ||||
-rw-r--r-- | engines/agos/game.cpp | 49 | ||||
-rw-r--r-- | engines/agos/icons.cpp | 10 | ||||
-rw-r--r-- | engines/agos/script.cpp | 16 | ||||
-rw-r--r-- | engines/agos/script_e1.cpp | 2 | ||||
-rw-r--r-- | engines/agos/script_e2.cpp | 4 | ||||
-rw-r--r-- | engines/agos/script_ff.cpp | 4 | ||||
-rw-r--r-- | engines/agos/script_pp.cpp | 4 | ||||
-rw-r--r-- | engines/agos/script_s1.cpp | 4 | ||||
-rw-r--r-- | engines/agos/script_s2.cpp | 4 | ||||
-rw-r--r-- | engines/agos/script_ww.cpp | 4 | ||||
-rw-r--r-- | engines/agos/vga.cpp | 16 | ||||
-rw-r--r-- | engines/agos/vga_e2.cpp | 4 | ||||
-rw-r--r-- | engines/agos/vga_ff.cpp | 4 | ||||
-rw-r--r-- | engines/agos/vga_s1.cpp | 4 | ||||
-rw-r--r-- | engines/agos/vga_s2.cpp | 4 | ||||
-rw-r--r-- | engines/agos/vga_ww.cpp | 4 |
20 files changed, 192 insertions, 90 deletions
diff --git a/engines/agos/agos.cpp b/engines/agos/agos.cpp index 90e7e8aa78..ce22b3c424 100644 --- a/engines/agos/agos.cpp +++ b/engines/agos/agos.cpp @@ -72,6 +72,35 @@ static const GameSpecificSettings puzzlepack_settings = { }; #endif + +AGOSEngine_PuzzlePack::AGOSEngine_PuzzlePack(OSystem *system) + : AGOSEngine_Feeble(system) { +} + +AGOSEngine_Feeble::AGOSEngine_Feeble(OSystem *system) + : AGOSEngine_Simon2(system) { +} + +AGOSEngine_Simon2::AGOSEngine_Simon2(OSystem *system) + : AGOSEngine_Simon1(system) { +} + +AGOSEngine_Simon1::AGOSEngine_Simon1(OSystem *system) + : AGOSEngine_Waxworks(system) { +} + +AGOSEngine_Waxworks::AGOSEngine_Waxworks(OSystem *system) + : AGOSEngine_Elvira2(system) { +} + +AGOSEngine_Elvira2::AGOSEngine_Elvira2(OSystem *system) + : AGOSEngine_Elvira1(system) { +} + +AGOSEngine_Elvira1::AGOSEngine_Elvira1(OSystem *system) + : AGOSEngine(system) { +} + AGOSEngine::AGOSEngine(OSystem *syst) : Engine(syst) { _vcPtr = 0; diff --git a/engines/agos/agos.h b/engines/agos/agos.h index f8c602de1a..6d32474f4b 100644 --- a/engines/agos/agos.h +++ b/engines/agos/agos.h @@ -130,17 +130,10 @@ class AGOSEngine : public Engine { GUI::Debugger *getDebugger(); +public: typedef void (AGOSEngine::*OpcodeProc) (); - void setupCommonOpcodes(OpcodeProc *op); - - void setupElvira1Opcodes(OpcodeProc *op); - void setupElvira2Opcodes(OpcodeProc *op); - void setupWaxworksOpcodes(OpcodeProc *op); - void setupSimon1Opcodes(OpcodeProc *op); - void setupSimon2Opcodes(OpcodeProc *op); - void setupFeebleOpcodes(OpcodeProc *op); - void setupPuzzleOpcodes(OpcodeProc *op); + virtual void setupOpcodes(OpcodeProc *op); void setupOpcodes(); OpcodeProc _opcode_table[300]; @@ -152,16 +145,8 @@ class AGOSEngine : public Engine { VgaOpcodeProc _vga_opcode_table[100]; uint _numVideoOpcodes; - void setupCommonVideoOpcodes(VgaOpcodeProc *op); - - void setupElvira1VideoOpcodes(VgaOpcodeProc *op); - void setupElvira2VideoOpcodes(VgaOpcodeProc *op); - void setupWaxworksVideoOpcodes(VgaOpcodeProc *op); - void setupSimon1VideoOpcodes(VgaOpcodeProc *op); - void setupSimon2VideoOpcodes(VgaOpcodeProc *op); - void setupFeebleVideoOpcodes(VgaOpcodeProc *op); + virtual void setupVideoOpcodes(VgaOpcodeProc *op); -public: const AGOSGameDescription *_gameDescription; bool initGame(void); @@ -777,8 +762,7 @@ protected: void handleMouseMoved(); void initMouse(); void loadMouseImage(); - void drawMousePointer(); - void drawMousePointer_FF(); + virtual void drawMousePointer(); void drawMousePart(int image, byte x, byte y); void addArrows(WindowBlock *window); @@ -788,9 +772,10 @@ protected: bool hasIcon(Item *item); uint itemGetIconNumber(Item *item); uint setupIconHitArea(WindowBlock *window, uint num, uint x, uint y, Item *item_ptr); - void drawIconArray(uint i, Item *item_ptr, int line, int classMask); - void drawIconArray_FF(uint i, Item *item_ptr, int line, int classMask); - void drawIconArray_Simon(uint i, Item *item_ptr, int line, int classMask); + + virtual void drawIconArray(uint i, Item *item_ptr, int line, int classMask); + + void removeIconArray(uint num); void loadIconData(); @@ -1425,6 +1410,82 @@ protected: char *genSaveName(int slot); }; +class AGOSEngine_Elvira1 : public AGOSEngine { +public: + AGOSEngine_Elvira1(OSystem *system); + //~AGOSEngine_Elvira1(); + + + virtual void setupOpcodes(OpcodeProc *op); + virtual void setupVideoOpcodes(VgaOpcodeProc *op); +private: +}; + +class AGOSEngine_Elvira2 : public AGOSEngine_Elvira1 { +public: + AGOSEngine_Elvira2(OSystem *system); + //~AGOSEngine_Elvira2(); + + virtual void setupOpcodes(OpcodeProc *op); + virtual void setupVideoOpcodes(VgaOpcodeProc *op); +private: +}; + +class AGOSEngine_Waxworks : public AGOSEngine_Elvira2 { +public: + AGOSEngine_Waxworks(OSystem *system); + //~AGOSEngine_Waxworks(); + + virtual void setupOpcodes(OpcodeProc *op); + virtual void setupVideoOpcodes(VgaOpcodeProc *op); +private: +}; + +class AGOSEngine_Simon1 : public AGOSEngine_Waxworks { +public: + AGOSEngine_Simon1(OSystem *system); + //~AGOSEngine_Simon1(); + + virtual void setupOpcodes(OpcodeProc *op); + virtual void setupVideoOpcodes(VgaOpcodeProc *op); +private: +}; + +class AGOSEngine_Simon2 : public AGOSEngine_Simon1 { +public: + AGOSEngine_Simon2(OSystem *system); + //~AGOSEngine_Simon2(); + + virtual void setupOpcodes(OpcodeProc *op); + virtual void setupVideoOpcodes(VgaOpcodeProc *op); +private: +}; + +class AGOSEngine_Feeble : public AGOSEngine_Simon2 { +public: + AGOSEngine_Feeble(OSystem *system); + //~AGOSEngine_Feeble(); + + virtual void setupOpcodes(OpcodeProc *op); + virtual void setupVideoOpcodes(VgaOpcodeProc *op); + + virtual void drawMousePointer(); +protected: + virtual void drawIconArray(uint i, Item *item_ptr, int line, int classMask); + +private: +}; + +class AGOSEngine_PuzzlePack : public AGOSEngine_Feeble { +public: + AGOSEngine_PuzzlePack(OSystem *system); + //~AGOSEngine_PuzzlePack(); + + virtual void setupOpcodes(OpcodeProc *op); + +private: +}; + } // End of namespace AGOS #endif diff --git a/engines/agos/cursor.cpp b/engines/agos/cursor.cpp index 33471f2e43..8575d17de0 100644 --- a/engines/agos/cursor.cpp +++ b/engines/agos/cursor.cpp @@ -436,10 +436,7 @@ boxstuff: _lastHitArea3 = (HitArea *) -1; get_out: - if (getGameType() == GType_FF) - drawMousePointer_FF(); - else - drawMousePointer(); + drawMousePointer(); _needHitAreaRecalc = 0; _litBoxFlag = 0; @@ -545,7 +542,7 @@ void AGOSEngine::drawMousePointer() { } } -void AGOSEngine::drawMousePointer_FF() { +void AGOSEngine_Feeble::drawMousePointer() { uint cursor; int image, offs; diff --git a/engines/agos/draw.cpp b/engines/agos/draw.cpp index c48db940ee..48d275bea7 100644 --- a/engines/agos/draw.cpp +++ b/engines/agos/draw.cpp @@ -96,7 +96,6 @@ void AGOSEngine::animateSprites() { void AGOSEngine::animateSpritesDebug() { VgaSprite *vsp; VgaPointersEntry *vpe; - VC10_state state; if (_paletteFlag == 2) _paletteFlag = 1; @@ -127,7 +126,6 @@ void AGOSEngine::animateSpritesDebug() { void AGOSEngine::animateSpritesByY() { VgaSprite *vsp; VgaPointersEntry *vpe; - VC10_state state; int16 spriteTable[180][2]; byte *src; diff --git a/engines/agos/game.cpp b/engines/agos/game.cpp index e0e60c43a2..e1be6d88f1 100644 --- a/engines/agos/game.cpp +++ b/engines/agos/game.cpp @@ -26,6 +26,7 @@ #include "base/plugins.h" #include "common/advancedDetector.h" +#include "common/config-manager.h" #include "agos/agos.h" @@ -102,8 +103,54 @@ static const Common::ADParams detectionParams = { Common::kADFlagAugmentPreferredTarget }; -ADVANCED_DETECTOR_DEFINE_PLUGIN(AGOS, AGOS::AGOSEngine, detectionParams); +GameList Engine_AGOS_gameIDList() { + return GameList(simonGames); +} + +GameDescriptor Engine_AGOS_findGameID(const char *gameid) { + return Common::AdvancedDetector::findGameID(gameid, detectionParams); +} + +GameList Engine_AGOS_detectGames(const FSList &fslist) { + return Common::AdvancedDetector::detectAllGames(fslist, detectionParams); +} +PluginError Engine_AGOS_create(OSystem *syst, Engine **engine) { + assert(engine); + const char *gameid = ConfMan.get("gameid").c_str(); + + //const AGOSGameDescription gd = (const AGOSGameDescription *)Common::AdvancedDetector::detectBestMatchingGame(detectionParams); + //if (gd == 0) { + // return kNoGameDataFoundError; + //} + + if (!scumm_stricmp("elvira1", gameid)) { + *engine = new AGOS::AGOSEngine_Elvira1(syst); + } else if (!scumm_stricmp("elvira2", gameid)) { + *engine = new AGOS::AGOSEngine_Elvira2(syst); + } else if (!scumm_stricmp("waxworks", gameid)) { + *engine = new AGOS::AGOSEngine_Waxworks(syst); + } else if (!scumm_stricmp("simon1", gameid)) { + *engine = new AGOS::AGOSEngine_Simon1(syst); + } else if (!scumm_stricmp("simon2", gameid)) { + *engine = new AGOS::AGOSEngine_Simon2(syst); + } else if (!scumm_stricmp("feeble", gameid)) { + *engine = new AGOS::AGOSEngine_Feeble(syst); + + } else if (!scumm_stricmp("jumble", gameid)) { + *engine = new AGOS::AGOSEngine_PuzzlePack(syst); + } else if (!scumm_stricmp("puzzle", gameid)) { + *engine = new AGOS::AGOSEngine_PuzzlePack(syst); + } else if (!scumm_stricmp("swampy", gameid)) { + *engine = new AGOS::AGOSEngine_PuzzlePack(syst); + + } else { + error("AGOS engine created with invalid gameid"); + } + + return kNoError; +} + REGISTER_PLUGIN(AGOS, "AGOS", "AGOS (C) Adventure Soft"); namespace AGOS { diff --git a/engines/agos/icons.cpp b/engines/agos/icons.cpp index 4a67a914d8..3c3810163f 100644 --- a/engines/agos/icons.cpp +++ b/engines/agos/icons.cpp @@ -243,14 +243,6 @@ void AGOSEngine::drawIcon(WindowBlock *window, uint icon, uint x, uint y) { } void AGOSEngine::drawIconArray(uint num, Item *itemRef, int line, int classMask) { - if (getGameType() == GType_FF) { - drawIconArray_FF(num, itemRef, line, classMask); - } else { - drawIconArray_Simon(num, itemRef, line, classMask); - } -} - -void AGOSEngine::drawIconArray_Simon(uint num, Item *itemRef, int line, int classMask) { Item *item_ptr_org = itemRef; WindowBlock *window; uint width, height; @@ -350,7 +342,7 @@ void AGOSEngine::drawIconArray_Simon(uint num, Item *itemRef, int line, int clas } } -void AGOSEngine::drawIconArray_FF(uint num, Item *itemRef, int line, int classMask) { +void AGOSEngine_Feeble::drawIconArray(uint num, Item *itemRef, int line, int classMask) { Item *item_ptr_org = itemRef; WindowBlock *window; uint16 flagnumber = 201; diff --git a/engines/agos/script.cpp b/engines/agos/script.cpp index 99f639474d..57cd96350b 100644 --- a/engines/agos/script.cpp +++ b/engines/agos/script.cpp @@ -36,7 +36,7 @@ extern bool isSmartphone(void); namespace AGOS { -void AGOSEngine::setupCommonOpcodes(OpcodeProc *op) { +void AGOSEngine::setupOpcodes(OpcodeProc *op) { // A common set of opcodes for Elvira 2 and later. op[1] = &AGOSEngine::o_at; @@ -147,25 +147,13 @@ void AGOSEngine::setupOpcodes() { switch (getGameType()) { case GType_ELVIRA1: - setupElvira1Opcodes(_opcode_table); - break; case GType_ELVIRA2: - setupElvira2Opcodes(_opcode_table); - break; case GType_WW: - setupWaxworksOpcodes(_opcode_table); - break; case GType_SIMON1: - setupSimon1Opcodes(_opcode_table); - break; case GType_SIMON2: - setupSimon2Opcodes(_opcode_table); - break; case GType_FF: - setupFeebleOpcodes(_opcode_table); - break; case GType_PP: - setupPuzzleOpcodes(_opcode_table); + setupOpcodes(_opcode_table); break; default: error("setupOpcodes: Unknown game"); diff --git a/engines/agos/script_e1.cpp b/engines/agos/script_e1.cpp index a8006b4627..3c17d67f2f 100644 --- a/engines/agos/script_e1.cpp +++ b/engines/agos/script_e1.cpp @@ -28,7 +28,7 @@ namespace AGOS { -void AGOSEngine::setupElvira1Opcodes(OpcodeProc *op) { +void AGOSEngine_Elvira1::setupOpcodes(OpcodeProc *op) { op[0] = &AGOSEngine::o_at; op[1] = &AGOSEngine::o_notAt; op[2] = &AGOSEngine::oe1_present; diff --git a/engines/agos/script_e2.cpp b/engines/agos/script_e2.cpp index 0da38a31c2..ac4d40a446 100644 --- a/engines/agos/script_e2.cpp +++ b/engines/agos/script_e2.cpp @@ -27,8 +27,8 @@ namespace AGOS { -void AGOSEngine::setupElvira2Opcodes(OpcodeProc *op) { - setupCommonOpcodes(op); +void AGOSEngine_Elvira2::setupOpcodes(OpcodeProc *op) { + AGOSEngine::setupOpcodes(op); op[8] = &AGOSEngine::oe1_isNotAt; op[9] = &AGOSEngine::oe1_sibling; diff --git a/engines/agos/script_ff.cpp b/engines/agos/script_ff.cpp index 59c42c94ed..912110bb9d 100644 --- a/engines/agos/script_ff.cpp +++ b/engines/agos/script_ff.cpp @@ -30,8 +30,8 @@ namespace AGOS { -void AGOSEngine::setupFeebleOpcodes(OpcodeProc *op) { - setupCommonOpcodes(op); +void AGOSEngine_Feeble::setupOpcodes(OpcodeProc *op) { + AGOSEngine::setupOpcodes(op); op[23] = &AGOSEngine::off_chance; op[37] = &AGOSEngine::off_jumpOut; diff --git a/engines/agos/script_pp.cpp b/engines/agos/script_pp.cpp index ef865a58ad..02660e2c8d 100644 --- a/engines/agos/script_pp.cpp +++ b/engines/agos/script_pp.cpp @@ -29,8 +29,8 @@ namespace AGOS { -void AGOSEngine::setupPuzzleOpcodes(OpcodeProc *op) { - setupCommonOpcodes(op); +void AGOSEngine_PuzzlePack::setupOpcodes(OpcodeProc *op) { + AGOSEngine::setupOpcodes(op); op[23] = &AGOSEngine::off_chance; op[30] = &AGOSEngine::opp_iconifyWindow; diff --git a/engines/agos/script_s1.cpp b/engines/agos/script_s1.cpp index eeb17515f6..d464833431 100644 --- a/engines/agos/script_s1.cpp +++ b/engines/agos/script_s1.cpp @@ -33,8 +33,8 @@ extern bool isSmartphone(void); namespace AGOS { -void AGOSEngine::setupSimon1Opcodes(OpcodeProc *op) { - setupCommonOpcodes(op); +void AGOSEngine_Simon1::setupOpcodes(OpcodeProc *op) { + AGOSEngine::setupOpcodes(op); op[65] = &AGOSEngine::oww_addTextBox; op[66] = &AGOSEngine::oww_setShortText; diff --git a/engines/agos/script_s2.cpp b/engines/agos/script_s2.cpp index 27ab3d2af2..ea2ef5d1bb 100644 --- a/engines/agos/script_s2.cpp +++ b/engines/agos/script_s2.cpp @@ -27,8 +27,8 @@ namespace AGOS { -void AGOSEngine::setupSimon2Opcodes(OpcodeProc *op) { - setupCommonOpcodes(op); +void AGOSEngine_Simon2::setupOpcodes(OpcodeProc *op) { + AGOSEngine::setupOpcodes(op); op[65] = &AGOSEngine::oww_addTextBox; op[66] = &AGOSEngine::oww_setShortText; diff --git a/engines/agos/script_ww.cpp b/engines/agos/script_ww.cpp index 5b192a4199..398530cd47 100644 --- a/engines/agos/script_ww.cpp +++ b/engines/agos/script_ww.cpp @@ -29,8 +29,8 @@ namespace AGOS { -void AGOSEngine::setupWaxworksOpcodes(OpcodeProc *op) { - setupCommonOpcodes(op); +void AGOSEngine_Waxworks::setupOpcodes(OpcodeProc *op) { + AGOSEngine::setupOpcodes(op); op[8] = &AGOSEngine::oe1_isNotAt; op[9] = &AGOSEngine::oe1_sibling; diff --git a/engines/agos/vga.cpp b/engines/agos/vga.cpp index 96b9551fa6..e0bd4f2e13 100644 --- a/engines/agos/vga.cpp +++ b/engines/agos/vga.cpp @@ -33,7 +33,7 @@ namespace AGOS { // Opcode tables -void AGOSEngine::setupCommonVideoOpcodes(VgaOpcodeProc *op) { +void AGOSEngine::setupVideoOpcodes(VgaOpcodeProc *op) { op[1] = &AGOSEngine::vc1_fadeOut; op[2] = &AGOSEngine::vc2_call; op[3] = &AGOSEngine::vc3_loadSprite; @@ -81,7 +81,7 @@ void AGOSEngine::setupCommonVideoOpcodes(VgaOpcodeProc *op) { op[55] = &AGOSEngine::vc55_moveBox; } -void AGOSEngine::setupElvira1VideoOpcodes(VgaOpcodeProc *op) { +void AGOSEngine_Elvira1::setupVideoOpcodes(VgaOpcodeProc *op) { op[1] = &AGOSEngine::vc1_fadeOut; op[2] = &AGOSEngine::vc2_call; op[3] = &AGOSEngine::vc3_loadSprite; @@ -130,23 +130,13 @@ void AGOSEngine::setupVgaOpcodes() { switch (getGameType()) { case GType_ELVIRA1: - setupElvira1VideoOpcodes(_vga_opcode_table); - break; case GType_ELVIRA2: - setupElvira2VideoOpcodes(_vga_opcode_table); - break; case GType_WW: - setupWaxworksVideoOpcodes(_vga_opcode_table); - break; case GType_SIMON1: - setupSimon1VideoOpcodes(_vga_opcode_table); - break; case GType_SIMON2: - setupSimon2VideoOpcodes(_vga_opcode_table); - break; case GType_FF: case GType_PP: - setupFeebleVideoOpcodes(_vga_opcode_table); + setupVideoOpcodes(_vga_opcode_table); break; default: error("setupVgaOpcodes: Unknown game"); diff --git a/engines/agos/vga_e2.cpp b/engines/agos/vga_e2.cpp index fa454db4d9..5342d4c0d4 100644 --- a/engines/agos/vga_e2.cpp +++ b/engines/agos/vga_e2.cpp @@ -31,8 +31,8 @@ namespace AGOS { -void AGOSEngine::setupElvira2VideoOpcodes(VgaOpcodeProc *op) { - setupCommonVideoOpcodes(op); +void AGOSEngine_Elvira2::setupVideoOpcodes(VgaOpcodeProc *op) { + AGOSEngine::setupVideoOpcodes(op); op[17] = &AGOSEngine::vc17_waitEnd; op[19] = &AGOSEngine::vc19_loop; diff --git a/engines/agos/vga_ff.cpp b/engines/agos/vga_ff.cpp index 3097bc1eef..e5d85743e5 100644 --- a/engines/agos/vga_ff.cpp +++ b/engines/agos/vga_ff.cpp @@ -28,8 +28,8 @@ namespace AGOS { -void AGOSEngine::setupFeebleVideoOpcodes(VgaOpcodeProc *op) { - setupSimon2VideoOpcodes(op); +void AGOSEngine_Feeble::setupVideoOpcodes(VgaOpcodeProc *op) { + AGOSEngine_Simon2::setupVideoOpcodes(op); op[75] = &AGOSEngine::vc75_setScale; op[76] = &AGOSEngine::vc76_setScaleXOffs; diff --git a/engines/agos/vga_s1.cpp b/engines/agos/vga_s1.cpp index b878699038..9ddc3becf3 100644 --- a/engines/agos/vga_s1.cpp +++ b/engines/agos/vga_s1.cpp @@ -29,8 +29,8 @@ namespace AGOS { -void AGOSEngine::setupSimon1VideoOpcodes(VgaOpcodeProc *op) { - setupCommonVideoOpcodes(op); +void AGOSEngine_Simon1::setupVideoOpcodes(VgaOpcodeProc *op) { + AGOSEngine::setupVideoOpcodes(op); op[11] = &AGOSEngine::vc11_clearPathFinder; op[17] = &AGOSEngine::vc17_setPathfinderItem; diff --git a/engines/agos/vga_s2.cpp b/engines/agos/vga_s2.cpp index d251604181..a273b26e51 100644 --- a/engines/agos/vga_s2.cpp +++ b/engines/agos/vga_s2.cpp @@ -28,8 +28,8 @@ namespace AGOS { -void AGOSEngine::setupSimon2VideoOpcodes(VgaOpcodeProc *op) { - setupSimon1VideoOpcodes(op); +void AGOSEngine_Simon2::setupVideoOpcodes(VgaOpcodeProc *op) { + AGOSEngine_Simon1::setupVideoOpcodes(op); op[56] = &AGOSEngine::vc56_delayLong; op[58] = &AGOSEngine::vc58_changePriority; diff --git a/engines/agos/vga_ww.cpp b/engines/agos/vga_ww.cpp index 5209b91b46..f73476c5cb 100644 --- a/engines/agos/vga_ww.cpp +++ b/engines/agos/vga_ww.cpp @@ -31,8 +31,8 @@ namespace AGOS { -void AGOSEngine::setupWaxworksVideoOpcodes(VgaOpcodeProc *op) { - setupElvira2VideoOpcodes(op); +void AGOSEngine_Waxworks::setupVideoOpcodes(VgaOpcodeProc *op) { + AGOSEngine_Elvira2::setupVideoOpcodes(op); op[58] = &AGOSEngine::vc58_checkCodeWheel; op[60] = &AGOSEngine::vc60_stopAnimation; |