diff options
-rw-r--r-- | engines/hopkins/dialogs.cpp | 1 | ||||
-rw-r--r-- | engines/hopkins/objects.cpp | 55 | ||||
-rw-r--r-- | engines/hopkins/objects.h | 23 | ||||
-rw-r--r-- | engines/hopkins/script.cpp | 36 |
4 files changed, 25 insertions, 90 deletions
diff --git a/engines/hopkins/dialogs.cpp b/engines/hopkins/dialogs.cpp index 489ce0f625..90eb5f3193 100644 --- a/engines/hopkins/dialogs.cpp +++ b/engines/hopkins/dialogs.cpp @@ -671,7 +671,6 @@ void DialogsManager::showSaveLoad(int a1) { _vm->_graphicsManager.Capture_Mem(_vm->_graphicsManager._vesaBuffer, _vm->_objectsManager.SL_SPR, _vm->_eventsManager._startPos.x + 183, 60, 274, 353); _vm->_objectsManager._saveLoadFl = true; - _vm->_objectsManager.SL_MODE = a1; _vm->_objectsManager._saveLoadX = 0; _vm->_objectsManager._saveLoadY = 0; } diff --git a/engines/hopkins/objects.cpp b/engines/hopkins/objects.cpp index cdd6930329..5c9c9b8e76 100644 --- a/engines/hopkins/objects.cpp +++ b/engines/hopkins/objects.cpp @@ -53,7 +53,6 @@ ObjectsManager::ObjectsManager() { S_old_spr = g_PTRNUL; PERSO_ON = false; _saveLoadFl = false; - SL_MODE = false; _visibleFl = false; BOBTOUS = false; my_anim = 0; @@ -61,35 +60,19 @@ ObjectsManager::ObjectsManager() { _forceZoneFl = false; _changeVerbFl = false; _verb = 0; - Vold_taille = 0; - SPEED_X = SPEED_Y = 0; - SPEED_IMAGE = 0; - SPEED_PTR = g_PTRNUL; _lastLine = 0; - A_ANIM = 0; - MA_ANIM = 0; - MA_ANIM1 = 0; - A_DEPA = 0; - MAX_DEPA = 0; - MAX_DEPA1 = 0; - CH_TETE = false; - T_RECTIF = 0; + _changeHeadFl = false; _disableFl = false; _twoCharactersFl = false; _characterPos = Common::Point(0, 0); PERI = 0; - RECALL = 0; - PTAILLE = 0; - PEROFX = 0; - PEROFY = 0; - OBSSEUL = 0; + OBSSEUL = false; NVVERBE = 0; NVZONE = 0; S_old_ani = 0; S_old_ret = 0; nouveau_x = nouveau_y = 0; _newDirection = 0; - nouveau_anim = 0; } void ObjectsManager::setParent(HopkinsEngine *vm) { @@ -1487,8 +1470,6 @@ void ObjectsManager::GOHOME() { _newDirection = *_vm->_globals.chemin; _vm->_globals.chemin++; - - nouveau_anim = *_vm->_globals.chemin; _vm->_globals.chemin++; if (nouveau_x != -1 || nouveau_y != -1) { @@ -1779,7 +1760,6 @@ void ObjectsManager::GOHOME() { _newDirection = *_vm->_globals.chemin; _vm->_globals.chemin++; - nouveau_anim = *_vm->_globals.chemin; _vm->_globals.chemin++; if (nouveau_x == -1 && v48 == -1) { @@ -1869,8 +1849,6 @@ void ObjectsManager::GOHOME2() { _newDirection = *_vm->_globals.chemin; _vm->_globals.chemin++; - - nouveau_anim = *_vm->_globals.chemin; _vm->_globals.chemin++; if ((nouveau_x == -1) && (nouveau_y == -1)) @@ -1907,8 +1885,6 @@ void ObjectsManager::GOHOME2() { _vm->_globals.chemin = (int16 *)g_PTRNUL; my_anim = 0; - A_ANIM = 0; - A_DEPA = 0; } /** @@ -2435,11 +2411,6 @@ void ObjectsManager::clearScreen() { _vm->_eventsManager._mouseCursorId = 4; _verb = 4; _zoneNum = 0; - Vold_taille = 0; - SPEED_PTR = g_PTRNUL; - SPEED_X = 0; - SPEED_Y = 0; - SPEED_IMAGE = 0; _forceZoneFl = true; _vm->_linesManager._linesNumb = 0; _lastLine = 0; @@ -2448,7 +2419,6 @@ void ObjectsManager::clearScreen() { _vm->_globals.SPRITE_ECRAN = _vm->_globals.freeMemory(_vm->_globals.SPRITE_ECRAN); _vm->_eventsManager._startPos.x = 0; _vm->_eventsManager._mouseSpriteId = 0; - Vold_taille = 200; _vm->_globals._saveData->data[svField1] = 0; _vm->_globals._saveData->data[svField2] = 0; _vm->_globals.GOACTION = false; @@ -2457,12 +2427,6 @@ void ObjectsManager::clearScreen() { _vm->_globals.chemin = (int16 *)g_PTRNUL; _vm->_globals._oldDirection = -1; my_anim = 1; - A_ANIM = 0; - MA_ANIM = 0; - MA_ANIM1 = 0; - A_DEPA = 0; - MAX_DEPA = 0; - MAX_DEPA1 = 0; _vm->_graphicsManager.RESET_SEGMENT_VESA(); } @@ -2472,7 +2436,7 @@ void ObjectsManager::clearScreen() { void ObjectsManager::changeCharacterHead(PlayerCharacter oldCharacter, PlayerCharacter newCharacter) { CharacterLocation *loc; - CH_TETE = true; + _changeHeadFl = true; _vm->_graphicsManager.SCOPY(_vm->_graphicsManager._vesaScreen, 532, 25, 65, 40, _vm->_graphicsManager._vesaBuffer, 532, 25); _vm->_graphicsManager.addVesaSegment(532, 25, 597, 65); _vm->_globals.NOT_VERIF = true; @@ -2480,7 +2444,7 @@ void ObjectsManager::changeCharacterHead(PlayerCharacter oldCharacter, PlayerCha if (oldCharacter == CHARACTER_SAMANTHA && newCharacter == CHARACTER_HOPKINS && _vm->_globals._saveData->_realHopkins._location == _vm->_globals._screenId) { - CH_TETE = false; + _changeHeadFl = false; loc = &_vm->_globals._saveData->_samantha; loc->_pos.x = getSpriteX(0); loc->_pos.y = getSpriteY(0); @@ -2496,7 +2460,6 @@ void ObjectsManager::changeCharacterHead(PlayerCharacter oldCharacter, PlayerCha _vm->_globals._saveData->data[svField354] = 0; _vm->_globals._saveData->data[svField356] = 0; _vm->_globals._saveData->data[svField357] = 1; - T_RECTIF = 0; loc = &_vm->_globals._saveData->_realHopkins; _vm->_globals.PERSO = _vm->_fileManager.loadFile("PERSO.SPR"); @@ -2506,7 +2469,7 @@ void ObjectsManager::changeCharacterHead(PlayerCharacter oldCharacter, PlayerCha _vm->_globals.loadCharacterData(); } else if (oldCharacter == CHARACTER_HOPKINS && newCharacter == CHARACTER_SAMANTHA && _vm->_globals._saveData->_samantha._location == _vm->_globals._screenId) { - CH_TETE = false; + _changeHeadFl = false; loc = &_vm->_globals._saveData->_realHopkins; loc->_pos.x = getSpriteX(0); loc->_pos.y = getSpriteY(0); @@ -3719,14 +3682,6 @@ void ObjectsManager::OPTI_ONE(int idx, int fromPosi, int destPosi, int a4) { } } - -void ObjectsManager::AFFICHE_SPEED1(byte *speedData, int xp, int yp, int img) { - SPEED_PTR = speedData; - SPEED_X = xp; - SPEED_Y = yp; - SPEED_IMAGE = img; -} - int ObjectsManager::BOBPOSI(int idx) { return _vm->_globals._bob[idx].field10 / 5; } diff --git a/engines/hopkins/objects.h b/engines/hopkins/objects.h index 2db9983d85..8c0741c1f1 100644 --- a/engines/hopkins/objects.h +++ b/engines/hopkins/objects.h @@ -78,7 +78,6 @@ public: const byte *S_old_spr; bool PERSO_ON; bool _saveLoadFl; - int SL_MODE; bool _visibleFl; bool BOBTOUS; int my_anim; @@ -86,28 +85,13 @@ public: bool _forceZoneFl; bool _changeVerbFl; int _verb; - int Vold_taille; - int SPEED_X, SPEED_Y; - int SPEED_IMAGE; - byte *SPEED_PTR; int _lastLine; - int A_ANIM; - int MA_ANIM; - int MA_ANIM1; - int A_DEPA; - int MAX_DEPA; - int MAX_DEPA1; - bool CH_TETE; - int T_RECTIF; + bool _changeHeadFl; bool _disableFl; bool _twoCharactersFl; Common::Point _characterPos; int PERI; - int RECALL; - int PTAILLE; - int PEROFX; - int PEROFY; - int OBSSEUL; + bool OBSSEUL; int NVVERBE; int NVZONE; int S_old_ani; @@ -210,8 +194,7 @@ public: void ZONE_ON(int idx); void disableZone(int idx); - void OPTI_ONE(int a1, int a2, int a3, int a4); - void AFFICHE_SPEED1(byte *speedData, int xp, int yp, int img); + void OPTI_ONE(int idx, int fromPosi, int destPosi, int a4); int BOBPOSI(int idx); void setBobAnimation(int idx); void stopBobAnimation(int idx); diff --git a/engines/hopkins/script.cpp b/engines/hopkins/script.cpp index 69af1cc318..477f44b3a9 100644 --- a/engines/hopkins/script.cpp +++ b/engines/hopkins/script.cpp @@ -187,7 +187,8 @@ int ScriptManager::handleOpcode(byte *dataP) { } while (v4); } } else - _vm->_objectsManager.AFFICHE_SPEED1(_vm->_globals.SPRITE_ECRAN, v68, v66, v70); + // TODO: Remove this: + warning("Former AFFICHE_SPEED1: %d %d %d", v68, v66, v70); } opcodeType = 1; } else if (dataP[2] == 'S' && dataP[3] == 'T' && dataP[4] == 'P') { @@ -196,7 +197,7 @@ int ScriptManager::handleOpcode(byte *dataP) { _vm->_objectsManager._characterPos.x = (int16)READ_LE_UINT16(dataP + 6); _vm->_objectsManager._characterPos.y = (int16)READ_LE_UINT16(dataP + 8); _vm->_objectsManager.PERI = dataP[5]; - if (_vm->_objectsManager.CH_TETE) { + if (_vm->_objectsManager._changeHeadFl) { if (_vm->_globals._saveData->data[svField354] == 1 && _vm->_globals._saveData->_cloneHopkins._pos.x && _vm->_globals._saveData->_cloneHopkins._pos.y && _vm->_globals._saveData->_cloneHopkins.field2 && _vm->_globals._saveData->_cloneHopkins._location) { @@ -248,16 +249,13 @@ int ScriptManager::handleOpcode(byte *dataP) { } } opcodeType = 1; - _vm->_objectsManager.CH_TETE = false; + _vm->_objectsManager._changeHeadFl = false; } else if (dataP[2] == 'S' && dataP[3] == 'T' && dataP[4] == 'E') { if (!_vm->_objectsManager._disableFl) { - _vm->_objectsManager.RECALL = 0; _vm->_globals._prevScreenId = _vm->_globals._screenId; _vm->_globals._saveData->data[svField6] = _vm->_globals._screenId; _vm->_globals._screenId = _vm->_globals._saveData->data[svField5] = dataP[5]; - _vm->_objectsManager.PTAILLE = v70 = dataP[6]; - _vm->_objectsManager.PEROFX = dataP[7]; - _vm->_objectsManager.PEROFY = dataP[8]; + v70 = dataP[6]; } opcodeType = 1; } else if (dataP[2] == 'B' && dataP[3] == 'O' && dataP[4] == 'F') { @@ -901,9 +899,9 @@ int ScriptManager::handleOpcode(byte *dataP) { _vm->_objectsManager.stopBobAnimation(1); _vm->_objectsManager.OPTI_ONE(15, 0, 12, 0); _vm->_objectsManager.stopBobAnimation(15); - _vm->_objectsManager.OBSSEUL = 1; + _vm->_objectsManager.OBSSEUL = true; _vm->_objectsManager.INILINK("IM19a"); - _vm->_objectsManager.OBSSEUL = 0; + _vm->_objectsManager.OBSSEUL = false; break; case 56: @@ -1030,9 +1028,9 @@ int ScriptManager::handleOpcode(byte *dataP) { _vm->_objectsManager.stopBobAnimation(12); _vm->_objectsManager.stopBobAnimation(4); _vm->_objectsManager.animateSprite(0); - _vm->_objectsManager.OBSSEUL = 1; + _vm->_objectsManager.OBSSEUL = true; _vm->_objectsManager.INILINK("IM27a"); - _vm->_objectsManager.OBSSEUL = 0; + _vm->_objectsManager.OBSSEUL = false; break; } @@ -1124,9 +1122,9 @@ int ScriptManager::handleOpcode(byte *dataP) { } while (_vm->_objectsManager.BOBPOSI(5) != 6); _vm->_objectsManager.stopBobAnimation(5); _vm->_objectsManager.setBobAnimation(6); - _vm->_objectsManager.OBSSEUL = 1; + _vm->_objectsManager.OBSSEUL = true; _vm->_objectsManager.INILINK("IM24a"); - _vm->_objectsManager.OBSSEUL = 0; + _vm->_objectsManager.OBSSEUL = false; break; case 86: @@ -1887,9 +1885,9 @@ int ScriptManager::handleOpcode(byte *dataP) { _vm->_soundManager.SPECIAL_SOUND = 0; _vm->_graphicsManager.fastDisplay(_vm->_globals.SPRITE_ECRAN, 192, 152, 0); _vm->_objectsManager.setBobAnimation(9); - _vm->_objectsManager.OBSSEUL = 1; + _vm->_objectsManager.OBSSEUL = true; _vm->_objectsManager.INILINK("IM73a"); - _vm->_objectsManager.OBSSEUL = 0; + _vm->_objectsManager.OBSSEUL = false; _vm->_globals.CACHE_ON(); _vm->_animationManager.NO_SEQ = false; _vm->_globals.CACHE_ADD(0); @@ -1944,9 +1942,9 @@ int ScriptManager::handleOpcode(byte *dataP) { break; case 230: { - _vm->_objectsManager.OBSSEUL = 1; + _vm->_objectsManager.OBSSEUL = true; _vm->_objectsManager.INILINK("IM93a"); - _vm->_objectsManager.OBSSEUL = 0; + _vm->_objectsManager.OBSSEUL = false; _vm->_globals.CACHE_ON(); _vm->_globals.NOT_VERIF = true; _vm->_objectsManager.g_old_x = _vm->_objectsManager.getSpriteX(0); @@ -1983,9 +1981,9 @@ int ScriptManager::handleOpcode(byte *dataP) { _vm->_objectsManager.setSpriteY(0, 278); _vm->_objectsManager.animateSprite(0); _vm->_graphicsManager.fastDisplay(_vm->_globals.SPRITE_ECRAN, 337, 154, 3); - _vm->_objectsManager.OBSSEUL = 1; + _vm->_objectsManager.OBSSEUL = true; _vm->_objectsManager.INILINK("IM93c"); - _vm->_objectsManager.OBSSEUL = 0; + _vm->_objectsManager.OBSSEUL = false; _vm->_globals.CACHE_ON(); break; } |