aboutsummaryrefslogtreecommitdiff
path: root/engines/hopkins/objects.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/hopkins/objects.cpp')
-rw-r--r--engines/hopkins/objects.cpp289
1 files changed, 144 insertions, 145 deletions
diff --git a/engines/hopkins/objects.cpp b/engines/hopkins/objects.cpp
index 30c102f380..428fbf1178 100644
--- a/engines/hopkins/objects.cpp
+++ b/engines/hopkins/objects.cpp
@@ -115,7 +115,6 @@ ObjectsManager::ObjectsManager(HopkinsEngine *vm) {
_objectDataBuf = g_PTRNUL;
PERSO_ON = false;
BOBTOUS = false;
- OBSSEUL = false;
}
ObjectsManager::~ObjectsManager() {
@@ -1372,14 +1371,14 @@ void ObjectsManager::GOHOME() {
_vm->_linesManager->_route = (RouteItem *)g_PTRNUL;
_oldDirection = DIR_NONE;
if (zoneId > 0) {
- if (_vm->_linesManager->ZONEP[zoneId]._destX && _vm->_linesManager->ZONEP[zoneId]._destY && _vm->_linesManager->ZONEP[zoneId]._destY != 31) {
- if (_vm->_linesManager->ZONEP[zoneId]._spriteIndex == -1) {
- _vm->_linesManager->ZONEP[zoneId]._destX = 0;
- _vm->_linesManager->ZONEP[zoneId]._destY = 0;
- _vm->_linesManager->ZONEP[zoneId]._spriteIndex = 0;
+ if (_vm->_linesManager->_zone[zoneId]._destX && _vm->_linesManager->_zone[zoneId]._destY && _vm->_linesManager->_zone[zoneId]._destY != 31) {
+ if (_vm->_linesManager->_zone[zoneId]._spriteIndex == -1) {
+ _vm->_linesManager->_zone[zoneId]._destX = 0;
+ _vm->_linesManager->_zone[zoneId]._destY = 0;
+ _vm->_linesManager->_zone[zoneId]._spriteIndex = 0;
} else {
- setSpriteIndex(0, _vm->_linesManager->ZONEP[zoneId]._spriteIndex);
- _vm->_globals->_actionDirection = _vm->_linesManager->ZONEP[zoneId]._spriteIndex - 59;
+ setSpriteIndex(0, _vm->_linesManager->_zone[zoneId]._spriteIndex);
+ _vm->_globals->_actionDirection = _vm->_linesManager->_zone[zoneId]._spriteIndex - 59;
}
}
}
@@ -1594,14 +1593,14 @@ void ObjectsManager::GOHOME() {
_oldCharacterPosY = getSpriteY(0);
if (zoneId > 0) {
- if (_vm->_linesManager->ZONEP[zoneId]._destX && _vm->_linesManager->ZONEP[zoneId]._destY && _vm->_linesManager->ZONEP[zoneId]._destY != 31) {
- if ( _vm->_linesManager->ZONEP[zoneId]._spriteIndex == -1) {
- _vm->_linesManager->ZONEP[zoneId]._destX = 0;
- _vm->_linesManager->ZONEP[zoneId]._destY = 0;
- _vm->_linesManager->ZONEP[zoneId]._spriteIndex = 0;
+ if (_vm->_linesManager->_zone[zoneId]._destX && _vm->_linesManager->_zone[zoneId]._destY && _vm->_linesManager->_zone[zoneId]._destY != 31) {
+ if ( _vm->_linesManager->_zone[zoneId]._spriteIndex == -1) {
+ _vm->_linesManager->_zone[zoneId]._destX = 0;
+ _vm->_linesManager->_zone[zoneId]._destY = 0;
+ _vm->_linesManager->_zone[zoneId]._spriteIndex = 0;
} else {
- setSpriteIndex(0, _vm->_linesManager->ZONEP[zoneId]._spriteIndex);
- _vm->_globals->_actionDirection = _vm->_linesManager->ZONEP[zoneId]._spriteIndex - 59;
+ setSpriteIndex(0, _vm->_linesManager->_zone[zoneId]._spriteIndex);
+ _vm->_globals->_actionDirection = _vm->_linesManager->_zone[zoneId]._spriteIndex - 59;
}
}
}
@@ -1716,21 +1715,21 @@ void ObjectsManager::GOHOME2() {
*/
void ObjectsManager::loadZone(const Common::String &file) {
for (int i = 1; i <= 100; i++) {
- _vm->_linesManager->ZONEP[i]._destX = 0;
- _vm->_linesManager->ZONEP[i]._destY = 0;
- _vm->_linesManager->ZONEP[i]._spriteIndex = 0;
- _vm->_linesManager->ZONEP[i]._verbFl1 = 0;
- _vm->_linesManager->ZONEP[i]._verbFl2 = 0;
- _vm->_linesManager->ZONEP[i]._verbFl3 = 0;
- _vm->_linesManager->ZONEP[i]._verbFl4 = 0;
- _vm->_linesManager->ZONEP[i]._verbFl5 = 0;
- _vm->_linesManager->ZONEP[i]._verbFl6 = 0;
- _vm->_linesManager->ZONEP[i]._verbFl7 = 0;
- _vm->_linesManager->ZONEP[i]._verbFl8 = 0;
- _vm->_linesManager->ZONEP[i]._verbFl9 = 0;
- _vm->_linesManager->ZONEP[i]._verbFl10 = 0;
- _vm->_linesManager->ZONEP[i]._messageId = 0;
- _vm->_linesManager->ZONEP[i]._enabledFl = false;
+ _vm->_linesManager->_zone[i]._destX = 0;
+ _vm->_linesManager->_zone[i]._destY = 0;
+ _vm->_linesManager->_zone[i]._spriteIndex = 0;
+ _vm->_linesManager->_zone[i]._verbFl1 = 0;
+ _vm->_linesManager->_zone[i]._verbFl2 = 0;
+ _vm->_linesManager->_zone[i]._verbFl3 = 0;
+ _vm->_linesManager->_zone[i]._verbFl4 = 0;
+ _vm->_linesManager->_zone[i]._verbFl5 = 0;
+ _vm->_linesManager->_zone[i]._verbFl6 = 0;
+ _vm->_linesManager->_zone[i]._verbFl7 = 0;
+ _vm->_linesManager->_zone[i]._verbFl8 = 0;
+ _vm->_linesManager->_zone[i]._verbFl9 = 0;
+ _vm->_linesManager->_zone[i]._verbFl10 = 0;
+ _vm->_linesManager->_zone[i]._messageId = 0;
+ _vm->_linesManager->_zone[i]._enabledFl = false;
}
Common::File f;
@@ -1751,38 +1750,38 @@ void ObjectsManager::loadZone(const Common::String &file) {
READ_LE_UINT16((uint16 *)ptr + bufId + 3),
READ_LE_UINT16((uint16 *)ptr + bufId + 4),
bobZoneIdx);
- _vm->_linesManager->ZONEP[bobZoneIdx]._enabledFl = true;
+ _vm->_linesManager->_zone[bobZoneIdx]._enabledFl = true;
}
bufId += 5;
++zoneLineIdx;
} while (bobZoneIdx != -1);
for (int i = 1; i <= 100; i++) {
- _vm->_linesManager->ZONEP[i]._destX = READ_LE_INT16((uint16 *)ptr + bufId);
- _vm->_linesManager->ZONEP[i]._destY = READ_LE_INT16((uint16 *)ptr + bufId + 1);
- _vm->_linesManager->ZONEP[i]._spriteIndex = READ_LE_INT16((uint16 *)ptr + bufId + 2);
+ _vm->_linesManager->_zone[i]._destX = READ_LE_INT16((uint16 *)ptr + bufId);
+ _vm->_linesManager->_zone[i]._destY = READ_LE_INT16((uint16 *)ptr + bufId + 1);
+ _vm->_linesManager->_zone[i]._spriteIndex = READ_LE_INT16((uint16 *)ptr + bufId + 2);
bufId += 3;
}
byte *verbData = (ptr + 10 * zoneLineIdx + 606);
bufId = 0;
for (int i = 1; i <= 100; i++) {
- _vm->_linesManager->ZONEP[i]._verbFl1 = verbData[bufId];
- _vm->_linesManager->ZONEP[i]._verbFl2 = verbData[bufId + 1];
- _vm->_linesManager->ZONEP[i]._verbFl3 = verbData[bufId + 2];
- _vm->_linesManager->ZONEP[i]._verbFl4 = verbData[bufId + 3];
- _vm->_linesManager->ZONEP[i]._verbFl5 = verbData[bufId + 4];
- _vm->_linesManager->ZONEP[i]._verbFl6 = verbData[bufId + 5];
- _vm->_linesManager->ZONEP[i]._verbFl7 = verbData[bufId + 6];
- _vm->_linesManager->ZONEP[i]._verbFl8 = verbData[bufId + 7];
- _vm->_linesManager->ZONEP[i]._verbFl9 = verbData[bufId + 8];
- _vm->_linesManager->ZONEP[i]._verbFl10 = verbData[bufId + 9];
+ _vm->_linesManager->_zone[i]._verbFl1 = verbData[bufId];
+ _vm->_linesManager->_zone[i]._verbFl2 = verbData[bufId + 1];
+ _vm->_linesManager->_zone[i]._verbFl3 = verbData[bufId + 2];
+ _vm->_linesManager->_zone[i]._verbFl4 = verbData[bufId + 3];
+ _vm->_linesManager->_zone[i]._verbFl5 = verbData[bufId + 4];
+ _vm->_linesManager->_zone[i]._verbFl6 = verbData[bufId + 5];
+ _vm->_linesManager->_zone[i]._verbFl7 = verbData[bufId + 6];
+ _vm->_linesManager->_zone[i]._verbFl8 = verbData[bufId + 7];
+ _vm->_linesManager->_zone[i]._verbFl9 = verbData[bufId + 8];
+ _vm->_linesManager->_zone[i]._verbFl10 = verbData[bufId + 9];
bufId += 10;
}
verbData += 1010;
for (int i = 0; i < 100; i++)
- _vm->_linesManager->ZONEP[i + 1]._messageId = READ_LE_UINT16(verbData + 2 * i);
+ _vm->_linesManager->_zone[i + 1]._messageId = READ_LE_UINT16(verbData + 2 * i);
_vm->_globals->freeMemory(ptr);
_vm->_linesManager->initSquareZones();
@@ -1954,9 +1953,9 @@ void ObjectsManager::handleLeftButton() {
if (_vm->_globals->_cityMapEnabledFl && (_vm->_eventsManager->_mouseCursorId != 4 || _zoneNum <= 0))
return;
if (_zoneNum != -1 && _zoneNum != 0) {
- if (_vm->_linesManager->ZONEP[_zoneNum]._destX && _vm->_linesManager->ZONEP[_zoneNum]._destY && _vm->_linesManager->ZONEP[_zoneNum]._destY != 31) {
- destX = _vm->_linesManager->ZONEP[_zoneNum]._destX;
- destY = _vm->_linesManager->ZONEP[_zoneNum]._destY;
+ if (_vm->_linesManager->_zone[_zoneNum]._destX && _vm->_linesManager->_zone[_zoneNum]._destY && _vm->_linesManager->_zone[_zoneNum]._destY != 31) {
+ destX = _vm->_linesManager->_zone[_zoneNum]._destX;
+ destY = _vm->_linesManager->_zone[_zoneNum]._destY;
}
}
_vm->_globals->_actionMoveTo = false;
@@ -2081,7 +2080,7 @@ void ObjectsManager::PARADISE() {
_vm->_talkManager->REPONSE2(_vm->_globals->_saveData->_data[svLastZoneNum], _vm->_globals->_saveData->_data[svLastMouseCursor]);
}
_vm->_eventsManager->changeMouseCursor(4);
- if (_zoneNum != -1 && _zoneNum != 0 && !_vm->_linesManager->ZONEP[_zoneNum]._enabledFl) {
+ if (_zoneNum != -1 && _zoneNum != 0 && !_vm->_linesManager->_zone[_zoneNum]._enabledFl) {
_zoneNum = -1;
_forceZoneFl = true;
}
@@ -2129,8 +2128,8 @@ void ObjectsManager::clearScreen() {
resetHidingItems();
for (int i = 0; i <= 48; i++) {
- _vm->_linesManager->BOBZONE[i] = 0;
- _vm->_linesManager->BOBZONE_FLAG[i] = false;
+ _vm->_linesManager->_bobZone[i] = 0;
+ _vm->_linesManager->_bobZoneFl[i] = false;
}
_vm->_eventsManager->_mouseCursorId = 4;
_verb = 4;
@@ -2300,139 +2299,139 @@ void ObjectsManager::nextVerbIcon() {
if (_vm->_eventsManager->_mouseCursorId == 5 || _vm->_eventsManager->_mouseCursorId == 6) {
_vm->_eventsManager->_mouseCursorId = 6;
- if (_vm->_linesManager->ZONEP[_zoneNum]._verbFl1 == 1)
+ if (_vm->_linesManager->_zone[_zoneNum]._verbFl1 == 1)
return;
++_vm->_eventsManager->_mouseCursorId;
}
if (_vm->_eventsManager->_mouseCursorId == 7) {
- if (_vm->_linesManager->ZONEP[_zoneNum]._verbFl2 == 1)
+ if (_vm->_linesManager->_zone[_zoneNum]._verbFl2 == 1)
return;
++_vm->_eventsManager->_mouseCursorId;
}
if (_vm->_eventsManager->_mouseCursorId == 8) {
- if (_vm->_linesManager->ZONEP[_zoneNum]._verbFl3 == 1)
+ if (_vm->_linesManager->_zone[_zoneNum]._verbFl3 == 1)
return;
++_vm->_eventsManager->_mouseCursorId;
}
if (_vm->_eventsManager->_mouseCursorId == 9) {
- if (_vm->_linesManager->ZONEP[_zoneNum]._verbFl4 == 1)
+ if (_vm->_linesManager->_zone[_zoneNum]._verbFl4 == 1)
return;
++_vm->_eventsManager->_mouseCursorId;
}
if (_vm->_eventsManager->_mouseCursorId == 10) {
- if (_vm->_linesManager->ZONEP[_zoneNum]._verbFl5 == 1)
+ if (_vm->_linesManager->_zone[_zoneNum]._verbFl5 == 1)
return;
++_vm->_eventsManager->_mouseCursorId;
}
if (_vm->_eventsManager->_mouseCursorId == 11) {
- if (_vm->_linesManager->ZONEP[_zoneNum]._verbFl6 == 1)
+ if (_vm->_linesManager->_zone[_zoneNum]._verbFl6 == 1)
return;
++_vm->_eventsManager->_mouseCursorId;
}
if (_vm->_eventsManager->_mouseCursorId == 12) {
- if (_vm->_linesManager->ZONEP[_zoneNum]._verbFl7 == 1)
+ if (_vm->_linesManager->_zone[_zoneNum]._verbFl7 == 1)
return;
++_vm->_eventsManager->_mouseCursorId;
}
if (_vm->_eventsManager->_mouseCursorId == 13) {
- if (_vm->_linesManager->ZONEP[_zoneNum]._verbFl8 == 1)
+ if (_vm->_linesManager->_zone[_zoneNum]._verbFl8 == 1)
return;
++_vm->_eventsManager->_mouseCursorId;
}
if (_vm->_eventsManager->_mouseCursorId == 14) {
- if (_vm->_linesManager->ZONEP[_zoneNum]._verbFl9 == 1)
+ if (_vm->_linesManager->_zone[_zoneNum]._verbFl9 == 1)
return;
++_vm->_eventsManager->_mouseCursorId;
}
if (_vm->_eventsManager->_mouseCursorId == 15) {
- if (_vm->_linesManager->ZONEP[_zoneNum]._verbFl10 == 1)
+ if (_vm->_linesManager->_zone[_zoneNum]._verbFl10 == 1)
return;
++_vm->_eventsManager->_mouseCursorId;
}
if (_vm->_eventsManager->_mouseCursorId == 16) {
- if (_vm->_linesManager->ZONEP[_zoneNum]._verbFl1 == 2)
+ if (_vm->_linesManager->_zone[_zoneNum]._verbFl1 == 2)
return;
++_vm->_eventsManager->_mouseCursorId;
}
if (_vm->_eventsManager->_mouseCursorId == 17) {
- if (_vm->_linesManager->ZONEP[_zoneNum]._verbFl4 == 2)
+ if (_vm->_linesManager->_zone[_zoneNum]._verbFl4 == 2)
return;
++_vm->_eventsManager->_mouseCursorId;
}
if (_vm->_eventsManager->_mouseCursorId == 18) {
- if (_vm->_linesManager->ZONEP[_zoneNum]._verbFl5 == 2)
+ if (_vm->_linesManager->_zone[_zoneNum]._verbFl5 == 2)
return;
++_vm->_eventsManager->_mouseCursorId;
}
if (_vm->_eventsManager->_mouseCursorId == 19) {
- if (_vm->_linesManager->ZONEP[_zoneNum]._verbFl6 == 2)
+ if (_vm->_linesManager->_zone[_zoneNum]._verbFl6 == 2)
return;
++_vm->_eventsManager->_mouseCursorId;
}
if (_vm->_eventsManager->_mouseCursorId == 20) {
- if (_vm->_linesManager->ZONEP[_zoneNum]._verbFl7 == 2)
+ if (_vm->_linesManager->_zone[_zoneNum]._verbFl7 == 2)
return;
++_vm->_eventsManager->_mouseCursorId;
}
if (_vm->_eventsManager->_mouseCursorId == 21) {
- if (_vm->_linesManager->ZONEP[_zoneNum]._verbFl10 == 2)
+ if (_vm->_linesManager->_zone[_zoneNum]._verbFl10 == 2)
return;
++_vm->_eventsManager->_mouseCursorId;
}
if (_vm->_eventsManager->_mouseCursorId == 22) {
- if (_vm->_linesManager->ZONEP[_zoneNum]._verbFl8 == 2)
+ if (_vm->_linesManager->_zone[_zoneNum]._verbFl8 == 2)
return;
++_vm->_eventsManager->_mouseCursorId;
}
if (_vm->_eventsManager->_mouseCursorId == 23) {
- if (_vm->_linesManager->ZONEP[_zoneNum]._verbFl3 == 2)
+ if (_vm->_linesManager->_zone[_zoneNum]._verbFl3 == 2)
return;
++_vm->_eventsManager->_mouseCursorId;
}
if (_vm->_eventsManager->_mouseCursorId == 24) {
- if (_vm->_linesManager->ZONEP[_zoneNum]._verbFl4 == 3)
+ if (_vm->_linesManager->_zone[_zoneNum]._verbFl4 == 3)
return;
++_vm->_eventsManager->_mouseCursorId;
}
if (_vm->_eventsManager->_mouseCursorId == 25) {
- if (_vm->_linesManager->ZONEP[_zoneNum]._verbFl9 == 2)
+ if (_vm->_linesManager->_zone[_zoneNum]._verbFl9 == 2)
return;
}
_vm->_eventsManager->_mouseCursorId = 4;
@@ -3102,7 +3101,7 @@ int ObjectsManager::getBobPosX(int idx) {
return _bob[idx]._xp;
}
-void ObjectsManager::loadLinkFile(const Common::String &file) {
+void ObjectsManager::loadLinkFile(const Common::String &file, bool skipDetails) {
Common::File f;
Common::String filename = file + ".LNK";
byte *ptr = _vm->_fileManager->searchCat(filename, RES_LIN);
@@ -3118,7 +3117,7 @@ void ObjectsManager::loadLinkFile(const Common::String &file) {
_vm->_fileManager->readStream(f, ptr, nbytes);
f.close();
}
- if (!OBSSEUL) {
+ if (!skipDetails) {
for (int idx = 0; idx < 500; ++idx)
_vm->_globals->_spriteSize[idx] = READ_LE_INT16((uint16 *)ptr + idx);
@@ -3187,26 +3186,26 @@ void ObjectsManager::loadLinkFile(const Common::String &file) {
}
}
- if (!OBSSEUL) {
+ if (!skipDetails) {
for (size_t idx = 0; idx < nbytes - 3; idx++) {
if (READ_BE_UINT24(&ptr[idx]) == MKTAG24('Z', 'O', '2')) {
byte *curDataPtr = &ptr[idx + 4];
int curDataIdx = 0;
for (int i = 1; i <= 100; i++) {
- _vm->_linesManager->ZONEP[i]._destX = 0;
- _vm->_linesManager->ZONEP[i]._destY = 0;
- _vm->_linesManager->ZONEP[i]._spriteIndex = 0;
- _vm->_linesManager->ZONEP[i]._verbFl1 = 0;
- _vm->_linesManager->ZONEP[i]._verbFl2 = 0;
- _vm->_linesManager->ZONEP[i]._verbFl3 = 0;
- _vm->_linesManager->ZONEP[i]._verbFl4 = 0;
- _vm->_linesManager->ZONEP[i]._verbFl5 = 0;
- _vm->_linesManager->ZONEP[i]._verbFl6 = 0;
- _vm->_linesManager->ZONEP[i]._verbFl7 = 0;
- _vm->_linesManager->ZONEP[i]._verbFl8 = 0;
- _vm->_linesManager->ZONEP[i]._verbFl9 = 0;
- _vm->_linesManager->ZONEP[i]._verbFl10 = 0;
- _vm->_linesManager->ZONEP[i]._messageId = 0;
+ _vm->_linesManager->_zone[i]._destX = 0;
+ _vm->_linesManager->_zone[i]._destY = 0;
+ _vm->_linesManager->_zone[i]._spriteIndex = 0;
+ _vm->_linesManager->_zone[i]._verbFl1 = 0;
+ _vm->_linesManager->_zone[i]._verbFl2 = 0;
+ _vm->_linesManager->_zone[i]._verbFl3 = 0;
+ _vm->_linesManager->_zone[i]._verbFl4 = 0;
+ _vm->_linesManager->_zone[i]._verbFl5 = 0;
+ _vm->_linesManager->_zone[i]._verbFl6 = 0;
+ _vm->_linesManager->_zone[i]._verbFl7 = 0;
+ _vm->_linesManager->_zone[i]._verbFl8 = 0;
+ _vm->_linesManager->_zone[i]._verbFl9 = 0;
+ _vm->_linesManager->_zone[i]._verbFl10 = 0;
+ _vm->_linesManager->_zone[i]._messageId = 0;
}
int curLineIdx = 0;
@@ -3220,7 +3219,7 @@ void ObjectsManager::loadLinkFile(const Common::String &file) {
READ_LE_INT16(curDataPtr + 2 * curDataIdx + 6),
READ_LE_INT16(curDataPtr + 2 * curDataIdx + 8),
bobZoneId);
- _vm->_linesManager->ZONEP[bobZoneId]._enabledFl = true;
+ _vm->_linesManager->_zone[bobZoneId]._enabledFl = true;
}
curDataIdx += 5;
++curLineIdx;
@@ -3228,29 +3227,29 @@ void ObjectsManager::loadLinkFile(const Common::String &file) {
break;
}
for (int i = 1; i <= 100; i++) {
- _vm->_linesManager->ZONEP[i]._destX = READ_LE_INT16(curDataPtr + 2 * curDataIdx);
- _vm->_linesManager->ZONEP[i]._destY = READ_LE_INT16(curDataPtr + 2 * curDataIdx + 2);
- _vm->_linesManager->ZONEP[i]._spriteIndex = READ_LE_INT16(curDataPtr + 2 * curDataIdx + 4);
+ _vm->_linesManager->_zone[i]._destX = READ_LE_INT16(curDataPtr + 2 * curDataIdx);
+ _vm->_linesManager->_zone[i]._destY = READ_LE_INT16(curDataPtr + 2 * curDataIdx + 2);
+ _vm->_linesManager->_zone[i]._spriteIndex = READ_LE_INT16(curDataPtr + 2 * curDataIdx + 4);
curDataIdx += 3;
}
byte *verbData = ptr + idx + (10 * curLineIdx + 606) + 4;
for (int i = 1; i <= 100; i++) {
int j = (i - 1) * 10;
- _vm->_linesManager->ZONEP[i]._verbFl1 = verbData[j];
- _vm->_linesManager->ZONEP[i]._verbFl2 = verbData[j + 1];
- _vm->_linesManager->ZONEP[i]._verbFl3 = verbData[j + 2];
- _vm->_linesManager->ZONEP[i]._verbFl4 = verbData[j + 3];
- _vm->_linesManager->ZONEP[i]._verbFl5 = verbData[j + 4];
- _vm->_linesManager->ZONEP[i]._verbFl6 = verbData[j + 5];
- _vm->_linesManager->ZONEP[i]._verbFl7 = verbData[j + 6];
- _vm->_linesManager->ZONEP[i]._verbFl8 = verbData[j + 7];
- _vm->_linesManager->ZONEP[i]._verbFl9 = verbData[j + 8];
- _vm->_linesManager->ZONEP[i]._verbFl10 = verbData[j + 9];
+ _vm->_linesManager->_zone[i]._verbFl1 = verbData[j];
+ _vm->_linesManager->_zone[i]._verbFl2 = verbData[j + 1];
+ _vm->_linesManager->_zone[i]._verbFl3 = verbData[j + 2];
+ _vm->_linesManager->_zone[i]._verbFl4 = verbData[j + 3];
+ _vm->_linesManager->_zone[i]._verbFl5 = verbData[j + 4];
+ _vm->_linesManager->_zone[i]._verbFl6 = verbData[j + 5];
+ _vm->_linesManager->_zone[i]._verbFl7 = verbData[j + 6];
+ _vm->_linesManager->_zone[i]._verbFl8 = verbData[j + 7];
+ _vm->_linesManager->_zone[i]._verbFl9 = verbData[j + 8];
+ _vm->_linesManager->_zone[i]._verbFl10 = verbData[j + 9];
}
int dep = 1010;
for (int i = 1; i <= 100; i++) {
- _vm->_linesManager->ZONEP[i]._messageId = READ_LE_INT16(verbData + dep);
+ _vm->_linesManager->_zone[i]._messageId = READ_LE_INT16(verbData + dep);
dep += 2;
}
_vm->_linesManager->initSquareZones();
@@ -3324,22 +3323,22 @@ void ObjectsManager::sceneSpecialIni() {
case 39:
case 40:
case 41:
- _vm->_linesManager->BOBZONE[20] = 1;
- _vm->_linesManager->BOBZONE[21] = 2;
- _vm->_linesManager->BOBZONE[22] = 3;
- _vm->_linesManager->BOBZONE[23] = 4;
- _vm->_linesManager->BOBZONE_FLAG[20] = true;
- _vm->_linesManager->BOBZONE_FLAG[21] = true;
- _vm->_linesManager->BOBZONE_FLAG[22] = true;
- _vm->_linesManager->BOBZONE_FLAG[23] = true;
+ _vm->_linesManager->_bobZone[20] = 1;
+ _vm->_linesManager->_bobZone[21] = 2;
+ _vm->_linesManager->_bobZone[22] = 3;
+ _vm->_linesManager->_bobZone[23] = 4;
+ _vm->_linesManager->_bobZoneFl[20] = true;
+ _vm->_linesManager->_bobZoneFl[21] = true;
+ _vm->_linesManager->_bobZoneFl[22] = true;
+ _vm->_linesManager->_bobZoneFl[23] = true;
enableVerb(20, 5);
enableVerb(21, 5);
enableVerb(22, 5);
enableVerb(23, 5);
- _vm->_linesManager->ZONEP[20]._messageId = 30;
- _vm->_linesManager->ZONEP[21]._messageId = 30;
- _vm->_linesManager->ZONEP[22]._messageId = 30;
- _vm->_linesManager->ZONEP[23]._messageId = 30;
+ _vm->_linesManager->_zone[20]._messageId = 30;
+ _vm->_linesManager->_zone[21]._messageId = 30;
+ _vm->_linesManager->_zone[22]._messageId = 30;
+ _vm->_linesManager->_zone[23]._messageId = 30;
for (int i = svField200; i <= svField214; i++) {
if (_vm->_globals->_saveData->_data[i] != 2)
_vm->_globals->_saveData->_data[i] = 0;
@@ -3397,42 +3396,42 @@ void ObjectsManager::disableVerb(int idx, int a2) {
switch (a2) {
case 6:
case 16:
- _vm->_linesManager->ZONEP[idx]._verbFl1 = 0;
+ _vm->_linesManager->_zone[idx]._verbFl1 = 0;
break;
case 7:
- _vm->_linesManager->ZONEP[idx]._verbFl2 = 0;
+ _vm->_linesManager->_zone[idx]._verbFl2 = 0;
break;
case 5:
case 8:
- _vm->_linesManager->ZONEP[idx]._verbFl3 = 0;
+ _vm->_linesManager->_zone[idx]._verbFl3 = 0;
break;
case 9:
case 17:
case 24:
- _vm->_linesManager->ZONEP[idx]._verbFl4 = 0;
+ _vm->_linesManager->_zone[idx]._verbFl4 = 0;
break;
case 10:
case 18:
- _vm->_linesManager->ZONEP[idx]._verbFl5 = 0;
+ _vm->_linesManager->_zone[idx]._verbFl5 = 0;
break;
case 11:
case 19:
- _vm->_linesManager->ZONEP[idx]._verbFl6 = 0;
+ _vm->_linesManager->_zone[idx]._verbFl6 = 0;
break;
case 12:
case 20:
- _vm->_linesManager->ZONEP[idx]._verbFl7 = 0;
+ _vm->_linesManager->_zone[idx]._verbFl7 = 0;
break;
case 13:
case 22:
- _vm->_linesManager->ZONEP[idx]._verbFl8 = 0;
+ _vm->_linesManager->_zone[idx]._verbFl8 = 0;
case 14:
case 21:
case 25:
- _vm->_linesManager->ZONEP[idx]._verbFl9 = 0;
+ _vm->_linesManager->_zone[idx]._verbFl9 = 0;
break;
case 15:
- _vm->_linesManager->ZONEP[idx]._verbFl10 = 0;
+ _vm->_linesManager->_zone[idx]._verbFl10 = 0;
break;
}
_changeVerbFl = true;
@@ -3441,64 +3440,64 @@ void ObjectsManager::disableVerb(int idx, int a2) {
void ObjectsManager::enableVerb(int idx, int a2) {
switch (a2) {
case 5:
- _vm->_linesManager->ZONEP[idx]._verbFl3 = 2;
+ _vm->_linesManager->_zone[idx]._verbFl3 = 2;
break;
case 6:
- _vm->_linesManager->ZONEP[idx]._verbFl1 = 1;
+ _vm->_linesManager->_zone[idx]._verbFl1 = 1;
break;
case 7:
- _vm->_linesManager->ZONEP[idx]._verbFl2 = 1;
+ _vm->_linesManager->_zone[idx]._verbFl2 = 1;
break;
case 8:
- _vm->_linesManager->ZONEP[idx]._verbFl3 = 1;
+ _vm->_linesManager->_zone[idx]._verbFl3 = 1;
break;
case 9:
- _vm->_linesManager->ZONEP[idx]._verbFl4 = 1;
+ _vm->_linesManager->_zone[idx]._verbFl4 = 1;
break;
case 10:
- _vm->_linesManager->ZONEP[idx]._verbFl5 = 1;
+ _vm->_linesManager->_zone[idx]._verbFl5 = 1;
break;
case 11:
- _vm->_linesManager->ZONEP[idx]._verbFl6 = 1;
+ _vm->_linesManager->_zone[idx]._verbFl6 = 1;
break;
case 12:
- _vm->_linesManager->ZONEP[idx]._verbFl7 = 1;
+ _vm->_linesManager->_zone[idx]._verbFl7 = 1;
break;
case 13:
- _vm->_linesManager->ZONEP[idx]._verbFl8 = 1;
+ _vm->_linesManager->_zone[idx]._verbFl8 = 1;
break;
case 14:
- _vm->_linesManager->ZONEP[idx]._verbFl8 = 1;
+ _vm->_linesManager->_zone[idx]._verbFl8 = 1;
break;
case 15:
- _vm->_linesManager->ZONEP[idx]._verbFl9 = 1;
+ _vm->_linesManager->_zone[idx]._verbFl9 = 1;
break;
case 16:
- _vm->_linesManager->ZONEP[idx]._verbFl1 = 2;
+ _vm->_linesManager->_zone[idx]._verbFl1 = 2;
break;
case 17:
- _vm->_linesManager->ZONEP[idx]._verbFl4 = 2;
+ _vm->_linesManager->_zone[idx]._verbFl4 = 2;
break;
case 18:
- _vm->_linesManager->ZONEP[idx]._verbFl5 = 2;
+ _vm->_linesManager->_zone[idx]._verbFl5 = 2;
break;
case 19:
- _vm->_linesManager->ZONEP[idx]._verbFl6 = 2;
+ _vm->_linesManager->_zone[idx]._verbFl6 = 2;
break;
case 20:
- _vm->_linesManager->ZONEP[idx]._verbFl7 = 2;
+ _vm->_linesManager->_zone[idx]._verbFl7 = 2;
break;
case 21:
- _vm->_linesManager->ZONEP[idx]._verbFl9 = 2;
+ _vm->_linesManager->_zone[idx]._verbFl9 = 2;
break;
case 22:
- _vm->_linesManager->ZONEP[idx]._verbFl8 = 2;
+ _vm->_linesManager->_zone[idx]._verbFl8 = 2;
break;
case 24:
- _vm->_linesManager->ZONEP[idx]._verbFl4 = 3;
+ _vm->_linesManager->_zone[idx]._verbFl4 = 3;
break;
case 25:
- _vm->_linesManager->ZONEP[idx]._verbFl9 = 2;
+ _vm->_linesManager->_zone[idx]._verbFl9 = 2;
break;
}
}