aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/hopkins/hopkins.cpp24
-rw-r--r--engines/hopkins/objects.cpp126
-rw-r--r--engines/hopkins/objects.h8
-rw-r--r--engines/hopkins/talk.cpp8
4 files changed, 79 insertions, 87 deletions
diff --git a/engines/hopkins/hopkins.cpp b/engines/hopkins/hopkins.cpp
index 86cb473f36..3046a2b9f5 100644
--- a/engines/hopkins/hopkins.cpp
+++ b/engines/hopkins/hopkins.cpp
@@ -2540,13 +2540,13 @@ void HopkinsEngine::handleOceanMouseEvents() {
case 1:
switch (_globals._oceanDirection) {
case DIR_UP:
- _objectsManager.SPACTION(_globals.PERSO, "27,26,25,24,23,22,21,20,19,18,-1,", 0, 0, 6, false);
+ _objectsManager.SPACTION(_globals.PERSO, "27,26,25,24,23,22,21,20,19,18,-1,", 6, false);
break;
case DIR_RIGHT:
- _objectsManager.SPACTION(_globals.PERSO, "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,-1,", 0, 0, 6, false);
+ _objectsManager.SPACTION(_globals.PERSO, "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,-1,", 6, false);
break;
case DIR_DOWN:
- _objectsManager.SPACTION(_globals.PERSO, "9,10,11,12,13,14,15,16,17,18,-1,", 0, 0, 6, false);
+ _objectsManager.SPACTION(_globals.PERSO, "9,10,11,12,13,14,15,16,17,18,-1,", 6, false);
break;
default:
break;
@@ -2577,13 +2577,13 @@ void HopkinsEngine::handleOceanMouseEvents() {
case 2:
switch (_globals._oceanDirection) {
case DIR_UP:
- _objectsManager.SPACTION(_globals.PERSO, "27,28,29,30,31,32,33,34,35,36,-1,", 0, 0, 6, false);
+ _objectsManager.SPACTION(_globals.PERSO, "27,28,29,30,31,32,33,34,35,36,-1,", 6, false);
break;
case DIR_DOWN:
- _objectsManager.SPACTION(_globals.PERSO, "9,8,7,6,5,4,3,2,1,0,-1,", 0, 0, 6, false);
+ _objectsManager.SPACTION(_globals.PERSO, "9,8,7,6,5,4,3,2,1,0,-1,", 6, false);
break;
case DIR_LEFT:
- _objectsManager.SPACTION(_globals.PERSO, "18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,-1,", 0, 0, 6, false);
+ _objectsManager.SPACTION(_globals.PERSO, "18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,-1,", 6, false);
break;
default:
break;
@@ -2629,10 +2629,10 @@ void HopkinsEngine::handleOceanMouseEvents() {
}
} while (oldX <= 235);
if (!displAnim)
- _objectsManager.SPACTION(_globals.PERSO, "36,35,34,33,32,31,30,29,28,27,-1,", 0, 0, 6, false);
+ _objectsManager.SPACTION(_globals.PERSO, "36,35,34,33,32,31,30,29,28,27,-1,", 6, false);
break;
case DIR_DOWN:
- _objectsManager.SPACTION(_globals.PERSO, "9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,-1,", 0, 0, 6, false);
+ _objectsManager.SPACTION(_globals.PERSO, "9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,-1,", 6, false);
break;
case DIR_LEFT:
oldX = _objectsManager.getSpriteX(0);
@@ -2652,7 +2652,7 @@ void HopkinsEngine::handleOceanMouseEvents() {
}
} while (oldX > 236);
if (!displAnim)
- _objectsManager.SPACTION(_globals.PERSO, "18,19,20,21,22,23,24,25,26,27,-1,", 0, 0, 6, false);
+ _objectsManager.SPACTION(_globals.PERSO, "18,19,20,21,22,23,24,25,26,27,-1,", 6, false);
break;
default:
break;
@@ -2663,7 +2663,7 @@ void HopkinsEngine::handleOceanMouseEvents() {
case 4:
switch (_globals._oceanDirection) {
case DIR_UP:
- _objectsManager.SPACTION(_globals.PERSO, "27,26,25,24,23,22,21,20,19,18,17,16,15,14,13,12,11,10,9,-1,", 0, 0, 6, false);
+ _objectsManager.SPACTION(_globals.PERSO, "27,26,25,24,23,22,21,20,19,18,17,16,15,14,13,12,11,10,9,-1,", 6, false);
break;
case DIR_RIGHT:
oldX = _objectsManager.getSpriteX(0);
@@ -2683,7 +2683,7 @@ void HopkinsEngine::handleOceanMouseEvents() {
}
} while (oldX <= 235);
if (!displAnim)
- _objectsManager.SPACTION(_globals.PERSO, "0,1,2,3,4,5,6,7,8,9,-1,", 0, 0, 6, false);
+ _objectsManager.SPACTION(_globals.PERSO, "0,1,2,3,4,5,6,7,8,9,-1,", 6, false);
break;
case DIR_LEFT:
oldX = _objectsManager.getSpriteX(0);
@@ -2702,7 +2702,7 @@ void HopkinsEngine::handleOceanMouseEvents() {
if (oldX <= 236) {
if (!displAnim)
- _objectsManager.SPACTION(_globals.PERSO, "18,17,16,15,14,13,12,11,10,9,-1,", 0, 0, 6, false);
+ _objectsManager.SPACTION(_globals.PERSO, "18,17,16,15,14,13,12,11,10,9,-1,", 6, false);
break;
}
}
diff --git a/engines/hopkins/objects.cpp b/engines/hopkins/objects.cpp
index 836fc0df0f..6e6e3046cd 100644
--- a/engines/hopkins/objects.cpp
+++ b/engines/hopkins/objects.cpp
@@ -2757,34 +2757,34 @@ void ObjectsManager::doActionBack(int idx) {
switch (idx) {
case 1:
- ACTION(_gestureBuf, "0,1,2,3,4,5,6,7,8,8,8,8,8,8,7,6,5,4,3,2,1,0,-1,", 0, 0, 8, false);
+ ACTION(_gestureBuf, "0,1,2,3,4,5,6,7,8,8,8,8,8,8,7,6,5,4,3,2,1,0,-1,", 8, false);
break;
case 2:
- SPACTION(_gestureBuf, "0,1,2,3,4,5,6,7,8,9,10,11,12,13,-1,", 0, 0, 8, false);
+ SPACTION(_gestureBuf, "0,1,2,3,4,5,6,7,8,9,10,11,12,13,-1,", 8, false);
break;
case 3:
- SPACTION1(_gestureBuf, "12,11,10,9,8,7,6,5,4,3,2,1,0,-1,", 0, 0, 8);
+ SPACTION1(_gestureBuf, "12,11,10,9,8,7,6,5,4,3,2,1,0,-1,", 8);
break;
case 4:
- ACTION(_gestureBuf, "0,1,2,3,4,5,6,7,8,8,8,8,8,8,9,10,11,12,13,12,11,12,13,12,11,12,13,12,11,10,9,8,7,6,5,4,3,2,1,0,-1,", 0, 0, 8, false);
+ ACTION(_gestureBuf, "0,1,2,3,4,5,6,7,8,8,8,8,8,8,9,10,11,12,13,12,11,12,13,12,11,12,13,12,11,10,9,8,7,6,5,4,3,2,1,0,-1,", 8, false);
break;
case 5:
- SPACTION(_gestureBuf, "15,16,17,18,19,20,21,-1,", 0, 0, 8, false);
+ SPACTION(_gestureBuf, "15,16,17,18,19,20,21,-1,", 8, false);
break;
case 6:
- SPACTION1(_gestureBuf, "20,19,18,17,16,15,-1,", 0, 0, 8);
+ SPACTION1(_gestureBuf, "20,19,18,17,16,15,-1,", 8);
break;
case 7:
- SPACTION(_gestureBuf, "15,16,17,18,19,20,21,22,23,24,-1,", 0, 0, 8, false);
+ SPACTION(_gestureBuf, "15,16,17,18,19,20,21,22,23,24,-1,", 8, false);
break;
case 8:
- SPACTION1(_gestureBuf, "23,22,21,20,19,18,17,16,15,-1,", 0, 0, 8);
+ SPACTION1(_gestureBuf, "23,22,21,20,19,18,17,16,15,-1,", 8);
break;
case 9:
- SPACTION(_gestureBuf, "15,16,17,18,19,20,21,22,23,24,-1,", 0, 0, 8, false);
+ SPACTION(_gestureBuf, "15,16,17,18,19,20,21,22,23,24,-1,", 8, false);
break;
case 10:
- SPACTION1(_gestureBuf, "23,22,21,20,19,18,17,16,15,-1,", 0, 0, 8);
+ SPACTION1(_gestureBuf, "23,22,21,20,19,18,17,16,15,-1,", 8);
break;
}
}
@@ -2798,34 +2798,34 @@ void ObjectsManager::doActionRight(int idx) {
switch (idx) {
case 1:
- ACTION(_gestureBuf, "20,19,18,17,16,15,14,13,13,13,13,13,14,15,16,17,18,19,20,-1,", 0, 0, 8, false);
+ ACTION(_gestureBuf, "20,19,18,17,16,15,14,13,13,13,13,13,14,15,16,17,18,19,20,-1,", 8, false);
break;
case 2:
- SPACTION(_gestureBuf, "1,2,3,4,5,6,7,8,-1,", 0, 0, 8, false);
+ SPACTION(_gestureBuf, "1,2,3,4,5,6,7,8,-1,", 8, false);
break;
case 3:
- SPACTION1(_gestureBuf, "9,10,11,12,13,14,15,16,17,18,19,20,-1,", 0, 0, 8);
+ SPACTION1(_gestureBuf, "9,10,11,12,13,14,15,16,17,18,19,20,-1,", 8);
break;
case 4:
- ACTION(_gestureBuf, "1,2,3,4,5,6,7,8,8,7,6,5,4,3,2,1,-1,", 0, 0, 8, false);
+ ACTION(_gestureBuf, "1,2,3,4,5,6,7,8,8,7,6,5,4,3,2,1,-1,", 8, false);
break;
case 5:
- SPACTION(_gestureBuf, "23,24,25,-1,", 0, 0, 8, false);
+ SPACTION(_gestureBuf, "23,24,25,-1,", 8, false);
break;
case 6:
- SPACTION1(_gestureBuf, "24,,23,-1,", 0, 0, 8);
+ SPACTION1(_gestureBuf, "24,,23,-1,", 8);
break;
case 7:
- SPACTION(_gestureBuf, "23,24,25,26,27,-1,", 0, 0, 8, false);
+ SPACTION(_gestureBuf, "23,24,25,26,27,-1,", 8, false);
break;
case 8:
- SPACTION1(_gestureBuf, "26,25,24,23,-1,", 0, 0, 8);
+ SPACTION1(_gestureBuf, "26,25,24,23,-1,", 8);
break;
case 9:
- SPACTION(_gestureBuf, "23,24,25,26,27,28,29,-1,", 0, 0, 8, false);
+ SPACTION(_gestureBuf, "23,24,25,26,27,28,29,-1,", 8, false);
break;
case 10:
- SPACTION1(_gestureBuf, "28,27,26,25,24,23,-1,", 0, 0, 8);
+ SPACTION1(_gestureBuf, "28,27,26,25,24,23,-1,", 8);
break;
}
}
@@ -2839,34 +2839,34 @@ void ObjectsManager::doActionDiagRight(int idx) {
switch (idx) {
case 1:
- ACTION(_gestureBuf, "0,1,2,3,4,5,6,7,8,8,8,8,8,7,6,5,4,3,2,1,0,-1,", 0, 0, 8, false);
+ ACTION(_gestureBuf, "0,1,2,3,4,5,6,7,8,8,8,8,8,7,6,5,4,3,2,1,0,-1,", 8, false);
break;
case 2:
- SPACTION(_gestureBuf, "0,1,2,3,4,5,6,7,8,9,10,11,12,-1,", 0, 0, 8, false);
+ SPACTION(_gestureBuf, "0,1,2,3,4,5,6,7,8,9,10,11,12,-1,", 8, false);
break;
case 3:
- SPACTION1(_gestureBuf, "11,10,9,8,7,6,5,4,3,2,1,0,-1,", 0, 0, 8);
+ SPACTION1(_gestureBuf, "11,10,9,8,7,6,5,4,3,2,1,0,-1,", 8);
break;
case 4:
- ACTION(_gestureBuf, "0,1,2,3,4,5,6,7,8,9,10,11,12,11,12,11,12,11,12,11,10,9,8,7,6,5,4,3,2,1,0,-1,", 0, 0, 8, false);
+ ACTION(_gestureBuf, "0,1,2,3,4,5,6,7,8,9,10,11,12,11,12,11,12,11,12,11,10,9,8,7,6,5,4,3,2,1,0,-1,", 8, false);
break;
case 5:
- SPACTION(_gestureBuf, "15,16,17,18,-1,", 0, 0, 8, false);
+ SPACTION(_gestureBuf, "15,16,17,18,-1,", 8, false);
break;
case 6:
- SPACTION1(_gestureBuf, "17,16,15,-1,", 0, 0, 8);
+ SPACTION1(_gestureBuf, "17,16,15,-1,", 8);
break;
case 7:
- SPACTION(_gestureBuf, "15,16,17,18,19,20-1,", 0, 0, 8, false);
+ SPACTION(_gestureBuf, "15,16,17,18,19,20-1,", 8, false);
break;
case 8:
- SPACTION1(_gestureBuf, "19,18,17,16,15,-1,", 0, 0, 8);
+ SPACTION1(_gestureBuf, "19,18,17,16,15,-1,", 8);
break;
case 9:
- SPACTION(_gestureBuf, "15,16,17,18,19,20,21,-1,", 0, 0, 8, false);
+ SPACTION(_gestureBuf, "15,16,17,18,19,20,21,-1,", 8, false);
break;
case 10:
- SPACTION1(_gestureBuf, "20,19,18,17,15,-1,", 0, 0, 8);
+ SPACTION1(_gestureBuf, "20,19,18,17,15,-1,", 8);
break;
}
}
@@ -2880,16 +2880,16 @@ void ObjectsManager::doActionFront(int idx) {
switch (idx) {
case 1:
- ACTION(_gestureBuf, "0,1,2,3,4,5,6,7,9,9,9,9,9,9,7,6,5,4,3,2,1,0,-1,", 0, 0, 8, false);
+ ACTION(_gestureBuf, "0,1,2,3,4,5,6,7,9,9,9,9,9,9,7,6,5,4,3,2,1,0,-1,", 8, false);
break;
case 2:
- SPACTION(_gestureBuf, "0,1,2,3,4,5,6,7,9,10,11,12,13,14,15,-1,", 0, 0, 8, false);
+ SPACTION(_gestureBuf, "0,1,2,3,4,5,6,7,9,10,11,12,13,14,15,-1,", 8, false);
break;
case 3:
- SPACTION1(_gestureBuf, "14,13,12,11,10,9,7,6,5,4,3,2,1,0,-1,", 0, 0, 8);
+ SPACTION1(_gestureBuf, "14,13,12,11,10,9,7,6,5,4,3,2,1,0,-1,", 8);
break;
case 4:
- ACTION(_gestureBuf, "0,1,2,3,4,5,6,7,9,10,11,12,13,14,13,12,11,10,9,7,6,5,4,3,2,1,0,-1,", 0, 0, 8, false);
+ ACTION(_gestureBuf, "0,1,2,3,4,5,6,7,9,10,11,12,13,14,13,12,11,10,9,7,6,5,4,3,2,1,0,-1,", 8, false);
break;
}
}
@@ -2903,34 +2903,34 @@ void ObjectsManager::doActionDiagLeft(int idx) {
switch (idx) {
case 1:
- ACTION(_gestureBuf, "0,1,2,3,4,5,6,7,8,8,8,8,8,7,6,5,4,3,2,1,0,-1,", 0, 0, 8, true);
+ ACTION(_gestureBuf, "0,1,2,3,4,5,6,7,8,8,8,8,8,7,6,5,4,3,2,1,0,-1,", 8, true);
break;
case 2:
- SPACTION(_gestureBuf, "0,1,2,3,4,5,6,7,8,9,10,11,12,-1,", 0, 0, 8, true);
+ SPACTION(_gestureBuf, "0,1,2,3,4,5,6,7,8,9,10,11,12,-1,", 8, true);
break;
case 3:
- SPACTION1(_gestureBuf, "11,10,9,8,7,6,5,4,3,2,1,0,-1,", 0, 0, 8);
+ SPACTION1(_gestureBuf, "11,10,9,8,7,6,5,4,3,2,1,0,-1,", 8);
break;
case 4:
- ACTION(_gestureBuf, "0,1,2,3,4,5,6,7,8,9,10,11,12,11,12,11,12,11,12,11,10,9,8,7,6,5,4,3,2,1,0,-1,", 0, 0, 8, true);
+ ACTION(_gestureBuf, "0,1,2,3,4,5,6,7,8,9,10,11,12,11,12,11,12,11,12,11,10,9,8,7,6,5,4,3,2,1,0,-1,", 8, true);
break;
case 5:
- SPACTION(_gestureBuf, "15,16,17,18,-1,", 0, 0, 8, true);
+ SPACTION(_gestureBuf, "15,16,17,18,-1,", 8, true);
break;
case 6:
- SPACTION1(_gestureBuf, "17,16,15,-1,", 0, 0, 8);
+ SPACTION1(_gestureBuf, "17,16,15,-1,", 8);
break;
case 7:
- SPACTION(_gestureBuf, "15,16,17,18,19,20,-1,", 0, 0, 8, true);
+ SPACTION(_gestureBuf, "15,16,17,18,19,20,-1,", 8, true);
break;
case 8:
- SPACTION1(_gestureBuf, "19,18,17,16,15,-1,", 0, 0, 8);
+ SPACTION1(_gestureBuf, "19,18,17,16,15,-1,", 8);
break;
case 9:
- SPACTION(_gestureBuf, "15,16,17,18,19,20,21,-1,", 0, 0, 8, true);
+ SPACTION(_gestureBuf, "15,16,17,18,19,20,21,-1,", 8, true);
break;
case 10:
- SPACTION1(_gestureBuf, "20,19,18,17,15,-1,", 0, 0, 8);
+ SPACTION1(_gestureBuf, "20,19,18,17,15,-1,", 8);
break;
}
}
@@ -2944,34 +2944,34 @@ void ObjectsManager::doActionLeft(int idx) {
switch (idx) {
case 1:
- ACTION(_gestureBuf, "20,19,18,17,16,15,14,13,13,13,13,13,14,15,16,17,18,19,20,-1,", 0, 0, 8, true);
+ ACTION(_gestureBuf, "20,19,18,17,16,15,14,13,13,13,13,13,14,15,16,17,18,19,20,-1,", 8, true);
break;
case 2:
- SPACTION(_gestureBuf, "1,2,3,4,5,6,7,8,-1,", 0, 0, 8, true);
+ SPACTION(_gestureBuf, "1,2,3,4,5,6,7,8,-1,", 8, true);
break;
case 3:
- SPACTION1(_gestureBuf, "9,10,11,12,13,14,15,16,17,18,19,20,-1,", 0, 0, 8);
+ SPACTION1(_gestureBuf, "9,10,11,12,13,14,15,16,17,18,19,20,-1,", 8);
break;
case 4:
- ACTION(_gestureBuf, "1,2,3,4,5,6,7,8,8,7,6,5,4,3,2,1,-1,", 0, 0, 8, true);
+ ACTION(_gestureBuf, "1,2,3,4,5,6,7,8,8,7,6,5,4,3,2,1,-1,", 8, true);
break;
case 5:
- SPACTION(_gestureBuf, "23,24,25,-1,", 0, 0, 8, true);
+ SPACTION(_gestureBuf, "23,24,25,-1,", 8, true);
break;
case 6:
- SPACTION1(_gestureBuf, "24,,23,-1,", 0, 0, 8);
+ SPACTION1(_gestureBuf, "24,,23,-1,", 8);
break;
case 7:
- SPACTION(_gestureBuf, "23,24,25,26,27,-1,", 0, 0, 8, true);
+ SPACTION(_gestureBuf, "23,24,25,26,27,-1,", 8, true);
break;
case 8:
- SPACTION1(_gestureBuf, "26,25,24,23,-1,", 0, 0, 8);
+ SPACTION1(_gestureBuf, "26,25,24,23,-1,", 8);
break;
case 9:
- SPACTION(_gestureBuf, "23,24,25,26,27,28,29,-1,", 0, 0, 8, true);
+ SPACTION(_gestureBuf, "23,24,25,26,27,28,29,-1,", 8, true);
break;
case 10:
- SPACTION1(_gestureBuf, "28,27,26,25,24,23,-1,", 0, 0, 8);
+ SPACTION1(_gestureBuf, "28,27,26,25,24,23,-1,", 8);
break;
}
}
@@ -3316,7 +3316,7 @@ void ObjectsManager::OPTI_BOBON(int idx1, int idx2, int idx3, int anim1Idx, int
setBobAnimDataIdx(idx3, anim3Idx);
}
-void ObjectsManager::SCI_OPTI_ONE(int idx, int animIdx, int a3, int a4) {
+void ObjectsManager::SCI_OPTI_ONE(int idx, int animIdx, int animDataIdx, int a4) {
_vm->_eventsManager._curMouseButton = 0;
_vm->_eventsManager._mouseButton = 0;
@@ -3329,7 +3329,7 @@ void ObjectsManager::SCI_OPTI_ONE(int idx, int animIdx, int a3, int a4) {
_vm->_eventsManager.VBL();
if (_vm->_eventsManager._curMouseButton)
break;
- } while (a3 != getBobAnimDataIdx(idx));
+ } while (animDataIdx != getBobAnimDataIdx(idx));
if (!a4)
stopBobAnimation(idx);
}
@@ -3444,7 +3444,7 @@ void ObjectsManager::enableVerb(int idx, int a2) {
}
}
-void ObjectsManager::ACTION(const byte *spriteData, const Common::String &actionStr, int a3, int a4, int speed, bool flipFl) {
+void ObjectsManager::ACTION(const byte *spriteData, const Common::String &actionStr, int speed, bool flipFl) {
Common::String tmpStr = "";
int realSpeed = speed;
if (_vm->_globals._speed == 2)
@@ -3454,8 +3454,6 @@ void ObjectsManager::ACTION(const byte *spriteData, const Common::String &action
const byte *oldSpriteData = _sprite[0]._spriteData;
int spriteIndex = _sprite[0]._spriteIndex;
bool oldFlipFl = _sprite[0]._flipFl;
- _sprite[0].field12 += a3;
- _sprite[0].field14 += a4;
_sprite[0]._flipFl = flipFl;
int idx = 0;
@@ -3474,8 +3472,6 @@ void ObjectsManager::ACTION(const byte *spriteData, const Common::String &action
if (idx == -1) {
_sprite[0]._spriteData = oldSpriteData;
_sprite[0]._spriteIndex = spriteIndex;
- _sprite[0].field12 -= a3;
- _sprite[0].field14 -= a4;
_sprite[0]._flipFl = oldFlipFl;
} else {
_sprite[0]._spriteData = spriteData;
@@ -3489,7 +3485,7 @@ void ObjectsManager::ACTION(const byte *spriteData, const Common::String &action
}
}
-void ObjectsManager::SPACTION(byte *spriteData, const Common::String &animationSeq, int a3, int a4, int speed, bool flipFl) {
+void ObjectsManager::SPACTION(byte *spriteData, const Common::String &animationSeq, int speed, bool flipFl) {
Common::String tmpStr = "";
int realSpeed = speed;
@@ -3501,8 +3497,6 @@ void ObjectsManager::SPACTION(byte *spriteData, const Common::String &animationS
_oldSpriteData = _sprite[0]._spriteData;
_oldSpriteIndex = _sprite[0]._spriteIndex;
_oldFlipFl = _sprite[0]._flipFl;
- _sprite[0].field12 += a3;
- _sprite[0].field14 += a4;
_sprite[0]._flipFl = flipFl;
uint strPos = 0;
@@ -3533,7 +3527,7 @@ void ObjectsManager::SPACTION(byte *spriteData, const Common::String &animationS
} while (spriteIndex != -1);
}
-void ObjectsManager::SPACTION1(byte *spriteData, const Common::String &animString, int a3, int a4, int speed) {
+void ObjectsManager::SPACTION1(byte *spriteData, const Common::String &animString, int speed) {
Common::String tmpStr = "";
int realSpeed = speed;
if (_vm->_globals._speed == 2)
@@ -3560,8 +3554,6 @@ void ObjectsManager::SPACTION1(byte *spriteData, const Common::String &animStrin
if (spriteIndex == -1) {
_sprite[0]._spriteData = _oldSpriteData;
_sprite[0]._spriteIndex = _oldSpriteIndex;
- _sprite[0].field12 -= a3;
- _sprite[0].field14 -= a4;
_sprite[0]._flipFl = _oldFlipFl;
} else {
_sprite[0]._spriteData = spriteData;
diff --git a/engines/hopkins/objects.h b/engines/hopkins/objects.h
index 1c82ab0662..7c9a321b92 100644
--- a/engines/hopkins/objects.h
+++ b/engines/hopkins/objects.h
@@ -128,7 +128,7 @@ private:
void handleForest(int screenId, int minX, int maxX, int minY, int maxY, int idx);
void SPECIAL_INI();
- void ACTION(const byte *spriteData, const Common::String &actionStr, int a3, int a4, int speed, bool flipFl);
+ void ACTION(const byte *spriteData, const Common::String &actionStr, int speed, bool flipFl);
public:
bool _disableFl;
bool _forestFl;
@@ -228,16 +228,16 @@ public:
void OPTI_OBJET();
void hideBob(int idx);
void displayBob(int idx);
- void SPACTION(byte *spriteData, const Common::String &animationSeq, int a3, int a4, int speed, bool flipFl);
+ void SPACTION(byte *spriteData, const Common::String &animationSeq, int speed, bool flipFl);
void BOB_VIVANT(int idx);
void VBOB(byte *src, int idx, int xp, int yp, int frameIndex);
void VBOB_OFF(int idx);
void OPTI_ONE(int idx, int animIdx, int destPosi, int animAction);
- void SCI_OPTI_ONE(int idx, int animIdx, int a3, int a4);
+ void SCI_OPTI_ONE(int idx, int animIdx, int animDataIdx, int a4);
void GOHOME();
void OPTI_BOBON(int idx1, int idx2, int idx3, int anim1Idx, int anim2Idx, int anim3Idx);
void BOB_OFFSET(int idx, int offset);
- void SPACTION1(byte *spriteData, const Common::String &animString, int a3, int a4, int speed);
+ void SPACTION1(byte *spriteData, const Common::String &animString, int speed);
void PARADISE();
};
diff --git a/engines/hopkins/talk.cpp b/engines/hopkins/talk.cpp
index 98a750d065..ee8dacb452 100644
--- a/engines/hopkins/talk.cpp
+++ b/engines/hopkins/talk.cpp
@@ -870,7 +870,7 @@ void TalkManager::REPONSE2(int zone, int verb) {
if (zone == 22 || zone == 23) {
_vm->_objectsManager.setFlipSprite(0, false);
_vm->_objectsManager.setSpriteIndex(0, 62);
- _vm->_objectsManager.SPACTION(_vm->_objectsManager._forestSprite, "2,3,4,5,6,7,8,9,10,11,12,-1,", 0, 0, 4, false);
+ _vm->_objectsManager.SPACTION(_vm->_objectsManager._forestSprite, "2,3,4,5,6,7,8,9,10,11,12,-1,", 4, false);
if (zone == 22) {
_vm->_objectsManager.lockAnimX(6, _vm->_objectsManager.getBobPosX(3));
_vm->_objectsManager.lockAnimX(8, _vm->_objectsManager.getBobPosX(3));
@@ -882,7 +882,7 @@ void TalkManager::REPONSE2(int zone, int verb) {
_vm->_objectsManager.stopBobAnimation(4);
_vm->_objectsManager.setBobAnimation(6);
_vm->_soundManager.playSample(1);
- _vm->_objectsManager.SPACTION1(_vm->_objectsManager._forestSprite, "13,14,15,14,13,12,13,14,15,16,-1,", 0, 0, 4);
+ _vm->_objectsManager.SPACTION1(_vm->_objectsManager._forestSprite, "13,14,15,14,13,12,13,14,15,16,-1,", 4);
do
_vm->_eventsManager.VBL();
while (_vm->_objectsManager.getBobAnimDataIdx(6) < 12);
@@ -918,7 +918,7 @@ void TalkManager::REPONSE2(int zone, int verb) {
} else if (zone == 20 || zone == 21) {
_vm->_objectsManager.setFlipSprite(0, true);
_vm->_objectsManager.setSpriteIndex(0, 62);
- _vm->_objectsManager.SPACTION(_vm->_objectsManager._forestSprite, "2,3,4,5,6,7,8,9,10,11,12,-1,", 0, 0, 4, true);
+ _vm->_objectsManager.SPACTION(_vm->_objectsManager._forestSprite, "2,3,4,5,6,7,8,9,10,11,12,-1,", 4, true);
if (zone == 20) {
_vm->_objectsManager.lockAnimX(5, _vm->_objectsManager.getBobPosX(1));
_vm->_objectsManager.lockAnimX(7, _vm->_objectsManager.getBobPosX(1));
@@ -930,7 +930,7 @@ void TalkManager::REPONSE2(int zone, int verb) {
_vm->_objectsManager.stopBobAnimation(2);
_vm->_objectsManager.setBobAnimation(5);
_vm->_soundManager.playSample(1);
- _vm->_objectsManager.SPACTION1(_vm->_objectsManager._forestSprite, "13,14,15,14,13,12,13,14,15,16,-1,", 0, 0, 4);
+ _vm->_objectsManager.SPACTION1(_vm->_objectsManager._forestSprite, "13,14,15,14,13,12,13,14,15,16,-1,", 4);
do
_vm->_eventsManager.VBL();
while (_vm->_objectsManager.getBobAnimDataIdx(5) < 12);