aboutsummaryrefslogtreecommitdiff
path: root/engines/bladerunner/script/scene
diff options
context:
space:
mode:
Diffstat (limited to 'engines/bladerunner/script/scene')
-rw-r--r--engines/bladerunner/script/scene/kp01.cpp2
-rw-r--r--engines/bladerunner/script/scene/kp05.cpp8
-rw-r--r--engines/bladerunner/script/scene/kp06.cpp16
-rw-r--r--engines/bladerunner/script/scene/kp07.cpp37
4 files changed, 34 insertions, 29 deletions
diff --git a/engines/bladerunner/script/scene/kp01.cpp b/engines/bladerunner/script/scene/kp01.cpp
index 52f7bfb258..ab432a30e3 100644
--- a/engines/bladerunner/script/scene/kp01.cpp
+++ b/engines/bladerunner/script/scene/kp01.cpp
@@ -164,7 +164,7 @@ void SceneScriptKP01::PlayerWalkedIn() {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, 211.0f, -12.2f, -146.0f, 0, false, false, 0);
if (!Game_Flag_Query(kFlagMcCoyIsHelpingReplicants)
- && !Game_Flag_Query(714)
+ && !Game_Flag_Query(kFlagMcCoyAttackedReplicants)
&& Actor_Query_Goal_Number(kActorSteele) == kGoalSteeleKP01Wait
&& Actor_Query_Goal_Number(kActorSteele) != kGoalSteeleGone
) {
diff --git a/engines/bladerunner/script/scene/kp05.cpp b/engines/bladerunner/script/scene/kp05.cpp
index 69de280027..91cfa0752b 100644
--- a/engines/bladerunner/script/scene/kp05.cpp
+++ b/engines/bladerunner/script/scene/kp05.cpp
@@ -59,7 +59,7 @@ void SceneScriptKP05::SceneLoaded() {
if (!Actor_Clue_Query(kActorMcCoy, kCluePowerSource)
&& Game_Flag_Query(kFlagMcCoyIsHelpingReplicants)
) {
- Item_Add_To_World(118, 960, 9, -1095.0f, 0.0f, 770.0f, 256, 24, 24, false, true, false, true);
+ Item_Add_To_World(kItemPowerSource, 960, kSetKP05_KP06, -1095.0f, 0.0f, 770.0f, 256, 24, 24, false, true, false, true);
}
}
@@ -76,11 +76,11 @@ bool SceneScriptKP05::ClickedOnActor(int actorId) {
}
bool SceneScriptKP05::ClickedOnItem(int itemId, bool a2) {
- if (itemId == 118) {
+ if (itemId == kItemPowerSource) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -1058.0f, 0.0f, 852.0f, 0, true, false, 0)) {
- Actor_Face_Item(kActorMcCoy, 118, true);
+ Actor_Face_Item(kActorMcCoy, kItemPowerSource, true);
Actor_Clue_Acquire(kActorMcCoy, kCluePowerSource, true, -1);
- Item_Remove_From_World(118);
+ Item_Remove_From_World(kItemPowerSource);
Item_Pickup_Spin_Effect(960, 58, 321);
}
}
diff --git a/engines/bladerunner/script/scene/kp06.cpp b/engines/bladerunner/script/scene/kp06.cpp
index 5087e33e44..466b957b3f 100644
--- a/engines/bladerunner/script/scene/kp06.cpp
+++ b/engines/bladerunner/script/scene/kp06.cpp
@@ -76,7 +76,7 @@ bool SceneScriptKP06::ClickedOn3DObject(const char *objectName, bool a2) {
bool SceneScriptKP06::ClickedOnActor(int actorId) {
if ( actorId == kActorSadik
- && !Game_Flag_Query(714)
+ && !Game_Flag_Query(kFlagMcCoyAttackedReplicants)
) {
if (Actor_Clue_Query(kActorSadik, kCluePowerSource)) {
Actor_Face_Actor(kActorMcCoy, kActorSadik, true);
@@ -115,9 +115,9 @@ bool SceneScriptKP06::ClickedOnExit(int exitId) {
if (Actor_Clue_Query(kActorSadik, kCluePowerSource)
|| Actor_Query_Goal_Number(kActorSadik) != 416
) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -731.0f, 8.26f, -657.0f, 0, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -731.0f, 8.26f, -657.0f, 0, true, false, 0)) {
if (Game_Flag_Query(kFlagMcCoyIsHelpingReplicants)) {
- if (!Game_Flag_Query(714)) {
+ if (!Game_Flag_Query(kFlagMcCoyAttackedReplicants)) {
Player_Set_Combat_Mode(false);
}
} else if (Actor_Query_Goal_Number(kActorSteele) == kGoalSteeleKP06Leave) {
@@ -130,11 +130,11 @@ bool SceneScriptKP06::ClickedOnExit(int exitId) {
Game_Flag_Set(kFlagKP06toKP07);
Set_Enter(kSetKP07, kSceneKP07);
}
- } else if (Actor_Clue_Query(kActorMcCoy, kCluePowerSource) ) {
- Actor_Says(kActorSadik, 280, 3);
- Actor_Says(kActorSadik, 290, 3);
+ } else if (Actor_Clue_Query(kActorMcCoy, kCluePowerSource)) {
+ Actor_Says(kActorSadik, 280, kAnimationModeTalk);
+ Actor_Says(kActorSadik, 290, kAnimationModeTalk);
Actor_Clue_Acquire(kActorSadik, kCluePowerSource, true, kActorMcCoy);
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -731.0f, 8.26f, -657.0f, 0, 0, true, 0);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -731.0f, 8.26f, -657.0f, 0, false, true, 0);
Player_Set_Combat_Mode(false);
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
@@ -196,7 +196,7 @@ void SceneScriptKP06::PlayerWalkedIn() {
Actor_Face_Actor(kActorMcCoy, kActorGaff, true);
Actor_Says(kActorMcCoy, 6245, 11);
Actor_Says(kActorGaff, 230, 14);
- if (Game_Flag_Query(714)) {
+ if (Game_Flag_Query(kFlagMcCoyAttackedReplicants)) {
Actor_Says(kActorMcCoy, 6250, 15);
Actor_Says(kActorGaff, 240, 13);
Delay(1000);
diff --git a/engines/bladerunner/script/scene/kp07.cpp b/engines/bladerunner/script/scene/kp07.cpp
index 4574252015..c087e4fb9d 100644
--- a/engines/bladerunner/script/scene/kp07.cpp
+++ b/engines/bladerunner/script/scene/kp07.cpp
@@ -85,7 +85,7 @@ void SceneScriptKP07::InitializeScene() {
Ambient_Sounds_Add_Looping_Sound(586, 52, 1, 1);
Ambient_Sounds_Add_Looping_Sound(109, 38, 1, 1);
- if (Game_Flag_Query(582)) {
+ if (Game_Flag_Query(kFlagKP07BusActive)) {
Scene_Loop_Set_Default(2);
} else {
Scene_Loop_Set_Default(0);
@@ -114,20 +114,25 @@ bool SceneScriptKP07::ClickedOn3DObject(const char *objectName, bool a2) {
bool SceneScriptKP07::ClickedOnActor(int actorId) {
if (actorId == kActorClovis) {
- if (Game_Flag_Query(697) || actorId != kActorClovis || Actor_Query_Goal_Number(kActorClovis) == 599 || Actor_Query_Goal_Number(kActorClovis) == 515) {
- return false;
- }
- if (Game_Flag_Query(kFlagMcCoyIsHelpingReplicants)) {
- Actor_Set_Goal_Number(kActorClovis, 516);
- } else {
- Music_Play(20, 31, 0, 0, -1, 1, 0);
- Actor_Set_Goal_Number(kActorClovis, 514);
+ if (!Game_Flag_Query(kFlagKP07McCoyPulledGun)
+ && Actor_Query_Goal_Number(kActorClovis) != kGoalClovisGone
+ && Actor_Query_Goal_Number(kActorClovis) != kGoalClovisKP07SayFinalWords
+ ) {
+ if (Game_Flag_Query(kFlagMcCoyIsHelpingReplicants)) {
+ Actor_Set_Goal_Number(kActorClovis, kGoalClovisKP07FlyAway);
+ } else {
+ Music_Play(20, 31, 0, 0, -1, 1, 0);
+ Actor_Set_Goal_Number(kActorClovis, kGoalClovisKP07TalkToMcCoy);
+ }
+ return true;
}
} else {
Actor_Face_Actor(kActorMcCoy, actorId, true);
Actor_Says(kActorMcCoy, 8590, 14);
+ return true;
}
- return true;
+
+ return false;
}
bool SceneScriptKP07::ClickedOnItem(int itemId, bool a2) {
@@ -159,7 +164,7 @@ void SceneScriptKP07::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
void SceneScriptKP07::PlayerWalkedIn() {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, 9.0f, -41.88f, -81.0f, 0, 0, false, 0);
- if (!Game_Flag_Query(658)) {
+ if (!Game_Flag_Query(kFlagKP07Entered)) {
if (Game_Flag_Query(kFlagMcCoyIsHelpingReplicants)) {
Actor_Face_Actor(kActorMcCoy, kActorClovis, true);
Actor_Says(kActorClovis, 1240, 3);
@@ -176,7 +181,7 @@ void SceneScriptKP07::PlayerWalkedIn() {
Actor_Says(kActorClovis, 160, 3);
Actor_Retired_Here(kActorClovis, 72, 60, 0, -1);
}
- Game_Flag_Set(658);
+ Game_Flag_Set(kFlagKP07Entered);
}
}
@@ -185,11 +190,11 @@ void SceneScriptKP07::PlayerWalkedOut() {
}
void SceneScriptKP07::DialogueQueueFlushed(int a1) {
- if (Actor_Query_Goal_Number(kActorClovis) == 515) {
+ if (Actor_Query_Goal_Number(kActorClovis) == kGoalClovisKP07SayFinalWords) {
Actor_Set_Targetable(kActorClovis, false);
- Actor_Change_Animation_Mode(kActorClovis, 21);
- Actor_Retired_Here(kActorClovis, 12, 48, 1, -1);
- Actor_Set_Goal_Number(kActorClovis, 599);
+ Actor_Change_Animation_Mode(kActorClovis, kAnimationModeHit);
+ Actor_Retired_Here(kActorClovis, 12, 48, true, -1);
+ Actor_Set_Goal_Number(kActorClovis, kGoalClovisGone);
}
}