aboutsummaryrefslogtreecommitdiff
path: root/engines/gnap/scenes
diff options
context:
space:
mode:
authorStrangerke2016-05-04 20:03:18 +0200
committerEugene Sandulenko2016-05-10 12:14:49 +0200
commit45bc40166f3d256312327a7c67e055505649705e (patch)
tree4380b547dd01fccae2ac4ebac7f85a17151164b4 /engines/gnap/scenes
parent2e50019c05dbff0bbb559b72a201630605505c87 (diff)
downloadscummvm-rg350-45bc40166f3d256312327a7c67e055505649705e.tar.gz
scummvm-rg350-45bc40166f3d256312327a7c67e055505649705e.tar.bz2
scummvm-rg350-45bc40166f3d256312327a7c67e055505649705e.zip
GNAP: Use a Character for Platypus (WIP)
Diffstat (limited to 'engines/gnap/scenes')
-rw-r--r--engines/gnap/scenes/group0.cpp102
-rw-r--r--engines/gnap/scenes/group1.cpp76
-rw-r--r--engines/gnap/scenes/group2.cpp44
-rw-r--r--engines/gnap/scenes/group3.cpp42
-rw-r--r--engines/gnap/scenes/group4.cpp77
5 files changed, 165 insertions, 176 deletions
diff --git a/engines/gnap/scenes/group0.cpp b/engines/gnap/scenes/group0.cpp
index 019678d15f..087fb53a5e 100644
--- a/engines/gnap/scenes/group0.cpp
+++ b/engines/gnap/scenes/group0.cpp
@@ -131,15 +131,15 @@ void Scene01::run() {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
if (_vm->isFlag(kGFKeysTaken))
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
else
- _vm->playGnapScratchingHead(_vm->_platX, _vm->_platY);
+ _vm->playGnapScratchingHead(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
@@ -481,15 +481,15 @@ void Scene02::run() {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
if (_vm->isFlag(kGFKeysTaken))
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
else
- _vm->playGnapScratchingHead(_vm->_platX, _vm->_platY);
+ _vm->playGnapScratchingHead(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
@@ -946,15 +946,15 @@ void Scene03::run() {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
if (_vm->isFlag(kGFKeysTaken))
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
else
- _vm->playGnapScratchingHead(_vm->_platX, _vm->_platY);
+ _vm->playGnapScratchingHead(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
@@ -1183,12 +1183,11 @@ void Scene03::updateAnimations() {
break;
case kAS03FreePlatypusDone:
_vm->_gnapActionStatus = -1;
- _vm->_platX = 6;
- _vm->_platY = 6;
- _vm->_platypusFacing = kDirUnk4;
+ _vm->_plat->_pos = Common::Point(6, 6);
+ _vm->_plat->_idleFacing = kDirUnk4;
_vm->_platypusId = 120;
gameSys.insertSequence(0x107CA, _vm->_platypusId, 0x1BC, 99,
- kSeqSyncWait, 0, 75 * _vm->_platX - _vm->_platGridX, 48 * _vm->_platY - _vm->_platGridY);
+ kSeqSyncWait, 0, 75 * _vm->_plat->_pos.x - _vm->_platGridX, 48 * _vm->_plat->_pos.y - _vm->_platGridY);
gameSys.insertSequence(0x1B7, 99, 0, 0, kSeqNone, 0, 0, 0);
_vm->_platypusSequenceDatNum = 1;
_vm->_platypusSequenceId = 0x7CA;
@@ -1382,8 +1381,7 @@ void Scene04::run() {
_vm->setGrabCursorSprite(kItemKeys);
_vm->_gnap->_pos = Common::Point(4, 7);
_vm->_gnapId = 140;
- _vm->_platX = 6;
- _vm->_platY = 7;
+ _vm->_plat->_pos = Common::Point(6, 7);
_vm->_platypusId = 141;
gameSys.insertSequence(0x107B5, 140, 0, 0, kSeqNone, 0, 300 - _vm->_gnapGridX, 336 - _vm->_gnapGridY);
gameSys.insertSequence(0x20C, 141, 0, 0, kSeqNone, 0, 0, 0);
@@ -1396,7 +1394,7 @@ void Scene04::run() {
_vm->clearFlag(kGFPlatypusDisguised);
_vm->_platypusSequenceId = 0x20C;
_vm->_platypusSequenceDatNum = 0;
- _vm->_platypusFacing = kDirBottomRight;
+ _vm->_plat->_idleFacing = kDirBottomRight;
_vm->_gnapSequenceId = 0x7B5;
_vm->_gnapSequenceDatNum = 1;
gameSys.waitForUpdate();
@@ -1452,18 +1450,18 @@ void Scene04::run() {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
if (_vm->isFlag(kGFKeysTaken))
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
else
- _vm->playGnapScratchingHead(_vm->_platX, _vm->_platY);
+ _vm->playGnapScratchingHead(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
if (_vm->_cursorValue == 4)
_vm->gnapKissPlatypus(0);
else
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
@@ -1927,15 +1925,15 @@ void Scene05::run() {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
if (_vm->isFlag(kGFKeysTaken))
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
else
- _vm->playGnapScratchingHead(_vm->_platX, _vm->_platY);
+ _vm->playGnapScratchingHead(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
@@ -1966,11 +1964,11 @@ void Scene05::run() {
_vm->gnapUseDeviceOnPlatypus();
if (_vm->platypusWalkTo(_vm->_hotspotsWalkPos[1].x, _vm->_hotspotsWalkPos[1].y, 1, 0x107C2, 1)) {
_vm->_platypusActionStatus = kAS05PlatSearchHaystack;
- _vm->_platypusFacing = kDirUnk4;
+ _vm->_plat->_idleFacing = kDirUnk4;
}
if (_vm->_gnap->_pos.x == 4 && (_vm->_gnap->_pos.y == 8 || _vm->_gnap->_pos.y == 7))
_vm->gnapWalkStep();
- _vm->playGnapIdle(_vm->_platX, _vm->_platY);
+ _vm->playGnapIdle(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
}
break;
}
@@ -2205,12 +2203,11 @@ void Scene05::updateAnimations() {
if (gameSys.getAnimationStatus(1) == 2) {
if (_vm->_platypusSequenceId == 0x146) {
- _vm->_platX = 4;
- _vm->_platY = 8;
+ _vm->_plat->_pos = Common::Point(4, 8);
gameSys.insertSequence(0x107C1, 160, 0x146, 256, kSeqSyncWait, 0, 300 - _vm->_platGridX, 384 - _vm->_platGridY);
_vm->_platypusSequenceId = 0x7C1;
_vm->_platypusSequenceDatNum = 1;
- _vm->_platypusId = 20 * _vm->_platY;
+ _vm->_platypusId = 20 * _vm->_plat->_pos.y;
_vm->invAdd(kItemNeedle);
_vm->setFlag(kGFNeedleTaken);
_vm->setGrabCursorSprite(kItemNeedle);
@@ -2352,15 +2349,15 @@ void Scene06::run() {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
if (_vm->isFlag(kGFKeysTaken))
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
else
- _vm->playGnapScratchingHead(_vm->_platX, _vm->_platY);
+ _vm->playGnapScratchingHead(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
@@ -2440,7 +2437,7 @@ void Scene06::run() {
_vm->_hotspots[kHS06WalkArea5]._flags &= ~SF_WALKABLE;
_vm->_gnap->_idleFacing = kDirUpLeft;
_vm->platypusWalkTo(6, 8, 1, 0x107C2, 1);
- _vm->_platypusFacing = kDirNone;
+ _vm->_plat->_idleFacing = kDirNone;
_vm->_gnapActionStatus = kAS06UseTwigOnHorse;
_vm->setGrabCursorSprite(-1);
} else if (_vm->_grabCursorSpriteIndex >= 0) {
@@ -2593,8 +2590,7 @@ void Scene06::updateAnimations() {
_vm->_hotspots[kHS06Ladder]._flags = SF_DISABLED;
_vm->setGrabCursorSprite(kItemGas);
_vm->_platypusActionStatus = -1;
- _vm->_platX = 6;
- _vm->_platY = 8;
+ _vm->_plat->_pos = Common::Point(6, 8);
gameSys.insertSequence(0x107C1, _vm->_platypusId, 0, 0, kSeqNone, 0, 450 - _vm->_platGridX, 384 - _vm->_platGridY);
_vm->_platypusSequenceId = 0x7C1;
_vm->_platypusSequenceDatNum = 1;
@@ -2697,12 +2693,11 @@ void Scene07::run() {
gameSys.insertSequence(0x8F, 140, 0, 0, kSeqNone, 0, 0, 0);
gameSys.setAnimation(makeRid(_vm->_gnapSequenceDatNum, _vm->_gnapSequenceId), _vm->_gnapId, 0);
_vm->_gnapActionStatus = kAS07Wait;
- _vm->_platX = 3;
- _vm->_platY = 8;
+ _vm->_plat->_pos = Common::Point(3, 8);
_vm->_platypusId = 160;
_vm->_platypusSequenceId = 0x91;
_vm->_platypusSequenceDatNum = 0;
- _vm->_platypusFacing = kDirNone;
+ _vm->_plat->_idleFacing = kDirNone;
gameSys.insertSequence(0x91, 160, 0, 0, kSeqNone, 0, 0, 0);
_vm->endSceneInit();
}
@@ -2727,13 +2722,13 @@ void Scene07::run() {
case kHS07Platypus:
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
@@ -2813,10 +2808,10 @@ void Scene07::run() {
_vm->_timers[1] = _vm->getRandom(20) + 30;
int gnapRandomValue = _vm->getRandom(20);
// TODO Cleanup
- if (_vm->_platypusFacing != kDirNone) {
+ if (_vm->_plat->_idleFacing != kDirNone) {
if (gnapRandomValue != 0 || _vm->_platypusSequenceId != 0x7CA) {
if (gnapRandomValue != 1 || _vm->_platypusSequenceId != 0x7CA) {
- if (_vm->_platY == 9)
+ if (_vm->_plat->_pos.y == 9)
_vm->playPlatypusSequence(0x107CA);
} else {
_vm->playPlatypusSequence(0x10845);
@@ -2826,7 +2821,7 @@ void Scene07::run() {
}
} else if (gnapRandomValue != 0 || _vm->_platypusSequenceId != 0x7C9) {
if (gnapRandomValue != 1 || _vm->_platypusSequenceId != 0x7C9) {
- if (_vm->_platY == 9)
+ if (_vm->_plat->_pos.y == 9)
_vm->playPlatypusSequence(0x107C9);
} else {
_vm->playPlatypusSequence(0x10844);
@@ -2995,16 +2990,16 @@ void Scene08::run() {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
if (_vm->isFlag(kGFSceneFlag1))
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
else
- _vm->playGnapScratchingHead(_vm->_platX, _vm->_platY);
+ _vm->playGnapScratchingHead(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapActionIdle(0x14D);
_vm->gnapKissPlatypus(8);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
@@ -3056,7 +3051,7 @@ void Scene08::run() {
_vm->gnapUseDeviceOnPlatypus();
_vm->platypusWalkTo(6, 6, 1, 0x107C2, 1);
_vm->_platypusActionStatus = kAS08PlatWithMan;
- _vm->_platypusFacing = kDirNone;
+ _vm->_plat->_idleFacing = kDirNone;
_vm->playGnapIdle(6, 6);
break;
}
@@ -3092,7 +3087,7 @@ void Scene08::run() {
_vm->gnapUseDeviceOnPlatypus();
_vm->platypusWalkTo(3, 7, 1, 0x107C2, 1);
_vm->_platypusActionStatus = kAS08PlatWithDog;
- _vm->_platypusFacing = kDirNone;
+ _vm->_plat->_idleFacing = kDirNone;
_vm->playGnapIdle(3, 7);
break;
}
@@ -3332,11 +3327,10 @@ void Scene08::updateAnimations() {
gameSys.insertSequence(0x148, 160, _vm->_platypusSequenceId | (_vm->_platypusSequenceDatNum << 16), _vm->_platypusId, kSeqSyncWait, 0, 0, 0);
_currDogSequenceId = _nextDogSequenceId;
_nextDogSequenceId = 0x134;
- _vm->_platX = 1;
- _vm->_platY = 8;
+ _vm->_plat->_pos = Common::Point(1, 8);
_vm->_platypusId = 160;
_vm->_platypusSequenceId = 0x148;
- _vm->_platypusFacing = kDirUnk4;
+ _vm->_plat->_idleFacing = kDirUnk4;
_vm->_platypusSequenceDatNum = 0;
if (_vm->_gnap->_pos == Common::Point(1, 8))
_vm->gnapWalkStep();
@@ -3428,13 +3422,13 @@ void Scene09::run() {
case kHS09Platypus:
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
@@ -3448,7 +3442,7 @@ void Scene09::run() {
_vm->gnapWalkTo(4, 7, 0, 0x107BF, 1);
_vm->_gnapActionStatus = kAS09LeaveScene;
_vm->platypusWalkTo(4, 8, -1, 0x107D2, 1);
- _vm->_platypusFacing = kDirUnk4;
+ _vm->_plat->_idleFacing = kDirUnk4;
break;
case kHS09ExitHouse:
@@ -3457,7 +3451,7 @@ void Scene09::run() {
_vm->gnapWalkTo(10, -1, 0, 0x107AB, 1);
_vm->_gnapActionStatus = kAS09LeaveScene;
_vm->platypusWalkTo(10, -1, -1, 0x107CD, 1);
- _vm->_platypusFacing = kDirUnk4;
+ _vm->_plat->_idleFacing = kDirUnk4;
break;
case kHS09Trash:
diff --git a/engines/gnap/scenes/group1.cpp b/engines/gnap/scenes/group1.cpp
index 017858b24c..e2d0e9685a 100644
--- a/engines/gnap/scenes/group1.cpp
+++ b/engines/gnap/scenes/group1.cpp
@@ -112,15 +112,15 @@ void Scene10::run() {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
if (_vm->isFlag(kGFMudTaken))
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
else
- _vm->playGnapScratchingHead(_vm->_platX, _vm->_platY);
+ _vm->playGnapScratchingHead(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(10);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
@@ -242,7 +242,7 @@ void Scene10::run() {
_vm->gnapUseDeviceOnPlatypus();
_vm->platypusWalkTo(7, 6, 1, 0x107D2, 1);
_vm->_platypusActionStatus = kAS10PlatWithBox;
- _vm->_platypusFacing = kDirUnk4;
+ _vm->_plat->_idleFacing = kDirUnk4;
_vm->_largeSprite = gameSys.createSurface(0xC3);
_vm->playGnapIdle(7, 6);
}
@@ -368,19 +368,18 @@ void Scene10::updateAnimations() {
switch (_nextCookSequenceId) {
case 0x109:
- _vm->_platX = 4;
- _vm->_platY = 8;
+ _vm->_plat->_pos = Common::Point(4, 8);
gameSys.insertSequence(0x109, 100, _currCookSequenceId, 100, kSeqSyncWait, 0, 0, 0);
gameSys.insertSequence(0x107C9, 160,
_vm->_platypusSequenceId | (_vm->_platypusSequenceDatNum << 16), _vm->_platypusId,
kSeqSyncWait, _vm->getSequenceTotalDuration(0x109) + _vm->getSequenceTotalDuration(0x10A) + _vm->getSequenceTotalDuration(0x10843),
- 75 * _vm->_platX - _vm->_platGridX, 48 * _vm->_platY - _vm->_platGridY);
+ 75 * _vm->_plat->_pos.x - _vm->_platGridX, 48 * _vm->_plat->_pos.y - _vm->_platGridY);
gameSys.removeSequence(0x107, 100, true);
_currCookSequenceId = 0x109;
_nextCookSequenceId = 0x843;
_vm->_platypusSequenceId = 0x7C9;
_vm->_platypusId = 160;
- _vm->_platypusFacing = kDirNone;
+ _vm->_plat->_idleFacing = kDirNone;
_vm->_platypusSequenceDatNum = 1;
break;
case 0x843:
@@ -596,13 +595,13 @@ void Scene11::run() {
} else {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
@@ -1015,13 +1014,13 @@ void Scene12::run() {
case kHS12Platypus:
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
@@ -1073,7 +1072,7 @@ void Scene12::run() {
_vm->gnapUseDeviceOnPlatypus();
_vm->platypusWalkTo(3, 7, 1, 0x107D2, 1);
_vm->_platypusActionStatus = kAS12PlatWithToothGuy;
- _vm->_platypusFacing = kDirUnk4;
+ _vm->_plat->_idleFacing = kDirUnk4;
_vm->playGnapIdle(2, 7);
break;
}
@@ -1107,7 +1106,7 @@ void Scene12::run() {
_vm->_gnapActionStatus = kAS12TalkBarkeeper;
break;
case PLAT_CURSOR:
- _vm->playGnapPullOutDevice(_vm->_platX, _vm->_platY);
+ _vm->playGnapPullOutDevice(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
gameSys.setAnimation(makeRid(_vm->_gnapSequenceDatNum, _vm->_gnapSequenceId), _vm->_gnapId, 0);
_vm->_gnapActionStatus = kAS12PlatWithBarkeeper;
break;
@@ -1143,7 +1142,7 @@ void Scene12::run() {
_vm->gnapUseDeviceOnPlatypus();
_vm->platypusWalkTo(7, 6, 1, 0x107C2, 1);
_vm->_platypusActionStatus = kAS12PlatWithBeardGuy;
- _vm->_platypusFacing = kDirNone;
+ _vm->_plat->_idleFacing = kDirNone;
_vm->playGnapIdle(7, 6);
break;
}
@@ -1524,13 +1523,13 @@ void Scene13::run() {
case kHS13Platypus:
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
@@ -1694,7 +1693,7 @@ void Scene13::run() {
if (!_vm->_isLeavingScene) {
_vm->updatePlatypusIdleSequence();
- if (_vm->_platY == 5 || _vm->_platY == 6)
+ if (_vm->_plat->_pos.y == 5 || _vm->_plat->_pos.y == 6)
_vm->platypusWalkTo(-1, 7, -1, -1, 1);
if (_vm->_gnapActionStatus < 0)
_vm->updateGnapIdleSequence();
@@ -2423,8 +2422,7 @@ void Scene17::run() {
_vm->gnapWalkTo(4, 8, -1, 0x107B9, 1);
} else if (_vm->isFlag(kGFUnk27)) {
_vm->initGnapPos(3, 9, kDirUpLeft);
- _vm->_platX = _vm->_hotspotsWalkPos[2].x;
- _vm->_platY = _vm->_hotspotsWalkPos[2].y;
+ _vm->_plat->_pos = _vm->_hotspotsWalkPos[2];
_vm->_platypusId = 20 * _vm->_hotspotsWalkPos[2].y;
gameSys.insertSequence(0x25A, 20 * _vm->_hotspotsWalkPos[2].y, 0, 0, kSeqNone, 0, 0, 0);
gameSys.insertSequence(0x257, 254, 0, 0, kSeqNone, 0, 0, 0);
@@ -2459,8 +2457,7 @@ void Scene17::run() {
_vm->clearFlag(kGFUnk16);
_vm->_sceneWaiting = true;
_vm->initGnapPos(3, 9, kDirUpLeft);
- _vm->_platX = _vm->_hotspotsWalkPos[2].x;
- _vm->_platY = _vm->_hotspotsWalkPos[2].y;
+ _vm->_plat->_pos = _vm->_hotspotsWalkPos[2];
_vm->_platypusId = 20 * _vm->_hotspotsWalkPos[2].y;
_currPhoneSequenceId = 0x251;
gameSys.insertSequence(0x25A, 20 * _vm->_hotspotsWalkPos[2].y, 0, 0, kSeqNone, 0, 0, 0);
@@ -2498,18 +2495,17 @@ void Scene17::run() {
_vm->_gnapSequenceDatNum = 0;
_vm->_gnap->_idleFacing = kDirBottomRight;
gameSys.insertSequence(makeRid(_vm->_gnapSequenceDatNum, _vm->_gnapSequenceId), _vm->_gnapId, 0, 0, kSeqNone, 0, 0, 0);
- _vm->_platX = -1;
- _vm->_platY = 8;
+ _vm->_plat->_pos = Common::Point(-1, 8);
_vm->_platypusId = 160;
gameSys.insertSequence(0x241, 160, 0, 0, kSeqNone, 0, 0, 0);
gameSys.insertSequence(0x107C1, _vm->_platypusId, 0x241, _vm->_platypusId,
- kSeqScale | kSeqSyncWait, 0, 75 * _vm->_platX - _vm->_platGridX, 48 * _vm->_platY - _vm->_platGridY);
+ kSeqScale | kSeqSyncWait, 0, 75 * _vm->_plat->_pos.x - _vm->_platGridX, 48 * _vm->_plat->_pos.y - _vm->_platGridY);
gameSys.insertSequence(0x22C, 2, 0, 0, kSeqNone, 0, 0, 0);
// TODO delayTicksA(2, 9);
_vm->endSceneInit();
_vm->_platypusSequenceId = 0x7C1;
_vm->_platypusSequenceDatNum = 1;
- _vm->_platypusFacing = kDirBottomRight;
+ _vm->_plat->_idleFacing = kDirBottomRight;
_vm->platypusWalkTo(2, 9, -1, 0x107C2, 1);
}
@@ -2544,15 +2540,15 @@ void Scene17::run() {
_vm->invRemove(kItemJoint);
}
} else if (_vm->_grabCursorSpriteIndex >= 0) {
- _vm->playGnapScratchingHead(_vm->_platX, _vm->_platY);
+ _vm->playGnapScratchingHead(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
} else {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
case GRAB_CURSOR:
- _vm->playGnapScratchingHead(_vm->_platX, _vm->_platY);
+ _vm->playGnapScratchingHead(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
@@ -2622,7 +2618,7 @@ void Scene17::run() {
platHangUpPhone();
_vm->_isLeavingScene = true;
_vm->gnapUseDeviceOnPlatypus();
- _vm->_platypusFacing = kDirUpLeft;
+ _vm->_plat->_idleFacing = kDirUpLeft;
_vm->platypusWalkTo(_vm->_hotspotsWalkPos[2].x, _vm->_hotspotsWalkPos[2].y, 1, 0x107C2, 1);
_vm->setFlag(kGFUnk16);
_vm->_platypusActionStatus = kAS17PlatUsePhone;
@@ -2666,7 +2662,7 @@ void Scene17::run() {
platHangUpPhone();
_vm->_isLeavingScene = true;
_vm->gnapUseDeviceOnPlatypus();
- _vm->_platypusFacing = kDirUpLeft;
+ _vm->_plat->_idleFacing = kDirUpLeft;
_vm->platypusWalkTo(_vm->_hotspotsWalkPos[2].x, _vm->_hotspotsWalkPos[2].y, 1, 0x107C2, 1);
_vm->setFlag(kGFUnk16);
_vm->_platypusActionStatus = kAS17PlatUsePhone;
@@ -3186,11 +3182,11 @@ void Scene18::gnapCarryGarbageCanTo(int gridX) {
else
direction = -1;
} else {
- if (_vm->_gnap->_pos.y == _vm->_platY) {
+ if (_vm->_gnap->_pos.y == _vm->_plat->_pos.y) {
if (nextGridX >= _vm->_gnap->_pos.x) {
- if (nextGridX >= _vm->_platX && _vm->_gnap->_pos.x <= _vm->_platX)
+ if (nextGridX >= _vm->_plat->_pos.x && _vm->_gnap->_pos.x <= _vm->_plat->_pos.x)
_vm->platypusMakeRoom();
- } else if (nextGridX <= _vm->_platX && _vm->_gnap->_pos.x >= _vm->_platX) {
+ } else if (nextGridX <= _vm->_plat->_pos.x && _vm->_gnap->_pos.x >= _vm->_plat->_pos.x) {
_vm->platypusMakeRoom();
}
}
@@ -3442,17 +3438,17 @@ void Scene18::run() {
if (_vm->_grabCursorSpriteIndex == kItemJoint) {
_vm->gnapUseJointOnPlatypus();
} else if (_vm->_grabCursorSpriteIndex >= 0) {
- _vm->playGnapShowItem(_vm->_grabCursorSpriteIndex, _vm->_platX, _vm->_platY);
+ _vm->playGnapShowItem(_vm->_grabCursorSpriteIndex, _vm->_plat->_pos.x, _vm->_plat->_pos.y);
} else {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
@@ -4148,17 +4144,17 @@ void Scene19::run() {
if (_vm->_grabCursorSpriteIndex == kItemJoint) {
_vm->gnapUseJointOnPlatypus();
} else if (_vm->_grabCursorSpriteIndex >= 0) {
- _vm->playGnapImpossible(_vm->_platX, _vm->_platY);
+ _vm->playGnapImpossible(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
} else {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
diff --git a/engines/gnap/scenes/group2.cpp b/engines/gnap/scenes/group2.cpp
index 543b4fe23e..23afc55907 100644
--- a/engines/gnap/scenes/group2.cpp
+++ b/engines/gnap/scenes/group2.cpp
@@ -279,13 +279,13 @@ void Scene20::run() {
} else {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
- _vm->playGnapScratchingHead(_vm->_platX, _vm->_platY);
+ _vm->playGnapScratchingHead(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(20);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
@@ -305,7 +305,7 @@ void Scene20::run() {
_vm->gnapWalkTo(_vm->_hotspotsWalkPos[kHS20ExitParkingLot].x, _vm->_hotspotsWalkPos[kHS20ExitParkingLot].y, 0, 0x107AF, 1);
_vm->_gnapActionStatus = kAS20LeaveScene;
_vm->platypusWalkTo(_vm->_hotspotsWalkPos[kHS20ExitParkingLot].x, _vm->_hotspotsWalkPos[kHS20ExitParkingLot].y + 1, -1, 0x107CF, 1);
- _vm->_platypusFacing = kDirUnk4;
+ _vm->_plat->_idleFacing = kDirUnk4;
}
break;
@@ -344,7 +344,7 @@ void Scene20::run() {
_vm->gnapWalkTo(_vm->_hotspotsWalkPos[kHS20ExitInsideGrubCity].x, _vm->_hotspotsWalkPos[kHS20ExitInsideGrubCity].y - 1, 0, 0x107BB, 1);
_vm->_gnapActionStatus = kAS20LeaveScene;
_vm->platypusWalkTo(_vm->_hotspotsWalkPos[kHS20ExitInsideGrubCity].x + 1, _vm->_hotspotsWalkPos[kHS20ExitInsideGrubCity].y, -1, 0x107C2, 1);
- _vm->_platypusFacing = kDirUnk4;
+ _vm->_plat->_idleFacing = kDirUnk4;
}
break;
@@ -797,13 +797,13 @@ void Scene21::run() {
} else {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
- _vm->playGnapScratchingHead(_vm->_platX, _vm->_platY);
+ _vm->playGnapScratchingHead(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
@@ -1113,13 +1113,13 @@ void Scene22::run() {
} else {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
- _vm->playGnapScratchingHead(_vm->_platX, _vm->_platY);
+ _vm->playGnapScratchingHead(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
@@ -1337,13 +1337,13 @@ void Scene23::run() {
} else {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
- _vm->playGnapScratchingHead(_vm->_platX, _vm->_platY);
+ _vm->playGnapScratchingHead(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
@@ -1606,13 +1606,13 @@ void Scene24::run() {
} else {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
- _vm->playGnapScratchingHead(_vm->_platX, _vm->_platY);
+ _vm->playGnapScratchingHead(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
@@ -1852,13 +1852,13 @@ void Scene25::run() {
} else {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
- _vm->playGnapScratchingHead(_vm->_platX, _vm->_platY);
+ _vm->playGnapScratchingHead(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
@@ -2169,13 +2169,13 @@ void Scene26::run() {
} else {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
@@ -2403,13 +2403,13 @@ void Scene27::run() {
} else {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
@@ -2774,13 +2774,13 @@ void Scene28::run() {
} else {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
@@ -3165,13 +3165,13 @@ void Scene29::run() {
} else {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
diff --git a/engines/gnap/scenes/group3.cpp b/engines/gnap/scenes/group3.cpp
index adec63a152..0e14ea9e3e 100644
--- a/engines/gnap/scenes/group3.cpp
+++ b/engines/gnap/scenes/group3.cpp
@@ -94,13 +94,13 @@ void Scene30::run() {
} else {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
@@ -349,13 +349,13 @@ void Scene31::run() {
} else {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
@@ -694,21 +694,21 @@ void Scene32::run() {
case kHS32Platypus:
if (_vm->_gnapActionStatus < 0) {
if (_vm->_grabCursorSpriteIndex >= 0) {
- _vm->playGnapImpossible(_vm->_platX, _vm->_platY);
+ _vm->playGnapImpossible(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
} else {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
- _vm->playGnapImpossible(_vm->_platX, _vm->_platY);
+ _vm->playGnapImpossible(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
}
}
@@ -870,21 +870,21 @@ void Scene33::run() {
case kHS33Platypus:
if (_vm->_gnapActionStatus < 0) {
if (_vm->_grabCursorSpriteIndex >= 0) {
- _vm->playGnapImpossible(_vm->_platX, _vm->_platY);
+ _vm->playGnapImpossible(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
} else {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
- _vm->playGnapImpossible(_vm->_platX, _vm->_platY);
+ _vm->playGnapImpossible(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
}
}
@@ -1147,21 +1147,21 @@ void Scene38::run() {
if (_vm->_gnapActionStatus == kAS38HoldingHuntingTrophy) {
_vm->_gnapActionStatus = kAS38ReleaseHuntingTrophy;
} else if (_vm->_grabCursorSpriteIndex >= 0) {
- _vm->playGnapImpossible(_vm->_platX, _vm->_platY);
+ _vm->playGnapImpossible(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
} else {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
- _vm->playGnapImpossible(_vm->_platX, _vm->_platY);
+ _vm->playGnapImpossible(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
}
}
@@ -1351,7 +1351,7 @@ void Scene38::updateAnimations() {
_vm->_gnapSequenceDatNum = 0;
gameSys.setAnimation(0x9F, _vm->_gnapId, 0);
_vm->_gnapActionStatus = kAS38HoldingHuntingTrophy;
- if (_vm->_platypusFacing != kDirNone)
+ if (_vm->_plat->_idleFacing != kDirNone)
_vm->playPlatypusSequence(0x107D5);
else
_vm->playPlatypusSequence(0x107D4);
@@ -1453,21 +1453,21 @@ void Scene39::run() {
case kHS39Platypus:
if (_vm->_gnapActionStatus < 0) {
if (_vm->_grabCursorSpriteIndex >= 0) {
- _vm->playGnapImpossible(_vm->_platX, _vm->_platY);
+ _vm->playGnapImpossible(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
} else {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
- _vm->playGnapImpossible(_vm->_platX, _vm->_platY);
+ _vm->playGnapImpossible(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
}
}
diff --git a/engines/gnap/scenes/group4.cpp b/engines/gnap/scenes/group4.cpp
index 008246aa9e..861283af34 100644
--- a/engines/gnap/scenes/group4.cpp
+++ b/engines/gnap/scenes/group4.cpp
@@ -76,21 +76,21 @@ void Scene40::run() {
case kHS40Platypus:
if (_vm->_gnapActionStatus < 0) {
if (_vm->_grabCursorSpriteIndex >= 0) {
- _vm->playGnapImpossible(_vm->_platX, _vm->_platY);
+ _vm->playGnapImpossible(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
} else {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
- _vm->playGnapImpossible(_vm->_platX, _vm->_platY);
+ _vm->playGnapImpossible(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
}
}
@@ -351,21 +351,21 @@ void Scene41::run() {
case kHS41Platypus:
if (_vm->_gnapActionStatus < 0) {
if (_vm->_grabCursorSpriteIndex >= 0) {
- _vm->playGnapImpossible(_vm->_platX, _vm->_platY);
+ _vm->playGnapImpossible(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
} else {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
- _vm->playGnapImpossible(_vm->_platX, _vm->_platY);
+ _vm->playGnapImpossible(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
}
}
@@ -863,21 +863,21 @@ void Scene42::run() {
case kHS42Platypus:
if (_vm->_gnapActionStatus < 0) {
if (_vm->_grabCursorSpriteIndex >= 0) {
- _vm->playGnapImpossible(_vm->_platX, _vm->_platY);
+ _vm->playGnapImpossible(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
} else {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
- _vm->playGnapImpossible(_vm->_platX, _vm->_platY);
+ _vm->playGnapImpossible(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
}
}
@@ -888,7 +888,7 @@ void Scene42::run() {
_vm->_isLeavingScene = true;
_vm->gnapWalkTo(_vm->_gnap->_pos.x, _vm->_hotspotsWalkPos[kHS42ExitUfoParty].y, 0, 0x107AE, 1);
_vm->_gnapActionStatus = kAS42LeaveScene;
- _vm->platypusWalkTo(_vm->_platX, _vm->_hotspotsWalkPos[kHS42ExitUfoParty].y, -1, 0x107C7, 1);
+ _vm->platypusWalkTo(_vm->_plat->_pos.x, _vm->_hotspotsWalkPos[kHS42ExitUfoParty].y, -1, 0x107C7, 1);
_vm->_newSceneNum = 40;
break;
@@ -912,8 +912,8 @@ void Scene42::run() {
if (_vm->_grabCursorSpriteIndex == kItemDiceQuarterHole) {
_vm->gnapWalkTo(_vm->_hotspotsWalkPos[kHS42BBQVendor].x, _vm->_hotspotsWalkPos[kHS42BBQVendor].y, 0, 0x107BB, 1);
_vm->_gnapActionStatus = kAS42UseQuarterWithBBQVendor;
- if (_vm->_platY < 9)
- _vm->platypusWalkTo(_vm->_platX, 9, -1, -1, 1);
+ if (_vm->_plat->_pos.y < 9)
+ _vm->platypusWalkTo(_vm->_plat->_pos.x, 9, -1, -1, 1);
} else if (_vm->_grabCursorSpriteIndex >= 0) {
_vm->playGnapShowCurrItem(_vm->_hotspotsWalkPos[kHS42BBQVendor].x, _vm->_hotspotsWalkPos[kHS42BBQVendor].y, _vm->_hotspotsWalkPos[kHS42BBQVendor].x + 1, 0);
} else {
@@ -1321,21 +1321,21 @@ void Scene43::run() {
case kHS43Platypus:
if (_vm->_gnapActionStatus < 0) {
if (_vm->_grabCursorSpriteIndex >= 0) {
- _vm->playGnapImpossible(_vm->_platX, _vm->_platY);
+ _vm->playGnapImpossible(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
} else {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
- _vm->playGnapImpossible(_vm->_platX, _vm->_platY);
+ _vm->playGnapImpossible(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
}
}
@@ -1701,10 +1701,9 @@ void Scene44::run() {
} else if (!_vm->isFlag(kGFUnk13)) {
_vm->_timers[0] = 50;
_vm->_timers[1] = 20;
- _vm->_platX = 5;
- _vm->_platY = 8;
+ _vm->_plat->_pos = Common::Point(5, 8);
_vm->_platypusSequenceId = 0xFD;
- _vm->_platypusFacing = kDirNone;
+ _vm->_plat->_idleFacing = kDirNone;
_vm->_platypusId = 160;
_vm->_platypusSequenceDatNum = 0;
gameSys.insertSequence(0xFD, 160, 0, 0, kSeqNone, 0, 0, 0);
@@ -1770,21 +1769,21 @@ void Scene44::run() {
case kHS44Platypus:
if (_vm->_gnapActionStatus < 0) {
if (_vm->_grabCursorSpriteIndex >= 0) {
- _vm->playGnapImpossible(_vm->_platX, _vm->_platY);
+ _vm->playGnapImpossible(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
} else {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
- _vm->playGnapImpossible(_vm->_platX, _vm->_platY);
+ _vm->playGnapImpossible(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
}
}
@@ -1802,7 +1801,7 @@ void Scene44::run() {
_vm->_isLeavingScene = true;
_vm->gnapWalkTo(_vm->_hotspotsWalkPos[kHS44ExitUfo].x, _vm->_gnap->_pos.y, 0, 0x107AF, 1);
_vm->_gnapActionStatus = 0;
- _vm->platypusWalkTo(_vm->_hotspotsWalkPos[kHS44ExitUfo].x, _vm->_platY, -1, 0x107CF, 1);
+ _vm->platypusWalkTo(_vm->_hotspotsWalkPos[kHS44ExitUfo].x, _vm->_plat->_pos.y, -1, 0x107CF, 1);
_vm->_newSceneNum = 43;
break;
@@ -2259,11 +2258,11 @@ void Scene45::run() {
case kHS45Platypus:
if (_vm->_gnapActionStatus < 0) {
if (_vm->_grabCursorSpriteIndex >= 0) {
- _vm->playGnapImpossible(_vm->_platX, _vm->_platY);
+ _vm->playGnapImpossible(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
} else {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
@@ -2271,11 +2270,11 @@ void Scene45::run() {
gameSys.setAnimation(_vm->_platypusSequenceId, _vm->_platypusId, 1);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
- _vm->playGnapImpossible(_vm->_platX, _vm->_platY);
+ _vm->playGnapImpossible(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
}
}
@@ -2296,7 +2295,7 @@ void Scene45::run() {
_vm->_isLeavingScene = true;
_vm->gnapWalkTo(_vm->_hotspotsWalkPos[kHS45ExitShoe].x, _vm->_gnap->_pos.y, 0, 0x107AF, 1);
_vm->_gnapActionStatus = 0;
- _vm->platypusWalkTo(_vm->_hotspotsWalkPos[kHS45ExitShoe].x, _vm->_platY, -1, 0x107CF, 1);
+ _vm->platypusWalkTo(_vm->_hotspotsWalkPos[kHS45ExitShoe].x, _vm->_plat->_pos.y, -1, 0x107CF, 1);
_vm->_newSceneNum = 46;
}
break;
@@ -2306,7 +2305,7 @@ void Scene45::run() {
_vm->_isLeavingScene = true;
_vm->gnapWalkTo(_vm->_hotspotsWalkPos[kHS45ExitRight].x, _vm->_gnap->_pos.y, 0, 0x107AB, 1);
_vm->_gnapActionStatus = 0;
- _vm->platypusWalkTo(_vm->_hotspotsWalkPos[kHS45ExitRight].x, _vm->_platY, -1, 0x107CD, 1);
+ _vm->platypusWalkTo(_vm->_hotspotsWalkPos[kHS45ExitRight].x, _vm->_plat->_pos.y, -1, 0x107CD, 1);
_vm->_newSceneNum = 41;
}
break;
@@ -2584,21 +2583,21 @@ void Scene46::run() {
case kHS46Platypus:
if (_vm->_gnapActionStatus < 0) {
if (_vm->_grabCursorSpriteIndex >= 0) {
- _vm->playGnapImpossible(_vm->_platX, _vm->_platY);
+ _vm->playGnapImpossible(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
} else {
switch (_vm->_verbCursor) {
case LOOK_CURSOR:
- _vm->playGnapMoan1(_vm->_platX, _vm->_platY);
+ _vm->playGnapMoan1(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
case GRAB_CURSOR:
_vm->gnapKissPlatypus(0);
break;
case TALK_CURSOR:
- _vm->playGnapBrainPulsating(_vm->_platX, _vm->_platY);
+ _vm->playGnapBrainPulsating(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
_vm->playPlatypusSequence(_vm->getPlatypusSequenceId());
break;
case PLAT_CURSOR:
- _vm->playGnapImpossible(_vm->_platX, _vm->_platY);
+ _vm->playGnapImpossible(_vm->_plat->_pos.x, _vm->_plat->_pos.y);
break;
}
}
@@ -2658,7 +2657,7 @@ void Scene46::run() {
_vm->_isLeavingScene = true;
_vm->gnapWalkTo(_vm->_hotspotsWalkPos[kHS46ExitKissinBooth].x, _vm->_gnap->_pos.y, 0, 0x107AF, 1);
_vm->_gnapActionStatus = 0;
- _vm->platypusWalkTo(_vm->_hotspotsWalkPos[kHS46ExitKissinBooth].x, _vm->_platY, -1, 0x107CF, 1);
+ _vm->platypusWalkTo(_vm->_hotspotsWalkPos[kHS46ExitKissinBooth].x, _vm->_plat->_pos.y, -1, 0x107CF, 1);
_vm->_newSceneNum = 44;
break;
@@ -2666,7 +2665,7 @@ void Scene46::run() {
_vm->_isLeavingScene = true;
_vm->gnapWalkTo(_vm->_hotspotsWalkPos[kHS46ExitDisco].x, _vm->_gnap->_pos.y, 0, 0x107AB, 1);
_vm->_gnapActionStatus = 0;
- _vm->platypusWalkTo(_vm->_hotspotsWalkPos[kHS46ExitDisco].x, _vm->_platY, -1, 0x107CD, 1);
+ _vm->platypusWalkTo(_vm->_hotspotsWalkPos[kHS46ExitDisco].x, _vm->_plat->_pos.y, -1, 0x107CD, 1);
_vm->_newSceneNum = 45;
break;