diff options
author | antoniou79 | 2019-08-16 23:56:46 +0300 |
---|---|---|
committer | antoniou79 | 2019-08-17 21:58:21 +0300 |
commit | ac40449699c355c235b76182dbde3de9a70af47d (patch) | |
tree | 4dd651934599d4ffb35446c7d57bf5fdf7f621d3 /engines/bladerunner | |
parent | ef71ebda4d06fb872d1eef4ed17e3ecd74526b21 (diff) | |
download | scummvm-rg350-ac40449699c355c235b76182dbde3de9a70af47d.tar.gz scummvm-rg350-ac40449699c355c235b76182dbde3de9a70af47d.tar.bz2 scummvm-rg350-ac40449699c355c235b76182dbde3de9a70af47d.zip |
BLADERUNNER: Restored - Dino gets clues properly
He gets them from the mainframe as indicated by the game's manual
Diffstat (limited to 'engines/bladerunner')
-rw-r--r-- | engines/bladerunner/script/ai/klein.cpp | 52 | ||||
-rw-r--r-- | engines/bladerunner/script/init_script.cpp | 6 | ||||
-rw-r--r-- | engines/bladerunner/script/scene/ps06.cpp | 6 | ||||
-rw-r--r-- | engines/bladerunner/script/scene/ps07.cpp | 292 |
4 files changed, 248 insertions, 108 deletions
diff --git a/engines/bladerunner/script/ai/klein.cpp b/engines/bladerunner/script/ai/klein.cpp index 66d8801555..943995726a 100644 --- a/engines/bladerunner/script/ai/klein.cpp +++ b/engines/bladerunner/script/ai/klein.cpp @@ -53,25 +53,27 @@ bool AIScriptKlein::Update() { // The following if-clauses and flags circumvent the manual's explicit instruction that McCoy should upload his clues // on the Mainframe, so that Dino Klein can acquire them. - if (Actor_Clue_Query(kActorMcCoy, kClueOfficersStatement) - && !Game_Flag_Query(kFlagMcCoyHasOfficersStatement) - ) { - Game_Flag_Set(kFlagMcCoyHasOfficersStatement); - } - if (Actor_Clue_Query(kActorMcCoy, kCluePaintTransfer) - && !Game_Flag_Query(kFlagMcCoyHasPaintTransfer) - ) { - Game_Flag_Set(kFlagMcCoyHasPaintTransfer); - } - if (Actor_Clue_Query(kActorMcCoy, kClueShellCasings) - && !Game_Flag_Query(kFlagMcCoyHasShellCasings) - ) { - Game_Flag_Set(kFlagMcCoyHasShellCasings); - } - if (Actor_Clue_Query(kActorMcCoy, kClueChromeDebris) - && !Game_Flag_Query(kFlagMcCoyHasChromeDebris) - ) { - Game_Flag_Set(kFlagMcCoyHasChromeDebris); + if (!_vm->_cutContent) { + if (Actor_Clue_Query(kActorMcCoy, kClueOfficersStatement) + && !Game_Flag_Query(kFlagMcCoyHasOfficersStatement) + ) { + Game_Flag_Set(kFlagMcCoyHasOfficersStatement); + } + if (Actor_Clue_Query(kActorMcCoy, kCluePaintTransfer) + && !Game_Flag_Query(kFlagMcCoyHasPaintTransfer) + ) { + Game_Flag_Set(kFlagMcCoyHasPaintTransfer); + } + if (Actor_Clue_Query(kActorMcCoy, kClueShellCasings) + && !Game_Flag_Query(kFlagMcCoyHasShellCasings) + ) { + Game_Flag_Set(kFlagMcCoyHasShellCasings); + } + if (Actor_Clue_Query(kActorMcCoy, kClueChromeDebris) + && !Game_Flag_Query(kFlagMcCoyHasChromeDebris) + ) { + Game_Flag_Set(kFlagMcCoyHasChromeDebris); + } } // The following deals with the case that Klein gets annoyed by McCoy and how he recovers from that @@ -79,6 +81,7 @@ bool AIScriptKlein::Update() { && Actor_Query_Friendliness_To_Other(kActorKlein, kActorMcCoy) < 35 && !Game_Flag_Query(kFlagPS07KleinInsulted) ) { + // kActorTimerAIScriptCustomTask2 causes the "Klein is annoyed dialogue" to occur after 5 seconds AI_Countdown_Timer_Reset(kActorKlein, kActorTimerAIScriptCustomTask2); AI_Countdown_Timer_Start(kActorKlein, kActorTimerAIScriptCustomTask2, 5); Game_Flag_Set(kFlagPS07KleinInsulted); @@ -219,17 +222,22 @@ bool AIScriptKlein::GoalChanged(int currentGoalNumber, int newGoalNumber) { break; case kGoalKleinIsAnnoyedByMcCoyInit: AI_Movement_Track_Flush(kActorKlein); - AI_Movement_Track_Append(kActorKlein, 32, 5); // kSetPS07 + AI_Movement_Track_Append(kActorKlein, 32, 5); // kSetPS07 (hidden spot) AI_Movement_Track_Repeat(kActorKlein); break; case kGoalKleinIsAnnoyedByMcCoy01: AI_Movement_Track_Flush(kActorKlein); - AI_Movement_Track_Append(kActorKlein, 35, 60); // kSetFreeSlotC + if (_vm->_cutContent) { + AI_Movement_Track_Append(kActorKlein, 35, Random_Query(8, 18)); // kSetFreeSlotC + } else { + // this never really gets triggered in the original game + AI_Movement_Track_Append(kActorKlein, 35, 60); // kSetFreeSlotC + } AI_Movement_Track_Repeat(kActorKlein); break; case kGoalKleinIsAnnoyedByMcCoy02: AI_Movement_Track_Flush(kActorKlein); - AI_Movement_Track_Append(kActorKlein, 32, 5); // kSetPS07 + AI_Movement_Track_Append(kActorKlein, 32, 5); // kSetPS07 (hidden spot) AI_Movement_Track_Repeat(kActorKlein); break; case kGoalKleinIsAnnoyedByMcCoyFinal: diff --git a/engines/bladerunner/script/init_script.cpp b/engines/bladerunner/script/init_script.cpp index c62466acfc..3856f908ed 100644 --- a/engines/bladerunner/script/init_script.cpp +++ b/engines/bladerunner/script/init_script.cpp @@ -1138,6 +1138,12 @@ void InitScript::Init_Clues2() { Actor_Clue_Add_To_Database(kActorKlein, kClueHollowayInterview, 65, false, false, -1); Actor_Clue_Add_To_Database(kActorKlein, kClueRunciterConfession1, 65, false, false, -1); Actor_Clue_Add_To_Database(kActorKlein, kClueRunciterConfession2, 65, false, false, -1); + if (_vm->_cutContent) { + Actor_Clue_Add_To_Database(kActorKlein, kClueShellCasings, 65, false, false, -1); + Actor_Clue_Add_To_Database(kActorKlein, kClueChromeDebris, 65, false, false, -1); + Actor_Clue_Add_To_Database(kActorKlein, kClueOfficersStatement, 65, false, false, -1); + Actor_Clue_Add_To_Database(kActorKlein, kCluePaintTransfer, 65, false, false, -1); + } Actor_Clue_Add_To_Database(kActorMurray, kClueMcCoyShotZubenInTheBack, 55, false, false, -1); Actor_Clue_Add_To_Database(kActorMurray, kClueMcCoyIsAnnoying, 55, false, false, -1); Actor_Clue_Add_To_Database(kActorMurray, kClueMcCoyIsKind, 70, false, false, -1); diff --git a/engines/bladerunner/script/scene/ps06.cpp b/engines/bladerunner/script/scene/ps06.cpp index bf9a82cace..1b2477a201 100644 --- a/engines/bladerunner/script/scene/ps06.cpp +++ b/engines/bladerunner/script/scene/ps06.cpp @@ -83,12 +83,18 @@ bool SceneScriptPS06::ClickedOn3DObject(const char *objectName, bool a2) { } Actor_Clues_Transfer_New_To_Mainframe(kActorMcCoy); Actor_Clues_Transfer_New_From_Mainframe(kActorMcCoy); + if (_vm->_cutContent) { + Actor_Clues_Transfer_New_From_Mainframe(kActorKlein); + } return true; } else { bool transferedClues = Actor_Clues_Transfer_New_To_Mainframe(kActorMcCoy); if (_vm->_cutContent && !transferedClues) { Actor_Says(kActorAnsweringMachine, 370, kAnimationModeTalk); // no clues transfered } else { + if (_vm->_cutContent) { + Actor_Clues_Transfer_New_From_Mainframe(kActorKlein); + } Ambient_Sounds_Play_Sound(kSfxDATALOAD, 50, 0, 0, 99); Delay(2000); } diff --git a/engines/bladerunner/script/scene/ps07.cpp b/engines/bladerunner/script/scene/ps07.cpp index 718254584e..5971a586a9 100644 --- a/engines/bladerunner/script/scene/ps07.cpp +++ b/engines/bladerunner/script/scene/ps07.cpp @@ -49,7 +49,7 @@ void SceneScriptPS07::SceneLoaded() { Unobstacle_Object("L.MOUSE", true); Unobstacle_Object("L.MOUSE2", true); Clickable_Object("L.MOUSE"); - Clickable_Object("L.MOUSE2"); + Unclickable_Object("L.MOUSE2"); // TODO: we may not use this one (restored content version) } } @@ -58,10 +58,11 @@ bool SceneScriptPS07::MouseClick(int x, int y) { } bool SceneScriptPS07::ClickedOn3DObject(const char *objectName, bool a2) { - if (Object_Query_Click("L.MOUSE", objectName)) { // a bug? Which object is this? + if (Object_Query_Click("L.MOUSE", objectName)) { // this object is restored in the scene (buzzer button) Sound_Play(kSfxLABBUZZ1, 70, 0, 0, 50); if (Actor_Query_Goal_Number(kActorKlein) < kGoalKleinIsAnnoyedByMcCoyInit - && Actor_Query_Goal_Number(kActorKlein) > kGoalKleinDefault) { + && Actor_Query_Goal_Number(kActorKlein) > kGoalKleinDefault + ) { Actor_Face_Actor(kActorMcCoy, kActorKlein, true); Actor_Set_Goal_Number(kActorKlein, kGoalKleinGotoLabSpeaker); Actor_Modify_Friendliness_To_Other(kActorKlein, kActorMcCoy, -3); @@ -73,101 +74,220 @@ bool SceneScriptPS07::ClickedOn3DObject(const char *objectName, bool a2) { bool SceneScriptPS07::ClickedOnActor(int actorId) { if (actorId == kActorKlein) { - Actor_Face_Actor(kActorMcCoy, kActorKlein, true); - Actor_Set_Goal_Number(kActorKlein, kGoalKleinGotoLabSpeaker); + if (_vm->_cutContent) { + if (Actor_Query_Goal_Number(kActorKlein) >= kGoalKleinIsAnnoyedByMcCoyInit + || (Actor_Query_Goal_Number(kActorKlein) < kGoalKleinIsAnnoyedByMcCoyInit + && Actor_Query_Friendliness_To_Other(kActorKlein, kActorMcCoy) < 40) + ) { + // Dino ignores McCoy + return true; + } else { + Actor_Face_Actor(kActorMcCoy, kActorKlein, true); + Actor_Set_Goal_Number(kActorKlein, kGoalKleinGotoLabSpeaker); + if (!Game_Flag_Query(kFlagPS07KleinTalkClues)) { + Actor_Says(kActorMcCoy, 4115, 13); + } - if (!Game_Flag_Query(kFlagPS07KleinTalkClues)) { - Actor_Says(kActorMcCoy, 4115, 13); - } + if (!Game_Flag_Query(kFlagPS07KleinTalkClues) + && (Actor_Clue_Query(kActorKlein, kClueShellCasings) + || Actor_Clue_Query(kActorKlein, kClueOfficersStatement) + || Actor_Clue_Query(kActorKlein, kCluePaintTransfer) + || Actor_Clue_Query(kActorKlein, kClueChromeDebris)) + ) { + Actor_Face_Actor(kActorKlein, kActorMcCoy, true); + Actor_Says(kActorKlein, 30, 12); + Game_Flag_Set(kFlagPS07KleinTalkClues); + } else { + if (Game_Flag_Query(kFlagPS07KleinTalkClues)) { + Actor_Says(kActorMcCoy, 4130, 18); + } + } + if (Actor_Clue_Query(kActorKlein, kClueShellCasings) + && !Game_Flag_Query(kFlagPS07KleinTalkShellCasings) + ) { + Game_Flag_Set(kFlagPS07KleinTalkShellCasings); + Actor_Clue_Acquire(kActorMcCoy, kClueLabShellCasings, false, kActorKlein); + Actor_Says(kActorKlein, 50, 16); + Actor_Says(kActorMcCoy, 4135, 13); + Actor_Says(kActorKlein, 60, 15); + Actor_Says(kActorKlein, 70, 12); + Actor_Says(kActorMcCoy, 4140, 18); + Actor_Says(kActorKlein, 80, 14); + Actor_Says(kActorKlein, 90, 14); + Actor_Set_Goal_Number(kActorKlein, kGoalKleinMovingInLab01); + return true; + } - if (!Game_Flag_Query(kFlagPS07KleinTalkClues) - && (Game_Flag_Query(kFlagMcCoyHasShellCasings) - || Game_Flag_Query(kFlagMcCoyHasOfficersStatement) - || Game_Flag_Query(kFlagMcCoyHasPaintTransfer) - || Game_Flag_Query(kFlagMcCoyHasChromeDebris)) - ) { - Actor_Face_Actor(kActorKlein, kActorMcCoy, true); - Actor_Says(kActorKlein, 30, 12); - Game_Flag_Set(kFlagPS07KleinTalkClues); + if (Actor_Clue_Query(kActorKlein, kClueOfficersStatement) + && !Game_Flag_Query(kFlagPS07KleinTalkOfficersStatement) + ) { + Game_Flag_Set(kFlagPS07KleinTalkOfficersStatement); + Actor_Clue_Acquire(kActorMcCoy, kClueLabCorpses, false, kActorKlein); + Actor_Says(kActorKlein, 100, 13); + Actor_Says(kActorMcCoy, 4145, 13); + Actor_Says(kActorKlein, 110, 12); + Actor_Says(kActorMcCoy, 4150, 13); + Actor_Says(kActorKlein, 120, 14); + Actor_Says(kActorMcCoy, 4155, 17); + Actor_Says(kActorKlein, 130, 15); + Actor_Says(kActorMcCoy, 4160, 13); + Actor_Says(kActorKlein, 140, 16); + Actor_Says(kActorMcCoy, 4165, 18); + Actor_Says(kActorKlein, 160, 13); + Actor_Says(kActorMcCoy, 4170, 19); + Actor_Says(kActorMcCoy, 4175, 19); + Actor_Modify_Friendliness_To_Other(kActorKlein, kActorMcCoy, 3); + Actor_Set_Goal_Number(kActorKlein, kGoalKleinMovingInLab01); + return true; + } + + if (Actor_Clue_Query(kActorKlein, kCluePaintTransfer) + && !Game_Flag_Query(kFlagPS07KleinTalkPaintTransfer) + ) { + Game_Flag_Set(kFlagPS07KleinTalkPaintTransfer); + Actor_Clue_Acquire(kActorMcCoy, kClueLabPaintTransfer, false, kActorKlein); + Actor_Says(kActorKlein, 170, 14); + Actor_Says(kActorMcCoy, 4180, 13); + Actor_Says(kActorKlein, 180, 12); + Actor_Says(kActorKlein, 190, 13); + Actor_Says(kActorKlein, 200, 16); + Actor_Says(kActorMcCoy, 4185, 18); + Actor_Says(kActorKlein, 210, 12); + Actor_Modify_Friendliness_To_Other(kActorKlein, kActorMcCoy, -12); + Actor_Set_Goal_Number(kActorKlein, kGoalKleinMovingInLab01); + return true; + } + + if (Actor_Clue_Query(kActorKlein, kClueChromeDebris) + && !Game_Flag_Query(kFlagPS07KleinTalkChromeDebris) + ) { + Game_Flag_Set(kFlagPS07KleinTalkChromeDebris); + Actor_Says(kActorKlein, 220, 12); + Actor_Says(kActorMcCoy, 4190, 13); + Actor_Says(kActorKlein, 230, 14); + if (_vm->_cutContent) { + Actor_Says(kActorMcCoy, 4195, 13); + Actor_Says(kActorKlein, 240, 16); // Car VIN + } + Actor_Set_Goal_Number(kActorKlein, kGoalKleinMovingInLab01); + return true; + } + + switch (Random_Query(1, 4)) { + case 1: + Actor_Says(kActorKlein, 0, 13); + break; + case 2: + Actor_Says(kActorKlein, 40, 13); + break; + case 3: + Actor_Says(kActorKlein, 270, 13); + break; + case 4: + Actor_Says(kActorKlein, 280, 13); + break; + } + Actor_Set_Goal_Number(kActorKlein, kGoalKleinMovingInLab01); + return true; + } } else { - if (Game_Flag_Query(kFlagPS07KleinTalkClues)) { - Actor_Says(kActorMcCoy, 4130, 18); + Actor_Face_Actor(kActorMcCoy, kActorKlein, true); + Actor_Set_Goal_Number(kActorKlein, kGoalKleinGotoLabSpeaker); + + if (!Game_Flag_Query(kFlagPS07KleinTalkClues)) { + Actor_Says(kActorMcCoy, 4115, 13); } - } - if (Game_Flag_Query(kFlagMcCoyHasShellCasings) - && !Game_Flag_Query(kFlagPS07KleinTalkShellCasings) - ) { - Game_Flag_Set(kFlagPS07KleinTalkShellCasings); - Actor_Clue_Acquire(kActorMcCoy, kClueLabShellCasings, false, kActorKlein); - Actor_Says(kActorKlein, 50, 16); - Actor_Says(kActorMcCoy, 4135, 13); - Actor_Says(kActorKlein, 60, 15); - Actor_Says(kActorKlein, 70, 12); - Actor_Says(kActorMcCoy, 4140, 18); - Actor_Says(kActorKlein, 80, 14); - Actor_Says(kActorKlein, 90, 14); - Actor_Set_Goal_Number(kActorKlein, kGoalKleinMovingInLab01); - return true; - } + if (!Game_Flag_Query(kFlagPS07KleinTalkClues) + && (Game_Flag_Query(kFlagMcCoyHasShellCasings) + || Game_Flag_Query(kFlagMcCoyHasOfficersStatement) + || Game_Flag_Query(kFlagMcCoyHasPaintTransfer) + || Game_Flag_Query(kFlagMcCoyHasChromeDebris)) + ) { + Actor_Face_Actor(kActorKlein, kActorMcCoy, true); + Actor_Says(kActorKlein, 30, 12); + Game_Flag_Set(kFlagPS07KleinTalkClues); + } else { + if (Game_Flag_Query(kFlagPS07KleinTalkClues)) { + Actor_Says(kActorMcCoy, 4130, 18); + } + } - if (Game_Flag_Query(kFlagMcCoyHasOfficersStatement) - && !Game_Flag_Query(kFlagPS07KleinTalkOfficersStatement) - ) { - Game_Flag_Set(kFlagPS07KleinTalkOfficersStatement); - Actor_Clue_Acquire(kActorMcCoy, kClueLabCorpses, false, kActorKlein); - Actor_Says(kActorKlein, 100, 13); - Actor_Says(kActorMcCoy, 4145, 13); - Actor_Says(kActorKlein, 110, 12); - Actor_Says(kActorMcCoy, 4150, 13); - Actor_Says(kActorKlein, 120, 14); - Actor_Says(kActorMcCoy, 4155, 17); - Actor_Says(kActorKlein, 130, 15); - Actor_Says(kActorMcCoy, 4160, 13); - Actor_Says(kActorKlein, 140, 16); - Actor_Says(kActorMcCoy, 4165, 18); - Actor_Says(kActorKlein, 160, 13); - Actor_Says(kActorMcCoy, 4170, 19); - Actor_Says(kActorMcCoy, 4175, 19); - Actor_Modify_Friendliness_To_Other(kActorKlein, kActorMcCoy, 3); - Actor_Set_Goal_Number(kActorKlein, kGoalKleinMovingInLab01); - return true; - } + if (Game_Flag_Query(kFlagMcCoyHasShellCasings) + && !Game_Flag_Query(kFlagPS07KleinTalkShellCasings) + ) { + Game_Flag_Set(kFlagPS07KleinTalkShellCasings); + Actor_Clue_Acquire(kActorMcCoy, kClueLabShellCasings, false, kActorKlein); + Actor_Says(kActorKlein, 50, 16); + Actor_Says(kActorMcCoy, 4135, 13); + Actor_Says(kActorKlein, 60, 15); + Actor_Says(kActorKlein, 70, 12); + Actor_Says(kActorMcCoy, 4140, 18); + Actor_Says(kActorKlein, 80, 14); + Actor_Says(kActorKlein, 90, 14); + Actor_Set_Goal_Number(kActorKlein, kGoalKleinMovingInLab01); + return true; + } - if (Game_Flag_Query(kFlagMcCoyHasPaintTransfer) - && !Game_Flag_Query(kFlagPS07KleinTalkPaintTransfer) - ) { - Game_Flag_Set(kFlagPS07KleinTalkPaintTransfer); - Actor_Clue_Acquire(kActorMcCoy, kClueLabPaintTransfer, false, kActorKlein); - Actor_Says(kActorKlein, 170, 14); - Actor_Says(kActorMcCoy, 4180, 13); - Actor_Says(kActorKlein, 180, 12); - Actor_Says(kActorKlein, 190, 13); - Actor_Says(kActorKlein, 200, 16); - Actor_Says(kActorMcCoy, 4185, 18); - Actor_Says(kActorKlein, 210, 12); - Actor_Modify_Friendliness_To_Other(kActorKlein, kActorMcCoy, -12); - Actor_Set_Goal_Number(kActorKlein, kGoalKleinMovingInLab01); - return true; - } + if (Game_Flag_Query(kFlagMcCoyHasOfficersStatement) + && !Game_Flag_Query(kFlagPS07KleinTalkOfficersStatement) + ) { + Game_Flag_Set(kFlagPS07KleinTalkOfficersStatement); + Actor_Clue_Acquire(kActorMcCoy, kClueLabCorpses, false, kActorKlein); + Actor_Says(kActorKlein, 100, 13); + Actor_Says(kActorMcCoy, 4145, 13); + Actor_Says(kActorKlein, 110, 12); + Actor_Says(kActorMcCoy, 4150, 13); + Actor_Says(kActorKlein, 120, 14); + Actor_Says(kActorMcCoy, 4155, 17); + Actor_Says(kActorKlein, 130, 15); + Actor_Says(kActorMcCoy, 4160, 13); + Actor_Says(kActorKlein, 140, 16); + Actor_Says(kActorMcCoy, 4165, 18); + Actor_Says(kActorKlein, 160, 13); + Actor_Says(kActorMcCoy, 4170, 19); + Actor_Says(kActorMcCoy, 4175, 19); + Actor_Modify_Friendliness_To_Other(kActorKlein, kActorMcCoy, 3); + Actor_Set_Goal_Number(kActorKlein, kGoalKleinMovingInLab01); + return true; + } - if (Game_Flag_Query(kFlagMcCoyHasChromeDebris) - && !Game_Flag_Query(kFlagPS07KleinTalkChromeDebris) - ) { - Game_Flag_Set(kFlagPS07KleinTalkChromeDebris); - Actor_Says(kActorKlein, 220, 12); - Actor_Says(kActorMcCoy, 4190, 13); - Actor_Says(kActorKlein, 230, 14); - if (_vm->_cutContent) { - Actor_Says(kActorMcCoy, 4195, 13); - Actor_Says(kActorKlein, 240, 16); // Car VIN + if (Game_Flag_Query(kFlagMcCoyHasPaintTransfer) + && !Game_Flag_Query(kFlagPS07KleinTalkPaintTransfer) + ) { + Game_Flag_Set(kFlagPS07KleinTalkPaintTransfer); + Actor_Clue_Acquire(kActorMcCoy, kClueLabPaintTransfer, false, kActorKlein); + Actor_Says(kActorKlein, 170, 14); + Actor_Says(kActorMcCoy, 4180, 13); + Actor_Says(kActorKlein, 180, 12); + Actor_Says(kActorKlein, 190, 13); + Actor_Says(kActorKlein, 200, 16); + Actor_Says(kActorMcCoy, 4185, 18); + Actor_Says(kActorKlein, 210, 12); + Actor_Modify_Friendliness_To_Other(kActorKlein, kActorMcCoy, -12); + Actor_Set_Goal_Number(kActorKlein, kGoalKleinMovingInLab01); + return true; } + + if (Game_Flag_Query(kFlagMcCoyHasChromeDebris) + && !Game_Flag_Query(kFlagPS07KleinTalkChromeDebris) + ) { + Game_Flag_Set(kFlagPS07KleinTalkChromeDebris); + Actor_Says(kActorKlein, 220, 12); + Actor_Says(kActorMcCoy, 4190, 13); + Actor_Says(kActorKlein, 230, 14); + if (_vm->_cutContent) { // TODO this can go, if we keep separate cases + Actor_Says(kActorMcCoy, 4195, 13); + Actor_Says(kActorKlein, 240, 16); // Car VIN + } + Actor_Set_Goal_Number(kActorKlein, kGoalKleinMovingInLab01); + return true; + } + Actor_Says(kActorKlein, 0, 13); Actor_Set_Goal_Number(kActorKlein, kGoalKleinMovingInLab01); return true; + } - Actor_Says(kActorKlein, 0, 13); - Actor_Set_Goal_Number(kActorKlein, kGoalKleinMovingInLab01); - return true; } return false; |