aboutsummaryrefslogtreecommitdiff
path: root/engines/tsage/blue_force/blueforce_scenes5.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/tsage/blue_force/blueforce_scenes5.cpp')
-rw-r--r--engines/tsage/blue_force/blueforce_scenes5.cpp171
1 files changed, 89 insertions, 82 deletions
diff --git a/engines/tsage/blue_force/blueforce_scenes5.cpp b/engines/tsage/blue_force/blueforce_scenes5.cpp
index 9b67159f9b..7a250e2233 100644
--- a/engines/tsage/blue_force/blueforce_scenes5.cpp
+++ b/engines/tsage/blue_force/blueforce_scenes5.cpp
@@ -55,7 +55,7 @@ void Scene550::Action1::signal() {
/*--------------------------------------------------------------------------*/
-bool Scene550::Object1::startAction(CursorType action, Event &event) {
+bool Scene550::Lyle::startAction(CursorType action, Event &event) {
Scene550 *scene = (Scene550 *)BF_GLOBALS._sceneManager._scene;
switch (action) {
@@ -76,8 +76,8 @@ bool Scene550::Object1::startAction(CursorType action, Event &event) {
scene->_sceneMode = 5512;
scene->setAction(&scene->_action1);
} else {
- scene->_sceneMode = BF_INVENTORY.getObjectScene(BF_ITEM_67) == 1 ? 5513 : 5512;
- scene->_stripManager.setAction(&scene->_action1);
+ scene->_sceneMode = BF_INVENTORY.getObjectScene(INV_CARAVAN_KEY) == 1 ? 5513 : 5512;
+ scene->setAction(&scene->_action1);
}
return true;
case INV_SCHEDULE:
@@ -101,8 +101,8 @@ bool Scene550::CaravanDoor::startAction(CursorType action, Event &event) {
case CURSOR_USE:
SceneItem::display2(550, 7);
return true;
- case BF_ITEM_67:
- if ((BF_GLOBALS._dayNumber == 3) || !BF_GLOBALS.getFlag(fWithLyle))
+ case INV_CARAVAN_KEY:
+ if ((BF_GLOBALS._dayNumber != 3) || !BF_GLOBALS.getFlag(fWithLyle))
SceneItem::display2(550, 33);
else {
BF_GLOBALS._player.disableControl();
@@ -189,8 +189,8 @@ void Scene550::postInit(SceneObjectList *OwnerList) {
_vechile.fixPriority(70);
if (BF_GLOBALS.getFlag(fWithLyle)) {
- BF_GLOBALS._walkRegions.proc1(10);
- BF_GLOBALS._walkRegions.proc1(11);
+ BF_GLOBALS._walkRegions.disableRegion(10);
+ BF_GLOBALS._walkRegions.disableRegion(11);
_vechile.setVisage(444);
_vechile.setStrip(4);
@@ -198,17 +198,17 @@ void Scene550::postInit(SceneObjectList *OwnerList) {
_vechile.setPosition(Common::Point(110, 85));
_vechile.fixPriority(76);
- _object1.postInit();
- _object1.setVisage(835);
- _object1.setPosition(Common::Point(139, 83));
- _object1.setDetails(550, 29, 30, 31, 1, NULL);
- _object1.setStrip(8);
+ _lyle.postInit();
+ _lyle.setVisage(835);
+ _lyle.setPosition(Common::Point(139, 83));
+ _lyle.setDetails(550, 29, 30, 31, 1, NULL);
+ _lyle.setStrip(8);
BF_GLOBALS._player.setVisage(303);
BF_GLOBALS._player.setPosition(Common::Point(89, 76));
- BF_GLOBALS._player.updateAngle(_object1._position);
+ BF_GLOBALS._player.updateAngle(_lyle._position);
} else {
- BF_GLOBALS._walkRegions.proc1(12);
+ BF_GLOBALS._walkRegions.disableRegion(12);
_vechile.setPosition(Common::Point(205, 77));
_vechile.changeZoom(80);
@@ -225,28 +225,28 @@ void Scene550::postInit(SceneObjectList *OwnerList) {
BF_GLOBALS._player.setVisage(303);
}
+ }
- BF_GLOBALS._sceneItems.push_back(&_vechile);
+ BF_GLOBALS._sceneItems.push_back(&_vechile);
- if (BF_GLOBALS._sceneManager._previousScene == 930) {
- _caravanDoor.setFrame(_caravanDoor.getFrameCount());
- BF_GLOBALS._player.disableControl();
+ if (BF_GLOBALS._sceneManager._previousScene == 930) {
+ _caravanDoor.setFrame(_caravanDoor.getFrameCount());
+ BF_GLOBALS._player.disableControl();
- _sceneMode = 0;
- setAction(&_sequenceManager, this, 5512, &BF_GLOBALS._player, &_caravanDoor, NULL);
- } else if (BF_GLOBALS.getFlag(onDuty)) {
- BF_GLOBALS._player.disableControl();
- _sceneMode = 0;
- setAction(&_sequenceManager, this, 5502, &BF_GLOBALS._player, &_vechile, NULL);
- } else if (!BF_GLOBALS.getFlag(fWithLyle)) {
- BF_GLOBALS._player.setPosition(Common::Point(185, 70));
- } else if (BF_GLOBALS._bookmark == bFlashBackOne) {
- BF_GLOBALS._player.disableControl();
- _sceneMode = 0;
- setAction(&_sequenceManager, this, 5513, &_object1, NULL);
- } else {
- _sceneMode = 0;
- }
+ _sceneMode = 0;
+ setAction(&_sequenceManager, this, 5512, &BF_GLOBALS._player, &_caravanDoor, NULL);
+ } else if (BF_GLOBALS.getFlag(onDuty)) {
+ BF_GLOBALS._player.disableControl();
+ _sceneMode = 0;
+ setAction(&_sequenceManager, this, 5502, &BF_GLOBALS._player, &_vechile, NULL);
+ } else if (!BF_GLOBALS.getFlag(fWithLyle)) {
+ BF_GLOBALS._player.setPosition(Common::Point(185, 70));
+ } else if (BF_GLOBALS._bookmark == bFlashBackOne) {
+ BF_GLOBALS._player.disableControl();
+ _sceneMode = 0;
+ setAction(&_sequenceManager, this, 5513, &_lyle, NULL);
+ } else {
+ _sceneMode = 0;
}
_item2.setDetails(Rect(0, 26, 53, 67), 550, 1, -1, 2, 1, NULL);
@@ -296,8 +296,8 @@ void Scene551::Action2::signal() {
switch (_actionIndex++) {
case 0:
- BF_GLOBALS._walkRegions.proc2(18);
- BF_GLOBALS._walkRegions.proc2(4);
+ BF_GLOBALS._walkRegions.enableRegion(18);
+ BF_GLOBALS._walkRegions.enableRegion(4);
scene->_field1CD2 = 1;
scene->_harrison.setObjectWrapper(new SceneObjectWrapper());
@@ -316,7 +316,7 @@ void Scene551::Action2::signal() {
scene->_harrison.updateAngle(BF_GLOBALS._player._position);
if (scene->_drunkStanding._flag == 1) {
- BF_GLOBALS._walkRegions.proc1(4);
+ BF_GLOBALS._walkRegions.disableRegion(4);
ADD_PLAYER_MOVER(71, 97);
} else {
ADD_PLAYER_MOVER(141, 87);
@@ -465,7 +465,7 @@ bool Scene551::Drunk::startAction(CursorType action, Event &event) {
BF_GLOBALS.set2Flags(f1098Drunk);
BF_GLOBALS.setFlag(didDrunk);
_flag = 1;
- BF_GLOBALS._uiElements.addScore(30);
+ T2_GLOBALS._uiElements.addScore(30);
BF_GLOBALS._player.disableControl();
scene->_sceneMode = 5506;
@@ -486,7 +486,7 @@ bool Scene551::PatrolCarTrunk::startAction(CursorType action, Event &event) {
switch (action) {
case CURSOR_USE:
if (BF_INVENTORY.getObjectScene(INV_CENTER_PUNCH) != 1) {
- BF_GLOBALS._walkRegions.proc2(18);
+ BF_GLOBALS._walkRegions.enableRegion(18);
BF_GLOBALS._player.disableControl();
scene->_sceneMode = 2;
scene->setAction(&scene->_sequenceManager, scene, 5503, &BF_GLOBALS._player, &scene->_harrison, this, NULL);
@@ -560,7 +560,7 @@ bool Scene551::TrunkKits::startAction(CursorType action, Event &event) {
break;
case 2:
if (!BF_GLOBALS.getFlag(fShowedBluePrint)) {
- BF_GLOBALS._uiElements.addScore(30);
+ T2_GLOBALS._uiElements.addScore(30);
BF_GLOBALS.setFlag(fShowedBluePrint);
}
@@ -681,7 +681,7 @@ void Scene551::postInit(SceneObjectList *OwnerList) {
_vechile2.changeZoom(80);
BF_GLOBALS._sceneItems.push_back(&_vechile2);
- BF_GLOBALS._walkRegions.proc1(14);
+ BF_GLOBALS._walkRegions.disableRegion(14);
_drunk.postInit();
_drunk.setVisage(550);
@@ -812,7 +812,7 @@ void Scene551::signal() {
BF_GLOBALS._sceneManager.changeScene(60);
break;
case 2:
- BF_GLOBALS._walkRegions.proc1(18);
+ BF_GLOBALS._walkRegions.disableRegion(18);
_trunkInset.postInit();
_trunkInset.setVisage(553);
@@ -850,8 +850,8 @@ void Scene551::signal() {
setAction(&_sequenceManager, this, 5507, &BF_GLOBALS._player, &_drunk, &_drunkStanding, NULL);
break;
case 5507:
- BF_GLOBALS._walkRegions.proc1(2);
- BF_GLOBALS._walkRegions.proc1(4);
+ BF_GLOBALS._walkRegions.disableRegion(2);
+ BF_GLOBALS._walkRegions.disableRegion(4);
_drunkStanding._flag = 1;
BF_GLOBALS._sceneItems.push_front(&_drunkStanding);
@@ -924,7 +924,7 @@ void Scene560::Action1::signal() {
scene->_deskChair.setStrip(BF_GLOBALS._player._strip);
scene->_deskChair.setPosition(BF_GLOBALS._player._position);
- scene->_field380 = 1;
+ scene->_field380 = true;
BF_GLOBALS._player.enableControl();
remove();
break;
@@ -950,7 +950,7 @@ void Scene560::Action2::signal() {
BF_GLOBALS._player.animate(ANIM_MODE_6, this);
break;
case 2:
- scene->_field380 = 0;
+ scene->_field380 = false;
scene->_deskChair.setPosition(Common::Point(81, 149));
scene->_deskChair.setVisage(561);
scene->_deskChair.setStrip(3);
@@ -1175,7 +1175,7 @@ void Scene560::SafeInset::signal() {
BF_GLOBALS._sceneObjects->draw();
if (!BF_GLOBALS.getFlag(fGotPointsForBank)) {
- BF_GLOBALS._uiElements.addScore(50);
+ T2_GLOBALS._uiElements.addScore(50);
BF_GLOBALS.setFlag(fGotPointsForBank);
}
@@ -1228,7 +1228,7 @@ void Scene560::SafeInset::process(Event &event) {
GfxSurface cursor = _cursorVisage.getFrame(7);
BF_GLOBALS._events.setCursor(cursor);
- if ((event.mousePos.y < BF_INTERFACE_Y) && (event.eventType == EVENT_BUTTON_DOWN)) {
+ if ((event.mousePos.y < UI_INTERFACE_Y) && (event.eventType == EVENT_BUTTON_DOWN)) {
// Leave the safe view
event.handled = true;
remove();
@@ -1305,7 +1305,7 @@ bool Scene560::SafeInset::Item::startAction(CursorType action, Event &event) {
bool Scene560::Nickel::startAction(CursorType action, Event &event) {
if (action == CURSOR_USE) {
BF_INVENTORY.setObjectScene(INV_NICKEL, 1);
- BF_GLOBALS._uiElements.addScore(10);
+ T2_GLOBALS._uiElements.addScore(10);
remove();
return true;
} else {
@@ -1335,7 +1335,7 @@ bool Scene560::BoxInset::Item1::startAction(CursorType action, Event &event) {
if (action == CURSOR_USE) {
if (!BF_GLOBALS.getFlag(fGotPointsForBox)) {
- BF_GLOBALS._uiElements.addScore(10);
+ T2_GLOBALS._uiElements.addScore(10);
BF_GLOBALS.setFlag(fGotPointsForBox);
}
@@ -1378,7 +1378,7 @@ bool Scene560::Computer::startAction(CursorType action, Event &event) {
/*--------------------------------------------------------------------------*/
Scene560::Scene560(): SceneExt() {
- _field380 = _field11EA = 0;
+ _field380 = _field11EA = false;
}
void Scene560::postInit(SceneObjectList *OwnerList) {
@@ -1433,12 +1433,12 @@ void Scene560::postInit(SceneObjectList *OwnerList) {
_deskChair.setStrip(BF_GLOBALS._player._strip);
_deskChair.setPosition(BF_GLOBALS._player._position);
- _field11EA = 0;
- _field380 = 1;
+ _field11EA = false;
+ _field380 = true;
} else {
// Entering study through doorway
- _field11EA = 0;
- _field380 = 0;
+ _field11EA = false;
+ _field380 = false;
BF_GLOBALS._player.postInit();
BF_GLOBALS._player.setVisage(563);
@@ -1513,7 +1513,7 @@ void Scene560::signal() {
}
} else if ((_sceneMode != 3) && (_sceneMode != 4)) {
if (!BF_GLOBALS.getFlag(fGotPointsForPunch)) {
- BF_GLOBALS._uiElements.addScore(10);
+ T2_GLOBALS._uiElements.addScore(10);
BF_GLOBALS.setFlag(fGotPointsForPunch);
}
@@ -1529,7 +1529,7 @@ void Scene560::signal() {
}
break;
case 10:
- _field11EA = 0;
+ _field11EA = false;
BF_GLOBALS._player.enableControl();
break;
case 11:
@@ -1540,7 +1540,7 @@ void Scene560::signal() {
void Scene560::process(Event &event) {
if ((event.eventType == EVENT_BUTTON_DOWN) && (BF_GLOBALS._events.getCursor() == CURSOR_WALK) &&
- (_field380 == 1) && !_action) {
+ (_field380) && !_action) {
_destPosition = event.mousePos;
BF_GLOBALS._player.disableControl();
setAction(&_action2);
@@ -1553,7 +1553,7 @@ void Scene560::process(Event &event) {
void Scene560::dispatch() {
if (!_field11EA && (BF_GLOBALS._player._position.y < 105)) {
- _field11EA = 1;
+ _field11EA = true;
BF_GLOBALS._player.disableControl();
BF_GLOBALS._sceneManager.changeScene(270);
}
@@ -1664,12 +1664,12 @@ void Scene570::PasswordEntry::checkPassword() {
if (!_entryBuffer.compareTo("JACKIE") || !_entryBuffer.compareTo("SCUMMVM")) {
// Password was correct
- BF_GLOBALS._uiElements.addScore(30);
+ T2_GLOBALS._uiElements.addScore(30);
BF_GLOBALS._player.disableControl();
scene->_sound1.play(73);
- BF_GLOBALS._uiElements.hide();
- BF_GLOBALS._uiElements._active = false;
+ T2_GLOBALS._uiElements.hide();
+ T2_GLOBALS._uiElements._active = false;
scene->_sceneMode = 5701;
scene->setAction(&scene->_sequenceManager, scene, 5701, &scene->_object3, NULL);
} else {
@@ -1846,20 +1846,20 @@ bool Scene570::Icon::startAction(CursorType action, Event &event) {
scene->_iconManager.hideList();
switch (_folderId) {
case 8:
- BF_GLOBALS._uiElements.hide();
- BF_GLOBALS._uiElements._active = false;
+ T2_GLOBALS._uiElements.hide();
+ T2_GLOBALS._uiElements._active = false;
scene->_sceneMode = 5705;
scene->setAction(&scene->_sequenceManager, scene, 5705, &scene->_object3, NULL);
break;
case 10:
- BF_GLOBALS._uiElements.hide();
- BF_GLOBALS._uiElements._active = false;
+ T2_GLOBALS._uiElements.hide();
+ T2_GLOBALS._uiElements._active = false;
scene->_sceneMode = 5706;
scene->setAction(&scene->_sequenceManager, scene, 5706, &scene->_object3, NULL);
break;
case 12:
- BF_GLOBALS._uiElements.hide();
- BF_GLOBALS._uiElements._active = false;
+ T2_GLOBALS._uiElements.hide();
+ T2_GLOBALS._uiElements._active = false;
scene->_sceneMode = 5707;
scene->setAction(&scene->_sequenceManager, scene, 5707, &scene->_object3, NULL);
break;
@@ -1869,8 +1869,8 @@ bool Scene570::Icon::startAction(CursorType action, Event &event) {
break;
case 7:
scene->_iconManager.hideList();
- BF_GLOBALS._uiElements.hide();
- BF_GLOBALS._uiElements._active = false;
+ T2_GLOBALS._uiElements.hide();
+ T2_GLOBALS._uiElements._active = false;
scene->_sceneMode = 5704;
scene->setAction(&scene->_sequenceManager, scene, 5704, &scene->_object3, NULL);
break;
@@ -1889,7 +1889,7 @@ bool Scene570::Icon::startAction(CursorType action, Event &event) {
scene->_sound1.play(74);
if (BF_INVENTORY.getObjectScene(INV_PRINT_OUT) == 570) {
SceneItem::display2(570, 6);
- BF_GLOBALS._uiElements.addScore(30);
+ T2_GLOBALS._uiElements.addScore(30);
BF_INVENTORY.setObjectScene(INV_PRINT_OUT, 1);
} else {
SceneItem::display2(570, 7);
@@ -1938,7 +1938,7 @@ bool Scene570::PowerSwitch::startAction(CursorType action, Event &event) {
scene->_object3.remove();
} else {
if (!BF_GLOBALS.getFlag(fGotPointsForCoin)) {
- BF_GLOBALS._uiElements.addScore(10);
+ T2_GLOBALS._uiElements.addScore(10);
BF_GLOBALS.setFlag(fGotPointsForCoin);
}
@@ -2106,16 +2106,16 @@ void Scene570::signal() {
_icon3.setDetails(7, 6, 0, 2, SCENE570_COBB);
_iconManager.refreshList();
- BF_GLOBALS._uiElements._active = true;
- BF_GLOBALS._uiElements.show();
+ T2_GLOBALS._uiElements._active = true;
+ T2_GLOBALS._uiElements.show();
BF_GLOBALS._player.enableControl();
break;
case 5704:
case 5705:
case 5706:
case 5707:
- BF_GLOBALS._uiElements._active = true;
- BF_GLOBALS._uiElements.show();
+ T2_GLOBALS._uiElements._active = true;
+ T2_GLOBALS._uiElements.show();
_object3.setPosition(Common::Point(220, 75));
_object3.setVisage(572);
_object3.setStrip(4);
@@ -2220,14 +2220,13 @@ void Scene580::postInit(SceneObjectList *OwnerList) {
_vechile.setStrip(3);
_vechile.setPosition(Common::Point(165, 76));
_vechile.setDetails(580, 2, 3, -1, 1, NULL);
- _vechile.setVisage(303);
BF_GLOBALS._player.setVisage(303);
- BF_GLOBALS._walkRegions.proc1(8);
- BF_GLOBALS._walkRegions.proc1(9);
- BF_GLOBALS._walkRegions.proc1(10);
- BF_GLOBALS._walkRegions.proc1(11);
+ BF_GLOBALS._walkRegions.disableRegion(8);
+ BF_GLOBALS._walkRegions.disableRegion(9);
+ BF_GLOBALS._walkRegions.disableRegion(10);
+ BF_GLOBALS._walkRegions.disableRegion(11);
} else {
_vechile.setPosition(Common::Point(159, 72));
@@ -2333,7 +2332,7 @@ bool Scene590::Skip::startAction(CursorType action, Event &event) {
return true;
case INV_BASEBALL_CARD:
scene->_field17DE = 1;
- BF_GLOBALS._uiElements.addScore(10);
+ T2_GLOBALS._uiElements.addScore(10);
BF_INVENTORY.setObjectScene(INV_BASEBALL_CARD, 2);
BF_GLOBALS._player.disableControl();
@@ -2529,7 +2528,7 @@ void Scene590::signal() {
void Scene590::process(Event &event) {
SceneExt::process(event);
- if (BF_GLOBALS._player._enabled && !_focusObject && (event.mousePos.y < (BF_INTERFACE_Y - 1))) {
+ if (BF_GLOBALS._player._enabled && !_focusObject && (event.mousePos.y < (UI_INTERFACE_Y - 1))) {
// Check if the cursor is on an exit
if (_exit.contains(event.mousePos)) {
GfxSurface surface = _cursorVisage.getFrame(EXITFRAME_SW);
@@ -2542,6 +2541,14 @@ void Scene590::process(Event &event) {
}
}
+void Scene590::dispatch() {
+ if (!_action && (BF_GLOBALS._player._position.x < 182) && (BF_GLOBALS._player._position.y > 158)) {
+ BF_GLOBALS._player.disableControl();
+ _sceneMode = 2;
+ setAction(&_sequenceManager, this, 5901, &BF_GLOBALS._player, NULL);
+ }
+}
+
} // End of namespace BlueForce
} // End of namespace TsAGE