Skip to content
Permalink
Browse files

BLADERUNNER: Fix Leon Clerk encounter bug

When McCoy leaves CT09 they should be both gone. They were not

This was our bug, a bad translation of an if clause.
Also added in this commit is a bit different behavior for the restored content case.
In restored content, the player is not allowed to leave until the situation is resolved.
  • Loading branch information...
antoniou79 committed Sep 9, 2019
1 parent 5cc574a commit 8f4d3654f2b66c21711eccb73df65e797236a9d2
@@ -118,11 +118,13 @@ int AIScriptDeskClerk::GetFriendlinessModifierIfGetsClue(int otherActorId, int c
bool AIScriptDeskClerk::GoalChanged(int currentGoalNumber, int newGoalNumber) {
switch (newGoalNumber) {
case kGoalDeskClerkDefault:
// fall through
case kGoalDeskClerkRecovered:
Actor_Put_In_Set(kActorDeskClerk, kSetCT09);
Actor_Set_At_XYZ(kActorDeskClerk, 282.0f, 360.52f, 743.0f, 513);
break;
case kGoalDeskClerkKnockedOut:
// fall through
case kGoalDeskClerkGone:
Actor_Put_In_Set(kActorDeskClerk, kSetFreeSlotH);
Actor_Set_At_Waypoint(kActorDeskClerk, 40, 0);
@@ -122,7 +122,7 @@ void AIScriptLeon::OtherAgentEnteredThisScene(int otherActorId) {

void AIScriptLeon::OtherAgentExitedThisScene(int otherActorId) {
if (otherActorId == kActorMcCoy
&& Actor_Query_Which_Set_In(kActorLeon) == kSetCT11
&& Actor_Query_Which_Set_In(kActorLeon) != kSetCT11
) {
AI_Movement_Track_Flush(kActorLeon);
ADQ_Flush();
@@ -250,6 +250,9 @@ bool AIScriptLeon::GoalChanged(int currentGoalNumber, int newGoalNumber) {
return false;

case kGoalLeonLeave:
if (_vm->_cutContent) {
Scene_Exits_Enable();
}
Actor_Force_Stop_Walking(kActorLeon);
AI_Movement_Track_Flush(kActorLeon);
AI_Movement_Track_Append(kActorLeon, 351, 0);
@@ -171,6 +171,11 @@ void SceneScriptCT09::PlayerWalkedIn() {
Game_Flag_Set(kFlagCT09Entered);
Actor_Set_Goal_Number(kActorLeon, kGoalLeonHoldingDeskClerk);
leonScene = true;
if (_vm->_cutContent) {
// don't allow McCoy to leave until the situation is resolved
// (the vanilla game allows him to leave)
Scene_Exits_Disable();
}
}

if (Game_Flag_Query(kFlagCT10toCT09)) {

0 comments on commit 8f4d365

Please sign in to comment.
You can’t perform that action at this time.