diff options
-rw-r--r-- | engines/hopkins/globals.cpp | 22 | ||||
-rw-r--r-- | engines/hopkins/globals.h | 2 | ||||
-rw-r--r-- | engines/hopkins/hopkins.cpp | 50 | ||||
-rw-r--r-- | engines/hopkins/hopkins.h | 6 |
4 files changed, 38 insertions, 42 deletions
diff --git a/engines/hopkins/globals.cpp b/engines/hopkins/globals.cpp index 69927c999f..a9a39e2b50 100644 --- a/engines/hopkins/globals.cpp +++ b/engines/hopkins/globals.cpp @@ -146,7 +146,6 @@ Globals::Globals() { BUF_ZONE = NULL; SPRITE_ECRAN = NULL; _saveData = NULL; - _inventoryObject = NULL; _answerBuffer = g_PTRNUL; _objectDataBuf = NULL; PERSO = NULL; @@ -181,7 +180,6 @@ Globals::~Globals() { _hidingItemData[idx] = freeMemory(_hidingItemData[idx]); freeMemory(SPRITE_ECRAN); freeMemory((byte *)_saveData); - freeMemory(_inventoryObject); freeMemory(_answerBuffer); freeMemory(_objectDataBuf); freeMemory(PERSO); @@ -261,7 +259,6 @@ void Globals::clearAll() { _boxWidth = 240; _vm->_eventsManager._objectBuf = allocMemory(2500); - _inventoryObject = allocMemory(2500); _objectDataBuf = g_PTRNUL; } @@ -360,15 +357,16 @@ void Globals::resetHidingItems() { } for (int idx = 0; idx <= 20; ++idx) { - _hidingItem[idx]._spriteData = g_PTRNUL; - _hidingItem[idx]._x = 0; - _hidingItem[idx]._y = 0; - _hidingItem[idx]._spriteIndex = 0; - _hidingItem[idx]._useCount = 0; - _hidingItem[idx]._width = 0; - _hidingItem[idx]._height = 0; - _hidingItem[idx].field10 = false; - _hidingItem[idx].field14 = 0; + HidingItem *hid = &_hidingItem[idx]; + hid->_spriteData = g_PTRNUL; + hid->_x = 0; + hid->_y = 0; + hid->_spriteIndex = 0; + hid->_useCount = 0; + hid->_width = 0; + hid->_height = 0; + hid->field10 = false; + hid->field14 = 0; } _hidingActiveFl = false; diff --git a/engines/hopkins/globals.h b/engines/hopkins/globals.h index cd566a2134..9986abb810 100644 --- a/engines/hopkins/globals.h +++ b/engines/hopkins/globals.h @@ -236,8 +236,6 @@ class Globals { private: HopkinsEngine *_vm; - byte *_inventoryObject; - void initAnimBqe(); void initVBob(); diff --git a/engines/hopkins/hopkins.cpp b/engines/hopkins/hopkins.cpp index ccf431422e..3d4d152229 100644 --- a/engines/hopkins/hopkins.cpp +++ b/engines/hopkins/hopkins.cpp @@ -1285,55 +1285,55 @@ bool HopkinsEngine::runFull() { break; case 77: - OCEAN(77, "OCEAN01", DIR_RIGHT, 0, 84, 0, 0, 25); + handleOceanMaze(77, "OCEAN01", DIR_RIGHT, 0, 84, 0, 0, 25); break; case 78: - OCEAN(78, "OCEAN02", DIR_UP, 0, 91, 84, 0, 25); + handleOceanMaze(78, "OCEAN02", DIR_UP, 0, 91, 84, 0, 25); break; case 79: - OCEAN(79, "OCEAN03", DIR_LEFT, 87, 0, 0, 83, 25); + handleOceanMaze(79, "OCEAN03", DIR_LEFT, 87, 0, 0, 83, 25); break; case 80: - OCEAN(80, "OCEAN04", DIR_UP, 86, 88, 0, 81, 25); + handleOceanMaze(80, "OCEAN04", DIR_UP, 86, 88, 0, 81, 25); break; case 81: - OCEAN(81, "OCEAN05", DIR_UP, 91, 82, 80, 85, 25); + handleOceanMaze(81, "OCEAN05", DIR_UP, 91, 82, 80, 85, 25); break; case 82: - OCEAN(82, "OCEAN06", DIR_LEFT, 81, 0, 88, 0, 25); + handleOceanMaze(82, "OCEAN06", DIR_LEFT, 81, 0, 88, 0, 25); break; case 83: - OCEAN(83, "OCEAN07", DIR_UP, 89, 0, 79, 88, 25); + handleOceanMaze(83, "OCEAN07", DIR_UP, 89, 0, 79, 88, 25); break; case 84: - OCEAN(84, "OCEAN08", DIR_UP, 77, 0, 0, 78, 25); + handleOceanMaze(84, "OCEAN08", DIR_UP, 77, 0, 0, 78, 25); break; case 85: - OCEAN(85, "OCEAN09", DIR_UP, 0, 0, 81, 0, 25); + handleOceanMaze(85, "OCEAN09", DIR_UP, 0, 0, 81, 0, 25); break; case 86: - OCEAN(86, "OCEAN10", DIR_UP, 0, 80, 0, 91, 25); + handleOceanMaze(86, "OCEAN10", DIR_UP, 0, 80, 0, 91, 25); break; case 87: - OCEAN(87, "OCEAN11", DIR_RIGHT, 0, 79, 90, 0, 25); + handleOceanMaze(87, "OCEAN11", DIR_RIGHT, 0, 79, 90, 0, 25); break; case 88: - OCEAN(88, "OCEAN12", DIR_UP, 80, 0, 83, 82, 25); + handleOceanMaze(88, "OCEAN12", DIR_UP, 80, 0, 83, 82, 25); break; case 89: - OCEAN(89, "OCEAN13", DIR_RIGHT, 0, 83, 0, 0, 25); + handleOceanMaze(89, "OCEAN13", DIR_RIGHT, 0, 83, 0, 0, 25); break; case 90: @@ -1341,7 +1341,7 @@ bool HopkinsEngine::runFull() { break; case 91: - OCEAN(91, "OCEAN15", DIR_RIGHT, 78, 81, 86, 0, 25); + handleOceanMaze(91, "OCEAN15", DIR_RIGHT, 78, 81, 86, 0, 25); break; case 93: @@ -2523,7 +2523,7 @@ void HopkinsEngine::displayCredits() { _eventsManager._mouseFl = true; } -void HopkinsEngine::BTOCEAN() { +void HopkinsEngine::handleOceanMouseEvents() { _fontManager.hideText(9); if (_eventsManager._mouseCursorId != 16) return; @@ -2563,7 +2563,7 @@ void HopkinsEngine::BTOCEAN() { else if (_globals._speed == 3) oldX -= 6; _objectsManager.setSpriteX(0, oldX); - OCEAN_HOME(); + setSubmarineSprites(); _eventsManager.VBL(); if (_eventsManager.getMouseButton() == 1 && oldPosX == _eventsManager.getMouseX() && _eventsManager.getMouseY() == oldPosY) { displAnim = true; @@ -2599,7 +2599,7 @@ void HopkinsEngine::BTOCEAN() { else if (_globals._speed == 3) oldX += 6; _objectsManager.setSpriteX(0, oldX); - OCEAN_HOME(); + setSubmarineSprites(); _eventsManager.VBL(); if (_eventsManager.getMouseButton() == 1 && oldPosX == _eventsManager.getMouseX() && _eventsManager.getMouseY() == oldPosY) { displAnim = true; @@ -2621,7 +2621,7 @@ void HopkinsEngine::BTOCEAN() { else if (_globals._speed == 3) oldX += 6; _objectsManager.setSpriteX(0, oldX); - OCEAN_HOME(); + setSubmarineSprites(); _eventsManager.VBL(); if (_eventsManager.getMouseButton() == 1 && oldPosX == _eventsManager.getMouseX() && _eventsManager.getMouseY() == oldPosY) { displAnim = true; @@ -2644,7 +2644,7 @@ void HopkinsEngine::BTOCEAN() { else if (_globals._speed == 3) oldX -= 6; _objectsManager.setSpriteX(0, oldX); - OCEAN_HOME(); + setSubmarineSprites(); _eventsManager.VBL(); if (_eventsManager.getMouseButton() == 1 && oldPosX == _eventsManager.getMouseX() && _eventsManager.getMouseY() == oldPosY) { displAnim = true; @@ -2675,7 +2675,7 @@ void HopkinsEngine::BTOCEAN() { else if (_globals._speed == 3) oldX += 6; _objectsManager.setSpriteX(0, oldX); - OCEAN_HOME(); + setSubmarineSprites(); _eventsManager.VBL(); if (_eventsManager.getMouseButton() == 1 && oldPosX == _eventsManager.getMouseX() && _eventsManager.getMouseY() == oldPosY) { displAnim = true; @@ -2695,7 +2695,7 @@ void HopkinsEngine::BTOCEAN() { else if (_globals._speed == 3) oldX -= 6; _objectsManager.setSpriteX(0, oldX); - OCEAN_HOME(); + setSubmarineSprites(); _eventsManager.VBL(); if (_eventsManager.getMouseButton() == 1 && oldPosX == _eventsManager.getMouseX() && _eventsManager.getMouseY() == oldPosY) break; @@ -2716,7 +2716,7 @@ void HopkinsEngine::BTOCEAN() { } } -void HopkinsEngine::OCEAN_HOME() { +void HopkinsEngine::setSubmarineSprites() { switch (_globals._oceanDirection) { case DIR_UP: _objectsManager.setSpriteIndex(0, 27); @@ -2735,7 +2735,7 @@ void HopkinsEngine::OCEAN_HOME() { } } -void HopkinsEngine::OCEAN(int16 curExitId, Common::String backgroundFilename, Directions defaultDirection, int16 exit1, int16 exit2, int16 exit3, int16 exit4, int16 soundId) { +void HopkinsEngine::handleOceanMaze(int16 curExitId, Common::String backgroundFilename, Directions defaultDirection, int16 exit1, int16 exit2, int16 exit3, int16 exit4, int16 soundId) { _globals._cityMapEnabledFl = false; _graphicsManager._noFadingFl = false; _globals._freezeCharacterFl = false; @@ -2809,9 +2809,9 @@ void HopkinsEngine::OCEAN(int16 curExitId, Common::String backgroundFilename, Di for (;;) { int mouseButton = _eventsManager.getMouseButton(); if (mouseButton && mouseButton == 1) - BTOCEAN(); + handleOceanMouseEvents(); _linesManager.checkZone(); - OCEAN_HOME(); + setSubmarineSprites(); _eventsManager.VBL(); if (_globals._exitId || g_system->getEventManager()->shouldQuit()) break; diff --git a/engines/hopkins/hopkins.h b/engines/hopkins/hopkins.h index 0fd683375f..324d36bbea 100644 --- a/engines/hopkins/hopkins.h +++ b/engines/hopkins/hopkins.h @@ -120,9 +120,9 @@ private: */ void drawBaseMap(); - void BTOCEAN(); - void OCEAN_HOME(); - void OCEAN(int16 curExitId, Common::String backgroundFilename, Directions defaultDirection, int16 exit1, int16 exit2, int16 exit3, int16 exit4, int16 soundId); + void handleOceanMouseEvents(); + void setSubmarineSprites(); + void handleOceanMaze(int16 curExitId, Common::String backgroundFilename, Directions defaultDirection, int16 exit1, int16 exit2, int16 exit3, int16 exit4, int16 soundId); void loadCredits(); void displayCredits(int startPosY, byte *buffer, char colour); void displayCredits(); |