Skip to content

Commit

Permalink
BLADERUNNER: Restored buzzer to annoy Dino (WIP)
Browse files Browse the repository at this point in the history
  • Loading branch information
antoniou79 committed Aug 16, 2019
1 parent 94858f7 commit 43af0a3
Show file tree
Hide file tree
Showing 3 changed files with 32 additions and 2 deletions.
10 changes: 9 additions & 1 deletion engines/bladerunner/script/ai/klein.cpp
Expand Up @@ -232,7 +232,15 @@ bool AIScriptKlein::GoalChanged(int currentGoalNumber, int newGoalNumber) {
AI_Movement_Track_Append(kActorKlein, 32, 5); // kSetPS07
AI_Movement_Track_Repeat(kActorKlein);
break;
// TODO: missing kGoalKleinIsAnnoyedByMcCoyFinal case
case kGoalKleinIsAnnoyedByMcCoyFinal:
// Note: Original was missing the kGoalKleinIsAnnoyedByMcCoyFinal case
// so we just "break" for the original behavior
if (_vm->_cutContent) {
AI_Movement_Track_Flush(kActorKlein);
AI_Movement_Track_Append(kActorKlein, 74, Random_Query(10, 20)); // kSetPS07
AI_Movement_Track_Repeat(kActorKlein);
}
break;
case kGoalKleinAwayAtEndOfActOne:
AI_Movement_Track_Flush(kActorKlein);
Actor_Put_In_Set(kActorKlein, kSetFreeSlotC);
Expand Down
8 changes: 7 additions & 1 deletion engines/bladerunner/script/scene/ps07.cpp
Expand Up @@ -43,8 +43,14 @@ void SceneScriptPS07::InitializeScene() {
}

void SceneScriptPS07::SceneLoaded() {
Obstacle_Object("RICE BOX01", true);
Obstacle_Object("RICE BOX01", true); // garbage can
Unobstacle_Object("RICE BOX01", true);
if (_vm->_cutContent) {
Unobstacle_Object("L.MOUSE", true);
Unobstacle_Object("L.MOUSE2", true);
Clickable_Object("L.MOUSE");
Clickable_Object("L.MOUSE2");
}
}

bool SceneScriptPS07::MouseClick(int x, int y) {
Expand Down
16 changes: 16 additions & 0 deletions engines/bladerunner/set.cpp
Expand Up @@ -486,6 +486,12 @@ void Set::overrideSceneObjectInfo(int objectId) const {
_objects[objectId].bbox.setXYZ(695.63f, 42.65f, -628.10f, 706.71f, 69.22f, -614.47f);
}
break;
case kScenePS07:
// Make the mid-wall thinner to enable access to clickable object (buzzer)
if (objectId == 1 && _objects[objectId].name == "BOX01") {
_objects[objectId].bbox.setXYZ(526.91f, 0.0f, -582.62f, 531.50f, 48.43f, -511.72f);
}
break;
case kSceneNR05:
if (objectId == 10 && _objects[objectId].name == "BOX08") {
_objects[objectId].bbox.setXYZ(-748.75f, 0.0f, -257.39f, -685.37f, 32.01f, -211.47f);
Expand Down Expand Up @@ -580,6 +586,16 @@ void Set::patchInAdditionalObjectsInSet() {
setupNewObjectInSet(custObjName, bbox);
break;

case kScenePS07:
// add missing buzzer button to annoy Klein
bbox = BoundingBox(530.16f, 48.44f, -570.13f, 550.41f, 50.46f, -558.77f);
custObjName = "L.MOUSE";
setupNewObjectInSet(custObjName, bbox);
bbox = BoundingBox(541.18f, 28.95f, -566.66f, 555.18f, 44.46f, -548.79f);
custObjName = "L.MOUSE2";
setupNewObjectInSet(custObjName, bbox);
break;

case kSceneNR05:
bbox = BoundingBox(-690.0f, 0.0f, -155.0f, -640.0f, 33.47f, -100.0f);
custObjName = "CUSTLFTBLOCK";
Expand Down

0 comments on commit 43af0a3

Please sign in to comment.