diff options
author | Strangerke | 2016-07-25 16:13:53 +0200 |
---|---|---|
committer | Bendegúz Nagy | 2016-08-26 23:02:22 +0200 |
commit | cdbbc15e5623f47a0e93e5d9113ac64b709cf6de (patch) | |
tree | 3b015d74c35049b19500112bcf13ba23af6cb2d2 /engines | |
parent | 58d82353442ff5cef4d17510a9610b87e5a0b9ee (diff) | |
download | scummvm-rg350-cdbbc15e5623f47a0e93e5d9113ac64b709cf6de.tar.gz scummvm-rg350-cdbbc15e5623f47a0e93e5d9113ac64b709cf6de.tar.bz2 scummvm-rg350-cdbbc15e5623f47a0e93e5d9113ac64b709cf6de.zip |
DM: Refactor f318_dropAllObjects, f319_championKill and f323_unpoison. Rename _moveSens
Diffstat (limited to 'engines')
-rw-r--r-- | engines/dm/champion.cpp | 114 | ||||
-rw-r--r-- | engines/dm/dm.cpp | 10 | ||||
-rw-r--r-- | engines/dm/dm.h | 2 | ||||
-rw-r--r-- | engines/dm/dungeonman.cpp | 2 | ||||
-rw-r--r-- | engines/dm/eventman.cpp | 22 | ||||
-rw-r--r-- | engines/dm/group.cpp | 24 | ||||
-rw-r--r-- | engines/dm/menus.cpp | 8 | ||||
-rw-r--r-- | engines/dm/projexpl.cpp | 16 | ||||
-rw-r--r-- | engines/dm/timeline.cpp | 36 |
9 files changed, 112 insertions, 122 deletions
diff --git a/engines/dm/champion.cpp b/engines/dm/champion.cpp index 3fdc9ec486..9b14993d8b 100644 --- a/engines/dm/champion.cpp +++ b/engines/dm/champion.cpp @@ -1405,16 +1405,9 @@ void ChampionMan::f320_applyAndDrawPendingDamageAndWounds() { }
void ChampionMan::f319_championKill(uint16 champIndex) {
- uint16 L0962_ui_Multiple = 0;
-#define AL0962_ui_Cell L0962_ui_Multiple
-#define AL0962_ui_ChampionIconIndex L0962_ui_Multiple
- int16 L0963_i_AliveChampionIndex;
- Thing L0964_T_Thing;
- Champion* L0965_ps_Champion;
-
- L0965_ps_Champion = &_vm->_championMan->_gK71_champions[champIndex];
- L0965_ps_Champion->_currHealth = 0;
- setFlag(L0965_ps_Champion->_attributes, k0x1000_ChampionAttributeStatusBox);
+ Champion *curChampion = &_vm->_championMan->_gK71_champions[champIndex];
+ curChampion->_currHealth = 0;
+ setFlag(curChampion->_attributes, k0x1000_ChampionAttributeStatusBox);
if (_vm->M0_indexToOrdinal(champIndex) == _vm->_inventoryMan->_g432_inventoryChampionOrdinal) {
if (_vm->_g331_pressingEye) {
_vm->_g331_pressingEye = false;
@@ -1424,63 +1417,65 @@ void ChampionMan::f319_championKill(uint16 champIndex) { }
_vm->_eventMan->_g587_hideMousePointerRequestCount = 1;
_vm->_eventMan->f77_hideMouse();
- } else {
- if (_vm->_g333_pressingMouth) {
- _vm->_g333_pressingMouth = false;
- _vm->_eventMan->_g597_ignoreMouseMovements = false;
- _vm->_eventMan->_g587_hideMousePointerRequestCount = 1;
- _vm->_eventMan->f77_hideMouse();
- }
+ } else if (_vm->_g333_pressingMouth) {
+ _vm->_g333_pressingMouth = false;
+ _vm->_eventMan->_g597_ignoreMouseMovements = false;
+ _vm->_eventMan->_g587_hideMousePointerRequestCount = 1;
+ _vm->_eventMan->f77_hideMouse();
}
_vm->_inventoryMan->f355_toggleInventory(k4_ChampionCloseInventory);
}
f318_dropAllObjects(champIndex);
- L0964_T_Thing = _vm->_dungeonMan->f166_getUnusedThing(k0x8000_championBones | k10_JunkThingType);
- if (L0964_T_Thing == Thing::_none) {
- } else {
- Junk* L0966_ps_Junk = (Junk*)_vm->_dungeonMan->f156_getThingData(L0964_T_Thing);
+ Thing unusedThing = _vm->_dungeonMan->f166_getUnusedThing(k0x8000_championBones | k10_JunkThingType);
+ uint16 curCell = 0;
+ if (unusedThing != Thing::_none) {
+ Junk *L0966_ps_Junk = (Junk *)_vm->_dungeonMan->f156_getThingData(unusedThing);
L0966_ps_Junk->setType(k5_JunkTypeBones);
L0966_ps_Junk->setDoNotDiscard(true);
L0966_ps_Junk->setChargeCount(champIndex);
- AL0962_ui_Cell = L0965_ps_Champion->_cell;
- _vm->_movsens->f267_getMoveResult(M15_thingWithNewCell(L0964_T_Thing, AL0962_ui_Cell), kM1_MapXNotOnASquare, 0, _vm->_dungeonMan->_g306_partyMapX, _vm->_dungeonMan->_g307_partyMapY);
- }
- L0965_ps_Champion->_symbolStep = 0;
- L0965_ps_Champion->_symbols[0] = '\0';
- L0965_ps_Champion->_dir = _vm->_dungeonMan->_g308_partyDir;
- L0965_ps_Champion->_maximumDamageReceived = 0;
- AL0962_ui_ChampionIconIndex = _vm->_championMan->M26_championIconIndex(AL0962_ui_Cell, _vm->_dungeonMan->_g308_partyDir);
- if (_vm->M0_indexToOrdinal(AL0962_ui_ChampionIconIndex) == _vm->_eventMan->_g599_useChampionIconOrdinalAsMousePointerBitmap) {
+ curCell = curChampion->_cell;
+ _vm->_moveSens->f267_getMoveResult(M15_thingWithNewCell(unusedThing, curCell), kM1_MapXNotOnASquare, 0, _vm->_dungeonMan->_g306_partyMapX, _vm->_dungeonMan->_g307_partyMapY);
+ }
+ curChampion->_symbolStep = 0;
+ curChampion->_symbols[0] = '\0';
+ curChampion->_dir = _vm->_dungeonMan->_g308_partyDir;
+ curChampion->_maximumDamageReceived = 0;
+ uint16 curChampionIconIndex = _vm->_championMan->M26_championIconIndex(curCell, _vm->_dungeonMan->_g308_partyDir);
+ if (_vm->M0_indexToOrdinal(curChampionIconIndex) == _vm->_eventMan->_g599_useChampionIconOrdinalAsMousePointerBitmap) {
_vm->_eventMan->_g598_mousePointerBitmapUpdated = true;
_vm->_eventMan->_g599_useChampionIconOrdinalAsMousePointerBitmap = _vm->M0_indexToOrdinal(kM1_ChampionNone);
warning(false, "IGNORED CODE:G0592_B_BuildMousePointerScreenAreaRequested = true");
}
- if (L0965_ps_Champion->_poisonEventCount) {
+
+ if (curChampion->_poisonEventCount)
f323_unpoison(champIndex);
- }
+
_vm->_displayMan->_g578_useByteBoxCoordinates = false;
- _vm->_displayMan->D24_fillScreenBox(g54_BoxChampionIcons[AL0962_ui_ChampionIconIndex << 2], k0_ColorBlack);
+ _vm->_displayMan->D24_fillScreenBox(g54_BoxChampionIcons[curChampionIconIndex << 2], k0_ColorBlack);
_vm->_championMan->f292_drawChampionState((ChampionIndex)champIndex);
- for (L0963_i_AliveChampionIndex = k0_ChampionFirst, L0965_ps_Champion = _vm->_championMan->_gK71_champions; L0963_i_AliveChampionIndex < _vm->_championMan->_g305_partyChampionCount; L0963_i_AliveChampionIndex++, L0965_ps_Champion++) {
- if (L0965_ps_Champion->_currHealth)
+
+ int16 aliveChampionIndex;
+ for (aliveChampionIndex = k0_ChampionFirst, curChampion = _vm->_championMan->_gK71_champions; aliveChampionIndex < _vm->_championMan->_g305_partyChampionCount; aliveChampionIndex++, curChampion++) {
+ if (curChampion->_currHealth)
break;
}
- if (L0963_i_AliveChampionIndex == _vm->_championMan->_g305_partyChampionCount) { /* BUG0_43 The game does not end if the last living champion in the party is killed while looking at a candidate champion in a portrait. The condition to end the game when the whole party is killed is not true because the code considers the candidate champion as alive (in the loop above) */
+
+ if (aliveChampionIndex == _vm->_championMan->_g305_partyChampionCount) { /* BUG0_43 The game does not end if the last living champion in the party is killed while looking at a candidate champion in a portrait. The condition to end the game when the whole party is killed is not true because the code considers the candidate champion as alive (in the loop above) */
_vm->_championMan->_g303_partyDead = true;
return;
}
- if (champIndex == _vm->_championMan->_g411_leaderIndex) {
- _vm->_eventMan->f368_commandSetLeader((ChampionIndex)L0963_i_AliveChampionIndex);
- }
- if (champIndex == _vm->_championMan->_g514_magicCasterChampionIndex) {
- _vm->_menuMan->f394_setMagicCasterAndDrawSpellArea(L0963_i_AliveChampionIndex);
- } else {
+
+ if (champIndex == _vm->_championMan->_g411_leaderIndex)
+ _vm->_eventMan->f368_commandSetLeader((ChampionIndex)aliveChampionIndex);
+
+ if (champIndex == _vm->_championMan->_g514_magicCasterChampionIndex)
+ _vm->_menuMan->f394_setMagicCasterAndDrawSpellArea(aliveChampionIndex);
+ else
_vm->_menuMan->f393_drawSpellAreaControls(_vm->_championMan->_g514_magicCasterChampionIndex);
- }
}
void ChampionMan::f318_dropAllObjects(uint16 champIndex) {
- static int16 G0057_ai_Graphic562_SlotDropOrder[30] = {
+ static const int16 slotDropOrder[30] = {
k5_ChampionSlotFeet,
k4_ChampionSlotLegs,
k9_ChampionSlotQuiverLine_2_2,
@@ -1510,31 +1505,26 @@ void ChampionMan::f318_dropAllObjects(uint16 champIndex) { k10_ChampionSlotNeck,
k2_ChampionSlotHead,
k0_ChampionSlotReadyHand,
- k1_ChampionSlotActionHand};
-
- uint16 L0959_ui_Cell;
- Thing L0960_T_Thing;
- uint16 L0961_ui_SlotIndex;
+ k1_ChampionSlotActionHand
+ };
- L0959_ui_Cell = _vm->_championMan->_gK71_champions[champIndex]._cell;
- for (L0961_ui_SlotIndex = k0_ChampionSlotReadyHand; L0961_ui_SlotIndex < k30_ChampionSlotChest_1; L0961_ui_SlotIndex++) {
- if ((L0960_T_Thing = f300_getObjectRemovedFromSlot(champIndex, G0057_ai_Graphic562_SlotDropOrder[L0961_ui_SlotIndex])) != Thing::_none) {
- _vm->_movsens->f267_getMoveResult(M15_thingWithNewCell(L0960_T_Thing, L0959_ui_Cell), kM1_MapXNotOnASquare, 0, _vm->_dungeonMan->_g306_partyMapX, _vm->_dungeonMan->_g307_partyMapY);
+ uint16 curCell = _vm->_championMan->_gK71_champions[champIndex]._cell;
+ for (uint16 slotIndex = k0_ChampionSlotReadyHand; slotIndex < k30_ChampionSlotChest_1; slotIndex++) {
+ Thing curThing = f300_getObjectRemovedFromSlot(champIndex, slotDropOrder[slotIndex]);
+ if (curThing != Thing::_none) {
+ _vm->_moveSens->f267_getMoveResult(M15_thingWithNewCell(curThing, curCell), kM1_MapXNotOnASquare, 0, _vm->_dungeonMan->_g306_partyMapX, _vm->_dungeonMan->_g307_partyMapY);
}
}
}
void ChampionMan::f323_unpoison(int16 champIndex) {
- int16 L0982_i_EventIndex;
- TimelineEvent* L0983_ps_Event;
-
- if (champIndex == kM1_ChampionNone) {
+ if (champIndex == kM1_ChampionNone)
return;
- }
- for (L0982_i_EventIndex = 0, L0983_ps_Event = _vm->_timeline->_g370_events; L0982_i_EventIndex < _vm->_timeline->_g369_eventMaxCount; L0983_ps_Event++, L0982_i_EventIndex++) {
- if ((L0983_ps_Event->_type == k75_TMEventTypePoisonChampion) && (L0983_ps_Event->_priority == champIndex)) {
- _vm->_timeline->f237_deleteEvent(L0982_i_EventIndex);
- }
+
+ TimelineEvent *eventPtr = _vm->_timeline->_g370_events;
+ for (uint16 eventIndex = 0; eventIndex < _vm->_timeline->_g369_eventMaxCount; eventPtr++, eventIndex++) {
+ if ((eventPtr->_type == k75_TMEventTypePoisonChampion) && (eventPtr->_priority == champIndex))
+ _vm->_timeline->f237_deleteEvent(eventIndex);
}
_vm->_championMan->_gK71_champions[champIndex]._poisonEventCount = 0;
}
diff --git a/engines/dm/dm.cpp b/engines/dm/dm.cpp index 5d003b7373..5671fc6fcf 100644 --- a/engines/dm/dm.cpp +++ b/engines/dm/dm.cpp @@ -144,7 +144,7 @@ DMEngine::DMEngine(OSystem *syst) : Engine(syst), _console(nullptr) { _objectMan = nullptr; _inventoryMan = nullptr; _textMan = nullptr; - _movsens = nullptr; + _moveSens = nullptr; _groupMan = nullptr; _timeline = nullptr; _projexpl = nullptr; @@ -195,7 +195,7 @@ DMEngine::~DMEngine() { delete _objectMan; delete _inventoryMan; delete _textMan; - delete _movsens; + delete _moveSens; delete _groupMan; delete _timeline; delete _projexpl; @@ -241,7 +241,7 @@ void DMEngine::f463_initializeGame() { f462_startGame(); if (_g298_newGame) - _movsens->f267_getMoveResult(Thing::_party, kM1_MapXNotOnASquare, 0, _dungeonMan->_g306_partyMapX, _dungeonMan->_g307_partyMapY); + _moveSens->f267_getMoveResult(Thing::_party, kM1_MapXNotOnASquare, 0, _dungeonMan->_g306_partyMapX, _dungeonMan->_g307_partyMapY); _eventMan->f78_showMouse(); _eventMan->f357_discardAllInput(); } @@ -314,7 +314,7 @@ Common::Error DMEngine::run() { _objectMan = new ObjectMan(this); _inventoryMan = new InventoryMan(this); _textMan = new TextMan(this); - _movsens = new MovesensMan(this); + _moveSens = new MovesensMan(this); _groupMan = new GroupMan(this); _timeline = new Timeline(this); _projexpl = new ProjExpl(this); @@ -341,7 +341,7 @@ void DMEngine::f2_gameloop() { if (_g327_newPartyMapIndex != kM1_mapIndexNone) { T0002002: f3_processNewPartyMap(_g327_newPartyMapIndex); - _movsens->f267_getMoveResult(Thing::_party, kM1_MapXNotOnASquare, 0, _dungeonMan->_g306_partyMapX, _dungeonMan->_g307_partyMapY); + _moveSens->f267_getMoveResult(Thing::_party, kM1_MapXNotOnASquare, 0, _dungeonMan->_g306_partyMapX, _dungeonMan->_g307_partyMapY); _g327_newPartyMapIndex = kM1_mapIndexNone; _eventMan->f357_discardAllInput(); } diff --git a/engines/dm/dm.h b/engines/dm/dm.h index c1881a0638..7d2f925120 100644 --- a/engines/dm/dm.h +++ b/engines/dm/dm.h @@ -240,7 +240,7 @@ public: ObjectMan *_objectMan; InventoryMan *_inventoryMan; TextMan *_textMan; - MovesensMan *_movsens; + MovesensMan *_moveSens; GroupMan *_groupMan; Timeline *_timeline; ProjExpl *_projexpl; diff --git a/engines/dm/dungeonman.cpp b/engines/dm/dungeonman.cpp index e01a154dc3..38658ce601 100644 --- a/engines/dm/dungeonman.cpp +++ b/engines/dm/dungeonman.cpp @@ -1509,7 +1509,7 @@ Thing DungeonMan::f165_getDiscardTHing(uint16 thingType) { continue; T0165026: _vm->_dungeonMan->f173_setCurrentMap(L0279_ui_MapIndex); - _vm->_movsens->f267_getMoveResult(L0278_T_Thing, L0276_ui_MapX, L0277_ui_MapY, kM1_MapXNotOnASquare, 0); + _vm->_moveSens->f267_getMoveResult(L0278_T_Thing, L0276_ui_MapX, L0277_ui_MapY, kM1_MapXNotOnASquare, 0); } _vm->_dungeonMan->f173_setCurrentMap(L0284_i_CurrentMapIndex); G0294_auc_LastDiscardedThingMapIndex[thingType] = L0279_ui_MapIndex; diff --git a/engines/dm/eventman.cpp b/engines/dm/eventman.cpp index 8851e28dcb..7ccf647e7d 100644 --- a/engines/dm/eventman.cpp +++ b/engines/dm/eventman.cpp @@ -806,9 +806,9 @@ void EventManager::f365_commandTurnParty(CommandType cmdType) { f364_commandTakeStairs(getFlag(L1114_ui_Square, k0x0004_StairsUp)); return; } - _vm->_movsens->f276_sensorProcessThingAdditionOrRemoval(_vm->_dungeonMan->_g306_partyMapX, _vm->_dungeonMan->_g307_partyMapY, Thing::_party, true, false); + _vm->_moveSens->f276_sensorProcessThingAdditionOrRemoval(_vm->_dungeonMan->_g306_partyMapX, _vm->_dungeonMan->_g307_partyMapY, Thing::_party, true, false); _vm->_championMan->f284_setPartyDirection(M21_normalizeModulo4(_vm->_dungeonMan->_g308_partyDir + ((cmdType == k2_CommandTurnRight) ? 1 : 3))); - _vm->_movsens->f276_sensorProcessThingAdditionOrRemoval(_vm->_dungeonMan->_g306_partyMapX, _vm->_dungeonMan->_g307_partyMapY, Thing::_party, true, true); + _vm->_moveSens->f276_sensorProcessThingAdditionOrRemoval(_vm->_dungeonMan->_g306_partyMapX, _vm->_dungeonMan->_g307_partyMapY, Thing::_party, true, true); } void EventManager::f366_commandMoveParty(CommandType cmdType) { @@ -864,7 +864,7 @@ void EventManager::f366_commandMoveParty(CommandType cmdType) { _vm->_dungeonMan->f150_mapCoordsAfterRelMovement(_vm->_dungeonMan->_g308_partyDir, g465_movementArrowToStepForwardCount[AL1118_ui_MovementArrowIndex], g466_movementArrowToSepRightCount[AL1118_ui_MovementArrowIndex], L1121_i_MapX, L1122_i_MapY); L1116_i_SquareType = Square(AL1115_ui_Square = _vm->_dungeonMan->f151_getSquare(L1121_i_MapX, L1122_i_MapY).toByte()).getType(); if (L1116_i_SquareType == k3_ElementTypeStairs) { - _vm->_movsens->f267_getMoveResult(Thing::_party, _vm->_dungeonMan->_g306_partyMapX, _vm->_dungeonMan->_g307_partyMapY, kM1_MapXNotOnASquare, 0); + _vm->_moveSens->f267_getMoveResult(Thing::_party, _vm->_dungeonMan->_g306_partyMapX, _vm->_dungeonMan->_g307_partyMapY, kM1_MapXNotOnASquare, 0); _vm->_dungeonMan->_g306_partyMapX = L1121_i_MapX; _vm->_dungeonMan->_g307_partyMapY = L1122_i_MapY; f364_commandTakeStairs(getFlag(AL1115_ui_Square, k0x0004_StairsUp)); @@ -905,9 +905,9 @@ void EventManager::f366_commandMoveParty(CommandType cmdType) { return; } if (L1123_B_StairsSquare) { - _vm->_movsens->f267_getMoveResult(Thing::_party, kM1_MapXNotOnASquare, 0, L1121_i_MapX, L1122_i_MapY); + _vm->_moveSens->f267_getMoveResult(Thing::_party, kM1_MapXNotOnASquare, 0, L1121_i_MapX, L1122_i_MapY); } else { - _vm->_movsens->f267_getMoveResult(Thing::_party, _vm->_dungeonMan->_g306_partyMapX, _vm->_dungeonMan->_g307_partyMapY, L1121_i_MapX, L1122_i_MapY); + _vm->_moveSens->f267_getMoveResult(Thing::_party, _vm->_dungeonMan->_g306_partyMapX, _vm->_dungeonMan->_g307_partyMapY, L1121_i_MapX, L1122_i_MapY); } AL1115_ui_Ticks = 1; L1119_ps_Champion = _vm->_championMan->_gK71_champions; @@ -1003,7 +1003,7 @@ void EventManager::f372_commandProcessType80ClickInDungeonViewTouchFrontWall() { L1136_ui_MapY = _vm->_dungeonMan->_g307_partyMapY; L1135_ui_MapX += _vm->_dirIntoStepCountEast[_vm->_dungeonMan->_g308_partyDir], L1136_ui_MapY += _vm->_dirIntoStepCountNorth[_vm->_dungeonMan->_g308_partyDir]; if ((L1135_ui_MapX >= 0) && (L1135_ui_MapX < _vm->_dungeonMan->_g273_currMapWidth) && (L1136_ui_MapY >= 0) && (L1136_ui_MapY < _vm->_dungeonMan->_g274_currMapHeight)) { - _vm->_g321_stopWaitingForPlayerInput = _vm->_movsens->f275_sensorIsTriggeredByClickOnWall(L1135_ui_MapX, L1136_ui_MapY, returnOppositeDir(_vm->_dungeonMan->_g308_partyDir)); + _vm->_g321_stopWaitingForPlayerInput = _vm->_moveSens->f275_sensorIsTriggeredByClickOnWall(L1135_ui_MapX, L1136_ui_MapY, returnOppositeDir(_vm->_dungeonMan->_g308_partyDir)); } } @@ -1028,7 +1028,7 @@ void EventManager::f377_commandProcessType80ClickInDungeonView(int16 posX, int16 if ((((Door*)L1151_ps_Junk)->hasButton()) && _vm->_dungeonMan->_g291_dungeonViewClickableBoxes[k5_ViewCellDoorButtonOrWallOrn].isPointInside(posX, posY - 33)) { _vm->_g321_stopWaitingForPlayerInput = true; _vm->f064_SOUND_RequestPlay_CPSD(k01_soundSWITCH, _vm->_dungeonMan->_g306_partyMapX, _vm->_dungeonMan->_g307_partyMapY, k1_soundModePlayIfPrioritized); - _vm->_movsens->f268_addEvent(k10_TMEventTypeDoor, L1155_i_MapX, L1156_i_MapY, 0, k2_SensorEffToggle, _vm->_g313_gameTime + 1); + _vm->_moveSens->f268_addEvent(k10_TMEventTypeDoor, L1155_i_MapX, L1156_i_MapY, 0, k2_SensorEffToggle, _vm->_g313_gameTime + 1); return; } } else { @@ -1212,14 +1212,14 @@ void EventManager::f373_processType80_clickInDungeonView_grabLeaderHandObject(ui if (viewCell >= k2_ViewCellBackRight) { L1137_i_MapX += _vm->_dirIntoStepCountEast[_vm->_dungeonMan->_g308_partyDir], L1138_i_MapY += _vm->_dirIntoStepCountNorth[_vm->_dungeonMan->_g308_partyDir]; if (((L1139_T_Thing = _vm->_groupMan->f175_groupGetThing(L1137_i_MapX, L1138_i_MapY)) != Thing::_endOfList) && - !_vm->_movsens->f264_isLevitating(L1139_T_Thing) && + !_vm->_moveSens->f264_isLevitating(L1139_T_Thing) && _vm->_groupMan->f176_getCreatureOrdinalInCell((Group*)_vm->_dungeonMan->f156_getThingData(L1139_T_Thing), M21_normalizeModulo4(viewCell + _vm->_dungeonMan->_g308_partyDir))) { return; /* It is not possible to grab an object on floor if there is a non levitating creature on its cell */ } } L1139_T_Thing = _vm->_dungeonMan->_g292_pileTopObject[viewCell]; if (_vm->_objectMan->f33_getIconIndex(L1139_T_Thing) != kM1_IconIndiceNone) { - _vm->_movsens->f267_getMoveResult(L1139_T_Thing, L1137_i_MapX, L1138_i_MapY, kM1_MapXNotOnASquare, 0); + _vm->_moveSens->f267_getMoveResult(L1139_T_Thing, L1137_i_MapX, L1138_i_MapY, kM1_MapXNotOnASquare, 0); _vm->_championMan->f297_putObjectInLeaderHand(L1139_T_Thing, true); } _vm->_g321_stopWaitingForPlayerInput = true; @@ -1249,7 +1249,7 @@ void EventManager::f374_processType80_clickInDungeonViewDropLeaderHandObject(uin } L1145_ui_Cell = M21_normalizeModulo4(_vm->_dungeonMan->_g308_partyDir + viewCell); L1142_T_Thing = _vm->_championMan->f298_getObjectRemovedFromLeaderHand(); - _vm->_movsens->f267_getMoveResult(M15_thingWithNewCell(L1142_T_Thing, L1145_ui_Cell), kM1_MapXNotOnASquare, 0, L1140_i_MapX, L1141_i_MapY); + _vm->_moveSens->f267_getMoveResult(M15_thingWithNewCell(L1142_T_Thing, L1145_ui_Cell), kM1_MapXNotOnASquare, 0, L1140_i_MapX, L1141_i_MapY); if (L1146_B_DroppingIntoAnAlcove && _vm->_dungeonMan->_g287_isFacingViAltar && ((L1144_i_IconIndex = _vm->_objectMan->f33_getIconIndex(L1142_T_Thing)) == k147_IconIndiceJunkChampionBones)) { L1143_ps_Junk = (Junk*)_vm->_dungeonMan->f156_getThingData(L1142_T_Thing); M33_setMapAndTime(L1147_s_Event._mapTime, _vm->_dungeonMan->_g309_partyMapIndex, _vm->_g313_gameTime + 1); @@ -1283,7 +1283,7 @@ void EventManager::f357_discardAllInput() { } void EventManager::f364_commandTakeStairs(bool stairsGoDown) { - _vm->_movsens->f267_getMoveResult(Thing::_party, _vm->_dungeonMan->_g306_partyMapX, _vm->_dungeonMan->_g307_partyMapY, kM1_MapXNotOnASquare, 0); + _vm->_moveSens->f267_getMoveResult(Thing::_party, _vm->_dungeonMan->_g306_partyMapX, _vm->_dungeonMan->_g307_partyMapY, kM1_MapXNotOnASquare, 0); _vm->_g327_newPartyMapIndex = _vm->_dungeonMan->f154_getLocationAfterLevelChange(_vm->_dungeonMan->_g309_partyMapIndex, stairsGoDown ? -1 : 1, &_vm->_dungeonMan->_g306_partyMapX, &_vm->_dungeonMan->_g307_partyMapY); _vm->_dungeonMan->f173_setCurrentMap(_vm->_g327_newPartyMapIndex); _vm->_championMan->f284_setPartyDirection(_vm->_dungeonMan->f155_getStairsExitDirection(_vm->_dungeonMan->_g306_partyMapX, _vm->_dungeonMan->_g307_partyMapY)); diff --git a/engines/dm/group.cpp b/engines/dm/group.cpp index ec2090cc6e..1d8fc18d2f 100644 --- a/engines/dm/group.cpp +++ b/engines/dm/group.cpp @@ -144,7 +144,7 @@ void GroupMan::f188_dropGroupPossessions(int16 mapX, int16 mapY, Thing groupThin if ((L0365_T_CurrentThing).getType() == k5_WeaponThingType) { L0371_B_WeaponDropped = true; } - _vm->_movsens->f267_getMoveResult(L0365_T_CurrentThing, kM1_MapXNotOnASquare, 0, mapX, mapY); + _vm->_moveSens->f267_getMoveResult(L0365_T_CurrentThing, kM1_MapXNotOnASquare, 0, mapX, mapY); } while ((L0365_T_CurrentThing = L0366_T_NextThing) != Thing::_endOfList); if (mode >= k0_soundModePlayImmediately) { _vm->f064_SOUND_RequestPlay_CPSD(L0371_B_WeaponDropped ? k00_soundMETALLIC_THUD : k04_soundWOODEN_THUD_ATTACK_TROLIN_ANTMAN_STONE_GOLEM, mapX, mapY, mode); @@ -256,7 +256,7 @@ void GroupMan::f186_dropCreatureFixedPossessions(uint16 creatureType, int16 mapX L0360_ps_Weapon->setType(L0356_ui_FixedPossession); L0360_ps_Weapon->setCursed(L0361_B_Cursed); L0358_T_Thing = M15_thingWithNewCell(L0358_T_Thing, ((cell == k255_CreatureTypeSingleCenteredCreature) || !_vm->getRandomNumber(4)) ? _vm->getRandomNumber(4) : cell); - _vm->_movsens->f267_getMoveResult(L0358_T_Thing, kM1_MapXNotOnASquare, 0, mapX, mapY); + _vm->_moveSens->f267_getMoveResult(L0358_T_Thing, kM1_MapXNotOnASquare, 0, mapX, mapY); } _vm->f064_SOUND_RequestPlay_CPSD(L0362_B_WeaponDropped ? k00_soundMETALLIC_THUD : k04_soundWOODEN_THUD_ATTACK_TROLIN_ANTMAN_STONE_GOLEM, mapX, mapY, mode); } @@ -487,7 +487,7 @@ void GroupMan::f189_delete(int16 mapX, int16 mapY) { L0373_ps_Group = (Group *)_vm->_dungeonMan->f156_getThingData(L0372_T_GroupThing); for (uint16 i = 0; i < 4; ++i) L0373_ps_Group->_health[i] = 0; - _vm->_movsens->f267_getMoveResult(L0372_T_GroupThing, mapX, mapY, kM1_MapXNotOnASquare, 0); + _vm->_moveSens->f267_getMoveResult(L0372_T_GroupThing, mapX, mapY, kM1_MapXNotOnASquare, 0); L0373_ps_Group->_nextThing = Thing::_none; if (_vm->_dungeonMan->_g272_currMapIndex == _vm->_dungeonMan->_g309_partyMapIndex) { _vm->_groupMan->_g375_activeGroups[L0373_ps_Group->getActiveGroupIndex()]._groupThingIndex = -1; @@ -625,10 +625,10 @@ void GroupMan::f209_processEvents29to41(int16 eventMapX, int16 eventMapY, int16 AL0450_i_DestinationMapX = eventMapX; AL0451_i_DestinationMapY = eventMapY; AL0450_i_DestinationMapX += _vm->_dirIntoStepCountEast[AL0446_i_Direction], AL0451_i_DestinationMapY += _vm->_dirIntoStepCountNorth[AL0446_i_Direction]; - if (_vm->_movsens->f267_getMoveResult(L0449_T_GroupThing, eventMapX, eventMapY, AL0450_i_DestinationMapX, AL0451_i_DestinationMapY)) + if (_vm->_moveSens->f267_getMoveResult(L0449_T_GroupThing, eventMapX, eventMapY, AL0450_i_DestinationMapX, AL0451_i_DestinationMapY)) goto T0209139_Return; - L0465_s_NextEvent._B._location._mapX = _vm->_movsens->_g397_moveResultMapX; - L0465_s_NextEvent._B._location._mapY = _vm->_movsens->_g398_moveResultMapY; + L0465_s_NextEvent._B._location._mapX = _vm->_moveSens->_g397_moveResultMapX; + L0465_s_NextEvent._B._location._mapY = _vm->_moveSens->_g398_moveResultMapY; } L0465_s_NextEvent._type = k37_TMEventTypeUpdateBehaviourGroup; AL0446_i_Ticks = MAX(ABS(_vm->_dungeonMan->_g272_currMapIndex - _vm->_dungeonMan->_g309_partyMapIndex) << 4, L0448_s_CreatureInfo._movementTicks << 1); @@ -797,10 +797,10 @@ T0209058_MoveInRandomDirection: && f202_isMovementPossible(&L0448_s_CreatureInfo, eventMapX, eventMapY, AL0446_i_Direction, false)) { T0209061_MoveGroup: if (L0453_B_NewGroupDirectionFound = ((AL0447_i_Ticks = (L0461_i_MovementTicks >> 1) - L0462_i_TicksSinceLastMove) <= 0)) { - if (_vm->_movsens->f267_getMoveResult(L0449_T_GroupThing, eventMapX, eventMapY, AL0450_i_DestinationMapX, AL0451_i_DestinationMapY)) + if (_vm->_moveSens->f267_getMoveResult(L0449_T_GroupThing, eventMapX, eventMapY, AL0450_i_DestinationMapX, AL0451_i_DestinationMapY)) goto T0209139_Return; - L0465_s_NextEvent._B._location._mapX = _vm->_movsens->_g397_moveResultMapX; - L0465_s_NextEvent._B._location._mapY = _vm->_movsens->_g398_moveResultMapY;; + L0465_s_NextEvent._B._location._mapX = _vm->_moveSens->_g397_moveResultMapX; + L0465_s_NextEvent._B._location._mapY = _vm->_moveSens->_g398_moveResultMapY;; L0445_ps_ActiveGroup->_priorMapX = eventMapX; L0445_ps_ActiveGroup->_priorMapY = eventMapY; L0445_ps_ActiveGroup->_lastMoveTime = _vm->_g313_gameTime; @@ -1291,7 +1291,7 @@ int32 GroupMan::f179_getCreatureAspectUpdateTime(ActiveGroup *activeGroup, int16 if (L0331_ui_CreatureType == k13_CreatureTypeCouatl) { if (_vm->getRandomNumber(2)) { toggleFlag(AL0326_ui_Aspect, k0x0040_MaskActiveGroupFlipBitmap); - L1635_ui_SoundIndex = _vm->_movsens->f514_getSound(k13_CreatureTypeCouatl); + L1635_ui_SoundIndex = _vm->_moveSens->f514_getSound(k13_CreatureTypeCouatl); if (L1635_ui_SoundIndex <= k34_D13_soundCount) { _vm->f064_SOUND_RequestPlay_CPSD(L1635_ui_SoundIndex, _g378_currentGroupMapX, _g379_currentGroupMapY, k1_soundModePlayIfPrioritized); } @@ -1806,7 +1806,7 @@ Thing GroupMan::f185_groupGetGenerated(int16 creatureType, int16 healthMultiplie } } while (creatureCount--); L0353_ps_Group->_cells = L0352_ui_GroupCells; - if (_vm->_movsens->f267_getMoveResult(L0349_T_GroupThing, kM1_MapXNotOnASquare, 0, mapX, mapY)) { /* If F0267_MOVE_GetMoveResult_CPSCE returns true then the group was either killed by a projectile impact (in which case the thing data was marked as unused) or the party is on the destination square and an event is created to move the creature into the dungeon later (in which case the thing is referenced in the event) */ + if (_vm->_moveSens->f267_getMoveResult(L0349_T_GroupThing, kM1_MapXNotOnASquare, 0, mapX, mapY)) { /* If F0267_MOVE_GetMoveResult_CPSCE returns true then the group was either killed by a projectile impact (in which case the thing data was marked as unused) or the party is on the destination square and an event is created to move the creature into the dungeon later (in which case the thing is referenced in the event) */ return Thing::_none; } _vm->f064_SOUND_RequestPlay_CPSD(k17_soundBUZZ, mapX, mapY, k1_soundModePlayIfPrioritized); @@ -2049,7 +2049,7 @@ void GroupMan::f225_fuseAction(uint16 mapX, uint16 mapY) { } } if (f223_isSquareACorridorTeleporterPitOrDoor(L0548_i_MapX, L0549_i_MapY)) { - if (!_vm->_movsens->f267_getMoveResult(L0555_T_LordChaosThing, mapX, mapY, L0548_i_MapX, L0549_i_MapY)) { + if (!_vm->_moveSens->f267_getMoveResult(L0555_T_LordChaosThing, mapX, mapY, L0548_i_MapX, L0549_i_MapY)) { f180_startWanedring(L0548_i_MapX, L0549_i_MapY); } return; diff --git a/engines/dm/menus.cpp b/engines/dm/menus.cpp index 54ce632590..b63717d265 100644 --- a/engines/dm/menus.cpp +++ b/engines/dm/menus.cpp @@ -620,7 +620,7 @@ T0412033: _vm->_championMan->f301_addObjectInSlot((ChampionIndex)champIndex, L1272_T_Object, AL1267_ui_SlotIndex);
_vm->_championMan->f292_drawChampionState((ChampionIndex)champIndex);
} else {
- _vm->_movsens->f267_getMoveResult(L1272_T_Object, kM1_MapXNotOnASquare, 0, _vm->_dungeonMan->_g306_partyMapX, _vm->_dungeonMan->_g307_partyMapY);
+ _vm->_moveSens->f267_getMoveResult(L1272_T_Object, kM1_MapXNotOnASquare, 0, _vm->_dungeonMan->_g306_partyMapX, _vm->_dungeonMan->_g307_partyMapY);
}
break;
case k8_spellType_otherFireshield:
@@ -1252,9 +1252,9 @@ T0407032: /* CHANGE6_00_FIX The presence of a group over the pit is checked so that you cannot climb down a pit with the rope if there is a group levitating over it */
if ((_vm->_dungeonMan->f151_getSquare(L1251_i_MapX, L1252_i_MapY).getType() == k2_ElementTypePit) && (_vm->_groupMan->f175_groupGetThing(L1251_i_MapX, L1252_i_MapY) == Thing::_endOfList)) {
/* BUG0_77 The party moves forward when using the rope in front of a closed pit. The engine does not check whether the pit is open before moving the party over the pit. This is not consistent with the behavior when using the rope in front of a corridor where nothing happens */
- _vm->_movsens->_g402_useRopeToClimbDownPit = true;
- _vm->_movsens->f267_getMoveResult(Thing::_party, _vm->_dungeonMan->_g306_partyMapX, _vm->_dungeonMan->_g307_partyMapY, L1251_i_MapX, L1252_i_MapY);
- _vm->_movsens->_g402_useRopeToClimbDownPit = false;
+ _vm->_moveSens->_g402_useRopeToClimbDownPit = true;
+ _vm->_moveSens->f267_getMoveResult(Thing::_party, _vm->_dungeonMan->_g306_partyMapX, _vm->_dungeonMan->_g307_partyMapY, L1251_i_MapX, L1252_i_MapY);
+ _vm->_moveSens->_g402_useRopeToClimbDownPit = false;
} else {
L1249_ui_ActionDisabledTicks = 0;
}
diff --git a/engines/dm/projexpl.cpp b/engines/dm/projexpl.cpp index 06ba83afd8..937e144e25 100644 --- a/engines/dm/projexpl.cpp +++ b/engines/dm/projexpl.cpp @@ -148,7 +148,7 @@ T0217004: L0494_ps_Door = (Door *)_vm->_dungeonMan->f157_getSquareFirstThingData(AP0454_i_ProjectileTargetMapX, AP0455_i_ProjectileTargetMapY); if ((AL0487_i_DoorState != k5_doorState_DESTROYED) && (L0486_T_ProjectileAssociatedThing == Thing::_explOpenDoor)) { if (L0494_ps_Door->hasButton()) { - _vm->_movsens->f268_addEvent(k10_TMEventTypeDoor, AP0454_i_ProjectileTargetMapX, AP0455_i_ProjectileTargetMapY, 0, k2_SensorEffToggle, _vm->_g313_gameTime + 1); + _vm->_moveSens->f268_addEvent(k10_TMEventTypeDoor, AP0454_i_ProjectileTargetMapX, AP0455_i_ProjectileTargetMapY, 0, k2_SensorEffToggle, _vm->_g313_gameTime + 1); } break; } @@ -409,7 +409,7 @@ void ProjExpl::f215_projectileDelete(Thing projectileThing, Thing* groupSlot, in _vm->_dungeonMan->f163_linkThingToList(L0479_T_Thing, L0478_T_PreviousThing, kM1_MapXNotOnASquare, 0); } } else { - _vm->_movsens->f267_getMoveResult(Thing((L0479_T_Thing).getTypeAndIndex() | getFlag(projectileThing.toUint16(), 0xC)), -2, 0, mapX, mapY); + _vm->_moveSens->f267_getMoveResult(Thing((L0479_T_Thing).getTypeAndIndex() | getFlag(projectileThing.toUint16(), 0xC)), -2, 0, mapX, mapY); } } L0480_ps_Projectile->_nextThing = Thing::_none; @@ -479,12 +479,12 @@ void ProjExpl::f219_processEvents48To49_projectile(TimelineEvent* event) { } L0515_T_ProjectileThingNewCell = M15_thingWithNewCell(L0515_T_ProjectileThingNewCell, L0518_ui_Cell &= 0x0003); if (L0522_B_ProjectileMovesToOtherSquare) { - _vm->_movsens->f267_getMoveResult(L0515_T_ProjectileThingNewCell, L0525_i_SourceMapX, L0526_i_SourceMapY, L0523_i_DestinationMapX, L0524_i_DestinationMapY); - L0519_ps_Event->_C._projectile.setMapX(_vm->_movsens->_g397_moveResultMapX); - L0519_ps_Event->_C._projectile.setMapY(_vm->_movsens->_g398_moveResultMapY); - L0519_ps_Event->_C._projectile.setDir((Direction)_vm->_movsens->_g400_moveResultDir); - L0515_T_ProjectileThingNewCell = M15_thingWithNewCell(L0515_T_ProjectileThingNewCell, _vm->_movsens->_g401_moveResultCell); - M31_setMap(L0519_ps_Event->_mapTime, _vm->_movsens->_g399_moveResultMapIndex); + _vm->_moveSens->f267_getMoveResult(L0515_T_ProjectileThingNewCell, L0525_i_SourceMapX, L0526_i_SourceMapY, L0523_i_DestinationMapX, L0524_i_DestinationMapY); + L0519_ps_Event->_C._projectile.setMapX(_vm->_moveSens->_g397_moveResultMapX); + L0519_ps_Event->_C._projectile.setMapY(_vm->_moveSens->_g398_moveResultMapY); + L0519_ps_Event->_C._projectile.setDir((Direction)_vm->_moveSens->_g400_moveResultDir); + L0515_T_ProjectileThingNewCell = M15_thingWithNewCell(L0515_T_ProjectileThingNewCell, _vm->_moveSens->_g401_moveResultCell); + M31_setMap(L0519_ps_Event->_mapTime, _vm->_moveSens->_g399_moveResultMapIndex); } else { if ((Square(_vm->_dungeonMan->f151_getSquare(L0523_i_DestinationMapX, L0524_i_DestinationMapY)).getType() == k4_DoorElemType) && f217_projectileHasImpactOccurred(k4_DoorElemType, L0523_i_DestinationMapX, L0524_i_DestinationMapY, L0518_ui_Cell, L0521_T_ProjectileThing)) { return; diff --git a/engines/dm/timeline.cpp b/engines/dm/timeline.cpp index 33bfc61555..8baddf0abf 100644 --- a/engines/dm/timeline.cpp +++ b/engines/dm/timeline.cpp @@ -554,11 +554,11 @@ void Timeline::f249_moveTeleporterOrPitSquareThings(uint16 mapX, uint16 mapY) { if ((_vm->_dungeonMan->_g272_currMapIndex == _vm->_dungeonMan->_g309_partyMapIndex) && (mapX == _vm->_dungeonMan->_g306_partyMapX) && (mapY == _vm->_dungeonMan->_g307_partyMapY)) { - _vm->_movsens->f267_getMoveResult(Thing::_party, mapX, mapY, mapX, mapY); + _vm->_moveSens->f267_getMoveResult(Thing::_party, mapX, mapY, mapX, mapY); _vm->_championMan->f296_drawChangedObjectIcons(); } if ((L0645_T_Thing = _vm->_groupMan->f175_groupGetThing(mapX, mapY)) != Thing::_endOfList) { - _vm->_movsens->f267_getMoveResult(L0645_T_Thing, mapX, mapY, mapX, mapY); + _vm->_moveSens->f267_getMoveResult(L0645_T_Thing, mapX, mapY, mapX, mapY); } L0645_T_Thing = _vm->_dungeonMan->f162_getSquareFirstObject(mapX, mapY); L0648_T_NextThing = L0645_T_Thing; @@ -575,24 +575,24 @@ void Timeline::f249_moveTeleporterOrPitSquareThings(uint16 mapX, uint16 mapY) { L0648_T_NextThing = _vm->_dungeonMan->f159_getNextThing(L0645_T_Thing); AL0644_ui_ThingType = L0645_T_Thing.getType(); if (AL0644_ui_ThingType > k4_GroupThingType) { - _vm->_movsens->f267_getMoveResult(L0645_T_Thing, mapX, mapY, mapX, mapY); + _vm->_moveSens->f267_getMoveResult(L0645_T_Thing, mapX, mapY, mapX, mapY); } if (AL0644_ui_ThingType == k14_ProjectileThingType) { L0646_ps_Projectile = (Projectile*)_vm->_dungeonMan->f156_getThingData(L0645_T_Thing); L0647_ps_Event = &_vm->_timeline->_g370_events[L0646_ps_Projectile->_eventIndex]; - L0647_ps_Event->_C._projectile.setMapX(_vm->_movsens->_g397_moveResultMapX); - L0647_ps_Event->_C._projectile.setMapY(_vm->_movsens->_g398_moveResultMapY); - L0647_ps_Event->_C._projectile.setDir((Direction)_vm->_movsens->_g400_moveResultDir); - L0647_ps_Event->_B._slot = M15_thingWithNewCell(L0645_T_Thing, _vm->_movsens->_g401_moveResultCell).toUint16(); - M31_setMap(L0647_ps_Event->_mapTime, _vm->_movsens->_g399_moveResultMapIndex); + L0647_ps_Event->_C._projectile.setMapX(_vm->_moveSens->_g397_moveResultMapX); + L0647_ps_Event->_C._projectile.setMapY(_vm->_moveSens->_g398_moveResultMapY); + L0647_ps_Event->_C._projectile.setDir((Direction)_vm->_moveSens->_g400_moveResultDir); + L0647_ps_Event->_B._slot = M15_thingWithNewCell(L0645_T_Thing, _vm->_moveSens->_g401_moveResultCell).toUint16(); + M31_setMap(L0647_ps_Event->_mapTime, _vm->_moveSens->_g399_moveResultMapIndex); } else { if (AL0644_ui_ThingType == k15_ExplosionThingType) { for (AL0644_ui_EventIndex = 0, L0647_ps_Event = _vm->_timeline->_g370_events; AL0644_ui_EventIndex < _vm->_timeline->_g369_eventMaxCount; L0647_ps_Event++, AL0644_ui_EventIndex++) { if ((L0647_ps_Event->_type == k25_TMEventTypeExplosion) && (L0647_ps_Event->_C._slot == L0645_T_Thing.toUint16())) { /* BUG0_23 A Fluxcage explosion remains on a square forever. If you open a pit or teleporter on a square where there is a Fluxcage explosion, the Fluxcage explosion is moved but the associated event is not updated (because Fluxcage explosions do not use k25_TMEventTypeExplosion but rather k24_TMEventTypeRemoveFluxcage) causing the Fluxcage explosion to remain in the dungeon forever on its destination square. When the k24_TMEventTypeRemoveFluxcage expires the explosion thing is not removed, but it is marked as unused. Consequently, any objects placed on the Fluxcage square after it was moved but before it expires become orphans upon expiration. After expiration, any object placed on the fluxcage square is cloned when picked up */ - L0647_ps_Event->_B._location._mapX = _vm->_movsens->_g397_moveResultMapX; - L0647_ps_Event->_B._location._mapY = _vm->_movsens->_g398_moveResultMapY; - L0647_ps_Event->_C._slot = M15_thingWithNewCell(L0645_T_Thing, _vm->_movsens->_g401_moveResultCell).toUint16(); - M31_setMap(L0647_ps_Event->_mapTime, _vm->_movsens->_g399_moveResultMapIndex); + L0647_ps_Event->_B._location._mapX = _vm->_moveSens->_g397_moveResultMapX; + L0647_ps_Event->_B._location._mapY = _vm->_moveSens->_g398_moveResultMapY; + L0647_ps_Event->_C._slot = M15_thingWithNewCell(L0645_T_Thing, _vm->_moveSens->_g401_moveResultCell).toUint16(); + M31_setMap(L0647_ps_Event->_mapTime, _vm->_moveSens->_g399_moveResultMapIndex); } } } @@ -661,10 +661,10 @@ void Timeline::f248_timelineProcessEvent6_squareWall(TimelineEvent* event) { L0638_ps_Sensor->setData(L0637_ui_SensorData); if (L0638_ps_Sensor->getEffectA() == k3_SensorEffHold) { AL0636_B_TriggerSetEffect = ((L0637_ui_SensorData == 0) != L0638_ps_Sensor->getRevertEffectA()); - _vm->_movsens->f272_sensorTriggerEffect(L0638_ps_Sensor, AL0636_B_TriggerSetEffect ? k0_SensorEffSet : k1_SensorEffClear, L0641_i_MapX, L0642_i_MapY, L0643_ui_Cell); + _vm->_moveSens->f272_sensorTriggerEffect(L0638_ps_Sensor, AL0636_B_TriggerSetEffect ? k0_SensorEffSet : k1_SensorEffClear, L0641_i_MapX, L0642_i_MapY, L0643_ui_Cell); } else { if (L0637_ui_SensorData == 0) { - _vm->_movsens->f272_sensorTriggerEffect(L0638_ps_Sensor, L0638_ps_Sensor->getEffectA(), L0641_i_MapX, L0642_i_MapY, L0643_ui_Cell); + _vm->_moveSens->f272_sensorTriggerEffect(L0638_ps_Sensor, L0638_ps_Sensor->getEffectA(), L0641_i_MapX, L0642_i_MapY, L0643_ui_Cell); } } } @@ -687,10 +687,10 @@ void Timeline::f248_timelineProcessEvent6_squareWall(TimelineEvent* event) { L0638_ps_Sensor->setData(L0637_ui_SensorData); AL0636_B_TriggerSetEffect = (Sensor::getDataMask1(L0637_ui_SensorData) == Sensor::getDataMask2(L0637_ui_SensorData)) != L0638_ps_Sensor->getRevertEffectA(); if (L0638_ps_Sensor->getEffectA() == k3_SensorEffHold) { - _vm->_movsens->f272_sensorTriggerEffect(L0638_ps_Sensor, AL0636_B_TriggerSetEffect ? k0_SensorEffSet : k1_SensorEffClear, L0641_i_MapX, L0642_i_MapY, L0643_ui_Cell); + _vm->_moveSens->f272_sensorTriggerEffect(L0638_ps_Sensor, AL0636_B_TriggerSetEffect ? k0_SensorEffSet : k1_SensorEffClear, L0641_i_MapX, L0642_i_MapY, L0643_ui_Cell); } else { if (AL0636_B_TriggerSetEffect) { - _vm->_movsens->f272_sensorTriggerEffect(L0638_ps_Sensor, L0638_ps_Sensor->getEffectA(), L0641_i_MapX, L0642_i_MapY, L0643_ui_Cell); + _vm->_moveSens->f272_sensorTriggerEffect(L0638_ps_Sensor, L0638_ps_Sensor->getEffectA(), L0641_i_MapX, L0642_i_MapY, L0643_ui_Cell); } } } else { @@ -713,7 +713,7 @@ void Timeline::f248_timelineProcessEvent6_squareWall(TimelineEvent* event) { } L0634_T_Thing = _vm->_dungeonMan->f159_getNextThing(L0634_T_Thing); } - _vm->_movsens->f271_processRotationEffect(); + _vm->_moveSens->f271_processRotationEffect(); } void Timeline::f247_triggerProjectileLauncher(Sensor* sensor, TimelineEvent* event) { @@ -881,7 +881,7 @@ T0252001: if (event->_type == k61_TMEventTypeMoveGroupAudible) { _vm->f064_SOUND_RequestPlay_CPSD(k17_soundBUZZ, L0656_ui_MapX, L0657_ui_MapY, k1_soundModePlayIfPrioritized); } - _vm->_movsens->f267_getMoveResult(Thing(event->_C._slot), kM1_MapXNotOnASquare, 0, L0656_ui_MapX, L0657_ui_MapY); + _vm->_moveSens->f267_getMoveResult(Thing(event->_C._slot), kM1_MapXNotOnASquare, 0, L0656_ui_MapX, L0657_ui_MapY); } else { if (!L0659_B_RandomDirectionMoveRetried) { L0659_B_RandomDirectionMoveRetried = true; |