aboutsummaryrefslogtreecommitdiff
path: root/engines/bladerunner/script/ai
diff options
context:
space:
mode:
authorThanasis Antoniou2019-05-06 23:52:48 +0300
committerThanasis Antoniou2019-05-06 23:53:43 +0300
commit24bf47a28b317853f1c9175a8f22d6b4ba3ffc5f (patch)
tree3ff0e64262e7294a23b727c4845207234e5e5041 /engines/bladerunner/script/ai
parent9a510b1c4709e75559108d97c2807fba409ae657 (diff)
downloadscummvm-rg350-24bf47a28b317853f1c9175a8f22d6b4ba3ffc5f.tar.gz
scummvm-rg350-24bf47a28b317853f1c9175a8f22d6b4ba3ffc5f.tar.bz2
scummvm-rg350-24bf47a28b317853f1c9175a8f22d6b4ba3ffc5f.zip
BLADERUNNER: Restoring Rachael related scenes pt1
Some testing and polishing of animations pending especially with meeting in Act 4
Diffstat (limited to 'engines/bladerunner/script/ai')
-rw-r--r--engines/bladerunner/script/ai/mccoy.cpp212
-rw-r--r--engines/bladerunner/script/ai/rachael.cpp304
2 files changed, 323 insertions, 193 deletions
diff --git a/engines/bladerunner/script/ai/mccoy.cpp b/engines/bladerunner/script/ai/mccoy.cpp
index 432c75f7d9..d05266b1f3 100644
--- a/engines/bladerunner/script/ai/mccoy.cpp
+++ b/engines/bladerunner/script/ai/mccoy.cpp
@@ -547,7 +547,7 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
int v7;
switch (_animationState) {
case 0:
- *animation = 19;
+ *animation = kModelAnimationMcCoyIdle;
if (_animationLoopCounter < _animationLoopLength) {
_animationFrame += _animationLoopDirection;
if (_animationFrame > _animationLoopFrameMax) {
@@ -602,11 +602,11 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
_animationNextSpecial = 20;
} else if (_animationFrame <= 4 && Game_Flag_Query(kFlagMcCoyAnimation1)) {
Game_Flag_Reset(kFlagMcCoyAnimation1);
- *animation = 19;
+ *animation = kModelAnimationMcCoyIdle;
_animationFrame = 0;
_animationState = 0;
} else {
- *animation = 20;
+ *animation = kModelAnimationMcCoyProtestingTalk;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = 0;
@@ -615,87 +615,87 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
break;
case 5:
- *animation = 21;
+ *animation = kModelAnimationMcCoyScratchHeadTalk;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = 0;
_animationState = 3;
- *animation = 20;
+ *animation = kModelAnimationMcCoyProtestingTalk;
}
break;
case 6:
- *animation = 27;
+ *animation = kModelAnimationMcCoyScratchEarLongerTalk;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = 0;
_animationState = 3;
- *animation = 20;
+ *animation = kModelAnimationMcCoyProtestingTalk;
}
break;
case 7:
- *animation = 22;
+ *animation = kModelAnimationMcCoyPointingTalk;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = 0;
_animationState = 3;
- *animation = 20;
+ *animation = kModelAnimationMcCoyProtestingTalk;
}
break;
case 8:
- *animation = 23;
+ *animation = kModelAnimationMcCoyUpsetTalk;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = 0;
_animationState = 3;
- *animation = 20;
+ *animation = kModelAnimationMcCoyProtestingTalk;
}
break;
case 9:
- *animation = 24;
+ *animation = kModelAnimationMcCoyDismissiveTalk;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = 0;
_animationState = 3;
- *animation = 20;
+ *animation = kModelAnimationMcCoyProtestingTalk;
}
break;
case 10:
- *animation = 25;
+ *animation = kModelAnimationMcCoyScratchEarTalk;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = 0;
_animationState = 3;
- *animation = 20;
+ *animation = kModelAnimationMcCoyProtestingTalk;
}
break;
case 11:
- *animation = 26;
+ *animation = kModelAnimationMcCoyHandsOnWaistTalk;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = 0;
_animationState = 3;
- *animation = 20;
+ *animation = kModelAnimationMcCoyProtestingTalk;
}
break;
case 12:
- *animation = 27;
+ *animation = kModelAnimationMcCoyScratchEarLongerTalk;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = 0;
_animationState = 3;
- *animation = 20;
+ *animation = kModelAnimationMcCoyProtestingTalk;
}
break;
case 13:
- *animation = 19;
+ *animation = kModelAnimationMcCoyIdle;
if (_animationFrame < Slice_Animation_Query_Number_Of_Frames(*animation) / 2) {
_animationFrame -= 3;
if (_animationFrame <= 0) {
@@ -714,7 +714,7 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
break;
case 14:
- *animation = 0;
+ *animation = kModelAnimationMcCoyWithGunIdle;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationState = 14;
@@ -723,27 +723,27 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
break;
case 15:
- *animation = 8;
+ *animation = kModelAnimationMcCoyWithGunUnholsterGun;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = 0;
_animationState = 14;
- *animation = 0;
+ *animation = kModelAnimationMcCoyWithGunIdle;
}
break;
case 16:
- *animation = 9;
+ *animation = kModelAnimationMcCoyWithGunHolsterGun;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
- *animation = 19;
+ *animation = kModelAnimationMcCoyIdle;
_animationFrame = 0;
_animationState = 0;
}
break;
case 17:
- *animation = 12;
+ *animation = kModelAnimationMcCoyWithGunShooting;
_animationFrame = 0;
// weird, but thats in game code
if (Slice_Animation_Query_Number_Of_Frames(*animation) <= 0) {
@@ -753,27 +753,27 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
break;
case 18:
- *animation = 10;
+ *animation = kModelAnimationMcCoyWithGunAiming;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = 0;
_animationState = 17;
- *animation = 12;
+ *animation = kModelAnimationMcCoyWithGunShooting;
}
break;
case 19:
- *animation = 11;
+ *animation = kModelAnimationMcCoyWithGunStopAimResumeIdle;
_animationFrame++;
if (_animationFrame >= 12) {
_animationFrame = 0;
_animationState = 14;
- *animation = 0;
+ *animation = kModelAnimationMcCoyWithGunIdle;
}
break;
case 21:
- *animation = 12;
+ *animation = kModelAnimationMcCoyWithGunShooting;
_animationFrame++;
if (_animationFrame == 1
&& Actor_Query_Goal_Number(kActorMcCoy) == kGoalMcCoyNR11Shoot
@@ -784,12 +784,12 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationState = 17;
_animationFrame = 0;
- *animation = 12;
+ *animation = kModelAnimationMcCoyWithGunShooting;
if (Actor_Query_Goal_Number(kActorMcCoy) == kGoalMcCoyNR11Shoot) {
_animationFrame = 0;
_animationState = 21;
_NR10SteeleShooting = true;
- *animation = 12;
+ *animation = kModelAnimationMcCoyWithGunShooting;
}
}
break;
@@ -797,36 +797,36 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
case 22:
_animationFrame = 0;
_animationState = 17;
- *animation = 12;
+ *animation = kModelAnimationMcCoyWithGunShooting;
break;
case 23:
- *animation = 1;
+ *animation = kModelAnimationMcCoyWithGunGotHitRight;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = 0;
_animationState = 14;
- *animation = 0;
+ *animation = kModelAnimationMcCoyWithGunIdle;
Actor_Change_Animation_Mode(kActorMcCoy, kAnimationModeCombatIdle);
}
break;
case 24:
- *animation = 1;
+ *animation = kModelAnimationMcCoyWithGunGotHitRight;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = 0;
_animationState = 14;
- *animation = 0;
+ *animation = kModelAnimationMcCoyWithGunIdle;
Actor_Change_Animation_Mode(kActorMcCoy, kAnimationModeCombatIdle);
}
break;
case 25:
- *animation = 17;
+ *animation = kModelAnimationMcCoyGotHitRight;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
- *animation = 19;
+ *animation = kModelAnimationMcCoyIdle;
_animationFrame = 0;
_animationState = 0;
Actor_Change_Animation_Mode(kActorMcCoy, kAnimationModeIdle);
@@ -834,10 +834,10 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
break;
case 26:
- *animation = 17;
+ *animation = kModelAnimationMcCoyGotHitRight;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
- *animation = 19;
+ *animation = kModelAnimationMcCoyIdle;
_animationFrame = 0;
_animationState = 0;
Actor_Change_Animation_Mode(kActorMcCoy, kAnimationModeIdle);
@@ -845,7 +845,7 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
break;
case 27:
- *animation = 18;
+ *animation = kModelAnimationMcCoyFallsOnHisBack;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = Slice_Animation_Query_Number_Of_Frames(*animation) - 1;
@@ -858,7 +858,7 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
break;
case 28:
- *animation = 5;
+ *animation = kModelAnimationMcCoyWithGunShotDead;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = Slice_Animation_Query_Number_Of_Frames(*animation) - 1;
@@ -868,21 +868,21 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
break;
case 29:
- *animation = 18;
+ *animation = kModelAnimationMcCoyFallsOnHisBack;
_animationFrame += _animationLoopDirection;
if (_animationFrame < 14) {
_animationLoopDirection = 1;
}
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
Actor_Change_Animation_Mode(kActorMcCoy, kAnimationModeDie);
- *animation = 18;
+ *animation = kModelAnimationMcCoyFallsOnHisBack;
_animationState = 27;
_animationFrame = Slice_Animation_Query_Number_Of_Frames(*animation) - 1;
}
break;
case 30:
- *animation = 13;
+ *animation = kModelAnimationMcCoyWalking;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = 0;
@@ -895,7 +895,7 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
break;
case 31:
- *animation = 14;
+ *animation = kModelAnimationMcCoyRunning;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = 0;
@@ -910,11 +910,11 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
case 32:
_animationFrame = 1;
_animationState = 30;
- *animation = 13;
+ *animation = kModelAnimationMcCoyWalking;
break;
case 36:
- *animation = 3;
+ *animation = kModelAnimationMcCoyWithGunWalking;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = 0;
@@ -928,7 +928,7 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
break;
case 37:
- *animation = 4;
+ *animation = kModelAnimationMcCoyWithGunRunning;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = 0;
@@ -942,7 +942,7 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
break;
case 38:
- *animation = 15;
+ *animation = kModelAnimationMcCoyClimbStairsUp;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = 0;
@@ -958,7 +958,7 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
break;
case 39:
- *animation = 16;
+ *animation = kModelAnimationMcCoyClimbStairsDown;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = 0;
@@ -974,7 +974,7 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
break;
case 40:
- *animation = 6;
+ *animation = kModelAnimationMcCoyWithGunClimbStairsUp;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = 0;
@@ -990,7 +990,7 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
break;
case 41:
- *animation = 7;
+ *animation = kModelAnimationMcCoyWithGunClimbStairsDown;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = 0;
@@ -1006,7 +1006,7 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
break;
case 42:
- *animation = 37;
+ *animation = kModelAnimationMcCoyClimbsLadderUp;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation) - 1) { //why -1?
_animationFrame = 0;
@@ -1025,7 +1025,7 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
break;
case 43:
- *animation = 38;
+ *animation = kModelAnimationMcCoyClimbsLadderDown;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation) - 1) { //why -1?
_animationFrame = 0;
@@ -1044,13 +1044,13 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
break;
case 44:
- *animation = 30;
+ *animation = kModelAnimationMcCoyThrowsBeggarInTrash;
_animationFrame++;
if (_animationFrame == 127) {
Game_Flag_Set(kFlagCT04BodyDumped);
}
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
- *animation = 19;
+ *animation = kModelAnimationMcCoyIdle;
_animationFrame = 0;
ChangeAnimationMode(kAnimationModeIdle);
Actor_Set_At_XYZ(kActorMcCoy, -203.41f, -621.3f, 724.57f, 538);
@@ -1059,11 +1059,11 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
break;
case 45:
- *animation = 35;
+ *animation = kModelAnimationMcCoyEntersSpinner;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
Actor_Set_Invisible(kActorMcCoy, true);
- *animation = 19;
+ *animation = kModelAnimationMcCoyIdle;
_animationFrame = 0;
ChangeAnimationMode(kAnimationModeIdle);
}
@@ -1071,10 +1071,10 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
case 46:
Actor_Set_Invisible(kActorMcCoy, false);
- *animation = 36;
+ *animation = kModelAnimationMcCoyExitsSpinner;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
- *animation = 19;
+ *animation = kModelAnimationMcCoyIdle;
_animationFrame = 0;
Player_Gains_Control();
ChangeAnimationMode(kAnimationModeIdle);
@@ -1083,43 +1083,43 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
break;
case 47:
- *animation = 29;
+ *animation = kModelAnimationMcCoyLeaningOver;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = 0;
_animationState = 48;
- *animation = 33;
+ *animation = kModelAnimationMcCoyLeaningOverSearching;
}
break;
- case kAnimationModeDie:
- *animation = 33;
+ case 48:
+ *animation = kModelAnimationMcCoyLeaningOverSearching;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = 0;
_animationState = 49;
- *animation = 34;
+ *animation = kModelAnimationMcCoyLeaningOverResumeIdle;
}
break;
- case kAnimationModeCombatDie:
- *animation = 34;
+ case 49:
+ *animation = kModelAnimationMcCoyLeaningOverResumeIdle;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
Actor_Set_Goal_Number(kActorMcCoy, kGoalMcCoyDefault);
- *animation = 19;
+ *animation = kModelAnimationMcCoyIdle;
_animationFrame = 0;
ChangeAnimationMode(kAnimationModeIdle);
}
break;
case 50:
- *animation = 18;
+ *animation = kModelAnimationMcCoyFallsOnHisBack;
_animationFrame = Slice_Animation_Query_Number_Of_Frames(*animation) - 1;
break;
case 51:
- *animation = 28;
+ *animation = kModelAnimationMcCoyDodgeAndDrawGun;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
Player_Set_Combat_Mode(true);
@@ -1131,7 +1131,7 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
break;
case 52:
- *animation = 31;
+ *animation = kModelAnimationMcCoyDiesInAgony;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = Slice_Animation_Query_Number_Of_Frames(*animation) - 1;
@@ -1140,11 +1140,11 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
break;
case 53:
- *animation = 18;
+ *animation = kModelAnimationMcCoyFallsOnHisBack;
_animationFrame--;
if (_animationFrame <= 0) {
Actor_Change_Animation_Mode(kActorMcCoy, kAnimationModeIdle);
- *animation = 19;
+ *animation = kModelAnimationMcCoyIdle;
_animationFrame = 0;
_animationState = 0;
if (Actor_Query_Goal_Number(kActorMcCoy) == kGoalMcCoyBB11GetUp) {
@@ -1157,26 +1157,26 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
break;
case 55:
- *animation = 32;
+ *animation = kModelAnimationMcCoyGivesFromPocket;
_animationFrame++;
if (_animationFrame == 7) {
Actor_Change_Animation_Mode(kActorMaggie, kAnimationModeFeeding);
}
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
- *animation = 19;
+ *animation = kModelAnimationMcCoyIdle;
_animationState = 0;
}
break;
case 56:
- *animation = 49;
+ *animation = kModelAnimationMcCoyStartled;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = 0;
if (Actor_Query_Which_Set_In(kActorMcCoy) == kSetUG15) {
_animationState = 27;
} else {
- *animation = 19;
+ *animation = kModelAnimationMcCoyIdle;
_animationState = 0;
Actor_Change_Animation_Mode(kActorMcCoy, kAnimationModeIdle);
}
@@ -1184,7 +1184,7 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
break;
case 57:
- *animation = 46;
+ *animation = kModelAnimationMcCoyTiedInChairIdle;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = 0;
@@ -1192,12 +1192,12 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
if (!Game_Flag_Query(kFlagMcCoyTiedDown)) {
_animationFrame = 0;
_animationState = 59;
- *animation = 48;
+ *animation = kModelAnimationMcCoyTiedInChairFreed;
}
break;
case 58:
- *animation = 47;
+ *animation = kModelAnimationMcCoyTiedInChairMoving;
_animationFrame++;
if (_animationFrame == 6) {
// Play one of kSfxCHARMTL7, kSfxCHARMTL8, kSfxCHARMTL9
@@ -1209,10 +1209,10 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
break;
case 59:
- *animation = 48;
+ *animation = kModelAnimationMcCoyTiedInChairFreed;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
- *animation = 19;
+ *animation = kModelAnimationMcCoyIdle;
_animationFrame = 0;
_animationLoopLength = 0;
_animationState = 0;
@@ -1222,17 +1222,17 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
break;
case 60:
- *animation = 41;
+ *animation = kModelAnimationMcCoySittingToUseConsole;
if (_animationFrame < Slice_Animation_Query_Number_Of_Frames(*animation) - 1) {
_animationFrame++;
}
break;
case 61:
- *animation = 41;
+ *animation = kModelAnimationMcCoySittingToUseConsole;
_animationFrame--;
if (_animationFrame <= 0) {
- *animation = 19;
+ *animation = kModelAnimationMcCoyIdle;
_animationFrame = 0;
_animationState = 0;
if (Actor_Query_Goal_Number(kActorMcCoy) == kGoalMcCoyNRxxSitAtTable) {
@@ -1242,17 +1242,17 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
break;
case 62:
- *animation = 42;
+ *animation = kModelAnimationMcCoyWithGunGrabbedByArm0;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = 0;
_animationState = 63;
- *animation = 43;
+ *animation = kModelAnimationMcCoyWithGunGrabbedByArm1;
}
break;
case 63:
- *animation = 43;
+ *animation = kModelAnimationMcCoyWithGunGrabbedByArm1;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = 0;
@@ -1260,43 +1260,43 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
break;
case 64:
- *animation = 44;
+ *animation = kModelAnimationMcCoyWithGunGrabbedByArmHurt;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = 0;
_animationState = 63;
- *animation = 43;
+ *animation = kModelAnimationMcCoyWithGunGrabbedByArm1;
}
break;
case 65:
- *animation = 45;
+ *animation = kModelAnimationMcCoyWithGunGrabbedByArmFreed;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = 0;
_animationState = 14;
- *animation = 0;
+ *animation = kModelAnimationMcCoyWithGunIdle;
Actor_Set_Goal_Number(kActorMcCoy, kGoalMcCoyDefault);
}
break;
case 66:
- *animation = 40;
+ *animation = kModelAnimationMcCoyGiveMovement;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
Actor_Change_Animation_Mode(kActorMcCoy, kAnimationModeIdle);
- *animation = 19;
+ *animation = kModelAnimationMcCoyIdle;
_animationFrame = 0;
_animationState = 0;
}
break;
case 67:
- *animation = 53;
+ *animation = kModelAnimationMcCoyDrinkingBooze;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
Actor_Change_Animation_Mode(kActorMcCoy, kAnimationModeIdle);
- *animation = 19;
+ *animation = kModelAnimationMcCoyIdle;
_animationState = 0;
_animationFrame = 0;
if (Actor_Query_Goal_Number(kActorMcCoy) == kGoalMcCoyNR04Drink) {
@@ -1306,7 +1306,7 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
break;
case 68:
- *animation = 18;
+ *animation = kModelAnimationMcCoyFallsOnHisBack;
v7 = Slice_Animation_Query_Number_Of_Frames(*animation) - 1 - Global_Variable_Query(kVariableNR01GetUpCounter);
if (_animationFrame < v7) {
_animationFrame++;
@@ -1315,7 +1315,7 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
}
if (_animationFrame <= 0) {
Actor_Change_Animation_Mode(kActorMcCoy, kAnimationModeIdle);
- *animation = 19;
+ *animation = kModelAnimationMcCoyIdle;
_animationState = 0;
_animationFrame = 0;
Game_Flag_Reset(kFlagNR01McCoyIsDrugged);
@@ -1326,16 +1326,16 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
break;
case 69:
- *animation = 50;
+ *animation = kModelAnimationMcCoyCrouchingDown;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
Actor_Change_Animation_Mode(kActorMcCoy, kAnimationModeSit);
- *animation = 51;
+ *animation = kModelAnimationMcCoyCrouchedIdle;
}
break;
case 70:
- *animation = 51;
+ *animation = kModelAnimationMcCoyCrouchedIdle;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
_animationFrame = 0;
@@ -1343,11 +1343,11 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
break;
case 71:
- *animation = 52;
+ *animation = kModelAnimationMcCoyCrouchedGetsUp;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
Actor_Change_Animation_Mode(kActorMcCoy, kAnimationModeIdle);
- *animation = 19;
+ *animation = kModelAnimationMcCoyIdle;
_animationFrame = 0;
_animationState = 0;
Player_Gains_Control();
diff --git a/engines/bladerunner/script/ai/rachael.cpp b/engines/bladerunner/script/ai/rachael.cpp
index 5045769a3b..49baab4dee 100644
--- a/engines/bladerunner/script/ai/rachael.cpp
+++ b/engines/bladerunner/script/ai/rachael.cpp
@@ -36,10 +36,32 @@ void AIScriptRachael::Initialize() {
_flag = true;
- Actor_Set_Goal_Number(kActorRachael, 0);
+ Actor_Set_Goal_Number(kActorRachael, kGoalRachaelDefault);
}
bool AIScriptRachael::Update() {
+ if (_vm->_cutContent) {
+ if (Global_Variable_Query(kVariableChapter) == 3) {
+ if (Actor_Query_Goal_Number(kActorRachael) == kGoalRachaelLeavesAfterTyrellMeeting) {
+ // Decide 50-50 whether Rachael will be encountered outside or in the elevator in Act 3
+ if (Random_Query(1,2 ) == 1) {
+ Actor_Set_Goal_Number(kActorRachael, kGoalRachaelShouldBeOutsideMcCoysAct3);
+ } else {
+ Actor_Set_Goal_Number(kActorRachael, kGoalRachaelShouldBeInElevatorMcCoysAct3);
+ }
+ return true;
+ }
+ } else if (Global_Variable_Query(kVariableChapter) == 4) {
+ if (Actor_Query_Goal_Number(kActorRachael) < 399) {
+ Actor_Set_Goal_Number(kActorRachael, kGoalRachaelAtEndOfAct3IfNotMetWithMcCoy);
+ return true;
+ }
+ } else if (Global_Variable_Query(kVariableChapter) > 4
+ && Actor_Query_Goal_Number(kActorRachael) != kGoalRachaelAtEndOfAct4) {
+ Actor_Set_Goal_Number(kActorRachael, kGoalRachaelAtEndOfAct4);
+ return true;
+ }
+ }
return false;
}
@@ -58,23 +80,20 @@ void AIScriptRachael::ReceivedClue(int clueId, int fromActorId) {
void AIScriptRachael::ClickedByPlayer() {
if (Actor_Query_Goal_Number(kActorRachael) == 305) {
Actor_Face_Actor(kActorMcCoy, kActorRachael, true);
- Actor_Says(kActorMcCoy, 2730, 12); // "Rachael, right?"
+ Actor_Says(kActorMcCoy, 2730, 12); // "Rachael, right?"
AI_Movement_Track_Pause(kActorRachael);
- dialogue_start(); // "I remember you mr McCoy" till "I'm fine, thank you for asking."
+ dialogue_start(); // "I remember you mr McCoy" till "I'm fine, thank you for asking."
- if (Player_Query_Agenda() == kPlayerAgendaSurly || Player_Query_Agenda() == kPlayerAgendaErratic) {
+ // the structure is simplified (maintaining the same logic flow)
+ if ((Player_Query_Agenda() == kPlayerAgendaSurly || Player_Query_Agenda() == kPlayerAgendaErratic)
+ || (Player_Query_Agenda() != kPlayerAgendaPolite && Actor_Query_Friendliness_To_Other(kActorSteele, kActorMcCoy) > Actor_Query_Friendliness_To_Other(kActorClovis, kActorMcCoy))
+ ){
dialogue_agenda2();
- } else if (Player_Query_Agenda()) {
- if (Actor_Query_Friendliness_To_Other(kActorSteele, kActorMcCoy) > Actor_Query_Friendliness_To_Other(kActorClovis, kActorMcCoy)) {
- dialogue_agenda2();
- } else {
- dialogue_agenda1();
- }
} else {
dialogue_agenda1();
}
- Actor_Set_Goal_Number(kActorRachael, 306);
+ Actor_Set_Goal_Number(kActorRachael, kGoalRachaelIsOutResumesWalkToPoliceHQAct3);
AI_Movement_Track_Unpause(kActorRachael);
}
}
@@ -113,26 +132,41 @@ int AIScriptRachael::GetFriendlinessModifierIfGetsClue(int otherActorId, int clu
bool AIScriptRachael::GoalChanged(int currentGoalNumber, int newGoalNumber) {
switch (newGoalNumber) {
- case 200:
+ case kGoalRachaelLeavesAfterTyrellMeeting:
AI_Movement_Track_Flush(kActorRachael);
AI_Movement_Track_Append(kActorRachael, 379, 0);
AI_Movement_Track_Append(kActorRachael, 39, 0);
AI_Movement_Track_Repeat(kActorRachael);
break;
- case 300:
- // Presumably Rachael's goal is set to 300
- // a) when Chapter 3 starts if McCoy met Rachael at Tyrell's during Chapter 2
- // OR b) after he has met her at Tyrell's if he makes the appointment during Chapter 3
- // It's unlikely to be connected to random chance
- //
+ case kGoalRachaelIsOutsideMcCoysBuildingAct4:
+ // added goal for restored content
+ // fall through
+ case kGoalRachaelIsOutsideMcCoysBuildingAct3:
// This puts Rachael outside McCoy's building
Actor_Put_In_Set(kActorRachael, kSetMA07);
Actor_Set_At_XYZ(kActorRachael, -8.09f, -162.8f, 135.33f, 544);
break;
- case 305:
- // Rachael's goal is set to 305 when the player walks in the MA07 scene and if her goal is already 300
+ case kGoalRachaelIsInsideElevatorStartTalkAct3:
+ // added goal for restored content
+ dialogue_start(); // "I remember you mr McCoy" till "I'm fine, thank you for asking."
+
+ // the structure is simplified (maintaining the same logic flow)
+ if ((Player_Query_Agenda() == kPlayerAgendaSurly || Player_Query_Agenda() == kPlayerAgendaErratic)
+ || (Player_Query_Agenda() != kPlayerAgendaPolite && Actor_Query_Friendliness_To_Other(kActorSteele, kActorMcCoy) > Actor_Query_Friendliness_To_Other(kActorClovis, kActorMcCoy))
+ ){
+ dialogue_agenda2();
+ } else {
+ dialogue_agenda1();
+ }
+ break;
+
+ case kGoalRachaelIsOutWalksToPoliceHQAct4:
+ // added goal for restored content
+ // fall through
+ case kGoalRachaelIsOutWalksToPoliceHQAct3:
+ // Rachael's goal is set to this when the player walks in the MA07 scene and if her goal is already kGoalRachaelIsOutsideMcCoysBuildingAct3
AI_Movement_Track_Flush(kActorRachael);
// This makes Rachael (who is right outside McCoy's building) head towards the Police Station (left)
AI_Movement_Track_Append(kActorRachael, 468, 0);
@@ -140,7 +174,13 @@ bool AIScriptRachael::GoalChanged(int currentGoalNumber, int newGoalNumber) {
AI_Movement_Track_Repeat(kActorRachael);
break;
- case 400:
+ case kGoalRachaelAtEndOfAct3IfNotMetWithMcCoy:
+ // added goal for restored content
+ // fall through
+ case kGoalRachaelAtEndOfAct4:
+ // added goal for restored content
+ // fall through
+ case kGoalRachaelAtEndOfAct3IfMetWithMcCoy:
Actor_Put_In_Set(kActorRachael, kSetFreeSlotG);
Actor_Set_At_Waypoint(kActorRachael, 39, 0);
break;
@@ -263,7 +303,7 @@ bool AIScriptRachael::UpdateAnimation(int *animation, int *frame) {
bool AIScriptRachael::ChangeAnimationMode(int mode) {
switch (mode) {
- case 0:
+ case kAnimationModeIdle:
if (_animationState >= 2 && _animationState <= 9) {
_flag = 1;
} else {
@@ -271,11 +311,11 @@ bool AIScriptRachael::ChangeAnimationMode(int mode) {
_animationFrame = 0;
}
break;
- case 1:
+ case kAnimationModeWalk:
_animationState = 1;
_animationFrame = 0;
break;
- case 3:
+ case kAnimationModeTalk:
_animationState = 2;
_animationFrame = 0;
_flag = 0;
@@ -345,81 +385,171 @@ void AIScriptRachael::FledCombat() {
}
void AIScriptRachael::dialogue_start() {
- Loop_Actor_Walk_To_Actor(kActorRachael, kActorMcCoy, 84, 0, false);
- Actor_Says(kActorRachael, 0, 15); // I remember you mr mcCoy
- Actor_Says(kActorMcCoy, 2740, 13);
- Actor_Says(kActorRachael, 10, 14);
- Actor_Says(kActorMcCoy, 2745, 13);
- Actor_Says(kActorRachael, 20, 12); // perhaps none of your business
- Actor_Says_With_Pause(kActorMcCoy, 2750, 1.5f, 3); // ok I get the picture (also assumed that here goes 2755: are you alright?)
- Actor_Says(kActorRachael, 30, 13); // certainly had better days but i'm fine
- Actor_Says(kActorRachael, 40, 15); // Thank you for asking
+ if (_vm->_cutContent) {
+ Actor_Face_Actor(kActorRachael, kActorMcCoy, true);
+ Loop_Actor_Walk_To_Actor(kActorRachael, kActorMcCoy, 84, 0, false);
+ if(_vm->_cutContent) {
+ Actor_Says(kActorMcCoy, 2735, 14); // MetAtYourUnclesOffice
+ }
+ Actor_Says(kActorRachael, 0, 15); // RememberYouMisterMcCoy
+ Actor_Says(kActorMcCoy, 2740, 13); // YouLiveHereSameBuilding
+ Actor_Says(kActorRachael, 10, 14); // VisitingSomebody
+ Actor_Says(kActorMcCoy, 2745, 13); // WhoMaybeIKnowHim
+ Actor_Says(kActorRachael, 20, 12); // NoneOfYourBusiness
+ Actor_Says_With_Pause(kActorMcCoy, 2750, 1.5f, 3); // OkGetThePicture
+ Actor_Says(kActorMcCoy, 2755, 3); // AreYouAlrightALittlePale
+ Actor_Says(kActorRachael, 30, 13); // CertainlyHadBetterDaysInMyLifeButImFine
+ Actor_Says(kActorRachael, 40, 15); // ThankYouForAsking
+ } else {
+ // original code -- un-triggered
+ Loop_Actor_Walk_To_Actor(kActorRachael, kActorMcCoy, 84, 0, false);
+ Actor_Says(kActorRachael, 0, 15); // I remember you mr mcCoy
+ Actor_Says(kActorMcCoy, 2740, 13);
+ Actor_Says(kActorRachael, 10, 14);
+ Actor_Says(kActorMcCoy, 2745, 13);
+ Actor_Says(kActorRachael, 20, 12); // perhaps none of your business
+ Actor_Says_With_Pause(kActorMcCoy, 2750, 1.5f, 3); // ok I get the picture
+ Actor_Says(kActorRachael, 30, 13); // certainly had better days but i'm fine
+ Actor_Says(kActorRachael, 40, 15); // Thank you for asking
+ }
}
void AIScriptRachael::dialogue_agenda1() {
- Actor_Says(kActorMcCoy, 2795, 13); // You are upset
- Actor_Says(kActorRachael, 140, 15); // How observant
- Actor_Says(kActorMcCoy, 2800, 12); // Whats the matter good listener
- Actor_Says(kActorRachael, 150, 16); // ImSureYouAreMrMcCoyDontFeelLike
- Actor_Says(kActorMcCoy, 2805, 18); // DidYourUncleSaySomethingToYou
- Actor_Says(kActorRachael, 160, 14); // HeCanBeSoCruel
- Actor_Says(kActorRachael, 170, 13); // HereIAmPouringMyHeartOut
- Actor_Says(kActorMcCoy, 2810, 14); // NotHowILookAtIt
- Actor_Says(kActorRachael, 180, 13); // GotToLiveWithYourself
- Actor_Says(kActorMcCoy, 2815, 12); // NotSomeKillingMachineRachael
- Actor_Says(kActorMcCoy, 2820, 13); //
- Actor_Says(kActorRachael, 190, 15); // WhyDontYouQuitThen
- Actor_Says(kActorMcCoy, 2825, 12); // SomeoneWouldJustTakeMyPlace
- Actor_Says(kActorRachael, 200, 15); // SoMuchForIntegrity
- Actor_Says(kActorMcCoy, 2830, 14); // ItsNotThat
- Actor_Says(kActorRachael, 210, 15); // ItsTheMoneyThen
- Actor_Says(kActorRachael, 220, 16); // ImSoFedUpWithAllOfIt
- Actor_Says(kActorMcCoy, 2835, 13); // IveThinkingAboutTheTreatmentOfReps
- Actor_Says(kActorRachael, 230, 14); // BravoShouldWeCallThePressConf
- Actor_Says(kActorMcCoy, 2840, 12); // MaybeTheyVeGottenARawDeal
- Actor_Says(kActorRachael, 240, 13); // ImagineSomebodyEngineeringYourMind
- Actor_Says(kActorRachael, 250, 15); // PuttingWhateverThoughtsAndMemories
- Actor_Says(kActorRachael, 260, 16); // NothingInThisWorldWouldBelongToyou
- Actor_Says(kActorMcCoy, 2845, 13); // No
- Actor_Says(kActorRachael, 270, 13); // ThinkAboutItMcCoy
- Actor_Says(kActorRachael, 280, 14); // MaybeYouArentSoDifferentFromThoseRepsAfterAll
- Actor_Says(kActorMcCoy, 2850, 13); // ISupposeAllRepsInOneWayOrAnother
- Actor_Says(kActorRachael, 290, 14); // ThatsRight
- Actor_Says_With_Pause(kActorRachael, 300, 1.0f, 3); // GoodbyeMcCoy + (isn't this your floor - missing?)
- Actor_Says(kActorMcCoy, 2860, 14); // YouTakeCareOfYourself
+ // polite or Rep friendly case
+ if (_vm->_cutContent) {
+ Actor_Says(kActorMcCoy, 2795, 13); // YouAreUpset
+ Actor_Says(kActorRachael, 140, 15); // HowObservant
+ Actor_Says(kActorMcCoy, 2800, 12); // WhatTheMatterGoodListener
+ Actor_Says(kActorRachael, 150, 16); // HowObservant
+ Actor_Says(kActorMcCoy, 2805, 18); // DidYourUncleSaySomethingToYou
+ Actor_Says(kActorRachael, 160, 14); // HeCanBeSoCruel
+ Actor_Says(kActorRachael, 170, 13); // HereIAmPouringMyHeartOut
+ Actor_Says(kActorMcCoy, 2810, 14); // NotHowILookAtIt
+ Actor_Says(kActorRachael, 180, 13); // GotToLiveWithYourself
+ Actor_Says(kActorMcCoy, 2815, 12); // NotSomeKillingMachineRachael
+ Actor_Says(kActorMcCoy, 2820, 13); // LatelyReEvalTheJobDontLikeItNeverHave - I've thought ab... Well lately reevaluating the job dont like it
+ Actor_Says(kActorRachael, 190, 15); // WhyDontYouQuitThen
+ Actor_Says(kActorMcCoy, 2825, 12); // SomeoneWouldJustTakeMyPlace
+ Actor_Says(kActorRachael, 200, 15); // SoMuchForIntegrity
+ Actor_Says(kActorMcCoy, 2830, 14); // ItsNotThat
+ Actor_Says(kActorRachael, 210, 15); // ItsTheMoneyThen
+ Actor_Says(kActorRachael, 220, 16); // ImSoFedUpWithAllOfIt
+ Actor_Says(kActorMcCoy, 2835, 13); // IveThinkingAboutTheTreatmentOfReps
+ Actor_Says(kActorRachael, 230, 14); // BravoShouldWeCallThePressConf - new switched to here
+ Actor_Says(kActorMcCoy, 2840, 12); // MaybeTheyVeGottenARawDeal
+ Actor_Says(kActorRachael, 240, 13); // ImagineSomebodyEngineeringYourMind
+ Actor_Says(kActorRachael, 250, 15); // PuttingWhateverThoughtsAndMemories
+ Actor_Says(kActorRachael, 260, 16); // NothingInThisWorldWouldBelongToyou
+ Actor_Says(kActorMcCoy, 2845, 13); // No
+ Actor_Says(kActorRachael, 270, 13); // ThinkAboutItMcCoy
+ Actor_Says(kActorRachael, 280, 14); // MaybeYouArentSoDifferentFromThoseRepsAfterAll
+ Actor_Says(kActorMcCoy, 2850, 13); // ISupposeAllRepsInOneWayOrAnother
+ Actor_Says(kActorMcCoy, 2855, 14); // ProgrammedToDoThingsThinkThings
+ Actor_Says(kActorRachael, 290, 14); // ThatsRight
+ if (Actor_Query_In_Set(kActorRachael, kSetMA07)) {
+ Actor_Says_With_Pause(kActorRachael, 300, 1.0f, 3); // GoodbyeMcCoy
+ Actor_Says(kActorMcCoy, 2860, 14); // YouTakeCareOfYourself
+ }
+ } else {
+ // original code
+ Actor_Says(kActorMcCoy, 2795, 13); // You are upset
+ Actor_Says(kActorRachael, 140, 15); // How observant
+ Actor_Says(kActorMcCoy, 2800, 12); // Whats the matter good listener
+ Actor_Says(kActorRachael, 150, 16); // ImSureYouAreMrMcCoyDontFeelLike
+ Actor_Says(kActorMcCoy, 2805, 18); // DidYourUncleSaySomethingToYou
+ Actor_Says(kActorRachael, 160, 14); // HeCanBeSoCruel
+ Actor_Says(kActorRachael, 170, 13); // HereIAmPouringMyHeartOut
+ Actor_Says(kActorMcCoy, 2810, 14); // NotHowILookAtIt
+ Actor_Says(kActorRachael, 180, 13); // GotToLiveWithYourself
+ Actor_Says(kActorMcCoy, 2815, 12); // NotSomeKillingMachineRachael
+ Actor_Says(kActorMcCoy, 2820, 13); //
+ Actor_Says(kActorRachael, 190, 15); // WhyDontYouQuitThen
+ Actor_Says(kActorMcCoy, 2825, 12); // SomeoneWouldJustTakeMyPlace
+ Actor_Says(kActorRachael, 200, 15); // SoMuchForIntegrity
+ Actor_Says(kActorMcCoy, 2830, 14); // ItsNotThat
+ Actor_Says(kActorRachael, 210, 15); // ItsTheMoneyThen
+ Actor_Says(kActorRachael, 220, 16); // ImSoFedUpWithAllOfIt
+ Actor_Says(kActorMcCoy, 2835, 13); // IveThinkingAboutTheTreatmentOfReps
+ Actor_Says(kActorRachael, 230, 14); // BravoShouldWeCallThePressConf
+ Actor_Says(kActorMcCoy, 2840, 12); // MaybeTheyVeGottenARawDeal
+ Actor_Says(kActorRachael, 240, 13); // ImagineSomebodyEngineeringYourMind
+ Actor_Says(kActorRachael, 250, 15); // PuttingWhateverThoughtsAndMemories
+ Actor_Says(kActorRachael, 260, 16); // NothingInThisWorldWouldBelongToyou
+ Actor_Says(kActorMcCoy, 2845, 13); // No
+ Actor_Says(kActorRachael, 270, 13); // ThinkAboutItMcCoy
+ Actor_Says(kActorRachael, 280, 14); // MaybeYouArentSoDifferentFromThoseRepsAfterAll
+ Actor_Says(kActorMcCoy, 2850, 13); // ISupposeAllRepsInOneWayOrAnother
+ Actor_Says(kActorRachael, 290, 14); // ThatsRight
+ Actor_Says_With_Pause(kActorRachael, 300, 1.0f, 3); // GoodbyeMcCoy
+ Actor_Says(kActorMcCoy, 2860, 14); // YouTakeCareOfYourself
+ }
}
void AIScriptRachael::dialogue_agenda2() {
- Actor_Says(kActorRachael, 50, 15); // I don't think he'd appreciate being called that
- Actor_Says(kActorMcCoy, 2765, 16); // Oh i'm sure brilliant man
- Actor_Says(kActorMcCoy, 2770, 17); // anyone who could create nexus -6
- Actor_Says(kActorRachael, 60, 14); // keeping people like you employed
- Actor_Says(kActorMcCoy, 2775, 16); // IdJustAsSoonNotDoThisJob
- Actor_Says(kActorRachael, 70, 13); // do you really expect me to believe that
- Actor_Says(kActorRachael, 80, 14); // ISawThatLookInYourEye
- Actor_Says(kActorRachael, 90, 15); // LikeNothingButToKillInnocentPeople
- Actor_Says(kActorMcCoy, 2780, 17); // ReplicantsArentPeople
- Actor_Says(kActorRachael, 100, 16); // CertainlyAreMoreInnocentThanMostPeople
- Actor_Says(kActorRachael, 110, 15); // TheyDidntAskToBeBroughtIntoThisWorld
- Actor_Says(kActorMcCoy, 2785, 17); // NobodyDoes
- Actor_Says(kActorRachael, 120, 13); // ThatsRightAndNobodyHasALicenseTokillHumans
- Actor_Says(kActorMcCoy, 2790, 16); // Aha
- Actor_Says(kActorRachael, 130, 14); // ButReplicantsHowHumain
- Actor_Says_With_Pause(kActorRachael, 300, 1.0f, 3); // GoodbyeMcCoy + (isn't this your floor - missing?)
- Actor_Says(kActorMcCoy, 2860, 14); // YouTakeCareOfYourself
+ // surly/erratic or human friendly case
+ if (_vm->_cutContent) {
+ Actor_Says(kActorMcCoy, 2760, 14); // InterestingGuyYourUncleCharacterator-Rachael
+ Actor_Says(kActorRachael, 50, 15); // IDontThinkHeDAppreciateBeingCalledThat new anim 15
+ Actor_Says(kActorMcCoy, 2765, 16); // ImSureHeIsABrilliantMan new anim 16
+ Actor_Says(kActorMcCoy, 2770, 17); // AnyoneWhoCouldCreateNexus6StateOfArt new anim 17
+ Actor_Says(kActorRachael, 60, 14); // KeepingPeopleLikeYouEmployedIsntHe
+ Actor_Says(kActorMcCoy, 2775, 16); // IdJustAsSoonNotDoThisJob.
+ Actor_Says(kActorRachael, 70, 13); // DoYouReallyExpectMeToBelieveThat
+ Actor_Says(kActorRachael, 80, 14); // ISawThatLookInYourEye
+ Actor_Says(kActorRachael, 90, 15); // LikeNothingButToKillInnocentPeople
+ Actor_Says(kActorMcCoy, 2780, 17); // ReplicantsArentPeople
+ Actor_Says(kActorRachael, 100, 16); // CertainlyAreMoreInnocentThanMostPeople
+ Actor_Says(kActorRachael, 110, 15); // TheyDidntAskToBeBroughtIntoThisWorld
+ Actor_Says(kActorMcCoy, 2785, 17); // NobodyDoes
+ Actor_Says(kActorRachael, 120, 13); // ThatsRightAndNobodyHasALicenseTokillHumans
+ Actor_Says(kActorMcCoy, 2790, 18); // Aha
+ Actor_Says(kActorRachael, 130, 14); // ButReplicantsHowHumain
+ if (Actor_Query_In_Set(kActorRachael, kSetMA07)) {
+ Actor_Says_With_Pause(kActorRachael, 300, 1.0f, 3); // GoodbyeMcCoy
+ Actor_Says(kActorMcCoy, 2860, 14); // YouTakeCareOfYourself
+ }
+ } else {
+ // original code - missing some quotes or removing some quotes to make it fit better
+ Actor_Says(kActorRachael, 50, 15); // I don't think he'd appreciate being called that
+ Actor_Says(kActorMcCoy, 2765, 16); // Oh i'm sure brilliant man
+ Actor_Says(kActorMcCoy, 2770, 17); // anyone who could create nexus -6
+ Actor_Says(kActorRachael, 60, 14); // keeping people like you employed
+ Actor_Says(kActorMcCoy, 2775, 16); // IdJustAsSoonNotDoThisJob
+ Actor_Says(kActorRachael, 70, 13); // do you really expect me to believe that
+ Actor_Says(kActorRachael, 80, 14); // ISawThatLookInYourEye
+ Actor_Says(kActorRachael, 90, 15); // LikeNothingButToKillInnocentPeople
+ Actor_Says(kActorMcCoy, 2780, 17); // ReplicantsArentPeople
+ Actor_Says(kActorRachael, 100, 16); // CertainlyAreMoreInnocentThanMostPeople
+ Actor_Says(kActorRachael, 110, 15); // TheyDidntAskToBeBroughtIntoThisWorld
+ Actor_Says(kActorMcCoy, 2785, 17); // NobodyDoes
+ Actor_Says(kActorRachael, 120, 13); // ThatsRightAndNobodyHasALicenseTokillHumans
+ Actor_Says(kActorMcCoy, 2790, 16); // Aha
+ Actor_Says(kActorRachael, 130, 14); // ButReplicantsHowHumain
+ Actor_Says_With_Pause(kActorRachael, 300, 1.0f, 3); // GoodbyeMcCoy
+ Actor_Says(kActorMcCoy, 2860, 14); // YouTakeCareOfYourself
+ }
}
// Not used in the game
void AIScriptRachael::dialogue_agenda3() {
Actor_Says(kActorMcCoy, 2865, 3); // Lobby
+ if (_vm->_cutContent) {
+ Game_Flag_Set(kFlagMA06toMA07);
+ Ambient_Sounds_Add_Looping_Sound(kSfxSPINUP1, 75, 0, 1);
+ Delay(500);
+ Actor_Face_Actor(kActorRachael, kActorMcCoy, true);
+ }
Actor_Says(kActorRachael, 320, 3); // McCoy
Actor_Says(kActorRachael, 330, 3); // RachaelRememberMe
+ if (_vm->_cutContent) {
+ Actor_Face_Actor(kActorMcCoy, kActorRachael, true);
+ }
Actor_Says(kActorMcCoy, 2870, 3); // Jesus DontKnowWhatIRememberAnyMore
Actor_Says(kActorRachael, 340, 3); // NowYouLookInTrouble
Actor_Says(kActorMcCoy, 2875, 3); // Saw me here before
Actor_Says(kActorRachael, 350, 3); // YesWhatHappened
Actor_Says(kActorMcCoy, 2880, 3); // Suddenly
- Actor_Says(kActorMcCoy, 2885, 3); // MyAnimalMaggiePrizedPosessionDisappeared-Elevator-Rachael
+ Actor_Says(kActorMcCoy, 2885, 3); // MyAnimalMaggiePrizedPosessionDisappeared
Actor_Says(kActorRachael, 360, 3); // ImSorry
Actor_Says(kActorRachael, 370, 3); // IKnowTheFeeling
Actor_Says(kActorMcCoy, 2890, 3); // You do?
@@ -430,16 +560,16 @@ void AIScriptRachael::dialogue_agenda3() {
Actor_Says(kActorRachael, 410, 3); // ThatsRightAndInTheBlinkOfAnEyeGoesAway
Actor_Says(kActorMcCoy, 2900, 3); // But just yesterday
Actor_Says(kActorRachael, 420, 3); // YesterdayTwoMonthsAgo
- Actor_Says(kActorMcCoy, 2905, 3); // ButIfWeBothRemembered-Elevator-Rachael
+ Actor_Says(kActorMcCoy, 2905, 3); // ButIfWeBothRemembered
Actor_Says(kActorRachael, 430, 3); // CopiesOnlyCopies
Actor_Says(kActorRachael, 440, 3); // OnlyThingWeCanTrustIsNow
- Actor_Says(kActorMcCoy, 2910, 3); // NotLosingMyMindEscapedReplicant-Elevator-Rachael
- Actor_Says(kActorMcCoy, 2920, 3); // SomeoneSettingMeUpUsingMe-Elevator-Rachael
+ Actor_Says(kActorMcCoy, 2910, 3); // NotLosingMyMindEscapedReplicant
+ Actor_Says(kActorMcCoy, 2920, 3); // SomeoneSettingMeUpUsingMe
Actor_Says(kActorRachael, 450, 3); // NothingWrongWithAcceptingWhatYouAre
- Actor_Says(kActorMcCoy, 2925, 3); // NotAReplicantGoddamnit-Elevator-Rachael
- Actor_Says(kActorMcCoy, 2930, 3); // MaybeYouCanHelpMeYouAreTyrellsNiece-Elevator-Rachael
+ Actor_Says(kActorMcCoy, 2925, 3); // NotAReplicantGoddamnit
+ Actor_Says(kActorMcCoy, 2930, 3); // MaybeYouCanHelpMeYouAreTyrellsNiece
Actor_Says(kActorRachael, 460, 3); // Why not take that V-K test
- Actor_Says(kActorMcCoy, 2935, 3); // YeahGoodIdeaMaybeIllDoThat-Elevator-Rachael
+ Actor_Says(kActorMcCoy, 2935, 3); // YeahGoodIdeaMaybeIllDoThat
Actor_Says(kActorRachael, 470, 3); // Hope you get the answers looking for McCoy.
}