diff options
Diffstat (limited to 'engines/bladerunner/script/scene/ug16.cpp')
-rw-r--r-- | engines/bladerunner/script/scene/ug16.cpp | 107 |
1 files changed, 53 insertions, 54 deletions
diff --git a/engines/bladerunner/script/scene/ug16.cpp b/engines/bladerunner/script/scene/ug16.cpp index dc2f5da8a9..ff14e4bb0e 100644 --- a/engines/bladerunner/script/scene/ug16.cpp +++ b/engines/bladerunner/script/scene/ug16.cpp @@ -44,7 +44,7 @@ void SceneScriptUG16::InitializeScene() { Ambient_Sounds_Add_Looping_Sound(332, 40, 0, 1); Ambient_Sounds_Add_Looping_Sound(333, 40, 0, 1); - if (Game_Flag_Query(568)) { + if (Game_Flag_Query(kFlagUG16ComputerOff)) { Scene_Loop_Set_Default(5); } else { Scene_Loop_Set_Default(0); @@ -81,10 +81,10 @@ bool SceneScriptUG16::ClickedOn3DObject(const char *objectName, bool a2) { if (Object_Query_Click("QUADPATCH05", objectName)) { if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 194.0f, -35.0f, 160.8f, 0, true, false, 0)) { Actor_Face_Heading(kActorMcCoy, 870, false); - if (!Game_Flag_Query(597) - && Game_Flag_Query(595) + if (!Game_Flag_Query(kFlagUG16FolderFound) + && Game_Flag_Query(kFlagLutherLanceAreDead) ) { - Game_Flag_Set(597); + Game_Flag_Set(kFlagUG16FolderFound); Delay(1000); Actor_Voice_Over(3480, kActorVoiceOver); Actor_Change_Animation_Mode(kActorMcCoy, 38); @@ -109,32 +109,31 @@ bool SceneScriptUG16::ClickedOn3DObject(const char *objectName, bool a2) { Actor_Face_Heading(kActorMcCoy, 870, false); - if ((!Game_Flag_Query(595) - && Actor_Query_Is_In_Current_Set(kActorLuther) + if (( Game_Flag_Query(kFlagLutherLanceAreDead) + || !Actor_Query_Is_In_Current_Set(kActorLuther) ) - || Actor_Clue_Query(kActorMcCoy, kClueDNALutherLance) - || Game_Flag_Query(568) + && !Actor_Clue_Query(kActorMcCoy, kClueDNALutherLance) + && !Game_Flag_Query(kFlagUG16ComputerOff) ) { - Actor_Says(kActorMcCoy, 8525, 12); - Actor_Says(kActorMcCoy, 8526, 12); - return false; + Delay(2000); + Actor_Face_Heading(kActorMcCoy, 1016, false); + Delay(2000); + Actor_Says(kActorMcCoy, 5725, 14); + Delay(1000); + Item_Pickup_Spin_Effect(941, 418, 305); + Actor_Clue_Acquire(kActorMcCoy, kClueDNALutherLance, true, -1); + return true; } - Delay(2000); - Actor_Face_Heading(kActorMcCoy, 1016, false); - Delay(2000); - Actor_Says(kActorMcCoy, 5725, 14); - Delay(1000); - Item_Pickup_Spin_Effect(941, 418, 305); - Actor_Clue_Acquire(kActorMcCoy, kClueDNALutherLance, true, -1); - return true; + Actor_Says(kActorMcCoy, 8525, 12); + Actor_Says(kActorMcCoy, 8526, 12); } } return false; } bool SceneScriptUG16::ClickedOnActor(int actorId) { - if (Actor_Query_Goal_Number(kActorLuther) < 490) { + if (Actor_Query_Goal_Number(kActorLuther) < 490) { // Luther & Lance are alive dialogueWithLuther(); return true; } @@ -194,17 +193,17 @@ void SceneScriptUG16::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo } void SceneScriptUG16::PlayerWalkedIn() { - Game_Flag_Set(715); + Game_Flag_Set(kFlagDR06UnlockedToUG16); - if (!Game_Flag_Query(595)) { - Actor_Set_Goal_Number(kActorLuther, 403); + if (!Game_Flag_Query(kFlagLutherLanceAreDead)) { + Actor_Set_Goal_Number(kActorLuther, kGoalLutherStop); } - if (!Game_Flag_Query(556) + if (!Game_Flag_Query(kFlagUG16LutherLanceTalk1) && Actor_Query_Is_In_Current_Set(kActorLuther) ) { Player_Loses_Control(); - Loop_Actor_Walk_To_XYZ(kActorMcCoy, 120.29f, -35.67f, 214.8f, 310, 0, false, 0); + Loop_Actor_Walk_To_XYZ(kActorMcCoy, 120.29f, -35.67f, 214.8f, 310, false, false, 0); Actor_Face_Actor(kActorMcCoy, kActorLuther, true); Actor_Says(kActorLuther, 0, 6); Actor_Says(kActorLuther, 30, 13); @@ -219,13 +218,13 @@ void SceneScriptUG16::PlayerWalkedIn() { Actor_Says(kActorLance, 30, 16); Actor_Says(kActorLuther, 70, 6); Player_Gains_Control(); - Game_Flag_Set(556); + Game_Flag_Set(kFlagUG16LutherLanceTalk1); } } void SceneScriptUG16::PlayerWalkedOut() { - if (!Game_Flag_Query(595)) { - Actor_Set_Goal_Number(kActorLuther, 401); + if (!Game_Flag_Query(kFlagLutherLanceAreDead)) { + Actor_Set_Goal_Number(kActorLuther, kGoalLutherMoveAround); //return true; } //return false; @@ -236,37 +235,37 @@ void SceneScriptUG16::DialogueQueueFlushed(int a1) { void SceneScriptUG16::dialogueWithLuther() { Dialogue_Menu_Clear_List(); - DM_Add_To_List_Never_Repeat_Once_Selected(1400, 5, 6, 2); - DM_Add_To_List_Never_Repeat_Once_Selected(1410, 5, 4, 8); - if (Game_Flag_Query(600) - || Game_Flag_Query(601) + DM_Add_To_List_Never_Repeat_Once_Selected(1400, 5, 6, 2); // REPLICANTS + DM_Add_To_List_Never_Repeat_Once_Selected(1410, 5, 4, 8); // WORK + if (Game_Flag_Query(kFlagUG16LutherLanceTalkReplicants1) + || Game_Flag_Query(kFlagUG16LutherLanceTalkReplicants2) ) { - DM_Add_To_List_Never_Repeat_Once_Selected(1420, 6, 4, 5); - DM_Add_To_List_Never_Repeat_Once_Selected(1430, 6, 4, 5); - DM_Add_To_List_Never_Repeat_Once_Selected(1440, 6, 4, 5); + DM_Add_To_List_Never_Repeat_Once_Selected(1420, 6, 4, 5); // LIFESPAN + DM_Add_To_List_Never_Repeat_Once_Selected(1430, 6, 4, 5); // CLOVIS + DM_Add_To_List_Never_Repeat_Once_Selected(1440, 6, 4, 5); // VOIGT-KAMPFF } if ( Global_Variable_Query(kVariableCorruptedGuzzaEvidence) > 1 && !Actor_Clue_Query(kActorMcCoy, kClueFolder) ) { - DM_Add_To_List_Never_Repeat_Once_Selected(1450, 6, 4, 5); + DM_Add_To_List_Never_Repeat_Once_Selected(1450, 6, 4, 5); // GUZZA } if (Actor_Clue_Query(kActorMcCoy, kClueEnvelope)) { - DM_Add_To_List_Never_Repeat_Once_Selected(1460, 6, 4, 5); + DM_Add_To_List_Never_Repeat_Once_Selected(1460, 6, 4, 5); // RUNCITER } if ( Actor_Clue_Query(kActorMcCoy, kClueDNATyrell) && !Actor_Clue_Query(kActorMcCoy, kClueFolder) - && Game_Flag_Query(698) + && Game_Flag_Query(kFlagUG15LanceLuthorTrade) ) { - DM_Add_To_List_Never_Repeat_Once_Selected(1470, 6, 4, 5); + DM_Add_To_List_Never_Repeat_Once_Selected(1470, 6, 4, 5); // TRADE } - Dialogue_Menu_Add_DONE_To_List(1480); + Dialogue_Menu_Add_DONE_To_List(1480); // DONE Dialogue_Menu_Appear(320, 240); int answer = Dialogue_Menu_Query_Input(); Dialogue_Menu_Disappear(); switch (answer) { - case 1400: + case 1400: // REPLICANTS Actor_Says(kActorMcCoy, 5730, 13); Actor_Face_Actor(kActorMcCoy, kActorLuther, true); Actor_Says(kActorLuther, 100, 18); @@ -281,14 +280,14 @@ void SceneScriptUG16::dialogueWithLuther() { Actor_Says(kActorLuther, 130, 6); Actor_Says(kActorMcCoy, 5825, 13); Actor_Modify_Friendliness_To_Other(kActorLuther, kActorMcCoy, -5); - if (Game_Flag_Query(560)) { + if (Game_Flag_Query(kFlagLutherLanceIsReplicant)) { Actor_Says(kActorLuther, 140, 13); Actor_Says(kActorLuther, 150, 14); Actor_Says(kActorLuther, 160, 13); Actor_Says(kActorLance, 140, 16); Actor_Says(kActorMcCoy, 5790, 13); Actor_Says(kActorLuther, 170, 14); - Game_Flag_Set(600); + Game_Flag_Set(kFlagUG16LutherLanceTalkReplicants1); Actor_Modify_Friendliness_To_Other(kActorLuther, kActorMcCoy, 5); } else { Actor_Says(kActorLuther, 180, 14); @@ -296,19 +295,19 @@ void SceneScriptUG16::dialogueWithLuther() { Actor_Says(kActorLance, 150, 17); Actor_Says(kActorMcCoy, 5800, 13); Actor_Says(kActorLuther, 190, 15); - Game_Flag_Set(601); + Game_Flag_Set(kFlagUG16LutherLanceTalkReplicants2); Actor_Modify_Friendliness_To_Other(kActorLuther, kActorMcCoy, -10); } break; - case 1410: + case 1410: // WORK Actor_Says(kActorMcCoy, 5735, 13); Actor_Face_Actor(kActorMcCoy, kActorLuther, true); Actor_Says(kActorLance, 160, 17); Actor_Says(kActorLuther, 200, 14); break; - case 1420: + case 1420: // LIFESPAN Actor_Says(kActorMcCoy, 5740, 13); Actor_Face_Actor(kActorMcCoy, kActorLuther, true); Actor_Says(kActorLance, 180, 15); @@ -327,7 +326,7 @@ void SceneScriptUG16::dialogueWithLuther() { Actor_Clue_Acquire(kActorMcCoy, kClueLutherLanceInterview, true, kActorLuther); break; - case 1430: + case 1430: // CLOVIS Actor_Says(kActorMcCoy, 5745, 13); Actor_Face_Actor(kActorMcCoy, kActorLuther, true); Actor_Says(kActorLance, 240, 15); @@ -337,7 +336,7 @@ void SceneScriptUG16::dialogueWithLuther() { Actor_Says(kActorLance, 260, 15); break; - case 1440: + case 1440: // VOIGT-KAMPFF Actor_Says(kActorMcCoy, 5750, 13); Actor_Face_Actor(kActorMcCoy, kActorLuther, true); Actor_Says(kActorLance, 280, 6); @@ -346,7 +345,7 @@ void SceneScriptUG16::dialogueWithLuther() { Actor_Modify_Friendliness_To_Other(kActorLuther, kActorMcCoy, -5); break; - case 1450: + case 1450: // GUZZA Actor_Says(kActorMcCoy, 5755, 13); Actor_Face_Actor(kActorMcCoy, kActorLuther, true); Actor_Says(kActorLance, 290, 17); @@ -362,10 +361,10 @@ void SceneScriptUG16::dialogueWithLuther() { Actor_Says(kActorMcCoy, 5830, 13); Actor_Says(kActorLance, 320, 16); Actor_Says(kActorLance, 330, 15); - Game_Flag_Set(698); + Game_Flag_Set(kFlagUG15LanceLuthorTrade); break; - case 1460: + case 1460: // RUNCITER Actor_Says(kActorMcCoy, 5760, 13); Actor_Face_Actor(kActorMcCoy, kActorLuther, true); Actor_Says(kActorLuther, 370, 15); @@ -377,7 +376,7 @@ void SceneScriptUG16::dialogueWithLuther() { Actor_Says(kActorLance, 380, 13); break; - case 1470: + case 1470: // TRADE Actor_Says(kActorMcCoy, 5765, 13); Actor_Face_Actor(kActorMcCoy, kActorLuther, true); Actor_Says(kActorLance, 400, 15); @@ -397,11 +396,11 @@ void SceneScriptUG16::dialogueWithLuther() { Actor_Says(kActorLance, 430, 6); Actor_Says(kActorMcCoy, 5855, 13); Actor_Says(kActorLuther, 410, 14); - Game_Flag_Set(597); + Game_Flag_Set(kFlagUG16FolderFound); Actor_Clue_Acquire(kActorMcCoy, kClueFolder, true, kActorLuther); break; - case 1480: + case 1480: // DONE Actor_Says(kActorMcCoy, 4595, 14); break; } |