aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Kohaut2019-01-21 21:57:44 +0100
committerPeter Kohaut2019-01-21 22:03:01 +0100
commit364a2aa0fbe1c6640fdaeb15cfd7cc66fd9e4a42 (patch)
treed0eabbce85750bdefe3d8a8182cbf228cd751dca
parent43a3eed2b2af3db6723d45d5379876a99693a7b8 (diff)
downloadscummvm-rg350-364a2aa0fbe1c6640fdaeb15cfd7cc66fd9e4a42.tar.gz
scummvm-rg350-364a2aa0fbe1c6640fdaeb15cfd7cc66fd9e4a42.tar.bz2
scummvm-rg350-364a2aa0fbe1c6640fdaeb15cfd7cc66fd9e4a42.zip
BLADERUNNER: More game constants
Added Region_Check functionality Code cleanup
-rw-r--r--engines/bladerunner/actor.cpp4
-rw-r--r--engines/bladerunner/game_constants.h209
-rw-r--r--engines/bladerunner/script/ai/clovis.cpp22
-rw-r--r--engines/bladerunner/script/ai/dektora.cpp19
-rw-r--r--engines/bladerunner/script/ai/hawkers_barkeep.cpp137
-rw-r--r--engines/bladerunner/script/ai/holloway.cpp4
-rw-r--r--engines/bladerunner/script/ai/insect_dealer.cpp6
-rw-r--r--engines/bladerunner/script/ai/izo.cpp263
-rw-r--r--engines/bladerunner/script/ai/lucy.cpp14
-rw-r--r--engines/bladerunner/script/ai/mccoy.cpp27
-rw-r--r--engines/bladerunner/script/ai/runciter.cpp24
-rw-r--r--engines/bladerunner/script/ai/sadik.cpp43
-rw-r--r--engines/bladerunner/script/ai/steele.cpp171
-rw-r--r--engines/bladerunner/script/scene/ar01.cpp115
-rw-r--r--engines/bladerunner/script/scene/ar02.cpp169
-rw-r--r--engines/bladerunner/script/scene/bb01.cpp2
-rw-r--r--engines/bladerunner/script/scene/bb02.cpp4
-rw-r--r--engines/bladerunner/script/scene/bb03.cpp6
-rw-r--r--engines/bladerunner/script/scene/bb04.cpp4
-rw-r--r--engines/bladerunner/script/scene/bb05.cpp32
-rw-r--r--engines/bladerunner/script/scene/bb06.cpp14
-rw-r--r--engines/bladerunner/script/scene/bb07.cpp12
-rw-r--r--engines/bladerunner/script/scene/bb08.cpp4
-rw-r--r--engines/bladerunner/script/scene/bb09.cpp4
-rw-r--r--engines/bladerunner/script/scene/bb10.cpp6
-rw-r--r--engines/bladerunner/script/scene/bb11.cpp4
-rw-r--r--engines/bladerunner/script/scene/bb12.cpp10
-rw-r--r--engines/bladerunner/script/scene/bb51.cpp4
-rw-r--r--engines/bladerunner/script/scene/ct01.cpp6
-rw-r--r--engines/bladerunner/script/scene/ct02.cpp6
-rw-r--r--engines/bladerunner/script/scene/ct03.cpp24
-rw-r--r--engines/bladerunner/script/scene/ct04.cpp6
-rw-r--r--engines/bladerunner/script/scene/ct05.cpp10
-rw-r--r--engines/bladerunner/script/scene/ct06.cpp14
-rw-r--r--engines/bladerunner/script/scene/ct07.cpp24
-rw-r--r--engines/bladerunner/script/scene/ct08.cpp8
-rw-r--r--engines/bladerunner/script/scene/ct09.cpp10
-rw-r--r--engines/bladerunner/script/scene/ct10.cpp2
-rw-r--r--engines/bladerunner/script/scene/ct11.cpp4
-rw-r--r--engines/bladerunner/script/scene/ct12.cpp10
-rw-r--r--engines/bladerunner/script/scene/ct51.cpp2
-rw-r--r--engines/bladerunner/script/scene/dr01.cpp4
-rw-r--r--engines/bladerunner/script/scene/dr04.cpp2
-rw-r--r--engines/bladerunner/script/scene/dr05.cpp2
-rw-r--r--engines/bladerunner/script/scene/hc01.cpp199
-rw-r--r--engines/bladerunner/script/scene/hc02.cpp83
-rw-r--r--engines/bladerunner/script/scene/hc03.cpp100
-rw-r--r--engines/bladerunner/script/scene/hc04.cpp185
-rw-r--r--engines/bladerunner/script/scene/hf01.cpp50
-rw-r--r--engines/bladerunner/script/scene/hf02.cpp4
-rw-r--r--engines/bladerunner/script/scene/hf03.cpp10
-rw-r--r--engines/bladerunner/script/scene/hf04.cpp2
-rw-r--r--engines/bladerunner/script/scene/hf05.cpp91
-rw-r--r--engines/bladerunner/script/scene/hf06.cpp20
-rw-r--r--engines/bladerunner/script/scene/hf07.cpp16
-rw-r--r--engines/bladerunner/script/scene/kp01.cpp12
-rw-r--r--engines/bladerunner/script/scene/kp02.cpp8
-rw-r--r--engines/bladerunner/script/scene/kp03.cpp12
-rw-r--r--engines/bladerunner/script/scene/kp04.cpp4
-rw-r--r--engines/bladerunner/script/scene/kp05.cpp6
-rw-r--r--engines/bladerunner/script/scene/kp06.cpp10
-rw-r--r--engines/bladerunner/script/scene/kp07.cpp2
-rw-r--r--engines/bladerunner/script/scene/ma04.cpp4
-rw-r--r--engines/bladerunner/script/scene/ma07.cpp4
-rw-r--r--engines/bladerunner/script/scene/nr01.cpp10
-rw-r--r--engines/bladerunner/script/scene/nr02.cpp12
-rw-r--r--engines/bladerunner/script/scene/nr03.cpp38
-rw-r--r--engines/bladerunner/script/scene/nr04.cpp6
-rw-r--r--engines/bladerunner/script/scene/nr05.cpp8
-rw-r--r--engines/bladerunner/script/scene/nr06.cpp4
-rw-r--r--engines/bladerunner/script/scene/nr07.cpp2
-rw-r--r--engines/bladerunner/script/scene/nr08.cpp2
-rw-r--r--engines/bladerunner/script/scene/nr09.cpp2
-rw-r--r--engines/bladerunner/script/scene/nr10.cpp4
-rw-r--r--engines/bladerunner/script/scene/nr11.cpp12
-rw-r--r--engines/bladerunner/script/scene/ps01.cpp4
-rw-r--r--engines/bladerunner/script/scene/ps02.cpp2
-rw-r--r--engines/bladerunner/script/scene/ps03.cpp6
-rw-r--r--engines/bladerunner/script/scene/ps04.cpp4
-rw-r--r--engines/bladerunner/script/scene/ps06.cpp2
-rw-r--r--engines/bladerunner/script/scene/ps09.cpp46
-rw-r--r--engines/bladerunner/script/scene/ps10.cpp211
-rw-r--r--engines/bladerunner/script/scene/ps11.cpp238
-rw-r--r--engines/bladerunner/script/scene/ps12.cpp228
-rw-r--r--engines/bladerunner/script/scene/ps13.cpp206
-rw-r--r--engines/bladerunner/script/scene/rc01.cpp24
-rw-r--r--engines/bladerunner/script/scene/rc02.cpp220
-rw-r--r--engines/bladerunner/script/scene/rc03.cpp67
-rw-r--r--engines/bladerunner/script/scene/tb02.cpp6
-rw-r--r--engines/bladerunner/script/scene/tb03.cpp4
-rw-r--r--engines/bladerunner/script/scene/tb05.cpp18
-rw-r--r--engines/bladerunner/script/scene/tb06.cpp10
-rw-r--r--engines/bladerunner/script/scene/tb07.cpp2
-rw-r--r--engines/bladerunner/script/scene/ug01.cpp66
-rw-r--r--engines/bladerunner/script/scene/ug02.cpp180
-rw-r--r--engines/bladerunner/script/scene/ug03.cpp4
-rw-r--r--engines/bladerunner/script/scene/ug04.cpp2
-rw-r--r--engines/bladerunner/script/scene/ug05.cpp44
-rw-r--r--engines/bladerunner/script/scene/ug06.cpp6
-rw-r--r--engines/bladerunner/script/scene/ug07.cpp6
-rw-r--r--engines/bladerunner/script/scene/ug08.cpp2
-rw-r--r--engines/bladerunner/script/scene/ug09.cpp4
-rw-r--r--engines/bladerunner/script/scene/ug10.cpp125
-rw-r--r--engines/bladerunner/script/scene/ug12.cpp4
-rw-r--r--engines/bladerunner/script/scene/ug13.cpp4
-rw-r--r--engines/bladerunner/script/scene/ug14.cpp6
-rw-r--r--engines/bladerunner/script/scene/ug15.cpp8
-rw-r--r--engines/bladerunner/script/scene/ug16.cpp6
-rw-r--r--engines/bladerunner/script/scene/ug17.cpp4
-rw-r--r--engines/bladerunner/script/scene/ug18.cpp14
-rw-r--r--engines/bladerunner/script/scene/ug19.cpp4
-rw-r--r--engines/bladerunner/script/scene_script.cpp16
-rw-r--r--engines/bladerunner/script/scene_script.h41
-rw-r--r--engines/bladerunner/script/script.cpp10
-rw-r--r--engines/bladerunner/script/script.h2
115 files changed, 2332 insertions, 1913 deletions
diff --git a/engines/bladerunner/actor.cpp b/engines/bladerunner/actor.cpp
index 66f2e7a6bb..c9528cf2ef 100644
--- a/engines/bladerunner/actor.cpp
+++ b/engines/bladerunner/actor.cpp
@@ -562,9 +562,7 @@ bool Actor::tick(bool forceDraw, Common::Rect *screenRect) {
int newAnimation = 0, newFrame = 0;
_vm->_aiScripts->updateAnimation(_id, &newAnimation, &newFrame);
- if (newFrame < 0) {
- assert(newFrame >= 0);
- }
+ assert(newFrame >= 0);
if (_animationId != newAnimation) {
if (_fps != 0 && _fps != -1) {
diff --git a/engines/bladerunner/game_constants.h b/engines/bladerunner/game_constants.h
index 31851c91f3..52ef19ce58 100644
--- a/engines/bladerunner/game_constants.h
+++ b/engines/bladerunner/game_constants.h
@@ -440,7 +440,7 @@ enum SpinnerDestinations {
enum Flags {
kFlagNotUsed0 = 0, // is never checked
- kFlagRC02Discovered = 1,
+ kFlagRC02Entered = 1,
// 2 is never used
kFlagGotOfficersStatement = 3,
kFlagRC02FirstLeave = 4,
@@ -545,7 +545,7 @@ enum Flags {
kFlagNotUsed103 = 103, // is never set
kFlagKleinTalkPaintTransfer = 104,
kFlagKleinTalkChromeDebris = 105,
- kFlagIsabellaIntroduced = 105,
+ kFlagIsabellaIntroduced = 106,
kFlagHC04toRC03 = 107,
kFlagRC03toHC04 = 108,
kFlagHC04toHC02 = 109,
@@ -580,7 +580,7 @@ enum Flags {
kFlagKleinInsulted = 138,
// 139 is never used
// 140 is never used
- kFlagRC02LucyDeskAvailable = 141,
+ kFlagRC51Available = 141,
kFlagNotUsed142 = 142, // is never checked
// 143 is never used
kFlagCT07toCT06 = 144,
@@ -736,8 +736,14 @@ enum Flags {
kFlagGaffSpinnerCT12 = 294,
kFlagRC04BobShootMcCoy = 295,
kFlagRC04McCoyCombatMode = 296,
-
+ kFlagBB05toBB06 = 297,
+ kFlagBB06toBB05 = 298,
+ kFlagBB05toBB07 = 299,
+ kFlagBB07toBB05 = 300,
+ kFlagBB05toBB12 = 301, // is never checked
+ kFlagBB12toBB05 = 302,
kFlagRC04McCoyWarned = 303,
+ kFlagCT11toCT09 = 304, // is never checked
kFlagRC04BobTalkAmmo = 305,
kFlagNotUsed306 = 306, // is never set
kFlagSpinnerAtTB02 = 307,
@@ -757,12 +763,47 @@ enum Flags {
kFlagAR02toAR01 = 321,
kFlagAR01toHC01 = 322,
kFlagHC01toAR01 = 323,
+ kFlagUG01SteamOff = 324,
+
+ kFlagFishDealerTalk = 328,
+ kFlagInsectDealerInterviewed = 329,
+ kFlagHassanTalk = 330,
+ kFlagScorpionsChecked = 331,
+
+ kFlagInsectDealerTalk = 366,
+ kFlagStungByScorpion = 367,
+
+ kFlagNotUsed370 = 370, // is never checked
+
kFlagDirectorsCut = 378,
+
+ kFlagHC01toHC02 = 384,
+ kFlagHC02toHC01 = 385,
+ kFlagHC01toHC03 = 386, // is never checked
+ kFlagHC03toHC01 = 387,
+ kFlagHC03TrapDoorOpen = 388,
+ // 389 is never used
+ // 390 is never used
+
KFlagMcCoyAndOfficerLearyTalking = 392,
+
KFlagMcCoyAndOfficerLearyArtMetaphor = 397,
+
+ kFlagIzoTalk1 = 400,
+ kFlagIzoTalk2 = 401,
+ kFlagHC03Available = 402,
+ kFlagHC03CageOpen = 403,
+ kFlagHawkersBarkeepIntroduction = 404,
+ kFlagHawkersBarkeepBraceletTalk = 405,
+
+ kFlagUnused407 = 407, // is never checked
+
kFlagUG09toCT12 = 432,
kFlagCT12ToUG09 = 433,
kFlagGenericWalkerWaiting = 443,
+ kFlagIzoShot = 444,
+
+ kFlagUG02WeaponsChecked = 449,
kFlagTB02ElevatorToTB05 = 450,
kFlagTB05Entered = 451,
kFlagTB02GuardTalk1 = 453,
@@ -773,12 +814,17 @@ enum Flags {
kFlagMaggieIsHurt = 461,
kFlagPS04GuzzaLeft = 462,
kFlagMcCoyArrested = 465,
+ kFlagUG10GateOpen = 474,
kFlagMcCoyAtPS03 = 478, // has no use
kFlagMcCoyAtHCxx = 479,
kFlagTB06Introduction = 483,
kFlagPhotographerToTB06 = 485,
+ kFlagDNARowAvailable = 486,
kFlagKIAPrivacyAddon = 487,
kFlagCT04HomelessTrashFinish = 492,
+ kFlagUG02FromUG01 = 498,
+ kFlagUG02Interactive = 499,
+
kFlagDR05ExplodedEntered = 511,
kFlagDR05BombExplosionView = 515,
kFlagCT07ZubenAttack = 516,
@@ -789,21 +835,27 @@ enum Flags {
kFlagMcCoySleeping = 647,
kFlagPhoneMessageFromClovis = 649,
kFlagPhoneMessageFromLucy = 650,
+ kFlagRagiationGooglesTaken = 656,
+ kFlagDNARowAvailableTalk = 660,
kFlagChapter2Intro = 678,
kFlagPS05TV0 = 688,
kFlagPS05TV1 = 689,
kFlagPS05TV2 = 690,
kFlagPS05TV3 = 691,
kFlagPS05TV4 = 692,
+ kFlagUG03DeadHomeless = 693,
kFlagRC04Locked = 702,
kFlagTB06PhotographTalk1 = 707,
+ kFlagUG02AmmoTaken = 708,
kFlagRC51Discovered = 709,
+ kFlagAR01Entered = 710,
kFlagMA04WatchedTV = 711,
kFlagMcCoyShotAtZuben = 712,
kFlagRC04BobTalk3 = 717,
kFlagCT02McCoyFell = 719,
kFlagCT02McCoyCombatReady = 720,
kFlagZubenBountyPaid = 723,
+ kFlagAR02Entered = 726,
kFlagPS04WeaponsOrderForm = 727
};
@@ -812,13 +864,18 @@ enum Variables {
kVariableChinyen = 2,
kVariablePoliceMazeScore = 9,
kVariablePoliceMazePS10TargetCounter = 10,
+ kVariablePoliceMazePS11TargetCounter = 11,
+ kVariablePoliceMazePS12TargetCounter = 12,
+ kVariablePoliceMazePS13TargetCounter = 13,
kVariableMcCoyEvidenceMissed = 14,
+ kVariableIzoShot = 19, // has no use
kVariableBobShot = 24, // has no use
kVariableGenericWalkerAModel = 32,
kVariableGenericWalkerBModel = 33,
kVariableGenericWalkerCModel = 34,
kVariableWalkLoopActor = 37,
kVariableWalkLoopRun = 38,
+ kVariableMcCoyDrinks = 42, // is never checked
kVariableAffectionTowards = 45, // 0 none, 1 steele, 2 dektora, 3 lucy
kVariableDNAEvidences = 48,
kVariableReplicants = 51,
@@ -924,7 +981,7 @@ enum Scenes {
kSceneCT01 = 13, // Chinatown - Howie Lee Restaurant
kSceneCT02 = 14, // Chinatown - Kitchen
kSceneCT03 = 15, // Chinatown - Back alley
- kSceneCT04 = 16, // Chinatown - Back alley - dumpster
+ kSceneCT04 = 16, // Chinatown - Back alley - Dumpster
kSceneCT05 = 17, // Chinatown - Warehouse - Inside
kSceneCT06 = 18, // Chinatown - Passage
kSceneCT07 = 19, // Chinatown - Passage form back
@@ -939,9 +996,9 @@ enum Scenes {
kSceneDR04 = 28,
kSceneDR05 = 29,
kSceneDR06 = 30,
- kSceneHC01 = 31, // Hawker's circle - Green pawn
+ kSceneHC01 = 31, // Hawker's circle - Green pawn - Outside
kSceneHC02 = 32, // Hawker's circle - China bar
- kSceneHC03 = 33, // Hawker's circle -
+ kSceneHC03 = 33, // Hawker's circle - Green pawn - Inside
kSceneHF01 = 34,
kSceneHF02 = 35,
kSceneHF03 = 36,
@@ -994,8 +1051,8 @@ enum Scenes {
kSceneTB03 = 83,
kSceneTB05 = 84, // Tyrell Building - Grav Test Lab - outside
kSceneTB06 = 85, // Tyrell Building - Grav Test Lab - inside
- kSceneUG01 = 86,
- kSceneUG02 = 87,
+ kSceneUG01 = 86, // Underground - Under Bullet Bob entrance
+ kSceneUG02 = 87, // Underground - Under Green pawn
kSceneUG03 = 88,
kSceneUG04 = 89,
kSceneUG05 = 90,
@@ -1129,20 +1186,88 @@ enum Sets
};
enum GameItems {
- kItemPoliceMazeTarget1 = 0,
- kItemPoliceMazeTarget2 = 1,
- kItemPoliceMazeTarget3 = 2,
- kItemPoliceMazeTarget4 = 3,
- kItemPoliceMazeTarget5 = 4,
- kItemPoliceMazeTarget6 = 5,
- kItemPoliceMazeTarget7 = 6,
- kItemPoliceMazeTarget8 = 7,
- kItemPoliceMazeTarget9 = 8,
+ kItemPS10Target1 = 0,
+ kItemPS10Target2 = 1,
+ kItemPS10Target3 = 2,
+ kItemPS10Target4 = 3,
+ kItemPS10Target5 = 4,
+ kItemPS10Target6 = 5,
+ kItemPS10Target7 = 6,
+ kItemPS10Target8 = 7,
+ kItemPS10Target9 = 8,
+ kItemPS11Target1 = 9,
+ kItemPS11Target2 = 10,
+ kItemPS11Target3 = 11,
+ kItemPS11Target4 = 12,
+ kItemPS11Target5 = 13,
+ kItemPS11Target6 = 14,
+ kItemPS11Target7 = 15,
+ kItemPS11Target8 = 16,
+ kItemPS11Target9 = 17,
+ kItemPS11Target10 = 18,
+ kItemPS11Target11 = 19,
+ kItemPS11Target12 = 20,
+ kItemPS11Target13 = 21,
+ kItemPS11Target14 = 22,
+ kItemPS11Target15 = 23,
+ // 24 is never used
+ // 25 is never used
+ // 26 is never used
+ kItemPS11Target16 = 27,
+ // 28 is never used
+ kItemPS12Target1 = 29,
+ kItemPS12Target2 = 30,
+ kItemPS12Target3 = 31,
+ kItemPS12Target4 = 32,
+ kItemPS12Target5 = 33,
+ kItemPS12Target6 = 34,
+ kItemPS12Target7 = 35,
+ kItemPS12Target8 = 36,
+ kItemPS12Target9 = 37,
+ kItemPS12Target10 = 38,
+ kItemPS12Target11 = 39,
+ kItemPS12Target12 = 40,
+ kItemPS12Target13 = 41,
+ kItemPS12Target14 = 42,
+ kItemPS12Target15 = 43,
+ kItemPS12Target16 = 44,
+ kItemPS12Target17 = 45,
+ kItemPS13Target1 = 46,
+ kItemPS13Target2 = 47,
+ kItemPS13Target3 = 48,
+ kItemPS13Target4 = 49,
+ kItemPS13Target5 = 50,
+ kItemPS13Target6 = 51,
+ kItemPS13Target7 = 52,
+ kItemPS13Target8 = 53,
+ kItemPS13Target9 = 54,
+ kItemPS13Target10 = 55,
+ kItemPS13Target11 = 56,
+ kItemPS13Target12 = 57,
+ kItemPS13Target13 = 58,
+ // 59 is never used
+ // 60 is never used
+ // 61 is never used
+ kItemPS13Target14 = 62,
+ kItemPS13Target15 = 63,
+ // 64 is never used
+ // 65 is never used
kItemChromeDebris = 66,
+ // 67 is never used
+ // 68 is never used
+ // 69 is never used
+ // 70 is never used
+ // 71 is never used
+ // 72 is never used
+ // 73 is never used
+ // 74 is never used
+ // 75 is never used
+ // 76 is never used
kItemDragonflyEarring = 76,
kItemCandy = 79,
kItemChopstickWrapper = 82,
kItemDogCollar = 84,
+ kItemRadiationGoogles = 88,
kItemToyDog = 98,
kItemShellCasingA = 100,
kItemShellCasingB = 101,
@@ -1150,10 +1275,13 @@ enum GameItems {
kItemDeadDogA = 103,
kItemDeadDogB = 104,
kItemDeadDogC = 105,
+ kItemScrorpions = 106,
+ kItemCamera = 107,
kItemKitchenBox = 108,
kItemWeaponsCrate = 110,
kItemWeaponsOrderForm = 111,
- kItemTyrellSalesPamphlet = 119
+ kItemTyrellSalesPamphlet = 119,
+ kItemHC03Lock = 121
};
enum Elevators {
@@ -1226,16 +1354,29 @@ enum PlayerAgenda {
kPlayerAgendaUserChoice = 4
};
+enum AffectionTowards {
+ kAffectionTowardsNone = 0,
+ kAffectionTowardsSteele = 1,
+ kAffectionTowardsDektora = 2,
+ kAffectionTowardsLucy = 3
+};
+
enum GoalMcCoy {
kGoalMcCoyDefault = 0,
kGoalMcCoyDodge = 1
};
enum GoalSteele {
+ kGoalSteeleDefault = 0,
+ kGoalSteeleApprehendIzo = 100,
kGoalSteeleGoToTB02 = 110,
kGoalSteeleLeaveTB02 = 111,
kGoalSteeleGoToPoliceStation = 112,
kGoalSteeleWalkAround = 113,
+ kGoalSteeleShootIzo = 120,
+ kGoalSteeleArrestIzo = 121,
+ kGoalSteeleIzoBlockedByMcCoy = 125,
+ kGoalSteeleLeaveRC03 = 130,
kGoalSteeleWalkAroundRestart = 190
};
@@ -1245,6 +1386,28 @@ enum GoalGuzza {
kGoalGuzzaGoToOffice = 102
};
+enum GoalIzo {
+ kGoalIzoDefault = 0,
+ kGoalIzoPrepareCamera = 1,
+ kGoalIzoTakePhoto = 2,
+ kGoalIzoRunToUG02 = 3,
+ kGoalIzoStopRunning = 100,
+ kGoalIzoRunToRC03 = 101,
+ kGoalIzoWaitingAtRC03 = 102,
+ kGoalIzoEscape = 103, // how can this happen? can mccoy catch izo in ug02?
+ kGoalIzoRC03Walk = 110,
+ kGoalIzoRC03Run = 111,
+ kGoalIzoRC03RunAway = 114,
+ kGoalIzoGetArrested = 120,
+ kGoalIzoGotArrested = 180,
+ kGoalIzoGoToHC01 = 150,
+ kGoalIzoGoToHC03 = 155,
+ kGoalIzoDieHidden = 198,
+ kGoalIzoDie = 199,
+
+ kGoalIzoDead = 599
+};
+
enum GoalTransient {
kGoalTransientDefault = 0,
kGoalTransientCT04Leave = 2
@@ -1258,6 +1421,14 @@ enum GoalBulletBob {
kGoalBulletBobDead = 4
};
+enum GoalRunciter {
+ kGoalRunciterDefault = 0,
+ kGoalRunciterWalkAround = 1,
+ kGoalRunciterHide = 2,
+ kGoalRunciterAtShop = 300,
+ kGoalRunciterDead = 599
+};
+
enum GoalZuben {
kGoalZubenDefault = 0,
kGoalZubenCT01Leave = 1,
diff --git a/engines/bladerunner/script/ai/clovis.cpp b/engines/bladerunner/script/ai/clovis.cpp
index a47a4bb7dd..d5043280a1 100644
--- a/engines/bladerunner/script/ai/clovis.cpp
+++ b/engines/bladerunner/script/ai/clovis.cpp
@@ -174,7 +174,7 @@ void AIScriptClovis::Retired(int byActorId) {
Delay(2000);
Player_Set_Combat_Mode(false);
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -12.0f, -41.58f, 72.0f, 0, true, false, 0);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(579);
Game_Flag_Reset(653);
@@ -413,15 +413,19 @@ bool AIScriptClovis::GoalChanged(int currentGoalNumber, int newGoalNumber) {
Actor_Says(kActorMcCoy, 8505, kAnimationModeTalk);
Actor_Says(kActorClovis, 1300, kAnimationModeTalk);
Actor_Says(kActorClovis, 1310, kAnimationModeTalk);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Outtake_Play(20, 0, -1);
- if (Global_Variable_Query(kVariableAffectionTowards) == 3 && Game_Flag_Query(46)) {
- Outtake_Play(21, 0, -1);
- } else if (Global_Variable_Query(kVariableAffectionTowards) == 2 && Game_Flag_Query(47)) {
- Outtake_Play(22, 0, -1);
- }
- Outtake_Play(23, 0, -1);
+ Outtake_Play(kOuttakeEnd4A, 0, -1);
+ if (Global_Variable_Query(kVariableAffectionTowards) == kAffectionTowardsLucy
+ && Game_Flag_Query(kFlagLucyIsReplicant)
+ ) {
+ Outtake_Play(kOuttakeEnd4B, 0, -1);
+ } else if (Global_Variable_Query(kVariableAffectionTowards) == kAffectionTowardsDektora
+ && Game_Flag_Query(kFlagDektoraIsReplicant)
+ ) {
+ Outtake_Play(kOuttakeEnd4C, 0, -1);
+ }
+ Outtake_Play(kOuttakeEnd4D, 0, -1);
Game_Over();
return true;
diff --git a/engines/bladerunner/script/ai/dektora.cpp b/engines/bladerunner/script/ai/dektora.cpp
index b7268c0daa..e6203132e7 100644
--- a/engines/bladerunner/script/ai/dektora.cpp
+++ b/engines/bladerunner/script/ai/dektora.cpp
@@ -87,12 +87,13 @@ bool AIScriptDektora::Update() {
Actor_Set_Goal_Number(kActorDektora, 300);
}
} else if (Game_Flag_Query(489)) {
- if (Game_Flag_Query(504) == 1
- && !Game_Flag_Query(374)
- && Player_Query_Current_Scene()
- && Player_Query_Current_Scene() != 1) {
- if (Game_Flag_Query(726)) {
- Item_Remove_From_World(106);
+ if ( Game_Flag_Query(504) == 1
+ && !Game_Flag_Query(374)
+ && Player_Query_Current_Scene()
+ && Player_Query_Current_Scene() != 1
+ ) {
+ if (Game_Flag_Query(kFlagAR02Entered)) {
+ Item_Remove_From_World(kItemScrorpions);
}
Game_Flag_Set(374);
}
@@ -292,7 +293,7 @@ void AIScriptDektora::Retired(int byActorId) {
Delay(2000);
Player_Set_Combat_Mode(false);
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -12.0f, -41.58f, 72.0f, 0, true, false, 0);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(579);
Game_Flag_Reset(653);
@@ -1095,8 +1096,8 @@ void AIScriptDektora::checkCombat() {
&& Global_Variable_Query(kVariableChapter) == 5
&& Actor_Query_Goal_Number(kActorDektora) != 450
) {
- if (Global_Variable_Query(kVariableAffectionTowards) == 2) {
- Global_Variable_Set(kVariableAffectionTowards, 0);
+ if (Global_Variable_Query(kVariableAffectionTowards) == kAffectionTowardsDektora) {
+ Global_Variable_Set(kVariableAffectionTowards, kAffectionTowardsNone);
}
Actor_Set_Goal_Number(kActorDektora, 450);
diff --git a/engines/bladerunner/script/ai/hawkers_barkeep.cpp b/engines/bladerunner/script/ai/hawkers_barkeep.cpp
index 8e82ecc63c..5f77eb91c6 100644
--- a/engines/bladerunner/script/ai/hawkers_barkeep.cpp
+++ b/engines/bladerunner/script/ai/hawkers_barkeep.cpp
@@ -119,61 +119,15 @@ bool AIScriptHawkersBarkeep::GoalChanged(int currentGoalNumber, int newGoalNumbe
bool AIScriptHawkersBarkeep::UpdateAnimation(int *animation, int *frame) {
switch (_animationState) {
case 0:
- if (_var1 == 1) {
- if (_var1 == 1) {
- *animation = 706;
- if (_animationFrame <= 3)
- _var3 = 1;
-
- if (_animationFrame == 11) {
- if (Random_Query(0, 2))
- _var3 = -1;
- }
-
- _animationFrame += _var3;
-
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(706)) {
- *animation = 705;
- _animationFrame = 0;
- _var1 = 0;
- }
- } else {
- *animation = 707;
-
- if (_var2) {
- _var2--;
-
- if (_var2 == 0)
- _var3 = 2 * Random_Query(0, 1) - 1;
- } else {
- if (_animationFrame <= 11)
- _var3 = 1;
-
- if (_animationFrame == 14) {
- if (Random_Query(0, 2))
- _var3 = -1;
- }
-
- if (_animationFrame == 18)
- _var2 = Random_Query(5, 15);
-
- _animationFrame++;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(707)) {
- *animation = 705;
- _animationFrame = 0;
- _var1 = 0;
- _var2 = 0;
- }
- }
- }
- } else if (_var1 == 0) {
+ if (_var1 == 0) {
*animation = 705;
if (_var2) {
_var2--;
- if (!Random_Query(0, 6))
+ if (Random_Query(0, 6) == 0) {
_var3 = -_var3;
+ }
} else {
_animationFrame += _var3;
@@ -203,48 +157,95 @@ bool AIScriptHawkersBarkeep::UpdateAnimation(int *animation, int *frame) {
}
}
}
- }
- break;
+ } else if (_var1 == 1) {
+ *animation = 706;
+ if (_animationFrame <= 3)
+ _var3 = 1;
+
+ if (_animationFrame == 11) {
+ if (Random_Query(0, 2))
+ _var3 = -1;
+ }
- case 1:
- if (_var1 == 1) {
- if (_var1 == 1) {
- *animation = 706;
- _animationFrame++;
+ _animationFrame += _var3;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(706)) {
- _animationFrame = 0;
- _animationState = _animationStateNext;
- *animation = _animationNext;
- }
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(706)) {
+ *animation = 705;
+ _animationFrame = 0;
+ _var1 = 0;
+ }
+ } else if (_var1 == 2) {
+ *animation = 707;
+
+ if (_var2) {
+ _var2--;
+
+ if (_var2 == 0)
+ _var3 = 2 * Random_Query(0, 1) - 1;
} else {
- *animation = 707;
- _animationFrame += 2;
+ if (_animationFrame <= 11)
+ _var3 = 1;
+ if (_animationFrame == 14) {
+ if (Random_Query(0, 2) != 0) {
+ _var3 = -1;
+ }
+ }
+
+ if (_animationFrame == 18) {
+ _var2 = Random_Query(5, 15);
+ }
+
+ _animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(707)) {
+ *animation = 705;
_animationFrame = 0;
- _animationState = _animationStateNext;
- *animation = _animationNext;
+ _var1 = 0;
+ _var2 = 0;
}
}
- } else if (_var1 == 0) {
+ }
+ break;
+
+ case 1:
+ if (_var1 == 0) {
_animationFrame = 0;
_animationState = _animationStateNext;
*animation = _animationNext;
+ } else if (_var1 == 1) {
+ *animation = 706;
+ _animationFrame++;
+
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(706)) {
+ _animationFrame = 0;
+ _animationState = _animationStateNext;
+ *animation = _animationNext;
+ }
+ } else if (_var1 == 2) {
+ *animation = 707;
+ _animationFrame += 2;
+
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(707)) {
+ _animationFrame = 0;
+ _animationState = _animationStateNext;
+ *animation = _animationNext;
+ }
}
+
break;
case 2:
*animation = 710;
- if (!_animationFrame && _flag) {
+ if (_animationFrame == 0 && _flag) {
_animationState = 0;
_var1 = 0;
} else {
_animationFrame++;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(710))
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(710)) {
_animationFrame = 0;
+ }
}
break;
diff --git a/engines/bladerunner/script/ai/holloway.cpp b/engines/bladerunner/script/ai/holloway.cpp
index 7b5fd1dde8..ed4453ec60 100644
--- a/engines/bladerunner/script/ai/holloway.cpp
+++ b/engines/bladerunner/script/ai/holloway.cpp
@@ -165,10 +165,10 @@ bool AIScriptHolloway::GoalChanged(int currentGoalNumber, int newGoalNumber) {
break;
case 257:
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Player_Gains_Control();
- Outtake_Play(11, 0, 1);
+ Outtake_Play(kOuttakeInterrogation, 0, 1);
if (Global_Variable_Query(40) == 1) {
Actor_Set_Goal_Number(kActorDektora, 245);
Actor_Change_Animation_Mode(kActorDektora, kAnimationModeIdle);
diff --git a/engines/bladerunner/script/ai/insect_dealer.cpp b/engines/bladerunner/script/ai/insect_dealer.cpp
index db957f99e3..fb0924a066 100644
--- a/engines/bladerunner/script/ai/insect_dealer.cpp
+++ b/engines/bladerunner/script/ai/insect_dealer.cpp
@@ -50,7 +50,9 @@ void AIScriptInsectDealer::Initialize() {
}
bool AIScriptInsectDealer::Update() {
- if (Global_Variable_Query(kVariableChapter) == 5 && Actor_Query_Goal_Number(kActorInsectDealer) < 400)
+ if (Global_Variable_Query(kVariableChapter) == 5
+ && Actor_Query_Goal_Number(kActorInsectDealer) < 400
+ )
Actor_Set_Goal_Number(kActorInsectDealer, 400);
return false;
@@ -111,7 +113,7 @@ bool AIScriptInsectDealer::GoalChanged(int currentGoalNumber, int newGoalNumber)
if (!Game_Flag_Query(374)) {
Game_Flag_Set(374);
- Item_Remove_From_World(106);
+ Item_Remove_From_World(kItemScrorpions);
}
}
diff --git a/engines/bladerunner/script/ai/izo.cpp b/engines/bladerunner/script/ai/izo.cpp
index 06966ef101..3f2715ac78 100644
--- a/engines/bladerunner/script/ai/izo.cpp
+++ b/engines/bladerunner/script/ai/izo.cpp
@@ -51,28 +51,39 @@ void AIScriptIzo::Initialize() {
}
bool AIScriptIzo::Update() {
- if (Actor_Query_Goal_Number(kActorIzo) == 100 && Player_Query_Current_Scene() == kSceneUG02) {
- Actor_Set_Targetable(kActorIzo, 1);
- Actor_Set_Goal_Number(kActorIzo, 101);
+ if (Actor_Query_Goal_Number(kActorIzo) == kGoalIzoStopRunning
+ && Player_Query_Current_Scene() == kSceneUG02
+ ) {
+ Actor_Set_Targetable(kActorIzo, true);
+ Actor_Set_Goal_Number(kActorIzo, kGoalIzoRunToRC03);
return true;
}
- if (Global_Variable_Query(kVariableChapter) == 3
- && Actor_Query_Goal_Number(kActorIzo) == 599
- && Actor_Query_Which_Set_In(kActorIzo) == 70) {
+ if (Global_Variable_Query(kVariableChapter) == 1
+ && Actor_Query_Goal_Number(kActorIzo) == kGoalIzoDead
+ && Actor_Query_Which_Set_In(kActorIzo) == kSetRC03
+ ) {
Actor_Put_In_Set(kActorIzo, kSetFreeSlotI);
Actor_Set_At_Waypoint(kActorIzo, 41, 0);
}
- if (!Actor_Query_Goal_Number(kActorIzo) && Player_Query_Current_Scene() == kSceneTB02) {
- Actor_Set_Goal_Number(kActorIzo, 155);
+
+ if (Actor_Query_Goal_Number(kActorIzo) == kGoalIzoDefault
+ && Player_Query_Current_Scene() == kSceneTB02
+ ) {
+ Actor_Set_Goal_Number(kActorIzo, kGoalIzoGoToHC03);
}
+
if (Global_Variable_Query(kVariableChapter) == 4
- && Actor_Query_Goal_Number(kActorIzo) < 599
- && Actor_Query_Goal_Number(kActorIzo) < 300
- && Actor_Query_Goal_Number(kActorIzo) != 180) {
+ && Actor_Query_Goal_Number(kActorIzo) < kGoalIzoDead
+ && Actor_Query_Goal_Number(kActorIzo) < 300
+ && Actor_Query_Goal_Number(kActorIzo) != kGoalIzoGotArrested
+ ) {
Actor_Set_Goal_Number(kActorIzo, 300);
}
- if (Global_Variable_Query(kVariableChapter) == 5 && Actor_Query_Goal_Number(kActorIzo) < 400) {
+
+ if (Global_Variable_Query(kVariableChapter) == 5
+ && Actor_Query_Goal_Number(kActorIzo) < 400
+ ) {
Actor_Set_Goal_Number(kActorIzo, 400);
}
@@ -85,38 +96,38 @@ void AIScriptIzo::TimerExpired(int timer) {
void AIScriptIzo::CompletedMovementTrack() {
switch (Actor_Query_Goal_Number(kActorIzo)) {
- case 3:
- Actor_Set_Goal_Number(kActorIzo, 101);
+ case kGoalIzoRunToUG02:
+ Actor_Set_Goal_Number(kActorIzo, kGoalIzoRunToRC03);
Player_Gains_Control();
return; //true;
- case 101:
- Actor_Set_Goal_Number(kActorIzo, 102);
+ case kGoalIzoRunToRC03:
+ Actor_Set_Goal_Number(kActorIzo, kGoalIzoWaitingAtRC03);
return; //true;
- case 110:
- case 111:
- Actor_Set_Goal_Number(kActorIzo, 114);
- Actor_Set_Goal_Number(kActorSteele, 100);
+ case kGoalIzoRC03Walk:
+ case kGoalIzoRC03Run:
+ Actor_Set_Goal_Number(kActorIzo, kGoalIzoRC03RunAway);
+ Actor_Set_Goal_Number(kActorSteele, kGoalSteeleApprehendIzo);
Scene_Exits_Enable();
return; //true;
- case 114:
+ case kGoalIzoRC03RunAway:
Scene_Exits_Enable();
return; //true;
- case 120:
+ case kGoalIzoGetArrested:
Game_Flag_Set(kFlagIzoArrested);
- Actor_Set_Goal_Number(kActorIzo, 180);
+ Actor_Set_Goal_Number(kActorIzo, kGoalIzoGotArrested);
Scene_Exits_Enable();
return; //true;
- case 150:
- Actor_Set_Goal_Number(kActorIzo, 155);
+ case kGoalIzoGoToHC01:
+ Actor_Set_Goal_Number(kActorIzo, kGoalIzoGoToHC03);
return; //true;
- case 155:
- Actor_Set_Goal_Number(kActorIzo, 150);
+ case kGoalIzoGoToHC03:
+ Actor_Set_Goal_Number(kActorIzo, kGoalIzoGoToHC01);
return; //true;
case 300:
@@ -136,29 +147,31 @@ void AIScriptIzo::ReceivedClue(int clueId, int fromActorId) {
}
void AIScriptIzo::ClickedByPlayer() {
- if (Actor_Query_Goal_Number(kActorIzo) > 500) {
- Actor_Face_Actor(kActorMcCoy, kActorIzo, 1);
+ if (Actor_Query_Goal_Number(kActorIzo) > 500) { // Dead
+ Actor_Face_Actor(kActorMcCoy, kActorIzo, true);
Actor_Says(kActorMcCoy, 8585, 13);
return; //true;
}
- if (Actor_Query_Goal_Number(kActorIzo) == 101 && Player_Query_Current_Set() == kSetUG02) {
+ if (Actor_Query_Goal_Number(kActorIzo) == kGoalIzoRunToRC03
+ && Player_Query_Current_Set() == kSetUG02
+ ) {
Player_Loses_Control();
- Actor_Set_Goal_Number(kActorIzo, 100);
- Actor_Face_Actor(kActorMcCoy, kActorIzo, 1);
+ Actor_Set_Goal_Number(kActorIzo, kGoalIzoStopRunning);
+ Actor_Face_Actor(kActorMcCoy, kActorIzo, true);
Actor_Says(kActorMcCoy, 5460, 16);
- Actor_Face_Actor(kActorIzo, kActorMcCoy, 1);
+ Actor_Face_Actor(kActorIzo, kActorMcCoy, true);
Actor_Says(kActorIzo, 700, 17);
Actor_Says(kActorMcCoy, 5465, 14);
someDialog();
}
- if (Actor_Query_Goal_Number(kActorIzo) == 110) {
- Actor_Face_Actor(kActorMcCoy, kActorIzo, 1);
+ if (Actor_Query_Goal_Number(kActorIzo) == kGoalIzoRC03Walk) {
+ Actor_Face_Actor(kActorMcCoy, kActorIzo, true);
Actor_Says(kActorMcCoy, 2715, 14);
- Actor_Set_Goal_Number(kActorIzo, 111);
+ Actor_Set_Goal_Number(kActorIzo, kGoalIzoRC03Run);
Actor_Says(kActorMcCoy, 1800, 14);
- Actor_Set_Goal_Number(kActorSteele, 100);
+ Actor_Set_Goal_Number(kActorSteele, kGoalSteeleApprehendIzo);
return; //true;
}
@@ -178,41 +191,43 @@ void AIScriptIzo::OtherAgentExitedThisScene(int otherActorId) {
}
void AIScriptIzo::OtherAgentEnteredCombatMode(int otherActorId, int combatMode) {
- if (Actor_Query_Goal_Number(kActorIzo) == 110) {
+ if (Actor_Query_Goal_Number(kActorIzo) == kGoalIzoRC03Walk) {
Game_Flag_Query(kFlagIzoIsReplicant);
}
return; //false;
}
void AIScriptIzo::ShotAtAndMissed() {
- if (Actor_Query_Goal_Number(kActorIzo) != 110) {
- return; //false;
+ if (Actor_Query_Goal_Number(kActorIzo) == kGoalIzoRC03Walk) {
+ Actor_Set_Goal_Number(kActorIzo, kGoalIzoRC03Run);
+ return; //true;
}
- Actor_Set_Goal_Number(kActorIzo, 111);
-
- return; //true;
+ return; //false;
}
bool AIScriptIzo::ShotAtAndHit() {
- if (Actor_Query_Goal_Number(kActorIzo) == 110
- || Actor_Query_Goal_Number(kActorIzo) == 111
- || Actor_Query_Goal_Number(kActorIzo) == 114) {
+ if (Actor_Query_Goal_Number(kActorIzo) == kGoalIzoRC03Walk
+ || Actor_Query_Goal_Number(kActorIzo) == kGoalIzoRC03Run
+ || Actor_Query_Goal_Number(kActorIzo) == kGoalIzoRC03RunAway
+ ) {
Actor_Set_Health(kActorIzo, 50, 50);
- if (Actor_Query_Goal_Number(kActorIzo) == 110) {
- Actor_Set_Goal_Number(kActorIzo, 111);
+ if (Actor_Query_Goal_Number(kActorIzo) == kGoalIzoRC03Walk) {
+ Actor_Set_Goal_Number(kActorIzo, kGoalIzoRC03Run);
}
return true;
} else {
AI_Movement_Track_Flush(kActorIzo);
- Global_Variable_Increment(19, 1);
- if (!Game_Flag_Query(444) && Global_Variable_Query(19) == 1) {
- Game_Flag_Set(444);
+ Global_Variable_Increment(kVariableIzoShot, 1);
+ if (!Game_Flag_Query(kFlagIzoShot)
+ && Global_Variable_Query(kVariableIzoShot) == 1
+ ) {
+ Game_Flag_Set(kFlagIzoShot);
_animationFrame = 0;
_animationState = 19;
- Actor_Retired_Here(kActorIzo, 36, 12, 1, -1);
- Actor_Set_Goal_Number(kActorIzo, 199);
+ Actor_Retired_Here(kActorIzo, 36, 12, true, -1);
+ Actor_Set_Goal_Number(kActorIzo, kGoalIzoDie);
}
return false;
}
@@ -224,14 +239,14 @@ void AIScriptIzo::Retired(int byActorId) {
}
Global_Variable_Decrement(kVariableReplicants, 1);
- Actor_Set_Goal_Number(kActorIzo, 599);
+ Actor_Set_Goal_Number(kActorIzo, kGoalIzoDead);
if (Global_Variable_Query(kVariableReplicants) == 0) {
Player_Loses_Control();
Delay(2000);
Player_Set_Combat_Mode(0);
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -12.0f, -41.58f, 72.0f, 0, 1, 0, 0);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(579);
Game_Flag_Reset(653);
@@ -248,78 +263,79 @@ int AIScriptIzo::GetFriendlinessModifierIfGetsClue(int otherActorId, int clueId)
bool AIScriptIzo::GoalChanged(int currentGoalNumber, int newGoalNumber) {
if (newGoalNumber == 200
- || newGoalNumber == 199
- || newGoalNumber == 198
- || newGoalNumber == 180
- || newGoalNumber == 103) {
- Spinner_Set_Selectable_Destination_Flag(kSpinnerDestinationDNARow, true);
- }
+ || newGoalNumber == kGoalIzoDie
+ || newGoalNumber == kGoalIzoDieHidden
+ || newGoalNumber == kGoalIzoGotArrested
+ || newGoalNumber == kGoalIzoEscape
+ ) {
+ Spinner_Set_Selectable_Destination_Flag(kSpinnerDestinationDNARow, true);
+ }
switch (newGoalNumber) {
- case 0:
+ case kGoalIzoDefault:
AI_Movement_Track_Flush(kActorIzo);
return true;
- case 1:
+ case kGoalIzoPrepareCamera:
AI_Movement_Track_Flush(kActorIzo);
- Actor_Face_Heading(kActorIzo, 520, 0);
+ Actor_Face_Heading(kActorIzo, 520, false);
_animationState = 32;
_animationFrame = -1;
return true;
- case 2:
+ case kGoalIzoTakePhoto:
_animationState = 34;
_animationFrame = -1;
return true;
- case 3:
+ case kGoalIzoRunToUG02:
AI_Movement_Track_Flush(kActorIzo);
AI_Movement_Track_Append_Run(kActorIzo, 149, 0);
AI_Movement_Track_Append_Run(kActorIzo, 152, 0);
AI_Movement_Track_Repeat(kActorIzo);
Scene_Exit_Add_2D_Exit(1, 394, 229, 485, 371, 1);
- Game_Flag_Set(402);
+ Game_Flag_Set(kFlagHC03Available);
return true;
- case 100:
+ case kGoalIzoStopRunning:
AI_Movement_Track_Flush(kActorIzo);
AI_Movement_Track_Repeat(kActorIzo);
return true;
- case 101:
+ case kGoalIzoRunToRC03:
AI_Movement_Track_Flush(kActorIzo);
AI_Movement_Track_Append_Run(kActorIzo, 153, 0);
AI_Movement_Track_Append(kActorIzo, 154, 0);
AI_Movement_Track_Repeat(kActorIzo);
return true;
- case 102:
+ case kGoalIzoWaitingAtRC03:
return true;
- case 103:
+ case kGoalIzoEscape:
AI_Movement_Track_Flush(kActorIzo);
AI_Movement_Track_Append(kActorIzo, 153, 0);
AI_Movement_Track_Append(kActorIzo, 39, 120);
AI_Movement_Track_Append(kActorIzo, 33, 0);
AI_Movement_Track_Repeat(kActorIzo);
- return 1;
+ return true;
- case 110:
- Game_Flag_Set(486);
+ case kGoalIzoRC03Walk:
+ Game_Flag_Set(kFlagDNARowAvailable);
AI_Movement_Track_Flush(kActorIzo);
AI_Movement_Track_Append(kActorIzo, 349, 0);
AI_Movement_Track_Repeat(kActorIzo);
return true;
- case 111:
- Game_Flag_Set(486);
+ case kGoalIzoRC03Run:
+ Game_Flag_Set(kFlagDNARowAvailable);
AI_Movement_Track_Flush(kActorIzo);
AI_Movement_Track_Append_Run(kActorIzo, 349, 0);
AI_Movement_Track_Repeat(kActorIzo);
return true;
- case 114:
- Game_Flag_Set(486);
+ case kGoalIzoRC03RunAway:
+ Game_Flag_Set(kFlagDNARowAvailable);
AI_Movement_Track_Flush(kActorIzo);
AI_Movement_Track_Append_Run(kActorIzo, 174, 0);
AI_Movement_Track_Repeat(kActorIzo);
@@ -334,18 +350,18 @@ bool AIScriptIzo::GoalChanged(int currentGoalNumber, int newGoalNumber) {
AI_Movement_Track_Append(kActorIzo, 34, 0);
}
AI_Movement_Track_Repeat(kActorIzo);
- Game_Flag_Set(486);
+ Game_Flag_Set(kFlagDNARowAvailable);
return true;
- case 120:
- Actor_Set_Targetable(kActorIzo, 0);
+ case kGoalIzoGetArrested:
+ Actor_Set_Targetable(kActorIzo, false);
AI_Movement_Track_Flush(kActorIzo);
AI_Movement_Track_Append(kActorIzo, 174, 0);
AI_Movement_Track_Append(kActorIzo, 33, 0);
AI_Movement_Track_Repeat(kActorIzo);
return true;
- case 150:
+ case kGoalIzoGoToHC01:
AI_Movement_Track_Flush(kActorIzo);
AI_Movement_Track_Append(kActorIzo, 39, Random_Query(15, 30));
AI_Movement_Track_Append(kActorIzo, 149, 0);
@@ -353,7 +369,7 @@ bool AIScriptIzo::GoalChanged(int currentGoalNumber, int newGoalNumber) {
AI_Movement_Track_Repeat(kActorIzo);
return true;
- case 155:
+ case kGoalIzoGoToHC03:
AI_Movement_Track_Flush(kActorIzo);
AI_Movement_Track_Append(kActorIzo, 149, 0);
if (Game_Flag_Query(kFlagIzoIsReplicant)) {
@@ -372,31 +388,31 @@ bool AIScriptIzo::GoalChanged(int currentGoalNumber, int newGoalNumber) {
AI_Movement_Track_Flush(kActorIzo);
return true;
- case 180:
- Game_Flag_Set(486);
+ case kGoalIzoGotArrested:
+ Game_Flag_Set(kFlagDNARowAvailable);
Actor_Put_In_Set(kActorIzo, kSetFreeSlotA);
Actor_Set_At_Waypoint(kActorIzo, 33, 0);
return true;
- case 198:
+ case kGoalIzoDieHidden:
AI_Movement_Track_Flush(kActorIzo);
AI_Movement_Track_Append(kActorIzo, 41, 0);
AI_Movement_Track_Repeat(kActorIzo);
Actor_Set_Goal_Number(kActorIzo, 999);
return true;
- case 199:
- Game_Flag_Set(486);
+ case kGoalIzoDie:
+ Game_Flag_Set(kFlagDNARowAvailable);
AI_Movement_Track_Flush(kActorIzo);
Ambient_Sounds_Play_Speech_Sound(kActorIzo, 9000, 100, 0, 0, 0);
- Actor_Change_Animation_Mode(kActorIzo, 48);
+ Actor_Change_Animation_Mode(kActorIzo, kAnimationModeDie);
Actor_Set_Goal_Number(kActorIzo, 999);
Scene_Exits_Enable();
- Actor_Retired_Here(kActorIzo, 36, 12, 1, -1);
+ Actor_Retired_Here(kActorIzo, 36, 12, true, -1);
return true;
case 200:
- Game_Flag_Set(486);
+ Game_Flag_Set(kFlagDNARowAvailable);
return true;
case 300:
@@ -418,7 +434,7 @@ bool AIScriptIzo::GoalChanged(int currentGoalNumber, int newGoalNumber) {
return true;
case 999:
- Actor_Set_Goal_Number(kActorIzo, 599);
+ Actor_Set_Goal_Number(kActorIzo, kGoalIzoDead);
return true;
case 9999:
@@ -539,8 +555,10 @@ bool AIScriptIzo::UpdateAnimation(int *animation, int *frame) {
if (_animationFrame == 9) {
Actor_Combat_AI_Hit_Attempt(7);
}
- if (Actor_Query_Goal_Number(kActorIzo) == 102 && _animationFrame == 6) {
- Actor_Change_Animation_Mode(0, 20);
+ if (Actor_Query_Goal_Number(kActorIzo) == kGoalIzoWaitingAtRC03
+ && _animationFrame == 6
+ ) {
+ Actor_Change_Animation_Mode(kActorMcCoy, 20);
}
Actor_Query_Goal_Number(kActorIzo);
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
@@ -579,14 +597,18 @@ bool AIScriptIzo::UpdateAnimation(int *animation, int *frame) {
case 14:
case 15:
*animation = _animationFrame + 280;
- if (++_animationFrame >= 2
- && (Actor_Query_Goal_Number(kActorIzo) == 110 || Actor_Query_Goal_Number(kActorIzo) == 111)) {
+ _animationFrame++;
+ if (_animationFrame >= 2
+ && (Actor_Query_Goal_Number(kActorIzo) == kGoalIzoRC03Walk
+ || Actor_Query_Goal_Number(kActorIzo) == kGoalIzoRC03Run
+ )
+ ) {
*animation = 297;
_animationFrame = 0;
_animationState = 0;
_var4 = 0;
- Actor_Change_Animation_Mode(kActorIzo, 0);
- Actor_Set_Goal_Number(kActorIzo, 111);
+ Actor_Change_Animation_Mode(kActorIzo, kAnimationModeIdle);
+ Actor_Set_Goal_Number(kActorIzo, kGoalIzoRC03Run);
} else {
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
*animation = 297;
@@ -700,17 +722,17 @@ bool AIScriptIzo::UpdateAnimation(int *animation, int *frame) {
*animation = 311;
_animationFrame++;
if (_animationFrame == 6) {
- Scene_Loop_Set_Default(0);
- Scene_Loop_Start_Special(2, 2, 1);
+ Scene_Loop_Set_Default(0); // // HC01 - MainLoop
+ Scene_Loop_Start_Special(kSceneLoopModeOnce, 2, true); // HC01 - IzoFlashLoop
Player_Set_Combat_Mode(kActorSteele);
}
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(311)) {
*animation = 297;
_animationFrame = 0;
_animationState = 0;
- Game_Flag_Set(407);
- Item_Add_To_World(107, 977, 8, 597.46f, 0.14f, 49.92f, 0, 12, 12, 0, 1, 0, 0);
- Actor_Set_Goal_Number(kActorIzo, 3);
+ Game_Flag_Set(kFlagUnused407);
+ Item_Add_To_World(kItemCamera, 977, kSetHC01_HC02_HC03_HC04, 597.46f, 0.14f, 49.92f, 0, 12, 12, false, true, false, false);
+ Actor_Set_Goal_Number(kActorIzo, kGoalIzoRunToUG02);
}
break;
@@ -784,7 +806,7 @@ bool AIScriptIzo::ChangeAnimationMode(int mode) {
return true;
case 1:
- if (Actor_Query_Goal_Number(kActorIzo) == 102) {
+ if (Actor_Query_Goal_Number(kActorIzo) == kGoalIzoWaitingAtRC03) {
_animationState = 22;
} else {
_animationState = 20;
@@ -987,32 +1009,29 @@ void AIScriptIzo::FledCombat() {
}
void AIScriptIzo::someDialog() {
- int input;
-
Dialogue_Menu_Clear_List();
- DM_Add_To_List_Never_Repeat_Once_Selected(0, 7, 4, -1);
+ DM_Add_To_List_Never_Repeat_Once_Selected(0, 7, 4, -1); // MOTIVES
- if (Actor_Clue_Query(0, 179)) {
- DM_Add_To_List_Never_Repeat_Once_Selected(10, 8, -1, -1);
+ if (Actor_Clue_Query(kActorMcCoy, kClueGrigorianInterviewA)) {
+ DM_Add_To_List_Never_Repeat_Once_Selected(10, 8, -1, -1); // LUCY
}
- DM_Add_To_List_Never_Repeat_Once_Selected(20, 3, 7, 4);
+ DM_Add_To_List_Never_Repeat_Once_Selected(20, 3, 7, 4); // REFERENCE
DM_Add_To_List_Never_Repeat_Once_Selected(30, -1, 3, 7);
- Dialogue_Menu_Appear(320, 240);
-
- input = Dialogue_Menu_Query_Input();
+ Dialogue_Menu_Appear(320, 240);
+ int input = Dialogue_Menu_Query_Input();
Dialogue_Menu_Disappear();
switch (input) {
- case 0:
+ case 0: // MOTIVES
Actor_Says(kActorMcCoy, 5470, 15);
Actor_Says(kActorMcCoy, 710, 13);
- Actor_Set_Goal_Number(kActorIzo, 103);
+ Actor_Set_Goal_Number(kActorIzo, kGoalIzoEscape);
Player_Gains_Control();
break;
- case 10:
+ case 10: // LUCY
if (Game_Flag_Query(kFlagIzoIsReplicant)) {
Actor_Says(kActorMcCoy, 5475, 18);
Actor_Says(kActorIzo, 720, 12);
@@ -1033,19 +1052,19 @@ void AIScriptIzo::someDialog() {
Actor_Says(kActorIzo, 830, 13);
Actor_Says(kActorIzo, 840, 13);
}
- Actor_Set_Goal_Number(kActorIzo, 103);
+ Actor_Set_Goal_Number(kActorIzo, kGoalIzoEscape);
Player_Gains_Control();
break;
- case 20:
+ case 20: // REFERENCE
Actor_Says(kActorMcCoy, 5480, 18);
- Actor_Set_Goal_Number(kActorIzo, 103);
+ Actor_Set_Goal_Number(kActorIzo, kGoalIzoEscape);
Player_Gains_Control();
break;
- case 30:
- Player_Set_Combat_Mode(kActorSteele);
- Actor_Set_Goal_Number(kActorIzo, 103);
+ case 30: // DONE
+ Player_Set_Combat_Mode(true);
+ Actor_Set_Goal_Number(kActorIzo, kGoalIzoEscape);
Player_Gains_Control();
break;
}
diff --git a/engines/bladerunner/script/ai/lucy.cpp b/engines/bladerunner/script/ai/lucy.cpp
index 72cb959a53..0f53758b28 100644
--- a/engines/bladerunner/script/ai/lucy.cpp
+++ b/engines/bladerunner/script/ai/lucy.cpp
@@ -363,7 +363,7 @@ bool AIScriptLucy::GoalChanged(int currentGoalNumber, int newGoalNumber) {
Actor_Says(kActorLucy, 360, 13);
Actor_Says(kActorMcCoy, 1710, 13);
- if (Global_Variable_Query(kVariableAffectionTowards) == 3) {
+ if (Global_Variable_Query(kVariableAffectionTowards) == kAffectionTowardsLucy) {
Actor_Says(kActorLucy, 940, 13);
Actor_Says(kActorMcCoy, 6780, 12);
Actor_Says(kActorLucy, 950, 12);
@@ -371,11 +371,13 @@ bool AIScriptLucy::GoalChanged(int currentGoalNumber, int newGoalNumber) {
Actor_Says(kActorMcCoy, 6785, 13);
Actor_Says(kActorLucy, 970, 16);
Actor_Says(kActorLucy, 980, 13);
- if (Game_Flag_Query(47)) {
+ if (Game_Flag_Query(kFlagDektoraIsReplicant)) {
Actor_Says(kActorLucy, 990, 15);
}
Actor_Says(kActorMcCoy, 6790, 13);
- if (Game_Flag_Query(47) && Game_Flag_Query(46)) {
+ if (Game_Flag_Query(kFlagDektoraIsReplicant)
+ && Game_Flag_Query(kFlagLucyIsReplicant)
+ ) {
Actor_Says(kActorLucy, 1000, 12);
}
Actor_Says(kActorLucy, 1010, 15);
@@ -450,7 +452,7 @@ bool AIScriptLucy::GoalChanged(int currentGoalNumber, int newGoalNumber) {
case 300:
Actor_Put_In_Set(kActorLucy, kSetFreeSlotA);
Actor_Set_At_Waypoint(kActorLucy, 33, 0);
- if (Global_Variable_Query(kVariableAffectionTowards) == 3) {
+ if (Global_Variable_Query(kVariableAffectionTowards) == kAffectionTowardsLucy) {
Actor_Set_Goal_Number(kActorLucy, 310);
}
break;
@@ -861,8 +863,8 @@ void AIScriptLucy::checkCombat() {
&& Global_Variable_Query(kVariableChapter) == 5
&& Actor_Query_Goal_Number(kActorLucy) != 450
) {
- if (Global_Variable_Query(kVariableAffectionTowards) == 3) {
- Global_Variable_Set(kVariableAffectionTowards, 0);
+ if (Global_Variable_Query(kVariableAffectionTowards) == kAffectionTowardsLucy) {
+ Global_Variable_Set(kVariableAffectionTowards, kAffectionTowardsNone);
}
Actor_Set_Goal_Number(kActorLucy, 450);
Non_Player_Actor_Combat_Mode_On(kActorLucy, kActorCombatStateIdle, false, kActorMcCoy, 4, kAnimationModeIdle, kAnimationModeWalk, kAnimationModeRun, -1, 0, 0, 10, 300, false);
diff --git a/engines/bladerunner/script/ai/mccoy.cpp b/engines/bladerunner/script/ai/mccoy.cpp
index 2f514ca51f..48a8e8b698 100644
--- a/engines/bladerunner/script/ai/mccoy.cpp
+++ b/engines/bladerunner/script/ai/mccoy.cpp
@@ -266,8 +266,7 @@ int AIScriptMcCoy::GetFriendlinessModifierIfGetsClue(int otherActorId, int clueI
}
bool AIScriptMcCoy::GoalChanged(int currentGoalNumber, int newGoalNumber) {
- unsigned int v5;
- unsigned int v7;
+ unsigned int affectionTowards;
switch (newGoalNumber) {
case 0:
@@ -412,13 +411,13 @@ bool AIScriptMcCoy::GoalChanged(int currentGoalNumber, int newGoalNumber) {
case 400:
Actor_Set_Health(kActorMcCoy, 50, 50);
Game_Flag_Set(373);
- v5 = Global_Variable_Query(kVariableAffectionTowards);
- if (v5 == 1) {
+ affectionTowards = Global_Variable_Query(kVariableAffectionTowards);
+ if (affectionTowards == kAffectionTowardsSteele) {
Actor_Modify_Friendliness_To_Other(kActorSteele, kActorMcCoy, 3);
- } else if (v5 == 2) {
+ } else if (affectionTowards == kAffectionTowardsDektora) {
Actor_Modify_Friendliness_To_Other(kActorSteele, kActorMcCoy, -5);
Actor_Modify_Friendliness_To_Other(kActorClovis, kActorMcCoy, 3);
- } else if (v5 == 3) {
+ } else if (affectionTowards == kAffectionTowardsLucy) {
Actor_Modify_Friendliness_To_Other(kActorSteele, kActorMcCoy, -5);
Actor_Modify_Friendliness_To_Other(kActorClovis, kActorMcCoy, 5);
}
@@ -428,20 +427,22 @@ bool AIScriptMcCoy::GoalChanged(int currentGoalNumber, int newGoalNumber) {
if (Actor_Query_Friendliness_To_Other(kActorSteele, kActorMcCoy) < Actor_Query_Friendliness_To_Other(kActorClovis, kActorMcCoy)) {
Game_Flag_Set(653);
}
- v7 = Global_Variable_Query(kVariableAffectionTowards);
- if (v7 == 1) {
+ affectionTowards = Global_Variable_Query(kVariableAffectionTowards);
+ if (affectionTowards == kAffectionTowardsSteele) {
if (Game_Flag_Query(653)) {
- Global_Variable_Set(kVariableAffectionTowards, 0);
+ Global_Variable_Set(kVariableAffectionTowards, kAffectionTowardsNone);
}
- } else if (v7 == 2 || v7 == 3) {
+ } else if (affectionTowards == kAffectionTowardsDektora
+ || affectionTowards == kAffectionTowardsLucy
+ ) {
if (!Game_Flag_Query(653)) {
- Global_Variable_Set(kVariableAffectionTowards, 0);
+ Global_Variable_Set(kVariableAffectionTowards, kAffectionTowardsNone);
}
}
if (!Game_Flag_Query(653)) {
Game_Flag_Set(kFlagMaggieIsHurt);
}
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Global_Variable_Set(kVariableChapter, 5);
Outtake_Play(kOuttakeMovieD, false, -1);
@@ -598,7 +599,7 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
dword_45A0DC = 0;
_animationState = 0;
Player_Gains_Control();
- Item_Add_To_World(109, 982, 6, -110.0, 0.0, -192.0, 0, 48, 32, false, true, false, false);
+ Item_Add_To_World(109, 982, kSetCT08_CT51_UG12, -110.0, 0.0, -192.0, 0, 48, 32, false, true, false, false);
}
break;
case 58:
diff --git a/engines/bladerunner/script/ai/runciter.cpp b/engines/bladerunner/script/ai/runciter.cpp
index 19e15989a7..e4625f1159 100644
--- a/engines/bladerunner/script/ai/runciter.cpp
+++ b/engines/bladerunner/script/ai/runciter.cpp
@@ -48,14 +48,18 @@ void AIScriptRunciter::Initialize() {
var_45CD80 = 1;
var_45CD84 = 0;
var_45CD88 = 0;
- Actor_Set_Goal_Number(kActorRunciter, 0);
+ Actor_Set_Goal_Number(kActorRunciter, kGoalRunciterDefault);
}
bool AIScriptRunciter::Update() {
- if (Actor_Query_Goal_Number(kActorRunciter) == 0 && Game_Flag_Query(kFlagRC01PoliceDone)) {
- Actor_Set_Goal_Number(kActorRunciter, 2);
+ if (Actor_Query_Goal_Number(kActorRunciter) == kGoalRunciterDefault
+ && Game_Flag_Query(kFlagRC01PoliceDone)
+ ) {
+ Actor_Set_Goal_Number(kActorRunciter, kGoalRunciterHide);
}
- if (Global_Variable_Query(kVariableChapter) == 4 && Actor_Query_Goal_Number(kActorRunciter) < 300) {
+ if (Global_Variable_Query(kVariableChapter) == 4
+ && Actor_Query_Goal_Number(kActorRunciter) < 300
+ ) {
Actor_Set_Goal_Number(kActorRunciter, 300);
}
return false;
@@ -149,8 +153,8 @@ void AIScriptRunciter::ShotAtAndMissed() {}
bool AIScriptRunciter::ShotAtAndHit() {
Actor_Set_Targetable(kActorRunciter, false);
- Actor_Change_Animation_Mode(kActorRunciter, 48);
- Actor_Set_Goal_Number(kActorRunciter, 599);
+ Actor_Change_Animation_Mode(kActorRunciter, kAnimationModeDie);
+ Actor_Set_Goal_Number(kActorRunciter, kGoalRunciterDead);
Delay(2000);
if (Actor_Clue_Query(kActorMcCoy, kClueZubensMotive)) {
Actor_Voice_Over(2050, kActorVoiceOver);
@@ -171,12 +175,12 @@ int AIScriptRunciter::GetFriendlinessModifierIfGetsClue(int otherActorId, int cl
}
bool AIScriptRunciter::GoalChanged(int currentGoalNumber, int newGoalNumber) {
- if (newGoalNumber == 0) {
+ if (newGoalNumber == kGoalRunciterDefault) {
Actor_Put_In_Set(kActorRunciter, kSetRC02_RC51);
Actor_Set_At_Waypoint(kActorRunciter, 92, 567);
return false;
}
- if (newGoalNumber == 1) {
+ if (newGoalNumber == kGoalRunciterWalkAround) {
AI_Movement_Track_Flush(kActorRunciter);
if (Random_Query(0, 1) == 1) {
if (Random_Query(0, 1) == 0) {
@@ -194,14 +198,14 @@ bool AIScriptRunciter::GoalChanged(int currentGoalNumber, int newGoalNumber) {
AI_Movement_Track_Repeat(kActorRunciter);
return true;
}
- if (newGoalNumber == 2) {
+ if (newGoalNumber == kGoalRunciterHide) {
AI_Movement_Track_Flush(kActorRunciter);
AI_Movement_Track_Append(kActorRunciter, 39, 120);
AI_Movement_Track_Append(kActorRunciter, 40, 0);
AI_Movement_Track_Repeat(kActorRunciter);
return false;
}
- if (newGoalNumber == 300) {
+ if (newGoalNumber == kGoalRunciterAtShop) {
Actor_Put_In_Set(kActorRunciter, kSetRC02_RC51);
Actor_Set_At_Waypoint(kActorRunciter, 93, 1007);
return false;
diff --git a/engines/bladerunner/script/ai/sadik.cpp b/engines/bladerunner/script/ai/sadik.cpp
index d66609f71d..0684de914c 100644
--- a/engines/bladerunner/script/ai/sadik.cpp
+++ b/engines/bladerunner/script/ai/sadik.cpp
@@ -50,30 +50,33 @@ void AIScriptSadik::Initialize() {
}
bool AIScriptSadik::Update() {
- if (Global_Variable_Query(kVariableChapter) != 2 || Player_Query_Current_Scene() != 10 || Game_Flag_Query(391)) {
- if (_var1) {
- Sound_Play(_var1, 100, 0, 0, 50);
- _var1 = 0;
- }
- if (Global_Variable_Query(kVariableChapter) == 3 && Actor_Query_Goal_Number(kActorSadik) < 200) {
- Actor_Set_Goal_Number(kActorSadik, 200);
- }
- if (Global_Variable_Query(kVariableChapter) == 5 && Actor_Query_Goal_Number(kActorSadik) < 400) {
- Actor_Set_Goal_Number(kActorSadik, 400);
- }
- if (Actor_Query_Goal_Number(kActorSadik) == 411) {
- if (Game_Flag_Query(657)) {
- Actor_Set_Goal_Number(kActorSadik, 412);
- }
- }
- return false;
- } else {
+ if (Global_Variable_Query(kVariableChapter) == 2
+ && Player_Query_Current_Scene() == kSceneBB09
+ && !Game_Flag_Query(391)
+ ) {
Actor_Set_Goal_Number(kActorSadik, 101);
- Actor_Set_Targetable(kActorSadik, 1);
+ Actor_Set_Targetable(kActorSadik, true);
Game_Flag_Set(391);
Game_Flag_Set(406);
return true;
}
+
+ if (_var1) {
+ Sound_Play(_var1, 100, 0, 0, 50);
+ _var1 = 0;
+ }
+ if (Global_Variable_Query(kVariableChapter) == 3 && Actor_Query_Goal_Number(kActorSadik) < 200) {
+ Actor_Set_Goal_Number(kActorSadik, 200);
+ }
+ if (Global_Variable_Query(kVariableChapter) == 5 && Actor_Query_Goal_Number(kActorSadik) < 400) {
+ Actor_Set_Goal_Number(kActorSadik, 400);
+ }
+ if (Actor_Query_Goal_Number(kActorSadik) == 411) {
+ if (Game_Flag_Query(657)) {
+ Actor_Set_Goal_Number(kActorSadik, 412);
+ }
+ }
+ return false;
}
void AIScriptSadik::TimerExpired(int timer) {
@@ -192,7 +195,7 @@ void AIScriptSadik::Retired(int byActorId) {
Delay(2000);
Player_Set_Combat_Mode(0);
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -12.0f, -41.58f, 72.0f, 0, 1, 0, 0);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(579);
Game_Flag_Reset(653);
diff --git a/engines/bladerunner/script/ai/steele.cpp b/engines/bladerunner/script/ai/steele.cpp
index e1f8feed19..c5c5b0cb3c 100644
--- a/engines/bladerunner/script/ai/steele.cpp
+++ b/engines/bladerunner/script/ai/steele.cpp
@@ -42,7 +42,7 @@ void AIScriptSteele::Initialize() {
Actor_Put_In_Set(kActorSteele, kSetFreeSlotG);
Actor_Set_At_Waypoint(kActorSteele, 39, 0);
- Actor_Set_Goal_Number(kActorSteele, 0);
+ Actor_Set_Goal_Number(kActorSteele, kGoalSteeleDefault);
Actor_Clue_Acquire(kActorSteele, kClueCrimeSceneNotes, true, -1);
}
@@ -87,7 +87,7 @@ bool AIScriptSteele::Update() {
}
if (Actor_Query_Goal_Number(kActorSteele) == 11) {
- Actor_Set_Goal_Number(kActorSteele, 0);
+ Actor_Set_Goal_Number(kActorSteele, kGoalSteeleDefault);
return true;
}
@@ -278,17 +278,17 @@ void AIScriptSteele::CompletedMovementTrack() {
Actor_Set_Goal_Number(kActorSteele, 11);
break;
- case 100:
- if (Actor_Query_Goal_Number(kActorSteele) == 100) { //why is this here? double check?
+ case kGoalSteeleApprehendIzo:
+ if (Actor_Query_Goal_Number(kActorSteele) == kGoalSteeleApprehendIzo) { //why is this here? double check?
Player_Set_Combat_Mode(kActorMcCoy);
- if (Actor_Query_Goal_Number(kActorIzo) != 199) {
+ if (Actor_Query_Goal_Number(kActorIzo) != kGoalIzoDie) {
if (Actor_Query_In_Between_Two_Actors(kActorMcCoy, kActorSteele, kActorIzo)) {
- Actor_Set_Goal_Number(kActorSteele, 125);
+ Actor_Set_Goal_Number(kActorSteele, kGoalSteeleIzoBlockedByMcCoy);
} else if (Game_Flag_Query(kFlagIzoIsReplicant)) {
- Actor_Set_Goal_Number(kActorSteele, 120);
+ Actor_Set_Goal_Number(kActorSteele, kGoalSteeleShootIzo);
} else {
- Actor_Set_Goal_Number(kActorSteele, 121);
+ Actor_Set_Goal_Number(kActorSteele, kGoalSteeleArrestIzo);
}
}
}
@@ -332,7 +332,7 @@ void AIScriptSteele::CompletedMovementTrack() {
Actor_Set_Goal_Number(kActorSteele, 433);
Player_Set_Combat_Mode(kActorSteele);
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -731.0f, 8.26f, -657.0f, 0, false, false, 0);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(578);
Set_Enter(kSetKP07, kSceneKP07);
@@ -634,10 +634,10 @@ bool AIScriptSteele::GoalChanged(int currentGoalNumber, int newGoalNumber) {
} else {
Actor_Clue_Acquire(kActorSteele, kClueGrigorianInterviewB2, true, kActorGrigorian);
}
- Actor_Set_Goal_Number(kActorSteele, 0);
+ Actor_Set_Goal_Number(kActorSteele, kGoalSteeleDefault);
return true;
- case 100:
+ case kGoalSteeleApprehendIzo:
AI_Movement_Track_Flush(kActorSteele);
if (Game_Flag_Query(kFlagIzoIsReplicant)) {
AI_Movement_Track_Append_Run(kActorSteele, 202, 0);
@@ -727,92 +727,92 @@ bool AIScriptSteele::GoalChanged(int currentGoalNumber, int newGoalNumber) {
}
return true;
- case 120:
+ case kGoalSteeleShootIzo:
Actor_Force_Stop_Walking(kActorMcCoy);
Sound_Play(27, 100, 0, 0, 50);
- Actor_Set_Goal_Number(kActorIzo, 199);
- Actor_Change_Animation_Mode(kActorMcCoy, 0);
- Actor_Face_Actor(kActorMcCoy, kActorSteele, 1);
- Loop_Actor_Walk_To_Actor(kActorSteele, 0, 48, 0, 1);
- Actor_Says(kActorSteele, 1860, 3);
- Actor_Face_Actor(kActorMcCoy, kActorSteele, 1);
+ Actor_Set_Goal_Number(kActorIzo, kGoalIzoDie);
+ Actor_Change_Animation_Mode(kActorMcCoy, kAnimationModeIdle);
+ Actor_Face_Actor(kActorMcCoy, kActorSteele, true);
+ Loop_Actor_Walk_To_Actor(kActorSteele, 0, 48, false, true);
+ Actor_Says(kActorSteele, 1860, kAnimationModeTalk);
+ Actor_Face_Actor(kActorMcCoy, kActorSteele, true);
Actor_Says(kActorMcCoy, 4825, 18);
- Actor_Face_Actor(kActorSteele, kActorMcCoy, 1);
- Actor_Says(kActorSteele, 1870, 3);
- Actor_Says(kActorSteele, 1880, 3);
+ Actor_Face_Actor(kActorSteele, kActorMcCoy, true);
+ Actor_Says(kActorSteele, 1870, kAnimationModeTalk);
+ Actor_Says(kActorSteele, 1880, kAnimationModeTalk);
Actor_Says(kActorMcCoy, 4830, 13);
- Actor_Says(kActorSteele, 1890, 3);
- Actor_Says(kActorSteele, 1900, 3);
- Actor_Face_Actor(kActorSteele, kActorIzo, 1);
- Actor_Says(kActorSteele, 1910, 3);
- Actor_Says(kActorSteele, 1920, 3);
- Actor_Face_Actor(kActorMcCoy, kActorSteele, 1);
- Actor_Face_Actor(kActorSteele, kActorMcCoy, 1);
- Actor_Says(kActorSteele, 1930, 3);
- Actor_Set_Goal_Number(kActorSteele, 130);
+ Actor_Says(kActorSteele, 1890, kAnimationModeTalk);
+ Actor_Says(kActorSteele, 1900, kAnimationModeTalk);
+ Actor_Face_Actor(kActorSteele, kActorIzo, true);
+ Actor_Says(kActorSteele, 1910, kAnimationModeTalk);
+ Actor_Says(kActorSteele, 1920, kAnimationModeTalk);
+ Actor_Face_Actor(kActorMcCoy, kActorSteele, true);
+ Actor_Face_Actor(kActorSteele, kActorMcCoy, true);
+ Actor_Says(kActorSteele, 1930, kAnimationModeTalk);
+ Actor_Set_Goal_Number(kActorSteele, kGoalSteeleLeaveRC03);
Player_Gains_Control();
return true;
- case 121:
+ case kGoalSteeleArrestIzo:
Actor_Force_Stop_Walking(kActorMcCoy);
- Actor_Face_Actor(kActorSteele, kActorIzo, 1);
- Actor_Change_Animation_Mode(kActorIzo, 0);
- Actor_Face_Actor(kActorIzo, kActorSteele, 1);
- Actor_Says_With_Pause(kActorSteele, 2010, 0.0, 4);
- Actor_Change_Animation_Mode(kActorSteele, 4);
- Loop_Actor_Walk_To_Actor(kActorSteele, kActorIzo, 60, 0, 0);
- Actor_Change_Animation_Mode(kActorSteele, 4);
+ Actor_Face_Actor(kActorSteele, kActorIzo, true);
+ Actor_Change_Animation_Mode(kActorIzo, kAnimationModeIdle);
+ Actor_Face_Actor(kActorIzo, kActorSteele, true);
+ Actor_Says_With_Pause(kActorSteele, 2010, 0.0, kAnimationModeCombatIdle);
+ Actor_Change_Animation_Mode(kActorSteele, kAnimationModeCombatIdle);
+ Loop_Actor_Walk_To_Actor(kActorSteele, kActorIzo, 60, false, false);
+ Actor_Change_Animation_Mode(kActorSteele, kAnimationModeCombatIdle);
_animationState = 23;
_animationFrame = 0;
- Actor_Says(kActorIzo, 660, 3);
- Actor_Says_With_Pause(kActorSteele, 2020, 0.0f, 4);
- Actor_Says_With_Pause(kActorSteele, 2030, 0.0f, 4);
- Actor_Change_Animation_Mode(kActorSteele, 4);
- Actor_Says(kActorIzo, 670, 3);
- Actor_Says(kActorSteele, 2040, 4);
- Actor_Says(kActorIzo, 680, 3);
- Actor_Says(kActorSteele, 2050, 3);
- Actor_Face_Actor(kActorSteele, kActorMcCoy, 1);
- Actor_Says(kActorSteele, 2060, 3);
- Actor_Says(kActorMcCoy, 4845, 3);
- Actor_Says(kActorSteele, 2070, 3);
- Actor_Says(kActorSteele, 2080, 3);
- Actor_Face_Actor(kActorSteele, kActorIzo, 1);
- Actor_Says(kActorSteele, 2090, 3);
- Actor_Says_With_Pause(kActorSteele, 2100, 1.0f, 3);
- Actor_Says(kActorIzo, 690, 3);
- Actor_Says(kActorSteele, 2110, 3);
- Actor_Says(kActorSteele, 2120, 3);
- Actor_Face_Actor(kActorSteele, kActorMcCoy, 1);
- Actor_Says(kActorSteele, 2140, 3);
- Actor_Says(kActorMcCoy, 4850, 3);
- Actor_Says(kActorSteele, 2150, 3);
- Actor_Set_Goal_Number(kActorIzo, 120);
- Actor_Set_Goal_Number(kActorSteele, 130);
- Actor_Set_Goal_Number(kActorSteele, 0);
- return true;
-
- case 125:
+ Actor_Says(kActorIzo, 660, kAnimationModeTalk);
+ Actor_Says_With_Pause(kActorSteele, 2020, 0.0f, kAnimationModeCombatIdle);
+ Actor_Says_With_Pause(kActorSteele, 2030, 0.0f, kAnimationModeCombatIdle);
+ Actor_Change_Animation_Mode(kActorSteele, kAnimationModeCombatIdle);
+ Actor_Says(kActorIzo, 670, kAnimationModeTalk);
+ Actor_Says(kActorSteele, 2040, kAnimationModeCombatIdle);
+ Actor_Says(kActorIzo, 680, kAnimationModeTalk);
+ Actor_Says(kActorSteele, 2050, kAnimationModeTalk);
+ Actor_Face_Actor(kActorSteele, kActorMcCoy, true);
+ Actor_Says(kActorSteele, 2060, kAnimationModeTalk);
+ Actor_Says(kActorMcCoy, 4845, kAnimationModeTalk);
+ Actor_Says(kActorSteele, 2070, kAnimationModeTalk);
+ Actor_Says(kActorSteele, 2080, kAnimationModeTalk);
+ Actor_Face_Actor(kActorSteele, kActorIzo, true);
+ Actor_Says(kActorSteele, 2090, kAnimationModeTalk);
+ Actor_Says_With_Pause(kActorSteele, 2100, 1.0f, kAnimationModeTalk);
+ Actor_Says(kActorIzo, 690, kAnimationModeTalk);
+ Actor_Says(kActorSteele, 2110, kAnimationModeTalk);
+ Actor_Says(kActorSteele, 2120, kAnimationModeTalk);
+ Actor_Face_Actor(kActorSteele, kActorMcCoy, true);
+ Actor_Says(kActorSteele, 2140, kAnimationModeTalk);
+ Actor_Says(kActorMcCoy, 4850, kAnimationModeTalk);
+ Actor_Says(kActorSteele, 2150, kAnimationModeTalk);
+ Actor_Set_Goal_Number(kActorIzo, kGoalIzoGetArrested);
+ Actor_Set_Goal_Number(kActorSteele, kGoalSteeleLeaveRC03);
+ Actor_Set_Goal_Number(kActorSteele, kGoalSteeleDefault);
+ return true;
+
+ case kGoalSteeleIzoBlockedByMcCoy:
Actor_Force_Stop_Walking(kActorMcCoy);
- Actor_Set_Goal_Number(kActorIzo, 114);
- Actor_Says(kActorSteele, 1940, 3);
- Loop_Actor_Walk_To_Actor(kActorSteele, 0, 60, 0, 1);
- Actor_Face_Actor(kActorSteele, kActorMcCoy, 1);
- Actor_Face_Actor(kActorMcCoy, kActorSteele, 1);
- Actor_Says(kActorSteele, 1950, 3);
+ Actor_Set_Goal_Number(kActorIzo, kGoalIzoRC03RunAway);
+ Actor_Says(kActorSteele, 1940, kAnimationModeTalk);
+ Loop_Actor_Walk_To_Actor(kActorSteele, 0, 60, false, true);
+ Actor_Face_Actor(kActorSteele, kActorMcCoy, true);
+ Actor_Face_Actor(kActorMcCoy, kActorSteele, true);
+ Actor_Says(kActorSteele, 1950, kAnimationModeTalk);
Actor_Says(kActorMcCoy, 4835, 14);
- Actor_Says(kActorSteele, 1980, 3);
+ Actor_Says(kActorSteele, 1980, kAnimationModeTalk);
Actor_Says(kActorMcCoy, 4840, 15);
- Actor_Says(kActorSteele, 1990, 3);
- Actor_Says(kActorSteele, 2000, 3);
- Actor_Set_Goal_Number(kActorSteele, 130);
+ Actor_Says(kActorSteele, 1990, kAnimationModeTalk);
+ Actor_Says(kActorSteele, 2000, kAnimationModeTalk);
+ Actor_Set_Goal_Number(kActorSteele, kGoalSteeleLeaveRC03);
Scene_Exits_Enable();
return true;
case 126:
return true;
- case 130:
+ case kGoalSteeleLeaveRC03:
AI_Movement_Track_Flush(kActorSteele);
AI_Movement_Track_Append(kActorSteele, 174, 0);
AI_Movement_Track_Append(kActorSteele, 35, 0);
@@ -1899,7 +1899,7 @@ bool AIScriptSteele::UpdateAnimation(int *animation, int *frame) {
bool AIScriptSteele::ChangeAnimationMode(int mode) {
switch (mode) {
- case 0:
+ case kGoalSteeleDefault:
if (Game_Flag_Query(603)) {
_var1 = 3;
} else {
@@ -1951,7 +1951,9 @@ bool AIScriptSteele::ChangeAnimationMode(int mode) {
case 1:
if ((_animationState != 4 && _animationState != 23 && _animationState != 25 && _animationState != 26)
|| _animationState > 26) {
- if (Actor_Query_Goal_Number(kActorSteele) != 100 && Actor_Query_Goal_Number(kActorSteele) != 121) {
+ if (Actor_Query_Goal_Number(kActorSteele) != kGoalSteeleApprehendIzo
+ && Actor_Query_Goal_Number(kActorSteele) != kGoalSteeleArrestIzo
+ ) {
_animationState = 2;
_animationFrame = 0;
} else {
@@ -1964,9 +1966,10 @@ bool AIScriptSteele::ChangeAnimationMode(int mode) {
}
break;
case 2:
- if (Actor_Query_Goal_Number(kActorSteele) != 100
- && Actor_Query_Goal_Number(kActorSteele) != 121
- && _animationState != 23) {
+ if (Actor_Query_Goal_Number(kActorSteele) != kGoalSteeleApprehendIzo
+ && Actor_Query_Goal_Number(kActorSteele) != kGoalSteeleArrestIzo
+ && _animationState != 23
+ ) {
_animationState = 3;
_animationFrame = 0;
} else {
@@ -2187,7 +2190,7 @@ void AIScriptSteele::SetAnimationState(int animationState, int animationFrame, i
bool AIScriptSteele::ReachedMovementTrackWaypoint(int waypointId) {
if (waypointId == 174
- && Actor_Query_Goal_Number(kActorSteele) == 130
+ && Actor_Query_Goal_Number(kActorSteele) == kGoalSteeleLeaveRC03
)
Actor_Set_Goal_Number(kActorSteele, kGoalSteeleGoToPoliceStation);
diff --git a/engines/bladerunner/script/scene/ar01.cpp b/engines/bladerunner/script/scene/ar01.cpp
index adef4d4894..ed4a96b086 100644
--- a/engines/bladerunner/script/scene/ar01.cpp
+++ b/engines/bladerunner/script/scene/ar01.cpp
@@ -50,13 +50,13 @@ void SceneScriptAR01::InitializeScene() {
Setup_Scene_Information(-152.0f, 0.0f, 332.0f, 545);
}
Scene_Exit_Add_2D_Exit(kAR01ExitHC01, 134, 165, 177, 290, 3);
- Scene_Exit_Add_2D_Exit(kAR01ExitAR02, 319, 0, 639, 207, 0);
+ Scene_Exit_Add_2D_Exit(kAR01ExitAR02, 319, 0, 639, 207, 0);
if (Game_Flag_Query(kFlagSpinnerAtAR01)) {
Scene_Exit_Add_2D_Exit(kAR01ExitSpinner, 0, 404, 99, 479, 2);
}
- Ambient_Sounds_Add_Looping_Sound(54, 50, 1, 1);
- Ambient_Sounds_Add_Looping_Sound(81, 60, 100, 1);
- Ambient_Sounds_Add_Looping_Sound(241, 50, 1, 1);
+ Ambient_Sounds_Add_Looping_Sound( 54, 50, 1, 1);
+ Ambient_Sounds_Add_Looping_Sound( 81, 60, 100, 1);
+ Ambient_Sounds_Add_Looping_Sound(241, 50, 1, 1);
Ambient_Sounds_Add_Sound(182, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(184, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(185, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
@@ -66,20 +66,20 @@ void SceneScriptAR01::InitializeScene() {
Ambient_Sounds_Add_Sound(191, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(192, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(195, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(242, 3, 30, 11, 11, 50, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(243, 3, 30, 11, 11, 50, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(244, 3, 30, 11, 11, 50, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(245, 3, 30, 11, 11, 50, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(246, 3, 30, 11, 11, 50, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(247, 3, 30, 11, 11, 50, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(248, 3, 30, 11, 11, 50, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(249, 3, 30, 11, 11, 50, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Speech_Sound(60, 0, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1);
+ Ambient_Sounds_Add_Sound(242, 3, 30, 11, 11, 50, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(243, 3, 30, 11, 11, 50, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(244, 3, 30, 11, 11, 50, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(245, 3, 30, 11, 11, 50, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(246, 3, 30, 11, 11, 50, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(247, 3, 30, 11, 11, 50, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(248, 3, 30, 11, 11, 50, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(249, 3, 30, 11, 11, 50, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Speech_Sound(60, 0, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1);
Ambient_Sounds_Add_Speech_Sound(60, 20, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1);
Ambient_Sounds_Add_Speech_Sound(60, 40, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1);
Ambient_Sounds_Add_Speech_Sound(60, 50, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1);
- Ambient_Sounds_Add_Sound(68, 10, 180, 16, 25, 0, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(69, 10, 180, 16, 25, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 68, 10, 180, 16, 25, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 69, 10, 180, 16, 25, 0, 0, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(375, 10, 180, 50, 100, 0, 0, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(376, 10, 180, 50, 100, 0, 0, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(377, 10, 180, 50, 100, 0, 0, -101, -101, 0, 0);
@@ -130,18 +130,41 @@ bool SceneScriptAR01::ClickedOn3DObject(const char *objectName, bool a2) {
}
bool SceneScriptAR01::ClickedOnActor(int actorId) {
- if (actorId == kActorInsectDealer || actorId == kActorHasan) {
+ if (actorId == kActorInsectDealer
+ || actorId == kActorHasan
+ ) {
Actor_Face_Actor(kActorMcCoy, actorId, true);
Actor_Says(kActorMcCoy, 8910, 14);
return true;
}
+
if (actorId == kActorFishDealer) {
Actor_Set_Goal_Number(kActorFishDealer, 2);
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -120.73f, 0.0f, 219.17f, 12, 1, false, 0)) {
Actor_Face_Actor(kActorMcCoy, kActorFishDealer, true);
Actor_Face_Actor(kActorFishDealer, kActorMcCoy, true);
- if (Game_Flag_Query(328)) {
- if (Actor_Clue_Query(kActorMcCoy, kClueStrangeScale1) && !Actor_Clue_Query(kActorMcCoy, kClueFishLadyInterview)) {
+ if (!Game_Flag_Query(kFlagFishDealerTalk)) {
+ Actor_Says(kActorMcCoy, 0, 18);
+ Actor_Says(kActorFishDealer, 0, 14);
+ Actor_Says(kActorFishDealer, 10, 14);
+ Actor_Says(kActorFishDealer, 20, 14);
+ Actor_Says(kActorFishDealer, 30, 14);
+ Actor_Says(kActorMcCoy, 5, 17);
+ Actor_Says(kActorFishDealer, 40, 14);
+ Actor_Says(kActorMcCoy, 10, 13);
+ Actor_Says(kActorFishDealer, 50, 14);
+ Actor_Says(kActorMcCoy, 15, 17);
+ Actor_Says(kActorFishDealer, 60, 14);
+ Actor_Says(kActorFishDealer, 70, 14);
+ Actor_Says(kActorFishDealer, 80, 14);
+ Actor_Says(kActorFishDealer, 90, 14);
+ Actor_Says(kActorMcCoy, 25, 13);
+ Game_Flag_Set(kFlagFishDealerTalk);
+ Actor_Set_Goal_Number(kActorFishDealer, 1);
+ } else {
+ if ( Actor_Clue_Query(kActorMcCoy, kClueStrangeScale1)
+ && !Actor_Clue_Query(kActorMcCoy, kClueFishLadyInterview)
+ ) {
Actor_Says(kActorMcCoy, 40, 11);
Actor_Says(kActorFishDealer, 120, 14);
Actor_Says(kActorMcCoy, 45, 17);
@@ -162,24 +185,6 @@ bool SceneScriptAR01::ClickedOnActor(int actorId) {
}
}
Actor_Set_Goal_Number(kActorFishDealer, 1);
- } else {
- Actor_Says(kActorMcCoy, 0, 18);
- Actor_Says(kActorFishDealer, 0, 14);
- Actor_Says(kActorFishDealer, 10, 14);
- Actor_Says(kActorFishDealer, 20, 14);
- Actor_Says(kActorFishDealer, 30, 14);
- Actor_Says(kActorMcCoy, 5, 17);
- Actor_Says(kActorFishDealer, 40, 14);
- Actor_Says(kActorMcCoy, 10, 13);
- Actor_Says(kActorFishDealer, 50, 14);
- Actor_Says(kActorMcCoy, 15, 17);
- Actor_Says(kActorFishDealer, 60, 14);
- Actor_Says(kActorFishDealer, 70, 14);
- Actor_Says(kActorFishDealer, 80, 14);
- Actor_Says(kActorFishDealer, 90, 14);
- Actor_Says(kActorMcCoy, 25, 13);
- Game_Flag_Set(328);
- Actor_Set_Goal_Number(kActorFishDealer, 1);
}
return true;
}
@@ -193,8 +198,8 @@ bool SceneScriptAR01::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptAR01::ClickedOnExit(int exitId) {
if (exitId == kAR01ExitHC01) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -358.0, 0.0, -149.0, 0, 1, false, 0)) {
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -477.0, 0.0, -149.0, 0, 0, false, 0);
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -358.0, 0.0, -149.0, 0, true, false, 0)) {
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -477.0, 0.0, -149.0, 0, false, false, 0);
Game_Flag_Set(kFlagAR01toHC01);
Game_Flag_Set(464);
Game_Flag_Reset(kFlagMcCoyAtARxx);
@@ -204,8 +209,9 @@ bool SceneScriptAR01::ClickedOnExit(int exitId) {
}
return true;
}
+
if (exitId == kAR01ExitAR02) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -182.0, 0.0, -551.0, 0, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -182.0, 0.0, -551.0, 0, true, false, 0)) {
Game_Flag_Set(kFlagAR01toAR02);
Async_Actor_Walk_To_XYZ(kActorMcCoy, -222.0, 0.0, -690.0, 0, false);
Set_Enter(kSetAR01_AR02, kSceneAR02);
@@ -213,32 +219,37 @@ bool SceneScriptAR01::ClickedOnExit(int exitId) {
}
return true;
}
+
if (exitId == kAR01ExitSpinner) {
- if (Game_Flag_Query(486) == 1) {
+ if (Game_Flag_Query(kFlagDNARowAvailable)) {
Spinner_Set_Selectable_Destination_Flag(kSpinnerDestinationDNARow, true);
}
- int v1 = Loop_Actor_Walk_To_XYZ(kActorMcCoy, -164.0f, 0.0f, 332.0f, 0, 1, false, 0);
+ int v1 = Loop_Actor_Walk_To_XYZ(kActorMcCoy, -164.0f, 0.0f, 332.0f, 0, true, false, 0);
Actor_Face_Heading(kActorMcCoy, 545, false);
- if (Actor_Query_Goal_Number(kActorIzo) >= 2 && Actor_Query_Goal_Number(kActorIzo) <= 103) {
+ if (Actor_Query_Goal_Number(kActorIzo) >= kGoalIzoTakePhoto
+ && Actor_Query_Goal_Number(kActorIzo) <= kGoalIzoEscape
+ ) {
Player_Loses_Control();
Actor_Put_In_Set(kActorIzo, kSetAR01_AR02);
Actor_Set_At_XYZ(kActorIzo, -448.0, 0.0, 130.0, 0);
- Loop_Actor_Walk_To_XYZ(kActorIzo, -323.0f, 0.64f, 101.74f, 48, 0, true, 0);
+ Loop_Actor_Walk_To_XYZ(kActorIzo, -323.0f, 0.64f, 101.74f, 48, false, true, 0);
Loop_Actor_Walk_To_Actor(kActorIzo, kActorMcCoy, 48, 0, true);
Actor_Face_Actor(kActorIzo, kActorMcCoy, true);
- Actor_Change_Animation_Mode(kActorIzo, 6);
+ Actor_Change_Animation_Mode(kActorIzo, kAnimationModeCombatAttack);
Actor_Says(kActorMcCoy, 1800, 21);
Actor_Change_Animation_Mode(kActorMcCoy, 48);
Player_Gains_Control();
Actor_Retired_Here(kActorMcCoy, 12, 48, 1, kActorIzo);
} else if (!v1) {
- if (Game_Flag_Query(486) && !Game_Flag_Query(660)) {
+ if ( Game_Flag_Query(kFlagDNARowAvailable)
+ && !Game_Flag_Query(kFlagDNARowAvailableTalk)
+ ) {
Actor_Voice_Over(4310, kActorVoiceOver);
Actor_Voice_Over(4320, kActorVoiceOver);
Actor_Voice_Over(4330, kActorVoiceOver);
Actor_Voice_Over(4340, kActorVoiceOver);
Actor_Voice_Over(4350, kActorVoiceOver);
- Game_Flag_Set(660);
+ Game_Flag_Set(kFlagDNARowAvailableTalk);
}
Game_Flag_Reset(kFlagMcCoyAtCTxx);
Game_Flag_Reset(kFlagMcCoyAtRCxx);
@@ -349,12 +360,12 @@ void SceneScriptAR01::SceneFrameAdvanced(int frame) {
&& Game_Flag_Query(kFlagArrivedFromSpinner2)
) {
Actor_Face_Heading(kActorMcCoy, 545, false);
- Actor_Change_Animation_Mode(kActorMcCoy, 42);
+ Actor_Change_Animation_Mode(kActorMcCoy, kAnimationModeSpinnerGetOut);
Game_Flag_Reset(kFlagArrivedFromSpinner2);
} else if ( frame == 196
&& !Game_Flag_Query(kFlagArrivedFromSpinner2
)) {
- Actor_Change_Animation_Mode(kActorMcCoy, 41);
+ Actor_Change_Animation_Mode(kActorMcCoy, kAnimationModeSpinnerGetIn);
}
}
@@ -362,8 +373,8 @@ void SceneScriptAR01::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
}
void SceneScriptAR01::PlayerWalkedIn() {
- if (!Game_Flag_Query(710)) {
- Game_Flag_Set(710);
+ if (!Game_Flag_Query(kFlagAR01Entered)) {
+ Game_Flag_Set(kFlagAR01Entered);
}
if (Game_Flag_Query(kFlagHC01toAR01)) {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -358.0f, 0.0f, -149.0f, 0, true, false, 0);
@@ -376,7 +387,7 @@ void SceneScriptAR01::PlayerWalkedIn() {
void SceneScriptAR01::PlayerWalkedOut() {
Actor_Set_Invisible(kActorMcCoy, false);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
if (!Game_Flag_Query(kFlagMcCoyAtHCxx)) {
Music_Stop(2);
@@ -384,7 +395,7 @@ void SceneScriptAR01::PlayerWalkedOut() {
if (!Game_Flag_Query(kFlagAR01toHC01)
&& !Game_Flag_Query(kFlagAR01toAR02)
) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Outtake_Play(kOuttakeTowards3, true, -1);
}
diff --git a/engines/bladerunner/script/scene/ar02.cpp b/engines/bladerunner/script/scene/ar02.cpp
index ea95e7d60f..a53aee8016 100644
--- a/engines/bladerunner/script/scene/ar02.cpp
+++ b/engines/bladerunner/script/scene/ar02.cpp
@@ -31,11 +31,11 @@ void SceneScriptAR02::InitializeScene() {
} else {
Setup_Scene_Information(-182.0f, 0.0f, -551.0f, 973);
}
- Scene_Exit_Add_2D_Exit(0, 0, 439, 212, 479, 2);
+ Scene_Exit_Add_2D_Exit(0, 0, 439, 212, 479, 2);
Scene_Exit_Add_2D_Exit(1, 81, 202, 215, 406, 3);
- Ambient_Sounds_Add_Looping_Sound(54, 50, 1, 1);
+ Ambient_Sounds_Add_Looping_Sound(54, 50, 1, 1);
Ambient_Sounds_Add_Looping_Sound(81, 60, 100, 1);
- Ambient_Sounds_Add_Looping_Sound(241, 50, 1, 1);
+ Ambient_Sounds_Add_Looping_Sound(241, 50, 1, 1);
Ambient_Sounds_Add_Sound(182, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(184, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(185, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
@@ -53,12 +53,12 @@ void SceneScriptAR02::InitializeScene() {
Ambient_Sounds_Add_Sound(247, 3, 30, 16, 16, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(248, 3, 30, 16, 16, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(249, 3, 30, 16, 16, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Speech_Sound(60, 0, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1);
+ Ambient_Sounds_Add_Speech_Sound(60, 0, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1);
Ambient_Sounds_Add_Speech_Sound(60, 20, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1);
Ambient_Sounds_Add_Speech_Sound(60, 40, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1);
Ambient_Sounds_Add_Speech_Sound(60, 50, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1);
- Ambient_Sounds_Add_Sound(68, 10, 180, 16, 25, 0, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(69, 10, 180, 16, 25, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 68, 10, 180, 16, 25, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 69, 10, 180, 16, 25, 0, 0, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(375, 10, 180, 50, 100, 0, 0, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(376, 10, 180, 50, 100, 0, 0, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(377, 10, 180, 50, 100, 0, 0, -101, -101, 0, 0);
@@ -80,11 +80,13 @@ void SceneScriptAR02::InitializeScene() {
void SceneScriptAR02::SceneLoaded() {
Obstacle_Object("DF_BOOTH", true);
if (!Game_Flag_Query(374)) {
- Item_Add_To_World(106, 976, 0, -442.84f, 36.77f, -1144.51f, 360, 36, 36, false, true, false, true);
+ Item_Add_To_World(kItemScrorpions, 976, kSetAR01_AR02, -442.84f, 36.77f, -1144.51f, 360, 36, 36, false, true, false, true);
}
- if (Global_Variable_Query(kVariableChapter) == 4 && !Game_Flag_Query(374)) {
+ if ( Global_Variable_Query(kVariableChapter) == 4
+ && !Game_Flag_Query(374)
+ ) {
Game_Flag_Set(kFlagNotUsed0);
- Item_Remove_From_World(106);
+ Item_Remove_From_World(kItemScrorpions);
}
}
@@ -97,17 +99,19 @@ bool SceneScriptAR02::ClickedOn3DObject(const char *objectName, bool a2) {
}
bool SceneScriptAR02::ClickedOnActor(int actorId) {
- if (actorId == 16) {
+ if (actorId == kActorInsectDealer) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -386.96f, 0.0f, -1078.45f, 12, 1, false, 0)) {
Actor_Face_Actor(kActorMcCoy, kActorInsectDealer, true);
Actor_Face_Actor(kActorInsectDealer, kActorMcCoy, true);
if (Global_Variable_Query(kVariableChapter) == 2) {
- if (Game_Flag_Query(329) && !Game_Flag_Query(366)) {
- Game_Flag_Set(366);
+ if ( Game_Flag_Query(kFlagInsectDealerInterviewed)
+ && !Game_Flag_Query(kFlagInsectDealerTalk)
+ ) {
+ Game_Flag_Set(kFlagInsectDealerTalk);
Player_Loses_Control();
ADQ_Flush();
ADQ_Add(kActorInsectDealer, 210, 14);
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -350.66f, 0.0f, -1117.19f, 0, 0, false, 0);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -350.66f, 0.0f, -1117.19f, 0, false, false, 0);
Actor_Face_Actor(kActorMcCoy, kActorInsectDealer, true);
Actor_Says(kActorMcCoy, 110, 18);
Actor_Says(kActorInsectDealer, 230, 14);
@@ -116,16 +120,18 @@ bool SceneScriptAR02::ClickedOnActor(int actorId) {
Item_Pickup_Spin_Effect(956, 288, 257);
Actor_Says(kActorInsectDealer, 250, 14);
Player_Gains_Control();
- sub_402AE0();
- } else if (Game_Flag_Query(329)) {
+ dialogueWithInsectDealer2();
+ } else if (Game_Flag_Query(kFlagInsectDealerInterviewed)) {
Actor_Says(kActorMcCoy, 75, 18);
Actor_Says(kActorInsectDealer, 60, 12);
Actor_Says(kActorInsectDealer, 70, 14);
} else {
- sub_402694();
+ dialogueWithInsectDealer1();
}
} else if (Global_Variable_Query(kVariableChapter) > 2) {
- if (Actor_Clue_Query(kActorMcCoy, kCluePeruvianLadyInterview) && !Actor_Clue_Query(kActorMcCoy, kClueDragonflyCollection)) {
+ if ( Actor_Clue_Query(kActorMcCoy, kCluePeruvianLadyInterview)
+ && !Actor_Clue_Query(kActorMcCoy, kClueDragonflyCollection)
+ ) {
Actor_Says(kActorMcCoy, 205, 16);
Actor_Says(kActorInsectDealer, 290, 12);
Actor_Says(kActorInsectDealer, 300, 13);
@@ -154,41 +160,45 @@ bool SceneScriptAR02::ClickedOnActor(int actorId) {
return true;
}
}
- if (actorId == 20 && Global_Variable_Query(kVariableChapter) == 2) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -240.79f, 0.0f, -1328.89f, 12, 1, false, 0)) {
+
+ if (actorId == kActorHasan
+ && Global_Variable_Query(kVariableChapter) == 2
+ ) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -240.79f, 0.0f, -1328.89f, 12, true, false, 0)) {
Actor_Face_Actor(kActorMcCoy, kActorHasan, true);
Actor_Face_Actor(kActorHasan, kActorMcCoy, true);
- if (Game_Flag_Query(330)) {
- sub_402CE4();
- return false;
+ if (!Game_Flag_Query(kFlagHassanTalk)) {
+ Actor_Says(kActorHasan, 0, 14);
+ Actor_Says(kActorMcCoy, 140, 18);
+ Game_Flag_Set(kFlagHassanTalk);
+ return true;
}
- Actor_Says(kActorHasan, 0, 14);
- Actor_Says(kActorMcCoy, 140, 18);
- Game_Flag_Set(330);
- return true;
+ dialogueWithHassan();
}
}
return false;
}
bool SceneScriptAR02::ClickedOnItem(int itemId, bool a2) {
- if (itemId == 106) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -386.96f, 0.0f, -1078.45f, 12, 1, false, 0)) {
+ if (itemId == kItemScrorpions) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -386.96f, 0.0f, -1078.45f, 12, true, false, 0)) {
Actor_Face_Actor(kActorMcCoy, kActorInsectDealer, true);
- if (!Game_Flag_Query(331)) {
+ if (!Game_Flag_Query(kFlagScorpionsChecked)) {
Actor_Says(kActorInsectDealer, 0, 14);
Actor_Says(kActorMcCoy, 55, 18);
Actor_Says(kActorInsectDealer, 10, 14);
Actor_Says(kActorMcCoy, 60, 18);
Actor_Says(kActorInsectDealer, 20, 14);
- Game_Flag_Set(331);
- } else if (Game_Flag_Query(331) && !Game_Flag_Query(367)) {
+ Game_Flag_Set(kFlagScorpionsChecked);
+ } else if ( Game_Flag_Query(kFlagScorpionsChecked)
+ && !Game_Flag_Query(kFlagStungByScorpion)
+ ) {
Actor_Says(kActorMcCoy, 65, 21);
Actor_Says(kActorInsectDealer, 30, 14);
Actor_Says(kActorInsectDealer, 40, 14);
Actor_Says(kActorMcCoy, 70, 18);
Actor_Says(kActorInsectDealer, 50, 14);
- Game_Flag_Set(367);
+ Game_Flag_Set(kFlagStungByScorpion);
} else {
Actor_Says(kActorMcCoy, 8527, 14);
}
@@ -207,6 +217,7 @@ bool SceneScriptAR02::ClickedOnExit(int exitId) {
}
return true;
}
+
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -465.0f, 0.0f, -799.0f, 0, 1, false, 0)) {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -560.0f, 0.0f, -799.0f, 0, 0, false, 0);
@@ -236,36 +247,43 @@ void SceneScriptAR02::PlayerWalkedIn() {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -465.0f, 0.0f, -799.0f, 0, 0, false, 0);
Game_Flag_Reset(kFlagRC03toAR02);
}
- Game_Flag_Set(726);
+ Game_Flag_Set(kFlagAR02Entered);
}
void SceneScriptAR02::PlayerWalkedOut() {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
}
void SceneScriptAR02::DialogueQueueFlushed(int a1) {
}
-void SceneScriptAR02::sub_402694() {
+void SceneScriptAR02::dialogueWithInsectDealer1() {
Dialogue_Menu_Clear_List();
- if (Actor_Clue_Query(kActorMcCoy, kClueDragonflyEarring) || Actor_Clue_Query(kActorMcCoy, kClueBombingSuspect)) {
- DM_Add_To_List_Never_Repeat_Once_Selected(490, 3, 5, 5);
+ if (Actor_Clue_Query(kActorMcCoy, kClueDragonflyEarring)
+ || Actor_Clue_Query(kActorMcCoy, kClueBombingSuspect)
+ ) {
+ DM_Add_To_List_Never_Repeat_Once_Selected(490, 3, 5, 5); // EARRING
}
- if (Actor_Clue_Query(kActorMcCoy, kClueDragonflyAnklet) && !Actor_Clue_Query(kActorMcCoy, kClueDragonflyEarring) && !Actor_Clue_Query(kActorMcCoy, kClueBombingSuspect)) {
- DM_Add_To_List_Never_Repeat_Once_Selected(500, 3, 5, 5);
+ if ( Actor_Clue_Query(kActorMcCoy, kClueDragonflyAnklet)
+ && !Actor_Clue_Query(kActorMcCoy, kClueDragonflyEarring)
+ && !Actor_Clue_Query(kActorMcCoy, kClueBombingSuspect)
+ ) {
+ DM_Add_To_List_Never_Repeat_Once_Selected(500, 3, 5, 5); // ANKLET
}
- DM_Add_To_List_Never_Repeat_Once_Selected(510, 8, 3, -1);
- Dialogue_Menu_Add_DONE_To_List(520);
+ DM_Add_To_List_Never_Repeat_Once_Selected(510, 8, 3, -1); // MERCHANDISE
+ Dialogue_Menu_Add_DONE_To_List(520); // DONE
+
Dialogue_Menu_Appear(320, 240);
int answerValue = Dialogue_Menu_Query_Input();
Dialogue_Menu_Disappear();
+
switch (answerValue) {
- case 490:
- case 500:
- if (answerValue == 490) {
+ case 490: // EARRING
+ case 500: // ANKLET
+ if (answerValue == 490) { // EARRING
Actor_Says(kActorMcCoy, 145, 15);
- } else {
+ } else { // ANKLET
Actor_Says(kActorMcCoy, 150, 15);
}
Actor_Says(kActorInsectDealer, 80, 14);
@@ -284,62 +302,71 @@ void SceneScriptAR02::sub_402694() {
Actor_Says(kActorInsectDealer, 170, 14);
Actor_Says(kActorMcCoy, 100, 16);
Actor_Says(kActorInsectDealer, 180, 13);
- Game_Flag_Set(329);
+ Game_Flag_Set(kFlagInsectDealerInterviewed);
Actor_Clue_Acquire(kActorMcCoy, kCluePeruvianLadyInterview, true, kActorInsectDealer);
break;
- case 510:
+
+ case 510: // MERCHANDISE
Actor_Says(kActorMcCoy, 8475, 12);
Actor_Says(kActorInsectDealer, 190, 12);
Actor_Says(kActorMcCoy, 105, 15);
Actor_Says(kActorInsectDealer, 200, 14);
break;
- case 520:
+
+ case 520: // DONE
Actor_Says(kActorMcCoy, 215, 16);
break;
}
}
-void SceneScriptAR02::sub_402AE0() {
+void SceneScriptAR02::dialogueWithInsectDealer2() {
Dialogue_Menu_Clear_List();
- if (Global_Variable_Query(2) >= 15 || Query_Difficulty_Level() == 0) {
- DM_Add_To_List_Never_Repeat_Once_Selected(530, 7, 5, 3);
+
+ if (Global_Variable_Query(kVariableChinyen) >= 15
+ || Query_Difficulty_Level() == 0
+ ) {
+ DM_Add_To_List_Never_Repeat_Once_Selected(530, 7, 5, 3); // BUY
}
- DM_Add_To_List_Never_Repeat_Once_Selected(540, 3, 5, 7);
+ DM_Add_To_List_Never_Repeat_Once_Selected(540, 3, 5, 7); // NO THANKS
+
Dialogue_Menu_Appear(320, 240);
int answerValue = Dialogue_Menu_Query_Input();
Dialogue_Menu_Disappear();
- if (answerValue == 530) {
+
+ if (answerValue == 530) { // BUY
Actor_Says(kActorMcCoy, 120, 12);
if (Query_Difficulty_Level() != 0) {
- Global_Variable_Decrement(2, 15);
+ Global_Variable_Decrement(kVariableChinyen, 15);
}
Actor_Clue_Acquire(kActorMcCoy, kClueMaggieBracelet, true, kActorInsectDealer);
Actor_Modify_Friendliness_To_Other(kActorInsectDealer, kActorMcCoy, 5);
- } else if (answerValue == 540) {
+ } else if (answerValue == 540) { // NO THANKS
Actor_Says(kActorMcCoy, 125, 13);
- Actor_Says(kActorInsectDealer, 260, 3);
+ Actor_Says(kActorInsectDealer, 260, kAnimationModeTalk);
Actor_Says(kActorMcCoy, 130, 15);
- Actor_Says(kActorInsectDealer, 270, 3);
- Actor_Says(kActorInsectDealer, 280, 3);
+ Actor_Says(kActorInsectDealer, 270, kAnimationModeTalk);
+ Actor_Says(kActorInsectDealer, 280, kAnimationModeTalk);
Actor_Says(kActorMcCoy, 135, 11);
Actor_Modify_Friendliness_To_Other(kActorInsectDealer, kActorMcCoy, -5);
}
}
-void SceneScriptAR02::sub_402CE4() {
+void SceneScriptAR02::dialogueWithHassan() {
Dialogue_Menu_Clear_List();
if (Actor_Clue_Query(kActorMcCoy, kClueStrangeScale1)) {
- DM_Add_To_List_Never_Repeat_Once_Selected(550, 8, 5, 2);
+ DM_Add_To_List_Never_Repeat_Once_Selected(550, 8, 5, 2); // SCALE
}
if (Actor_Clue_Query(kActorMcCoy, kClueDragonflyEarring)) {
- DM_Add_To_List_Never_Repeat_Once_Selected(560, 6, 5, 7);
+ DM_Add_To_List_Never_Repeat_Once_Selected(560, 6, 5, 7); // EARRING
}
- Dialogue_Menu_Add_DONE_To_List(570);
+ Dialogue_Menu_Add_DONE_To_List(570); // DONE
+
Dialogue_Menu_Appear(320, 240);
int answerValue = Dialogue_Menu_Query_Input();
Dialogue_Menu_Disappear();
+
switch (answerValue) {
- case 550:
+ case 550: // SCALE
Actor_Says(kActorMcCoy, 145, 11);
Actor_Says(kActorHasan, 30, 11);
Actor_Says(kActorMcCoy, 160, 11);
@@ -349,9 +376,10 @@ void SceneScriptAR02::sub_402CE4() {
Actor_Says(kActorMcCoy, 170, 11);
Actor_Says(kActorHasan, 60, 11);
Actor_Says(kActorMcCoy, 175, 11);
- Game_Flag_Set(370);
+ Game_Flag_Set(kFlagNotUsed370);
break;
- case 560:
+
+ case 560: // EARRING
Actor_Says(kActorMcCoy, 150, 11);
Actor_Says(kActorHasan, 140, 11);
Actor_Says(kActorMcCoy, 185, 11);
@@ -367,12 +395,11 @@ void SceneScriptAR02::sub_402CE4() {
Actor_Says(kActorHasan, 210, 11);
Actor_Says(kActorHasan, 220, 11);
Actor_Says(kActorHasan, 230, 11);
- Game_Flag_Set(370);
+ Game_Flag_Set(kFlagNotUsed370);
break;
- case 570:
- if (Actor_Clue_Query(kActorMcCoy, kClueHasanInterview)) {
- Actor_Says(kActorMcCoy, 1315, 11);
- } else {
+
+ case 570: // DONE
+ if (!Actor_Clue_Query(kActorMcCoy, kClueHasanInterview)) {
Actor_Says(kActorMcCoy, 940, 13);
Actor_Says(kActorHasan, 70, 12);
Actor_Says(kActorHasan, 90, 12);
@@ -382,6 +409,8 @@ void SceneScriptAR02::sub_402CE4() {
Actor_Says(kActorHasan, 120, 13);
Actor_Modify_Friendliness_To_Other(kActorHasan, kActorMcCoy, -1);
Actor_Clue_Acquire(kActorMcCoy, kClueHasanInterview, false, kActorHasan);
+ } else {
+ Actor_Says(kActorMcCoy, 1315, 11);
}
break;
}
diff --git a/engines/bladerunner/script/scene/bb01.cpp b/engines/bladerunner/script/scene/bb01.cpp
index ea1afcf6e9..6aa24e283d 100644
--- a/engines/bladerunner/script/scene/bb01.cpp
+++ b/engines/bladerunner/script/scene/bb01.cpp
@@ -228,7 +228,7 @@ void SceneScriptBB01::PlayerWalkedIn() {
}
void SceneScriptBB01::PlayerWalkedOut() {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
}
diff --git a/engines/bladerunner/script/scene/bb02.cpp b/engines/bladerunner/script/scene/bb02.cpp
index fa988790c3..2eb92516eb 100644
--- a/engines/bladerunner/script/scene/bb02.cpp
+++ b/engines/bladerunner/script/scene/bb02.cpp
@@ -89,7 +89,7 @@ bool SceneScriptBB02::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptBB02::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 98.0f, -415.06f, -593.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagBB02toBB01);
Set_Enter(kSetBB01, kSceneBB01);
@@ -149,7 +149,7 @@ void SceneScriptBB02::PlayerWalkedIn() {
}
void SceneScriptBB02::PlayerWalkedOut() {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
}
diff --git a/engines/bladerunner/script/scene/bb03.cpp b/engines/bladerunner/script/scene/bb03.cpp
index 118fa22d5a..9ecbb953be 100644
--- a/engines/bladerunner/script/scene/bb03.cpp
+++ b/engines/bladerunner/script/scene/bb03.cpp
@@ -87,7 +87,7 @@ bool SceneScriptBB03::ClickedOnExit(int exitId) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 176.0f, 60.16f, -64.0f, 0, 1, false, 0)) {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, 176.0f, 60.16f, 0.0f, 0, 0, false, 0);
Game_Flag_Set(kFlagBB03toBB04);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Set_Enter(kSetBB02_BB04_BB06_BB51, kSceneBB04);
}
@@ -96,7 +96,7 @@ bool SceneScriptBB03::ClickedOnExit(int exitId) {
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 20.0f, 60.16f, 0.0f, 0, 1, false, 0)) {
Game_Flag_Set(kFlagBB03toBB02);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Set_Enter(kSetBB02_BB04_BB06_BB51, kSceneBB02);
}
@@ -119,7 +119,7 @@ bool SceneScriptBB03::ClickedOnExit(int exitId) {
Actor_Set_Targetable(kActorGeneralDoll, false);
}
Game_Flag_Set(kFlagBB03toBB05);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Set_Enter(kSetBB05, kSceneBB05);
} else {
diff --git a/engines/bladerunner/script/scene/bb04.cpp b/engines/bladerunner/script/scene/bb04.cpp
index 270e28d254..1bf12cb7f2 100644
--- a/engines/bladerunner/script/scene/bb04.cpp
+++ b/engines/bladerunner/script/scene/bb04.cpp
@@ -83,7 +83,7 @@ bool SceneScriptBB04::ClickedOnExit(int exitId) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -92.0f, -26.6f, 45.0f, 0, 1, false, 0)) {
Player_Loses_Control();
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -15.0f, -25.17f, 45.0f, 0, 0, false, 0);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(333);
Game_Flag_Set(493);
@@ -93,7 +93,7 @@ bool SceneScriptBB04::ClickedOnExit(int exitId) {
}
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -107.0f, -26.6f, 397.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagBB04toBB03);
Set_Enter(kSetBB03, kSceneBB03);
diff --git a/engines/bladerunner/script/scene/bb05.cpp b/engines/bladerunner/script/scene/bb05.cpp
index 1241a60e7b..95e3975b11 100644
--- a/engines/bladerunner/script/scene/bb05.cpp
+++ b/engines/bladerunner/script/scene/bb05.cpp
@@ -25,11 +25,11 @@
namespace BladeRunner {
void SceneScriptBB05::InitializeScene() {
- if (Game_Flag_Query(298)) {
+ if (Game_Flag_Query(kFlagBB06toBB05)) {
Setup_Scene_Information(95.0f, -60.31f, 331.0f, 0);
- } else if (Game_Flag_Query(302)) {
+ } else if (Game_Flag_Query(kFlagBB12toBB05)) {
Setup_Scene_Information(87.0f, -60.34f, -96.0f, 0);
- } else if (Game_Flag_Query(300)) {
+ } else if (Game_Flag_Query(kFlagBB07toBB05)) {
Setup_Scene_Information(271.0f, -60.31f, 203.0f, 0);
} else {
Setup_Scene_Information(-212.0f, -60.31f, 131.0f, 0);
@@ -98,7 +98,7 @@ bool SceneScriptBB05::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptBB05::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -212.0f, -60.31f, 131.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagBB05toBB03);
Set_Enter(kSetBB03, kSceneBB03);
@@ -107,27 +107,27 @@ bool SceneScriptBB05::ClickedOnExit(int exitId) {
}
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 95.0f, -60.31f, 331.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(297);
+ Game_Flag_Set(kFlagBB05toBB06);
Set_Enter(kSetBB06_BB07, kSceneBB06);
}
return true;
}
if (exitId == 2) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 271.0f, -60.31f, 203.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(299);
+ Game_Flag_Set(kFlagBB05toBB07);
Set_Enter(kSetBB07, kSceneBB07);
}
return true;
}
if (exitId == 3) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 151.0f, -60.34f, -108.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(301);
+ Game_Flag_Set(kFlagBB05toBB12);
Set_Enter(kSetBB12, kSceneBB12);
}
return true;
@@ -146,15 +146,15 @@ void SceneScriptBB05::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
}
void SceneScriptBB05::PlayerWalkedIn() {
- if (Game_Flag_Query(298)) {
+ if (Game_Flag_Query(kFlagBB06toBB05)) {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, 95.0f, -60.31f, 303.0f, 0, 0, false, 0);
- Game_Flag_Reset(298);
- } else if (Game_Flag_Query(300)) {
+ Game_Flag_Reset(kFlagBB06toBB05);
+ } else if (Game_Flag_Query(kFlagBB07toBB05)) {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, 231.0f, -60.31f, 203.0f, 0, 0, false, 0);
- Game_Flag_Reset(300);
- } else if (Game_Flag_Query(302)) {
+ Game_Flag_Reset(kFlagBB07toBB05);
+ } else if (Game_Flag_Query(kFlagBB12toBB05)) {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, 111.0f, -60.31f, -24.0f, 0, 0, false, 0);
- Game_Flag_Reset(302);
+ Game_Flag_Reset(kFlagBB12toBB05);
} else {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -76.0f, -60.31f, 131.0f, 0, 0, false, 0);
Game_Flag_Reset(kFlagBB03toBB05);
diff --git a/engines/bladerunner/script/scene/bb06.cpp b/engines/bladerunner/script/scene/bb06.cpp
index 015a4dfc1a..7821b735e2 100644
--- a/engines/bladerunner/script/scene/bb06.cpp
+++ b/engines/bladerunner/script/scene/bb06.cpp
@@ -108,16 +108,16 @@ bool SceneScriptBB06::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptBB06::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -37.0f, 0.0f, 178.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(298);
+ Game_Flag_Set(kFlagBB06toBB05);
Set_Enter(kSetBB05, kSceneBB05);
}
return true;
}
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 101.0f, 0.0f, -25.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(393);
Set_Enter(kSetBB02_BB04_BB06_BB51, kSceneBB51);
@@ -126,7 +126,7 @@ bool SceneScriptBB06::ClickedOnExit(int exitId) {
}
if (exitId == 3) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -115.0f, 0.0f, -103.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(363);
Set_Enter(kSetBB06_BB07, kSceneBB07);
@@ -162,9 +162,9 @@ void SceneScriptBB06::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
}
void SceneScriptBB06::PlayerWalkedIn() {
- if (Game_Flag_Query(297)) {
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -36.0f, 0.0f, 145.0f, 0, 0, false, 0);
- Game_Flag_Reset(297);
+ if (Game_Flag_Query(kFlagBB05toBB06)) {
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -36.0f, 0.0f, 145.0f, 0, false, false, 0);
+ Game_Flag_Reset(kFlagBB05toBB06);
}
}
diff --git a/engines/bladerunner/script/scene/bb07.cpp b/engines/bladerunner/script/scene/bb07.cpp
index 12e3219cc9..ba1d7bcd28 100644
--- a/engines/bladerunner/script/scene/bb07.cpp
+++ b/engines/bladerunner/script/scene/bb07.cpp
@@ -107,17 +107,17 @@ bool SceneScriptBB07::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptBB07::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -615.0f, 252.59f, -1018.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Overlay_Remove("BB07OVER");
- Game_Flag_Set(300);
+ Game_Flag_Set(kFlagBB07toBB05);
Set_Enter(kSetBB05, kSceneBB05);
}
return true;
}
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -619.0f, 252.59f, -1136.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Overlay_Remove("BB07OVER");
Game_Flag_Set(364);
@@ -127,7 +127,7 @@ bool SceneScriptBB07::ClickedOnExit(int exitId) {
}
if (exitId == 2) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -551.0f, 252.59f, -1004.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Overlay_Remove("BB07OVER");
Game_Flag_Set(362);
@@ -165,9 +165,9 @@ void SceneScriptBB07::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
}
void SceneScriptBB07::PlayerWalkedIn() {
- if (Game_Flag_Query(299)) {
+ if (Game_Flag_Query(kFlagBB05toBB07)) {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -594.0f, 252.59f, -1018.0f, 6, 0, false, 0);
- Game_Flag_Reset(299);
+ Game_Flag_Reset(kFlagBB05toBB07);
}
if (Game_Flag_Query(365)) {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -602.0f, 252.59f, -1124.0f, 6, 0, false, 0);
diff --git a/engines/bladerunner/script/scene/bb08.cpp b/engines/bladerunner/script/scene/bb08.cpp
index df51f0766a..7dc951e5b0 100644
--- a/engines/bladerunner/script/scene/bb08.cpp
+++ b/engines/bladerunner/script/scene/bb08.cpp
@@ -85,7 +85,7 @@ bool SceneScriptBB08::ClickedOnExit(int exitId) {
Footstep_Sound_Override_On(2);
Loop_Actor_Travel_Ladder(kActorMcCoy, 8, 1, 0);
Footstep_Sound_Override_Off();
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagBB08toBB09);
Set_Enter(kSetBB09, kSceneBB09);
@@ -94,7 +94,7 @@ bool SceneScriptBB08::ClickedOnExit(int exitId) {
}
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 247.0f, 0.1f, 27.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(506);
Set_Enter(kSetBB12, kSceneBB12);
diff --git a/engines/bladerunner/script/scene/bb09.cpp b/engines/bladerunner/script/scene/bb09.cpp
index 92a20b6349..15d491976d 100644
--- a/engines/bladerunner/script/scene/bb09.cpp
+++ b/engines/bladerunner/script/scene/bb09.cpp
@@ -82,7 +82,7 @@ bool SceneScriptBB09::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 454.56f, -9.0f, 190.31f, 0, 1, false, 0)) {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, 450.56f, -9.0f, 250.31f, 0, 0, false, 0);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagBB09toBB10a);
Game_Flag_Set(kFlagBB09toBB10b);
@@ -92,7 +92,7 @@ bool SceneScriptBB09::ClickedOnExit(int exitId) {
}
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 71.0f, -9.0f, 136.0f, 72, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagBB09toBB08);
Set_Enter(kSetBB08, kSceneBB08);
diff --git a/engines/bladerunner/script/scene/bb10.cpp b/engines/bladerunner/script/scene/bb10.cpp
index 5a521d6fca..6ae671ceba 100644
--- a/engines/bladerunner/script/scene/bb10.cpp
+++ b/engines/bladerunner/script/scene/bb10.cpp
@@ -37,7 +37,7 @@ void SceneScriptBB10::InitializeScene() {
Scene_Exit_Add_2D_Exit(0, 281, 0, 531, 115, 0);
}
Scene_Exit_Add_2D_Exit(1, 58, 91, 193, 401, 3);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Add_Looping_Sound(382, 76, 0, 1);
Ambient_Sounds_Add_Sound(443, 2, 180, 14, 16, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(444, 2, 180, 14, 16, -100, 100, -101, -101, 0, 0);
@@ -108,7 +108,7 @@ bool SceneScriptBB10::ClickedOnExit(int exitId) {
Footstep_Sound_Override_On(2);
Loop_Actor_Travel_Ladder(kActorMcCoy, 3, 1, 0);
Footstep_Sound_Override_Off();
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagBB10toBB11);
Set_Enter(kSetBB11, kSceneBB11);
@@ -117,7 +117,7 @@ bool SceneScriptBB10::ClickedOnExit(int exitId) {
}
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 206.01f, 66.84f, -261.62f, 0, 1, false, 0) && !Loop_Actor_Walk_To_XYZ(kActorMcCoy, 151.67f, 66.84f, -313.06f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Reset(kFlagBB09toBB10a);
Game_Flag_Set(kFlagBB10toBB09);
diff --git a/engines/bladerunner/script/scene/bb11.cpp b/engines/bladerunner/script/scene/bb11.cpp
index 8c99c525f9..8cb70b7af5 100644
--- a/engines/bladerunner/script/scene/bb11.cpp
+++ b/engines/bladerunner/script/scene/bb11.cpp
@@ -84,7 +84,7 @@ bool SceneScriptBB11::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptBB11::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 43.39f, -10.27f, -68.52f, 0, true, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagBB11toBB10);
Set_Enter(kSetBB10, kSceneBB10);
@@ -122,7 +122,7 @@ void SceneScriptBB11::PlayerWalkedIn() {
}
void SceneScriptBB11::PlayerWalkedOut() {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
}
diff --git a/engines/bladerunner/script/scene/bb12.cpp b/engines/bladerunner/script/scene/bb12.cpp
index d32c7cee5c..8d9f3eeec1 100644
--- a/engines/bladerunner/script/scene/bb12.cpp
+++ b/engines/bladerunner/script/scene/bb12.cpp
@@ -31,7 +31,7 @@ void SceneScriptBB12::InitializeScene() {
Setup_Scene_Information(-129.0f, 0.0f, 64.0f, 307);
} else {
Setup_Scene_Information(54.0f, 0.0f, 200.0f, 0);
- Game_Flag_Reset(301);
+ Game_Flag_Reset(kFlagBB05toBB12);
}
Scene_Exit_Add_2D_Exit(0, 0, 0, 30, 479, 3);
Scene_Exit_Add_2D_Exit(1, 589, 0, 639, 479, 1);
@@ -81,7 +81,7 @@ bool SceneScriptBB12::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptBB12::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -129.0f, 0.0f, 64.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(507);
Set_Enter(kSetBB08, kSceneBB08);
@@ -90,7 +90,7 @@ bool SceneScriptBB12::ClickedOnExit(int exitId) {
}
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 138.0f, 0.0f, 104.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(365);
Set_Enter(kSetBB07, kSceneBB07);
@@ -99,9 +99,9 @@ bool SceneScriptBB12::ClickedOnExit(int exitId) {
}
if (exitId == 2) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 54.0f, 0.0f, 200.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(302);
+ Game_Flag_Set(kFlagBB12toBB05);
Set_Enter(kSetBB05, kSceneBB05);
}
return true;
diff --git a/engines/bladerunner/script/scene/bb51.cpp b/engines/bladerunner/script/scene/bb51.cpp
index 086eaa49dc..ae93dfae70 100644
--- a/engines/bladerunner/script/scene/bb51.cpp
+++ b/engines/bladerunner/script/scene/bb51.cpp
@@ -82,7 +82,7 @@ bool SceneScriptBB51::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptBB51::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 76.0f, 0.0f, 79.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(394);
Set_Enter(kSetBB02_BB04_BB06_BB51, kSceneBB06);
@@ -91,7 +91,7 @@ bool SceneScriptBB51::ClickedOnExit(int exitId) {
}
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 55.0f, 0.0f, -96.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(395);
Set_Enter(kSetBB02_BB04_BB06_BB51, kSceneBB06);
diff --git a/engines/bladerunner/script/scene/ct01.cpp b/engines/bladerunner/script/scene/ct01.cpp
index f00eba02d4..df8986430a 100644
--- a/engines/bladerunner/script/scene/ct01.cpp
+++ b/engines/bladerunner/script/scene/ct01.cpp
@@ -85,12 +85,12 @@ void SceneScriptCT01::InitializeScene() {
Ambient_Sounds_Add_Sound(62, 10, 30, 16, 20, 0, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(63, 10, 30, 16, 20, 0, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(64, 10, 30, 16, 20, 0, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Speech_Sound(60, 0, 10, 260, 27, 47, -100, 100, -101, -101, 1, 1);
+ Ambient_Sounds_Add_Speech_Sound(60, 0, 10, 260, 27, 47, -100, 100, -101, -101, 1, 1);
Ambient_Sounds_Add_Speech_Sound(60, 20, 10, 260, 27, 47, -100, 100, -101, -101, 1, 1);
Ambient_Sounds_Add_Speech_Sound(60, 40, 10, 260, 27, 47, -100, 100, -101, -101, 1, 1);
Ambient_Sounds_Add_Speech_Sound(60, 50, 10, 260, 27, 47, -100, 100, -101, -101, 1, 1);
- Ambient_Sounds_Add_Sound(68, 10, 40, 33, 50, 0, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(69, 10, 40, 33, 50, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(68, 10, 40, 33, 50, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(69, 10, 40, 33, 50, 0, 0, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(375, 20, 40, 33, 50, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(376, 20, 40, 33, 50, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(377, 20, 40, 33, 50, -100, 100, -101, -101, 0, 0);
diff --git a/engines/bladerunner/script/scene/ct02.cpp b/engines/bladerunner/script/scene/ct02.cpp
index 97d7304b94..da1fcac014 100644
--- a/engines/bladerunner/script/scene/ct02.cpp
+++ b/engines/bladerunner/script/scene/ct02.cpp
@@ -57,7 +57,7 @@ void SceneScriptCT02::InitializeScene() {
Ambient_Sounds_Add_Sound(62, 10, 30, 7, 7, 100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(63, 10, 30, 8, 8, 100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(64, 10, 30, 7, 7, 100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Speech_Sound(60, 0, 10, 260, 17, 19, 100, 100, -101, -101, 1, 1);
+ Ambient_Sounds_Add_Speech_Sound(60, 0, 10, 260, 17, 19, 100, 100, -101, -101, 1, 1);
Ambient_Sounds_Add_Speech_Sound(60, 20, 10, 260, 17, 19, 100, 100, -101, -101, 1, 1);
Ambient_Sounds_Add_Speech_Sound(60, 40, 10, 260, 17, 19, 100, 100, -101, -101, 1, 1);
Ambient_Sounds_Add_Speech_Sound(60, 50, 10, 260, 17, 19, 100, 100, -101, -101, 1, 1);
@@ -218,7 +218,7 @@ bool SceneScriptCT02::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptCT02::ClickedOnExit(int exitId) {
if (exitId == kCT02ExitCT01) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -111.2f, -145.11f, 243.28f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagCT02toCT01walk);
Game_Flag_Set(kFlagCT02toCT01);
@@ -234,7 +234,7 @@ bool SceneScriptCT02::ClickedOnExit(int exitId) {
v1 = Loop_Actor_Walk_To_XYZ(kActorMcCoy, -154.83f, -145.11f, -82.61f, 0, 1, false, 0);
}
if (!v1) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagCT02toCT03);
Set_Enter(kSetCT03_CT04, kSceneCT03);
diff --git a/engines/bladerunner/script/scene/ct03.cpp b/engines/bladerunner/script/scene/ct03.cpp
index ac30a79f9b..506ff1cfdd 100644
--- a/engines/bladerunner/script/scene/ct03.cpp
+++ b/engines/bladerunner/script/scene/ct03.cpp
@@ -36,19 +36,19 @@ void SceneScriptCT03::InitializeScene() {
} else {
Setup_Scene_Information(-708.58f, -619.19f, 277.6f, 239);
}
- Scene_Exit_Add_2D_Exit(0, 0, 460, 639, 479, 2);
- Scene_Exit_Add_2D_Exit(1, 40, 40, 134, 302, 3);
- Scene_Exit_Add_2D_Exit(2, 390, 0, 539, 230, 1);
- Ambient_Sounds_Add_Looping_Sound(54, 50, 1, 1);
- Ambient_Sounds_Add_Looping_Sound(56, 22, -100, 1);
+ Scene_Exit_Add_2D_Exit(0, 0, 460, 639, 479, 2);
+ Scene_Exit_Add_2D_Exit(1, 40, 40, 134, 302, 3);
+ Scene_Exit_Add_2D_Exit(2, 390, 0, 539, 230, 1);
+ Ambient_Sounds_Add_Looping_Sound( 54, 50, 1, 1);
+ Ambient_Sounds_Add_Looping_Sound( 56, 22, -100, 1);
Ambient_Sounds_Add_Looping_Sound(105, 34, -100, 1);
- Ambient_Sounds_Add_Sound(68, 10, 40, 33, 50, 0, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(69, 10, 40, 33, 50, 0, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(61, 3, 30, 8, 10, -100, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(62, 3, 30, 8, 10, -100, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(63, 3, 30, 8, 10, -100, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(64, 3, 30, 8, 10, -100, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Speech_Sound(60, 0, 10, 260, 27, 47, -100, 100, -101, -101, 1, 1);
+ Ambient_Sounds_Add_Sound(68, 10, 40, 33, 50, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(69, 10, 40, 33, 50, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(61, 3, 30, 8, 10, -100, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(62, 3, 30, 8, 10, -100, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(63, 3, 30, 8, 10, -100, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(64, 3, 30, 8, 10, -100, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Speech_Sound(60, 0, 10, 260, 27, 47, -100, 100, -101, -101, 1, 1);
Ambient_Sounds_Add_Speech_Sound(60, 20, 10, 260, 27, 47, -100, 100, -101, -101, 1, 1);
Ambient_Sounds_Add_Speech_Sound(60, 40, 10, 260, 27, 47, -100, 100, -101, -101, 1, 1);
Ambient_Sounds_Add_Speech_Sound(60, 50, 10, 260, 27, 47, -100, 100, -101, -101, 1, 1);
diff --git a/engines/bladerunner/script/scene/ct04.cpp b/engines/bladerunner/script/scene/ct04.cpp
index 5f307d476d..24c1d3485e 100644
--- a/engines/bladerunner/script/scene/ct04.cpp
+++ b/engines/bladerunner/script/scene/ct04.cpp
@@ -38,14 +38,14 @@ void SceneScriptCT04::InitializeScene() {
Scene_Loop_Set_Default(kCT03LoopMain);
Setup_Scene_Information(-82.86f, -621.3f, 769.03f, 1020);
}
- Scene_Exit_Add_2D_Exit(0, 590, 0, 639, 479, 1);
+ Scene_Exit_Add_2D_Exit(0, 590, 0, 639, 479, 1);
Scene_Exit_Add_2D_Exit(1, 194, 84, 320, 274, 0);
- Ambient_Sounds_Add_Looping_Sound(54, 50, 1, 1);
+ Ambient_Sounds_Add_Looping_Sound(54, 50, 1, 1);
Ambient_Sounds_Add_Looping_Sound(56, 15, -100, 1);
Ambient_Sounds_Add_Looping_Sound(105, 34, 100, 1);
Ambient_Sounds_Add_Sound(68, 10, 40, 33, 50, 0, 0, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(69, 10, 40, 33, 50, 0, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Speech_Sound(60, 0, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1);
+ Ambient_Sounds_Add_Speech_Sound(60, 0, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1);
Ambient_Sounds_Add_Speech_Sound(60, 20, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1);
Ambient_Sounds_Add_Speech_Sound(60, 40, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1);
Ambient_Sounds_Add_Speech_Sound(60, 50, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1);
diff --git a/engines/bladerunner/script/scene/ct05.cpp b/engines/bladerunner/script/scene/ct05.cpp
index 0db0b47621..a30e4f99bb 100644
--- a/engines/bladerunner/script/scene/ct05.cpp
+++ b/engines/bladerunner/script/scene/ct05.cpp
@@ -39,10 +39,10 @@ void SceneScriptCT05::InitializeScene() {
Scene_Exit_Add_2D_Exit(1, 320, 458, 639, 479, 2);
Scene_Exit_Add_2D_Exit(2, 380, 110, 542, 300, 0);
Ambient_Sounds_Add_Looping_Sound(106, 15, -100, 1);
- Ambient_Sounds_Add_Looping_Sound(107, 15, 100, 1);
- Ambient_Sounds_Add_Looping_Sound(56, 13, -100, 1);
- Ambient_Sounds_Add_Sound(90, 5, 20, 8, 10, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(91, 5, 20, 8, 10, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Looping_Sound(107, 15, 100, 1);
+ Ambient_Sounds_Add_Looping_Sound( 56, 13, -100, 1);
+ Ambient_Sounds_Add_Sound( 90, 5, 20, 8, 10, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 91, 5, 20, 8, 10, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(205, 5, 30, 18, 30, -100, 100, -101, -101, 0, 0);
if (Game_Flag_Query(kFlagWarehouseOpen)) {
Scene_Loop_Set_Default(2);
@@ -233,7 +233,7 @@ void SceneScriptCT05::PlayerWalkedIn() {
}
void SceneScriptCT05::PlayerWalkedOut() {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
}
diff --git a/engines/bladerunner/script/scene/ct06.cpp b/engines/bladerunner/script/scene/ct06.cpp
index 11bd36cd90..a5856b3717 100644
--- a/engines/bladerunner/script/scene/ct06.cpp
+++ b/engines/bladerunner/script/scene/ct06.cpp
@@ -33,7 +33,7 @@ void SceneScriptCT06::InitializeScene() {
} else {
Setup_Scene_Information(175.91f, -58.23f, 24.47f, 768);
}
- Scene_Exit_Add_2D_Exit(0, 0, 440, 639, 479, 2);
+ Scene_Exit_Add_2D_Exit(0, 0, 440, 639, 479, 2);
Scene_Exit_Add_2D_Exit(1, 401, 162, 536, 317, 0);
if (Game_Flag_Query(kFlagZubenRetired) && Actor_Query_In_Set(kActorZuben, kSetCT07)) {
Actor_Put_In_Set(kActorZuben, kSetCT06);
@@ -41,13 +41,13 @@ void SceneScriptCT06::InitializeScene() {
Actor_Retired_Here(kActorZuben, 72, 36, 1, kActorMcCoy);
}
Ambient_Sounds_Add_Looping_Sound(381, 100, 1, 1);
- Ambient_Sounds_Add_Looping_Sound(205, 20, 1, 1);
- Ambient_Sounds_Add_Speech_Sound(60, 0, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1);
+ Ambient_Sounds_Add_Looping_Sound(205, 20, 1, 1);
+ Ambient_Sounds_Add_Speech_Sound(60, 0, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1);
Ambient_Sounds_Add_Speech_Sound(60, 20, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1);
Ambient_Sounds_Add_Speech_Sound(60, 40, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1);
Ambient_Sounds_Add_Speech_Sound(60, 50, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1);
- Ambient_Sounds_Add_Sound(67, 80, 180, 16, 25, 0, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(68, 50, 180, 16, 25, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(67, 80, 180, 16, 25, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(68, 50, 180, 16, 25, 0, 0, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(379, 50, 180, 50, 100, 0, 0, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(380, 70, 180, 50, 100, 0, 0, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(377, 60, 180, 50, 100, 0, 0, -101, -101, 0, 0);
@@ -118,7 +118,7 @@ bool SceneScriptCT06::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptCT06::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 20.41f, -58.23f, -2.17f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagCT06toCT05);
Set_Enter(kSetCT05, kSceneCT05);
@@ -144,7 +144,7 @@ bool SceneScriptCT06::ClickedOnExit(int exitId) {
Actor_Face_Object(kActorMcCoy, "DOOR", true);
Actor_Says(kActorMcCoy, 8522, 12);
} else {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagCT06toCT08);
Set_Enter(kSetCT08_CT51_UG12, kSceneCT08);
diff --git a/engines/bladerunner/script/scene/ct07.cpp b/engines/bladerunner/script/scene/ct07.cpp
index 4dabd293b4..9c922fe56a 100644
--- a/engines/bladerunner/script/scene/ct07.cpp
+++ b/engines/bladerunner/script/scene/ct07.cpp
@@ -28,22 +28,22 @@ void SceneScriptCT07::InitializeScene() {
Setup_Scene_Information(202.32f, -58.23f, -12.86f, 225);
Actor_Put_In_Set(kActorZuben, kSetCT07);
Actor_Set_At_XYZ(kActorZuben, -9.68f, -58.23f, 11.14f, 250);
- Ambient_Sounds_Add_Looping_Sound(54, 30, 90, 1);
+ Ambient_Sounds_Add_Looping_Sound( 54, 30, 90, 1);
Ambient_Sounds_Add_Looping_Sound(205, 20, 1, 1);
- Ambient_Sounds_Add_Looping_Sound(56, 40, 100, 1);
- Ambient_Sounds_Add_Speech_Sound(60, 0, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1);
+ Ambient_Sounds_Add_Looping_Sound( 56, 40, 100, 1);
+ Ambient_Sounds_Add_Speech_Sound(60, 0, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1);
Ambient_Sounds_Add_Speech_Sound(60, 20, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1);
Ambient_Sounds_Add_Speech_Sound(60, 40, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1);
Ambient_Sounds_Add_Speech_Sound(60, 50, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1);
- Ambient_Sounds_Add_Sound(67, 80, 180, 16, 25, 0, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(68, 50, 180, 16, 25, 0, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(379, 10, 60, 50, 100, 0, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(375, 6, 50, 50, 100, 0, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(377, 10, 70, 50, 100, 0, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(61, 10, 30, 12, 14, 100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(62, 10, 30, 12, 14, 100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(63, 10, 30, 12, 14, 100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(64, 10, 30, 12, 14, 100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 67, 80, 180, 16, 25, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 68, 50, 180, 16, 25, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(379, 10, 60, 50, 100, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(375, 6, 50, 50, 100, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(377, 10, 70, 50, 100, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 61, 10, 30, 12, 14, 100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 62, 10, 30, 12, 14, 100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 63, 10, 30, 12, 14, 100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 64, 10, 30, 12, 14, 100, 100, -101, -101, 0, 0);
}
void SceneScriptCT07::SceneLoaded() {
diff --git a/engines/bladerunner/script/scene/ct08.cpp b/engines/bladerunner/script/scene/ct08.cpp
index 6e814c132b..5dc68616e0 100644
--- a/engines/bladerunner/script/scene/ct08.cpp
+++ b/engines/bladerunner/script/scene/ct08.cpp
@@ -26,7 +26,7 @@ namespace BladeRunner {
void SceneScriptCT08::InitializeScene() {
if (Game_Flag_Query(679)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Outtake_Play(kOuttakeMovieB1, false, -1);
if (Game_Flag_Query(kFlagLucyIsReplicant)) {
@@ -113,7 +113,7 @@ bool SceneScriptCT08::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptCT08::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -183.0f, 0.0f, 128.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagCT08toCT09);
Set_Enter(kSetCT09, kSceneCT09);
@@ -123,7 +123,7 @@ bool SceneScriptCT08::ClickedOnExit(int exitId) {
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -11.0f, 0.0f, -156.0f, 0, 1, false, 0)) {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, 0.0f, 0.0f, -102.0f, 0, 0, false, 0);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(379);
Set_Enter(kSetCT08_CT51_UG12, kSceneCT51);
@@ -132,7 +132,7 @@ bool SceneScriptCT08::ClickedOnExit(int exitId) {
}
if (exitId == 2) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -143.0f, 0.0f, -92.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagCT08toCT06);
Set_Enter(kSetCT06, kSceneCT06);
diff --git a/engines/bladerunner/script/scene/ct09.cpp b/engines/bladerunner/script/scene/ct09.cpp
index 1e6918d6de..c9506d54c5 100644
--- a/engines/bladerunner/script/scene/ct09.cpp
+++ b/engines/bladerunner/script/scene/ct09.cpp
@@ -69,7 +69,7 @@ bool SceneScriptCT09::ClickedOn3DObject(const char *objectName, bool a2) {
}
bool SceneScriptCT09::ClickedOnActor(int actorId) {
- if (actorId == 27) {
+ if (actorId == kActorDeskClerk) {
if (!Actor_Query_Goal_Number(kActorDeskClerk) && Actor_Query_Which_Set_In(kActorLeon) != 31) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 270.0f, 348.52f, 846.0f, 12, 1, false, 0)) {
Player_Loses_Control();
@@ -109,7 +109,7 @@ bool SceneScriptCT09::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 206.0f, 348.52f, 599.0f, 0, 1, false, 0)) {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, 235.0f, 348.52f, 599.0f, 0, 0, false, 0);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagCT09toCT08);
Set_Enter(kSetCT08_CT51_UG12, kSceneCT08);
@@ -118,7 +118,7 @@ bool SceneScriptCT09::ClickedOnExit(int exitId) {
}
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 107.0f, 348.52f, 927.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagCT09toCT11);
Set_Enter(kSetCT11, kSceneCT11);
@@ -127,7 +127,7 @@ bool SceneScriptCT09::ClickedOnExit(int exitId) {
}
if (exitId == 2) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 159.0f, 349.0f, 570.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagCT09toCT10);
Set_Enter(kSetCT10, kSceneCT10);
@@ -172,7 +172,7 @@ void SceneScriptCT09::PlayerWalkedIn() {
} else {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, 124.0f, 348.52f, 886.0f, 0, 0, false, 0);
}
- Game_Flag_Reset(304);
+ Game_Flag_Reset(kFlagCT11toCT09);
}
if (Actor_Query_Goal_Number(kActorDeskClerk) == 2) {
if (Game_Flag_Query(539)) {
diff --git a/engines/bladerunner/script/scene/ct10.cpp b/engines/bladerunner/script/scene/ct10.cpp
index dbc26d27a9..7b666efbf4 100644
--- a/engines/bladerunner/script/scene/ct10.cpp
+++ b/engines/bladerunner/script/scene/ct10.cpp
@@ -118,7 +118,7 @@ bool SceneScriptCT10::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -93.0f, 0.0f, -38.0f, 0, 1, false, 0)) {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -121.0f, 0.0f, -78.0f, 0, 0, false, 0);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagCT10toCT09);
Set_Enter(kSetCT09, kSceneCT09);
diff --git a/engines/bladerunner/script/scene/ct11.cpp b/engines/bladerunner/script/scene/ct11.cpp
index 50b5a34195..46fc21dc3e 100644
--- a/engines/bladerunner/script/scene/ct11.cpp
+++ b/engines/bladerunner/script/scene/ct11.cpp
@@ -100,7 +100,7 @@ bool SceneScriptCT11::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptCT11::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 121.0f, 9.68f, -42.0f, 0, 1, false, 0)) {
- Game_Flag_Set(304);
+ Game_Flag_Set(kFlagCT11toCT09);
Set_Enter(kSetCT09, kSceneCT09);
}
return true;
@@ -203,7 +203,7 @@ void SceneScriptCT11::PlayerWalkedIn() {
}
void SceneScriptCT11::PlayerWalkedOut() {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
}
diff --git a/engines/bladerunner/script/scene/ct12.cpp b/engines/bladerunner/script/scene/ct12.cpp
index b303171bbf..fa722f740c 100644
--- a/engines/bladerunner/script/scene/ct12.cpp
+++ b/engines/bladerunner/script/scene/ct12.cpp
@@ -157,7 +157,7 @@ bool SceneScriptCT12::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptCT12::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -419.15f, -6.5f, 696.94f, 0, true, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Game_Flag_Set(kFlagCT12toCT01);
Set_Enter(kSetCT01_CT12, kSceneCT01);
}
@@ -165,7 +165,7 @@ bool SceneScriptCT12::ClickedOnExit(int exitId) {
}
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -182.69f, -6.5f, 696.94f, 0, true, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagCT12toCT03);
Set_Enter(kSetCT03_CT04, kSceneCT03);
@@ -174,7 +174,7 @@ bool SceneScriptCT12::ClickedOnExit(int exitId) {
}
if (exitId == 2) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -386.13f, -6.5f, 1132.72f, 0, true, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagCT12toCT05);
Set_Enter(kSetCT05, kSceneCT05);
@@ -183,7 +183,7 @@ bool SceneScriptCT12::ClickedOnExit(int exitId) {
}
if (exitId == 3) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -493.0f, -6.5f, 1174.0f, 0, true, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagCT12toCT11);
Set_Enter(kSetCT11, kSceneCT11);
@@ -195,7 +195,7 @@ bool SceneScriptCT12::ClickedOnExit(int exitId) {
if (Global_Variable_Query(kVariableChapter) == 4) {
Game_Flag_Set(629);
}
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagCT12ToUG09);
Set_Enter(kSetUG09, kSceneUG09);
diff --git a/engines/bladerunner/script/scene/ct51.cpp b/engines/bladerunner/script/scene/ct51.cpp
index f022e04696..6f44fb0b27 100644
--- a/engines/bladerunner/script/scene/ct51.cpp
+++ b/engines/bladerunner/script/scene/ct51.cpp
@@ -93,7 +93,7 @@ bool SceneScriptCT51::ClickedOnExit(int exitId) {
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 0.0f, 0.0f, -102.0f, 0, 1, false, 0)) {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -11.0f, 0.0f, -156.0f, 0, 0, false, 0);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(380);
Set_Enter(kSetCT08_CT51_UG12, kSceneCT08);
diff --git a/engines/bladerunner/script/scene/dr01.cpp b/engines/bladerunner/script/scene/dr01.cpp
index f58ebc6a38..b2b308ce15 100644
--- a/engines/bladerunner/script/scene/dr01.cpp
+++ b/engines/bladerunner/script/scene/dr01.cpp
@@ -101,7 +101,7 @@ bool SceneScriptDR01::ClickedOn3DObject(const char *objectName, bool a2) {
}
bool SceneScriptDR01::ClickedOnActor(int actorId) {
- return actorId == 50;
+ return actorId == kActorShoeshineMan;
}
bool SceneScriptDR01::ClickedOnItem(int itemId, bool a2) {
@@ -259,7 +259,7 @@ void SceneScriptDR01::PlayerWalkedOut() {
&& !Game_Flag_Query(kFlagDR01toDR02)
&& !Game_Flag_Query(558)
) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Outtake_Play(kOuttakeInside2, true, -1);
}
diff --git a/engines/bladerunner/script/scene/dr04.cpp b/engines/bladerunner/script/scene/dr04.cpp
index d4aa636a1c..0f3addc3b7 100644
--- a/engines/bladerunner/script/scene/dr04.cpp
+++ b/engines/bladerunner/script/scene/dr04.cpp
@@ -266,7 +266,7 @@ void SceneScriptDR04::PlayerWalkedIn() {
void SceneScriptDR04::PlayerWalkedOut() {
Music_Stop(2);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
}
diff --git a/engines/bladerunner/script/scene/dr05.cpp b/engines/bladerunner/script/scene/dr05.cpp
index 6ad6604c23..0204cf5b26 100644
--- a/engines/bladerunner/script/scene/dr05.cpp
+++ b/engines/bladerunner/script/scene/dr05.cpp
@@ -189,7 +189,7 @@ void SceneScriptDR05::PlayerWalkedIn() {
}
void SceneScriptDR05::PlayerWalkedOut() {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
if (Actor_Query_Goal_Number(kActorMoraji) == 10 || Actor_Query_Goal_Number(kActorMoraji) == 18 || Actor_Query_Goal_Number(kActorMoraji) == 19) {
Actor_Set_Goal_Number(kActorMoraji, 11);
diff --git a/engines/bladerunner/script/scene/hc01.cpp b/engines/bladerunner/script/scene/hc01.cpp
index e9ef0a2209..8318130397 100644
--- a/engines/bladerunner/script/scene/hc01.cpp
+++ b/engines/bladerunner/script/scene/hc01.cpp
@@ -26,15 +26,15 @@ namespace BladeRunner {
void SceneScriptHC01::InitializeScene() {
Music_Play(0, 31, 0, 2, -1, 1, 2);
- if (Game_Flag_Query(385)) {
+ if (Game_Flag_Query(kFlagHC02toHC01)) {
Setup_Scene_Information(64.0f, 0.14f, 83.0f, 266);
- } else if (Game_Flag_Query(387)) {
+ } else if (Game_Flag_Query(kFlagHC03toHC01)) {
Setup_Scene_Information(607.0f, 0.14f, 9.0f, 530);
} else {
Setup_Scene_Information(780.0f, 0.14f, 153.0f, 815);
}
Scene_Exit_Add_2D_Exit(0, 0, 460, 639, 479, 2);
- if (Game_Flag_Query(402)) {
+ if (Game_Flag_Query(kFlagHC03Available)) {
Scene_Exit_Add_2D_Exit(1, 394, 229, 485, 371, 1);
}
Scene_Exit_Add_2D_Exit(2, 117, 0, 286, 319, 0);
@@ -93,14 +93,14 @@ bool SceneScriptHC01::ClickedOn3DObject(const char *objectName, bool a2) {
}
bool SceneScriptHC01::ClickedOnActor(int actorId) {
- if (actorId == 7 && (Actor_Query_Goal_Number(kActorIzo) == 150 || Actor_Query_Goal_Number(kActorIzo) == 0)) {
+ if (actorId == kActorIzo
+ && (Actor_Query_Goal_Number(kActorIzo) == kGoalIzoGoToHC01
+ || Actor_Query_Goal_Number(kActorIzo) == kGoalIzoDefault
+ )
+ ) {
AI_Movement_Track_Pause(kActorIzo);
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 624.43f, 0.14f, 83.0f, 0, 1, false, 0)) {
- if (Game_Flag_Query(400)) {
- Actor_Face_Actor(kActorMcCoy, kActorIzo, true);
- Actor_Face_Actor(kActorIzo, kActorMcCoy, true);
- sub_402384();
- } else {
+ if (!Game_Flag_Query(kFlagIzoTalk1)) {
Actor_Face_Actor(kActorIzo, kActorMcCoy, true);
Actor_Says_With_Pause(kActorIzo, 10, 0.2f, 13);
Actor_Face_Actor(kActorMcCoy, kActorIzo, true);
@@ -114,7 +114,11 @@ bool SceneScriptHC01::ClickedOnActor(int actorId) {
Actor_Says_With_Pause(kActorIzo, 70, 1.0f, 13);
Actor_Says_With_Pause(kActorMcCoy, 1045, 0.6f, 14);
Actor_Says(kActorIzo, 80, 18);
- Game_Flag_Set(400);
+ Game_Flag_Set(kFlagIzoTalk1);
+ } else {
+ Actor_Face_Actor(kActorMcCoy, kActorIzo, true);
+ Actor_Face_Actor(kActorIzo, kActorMcCoy, true);
+ dialogueWithIzo();
}
}
AI_Movement_Track_Unpause(kActorIzo);
@@ -123,8 +127,8 @@ bool SceneScriptHC01::ClickedOnActor(int actorId) {
}
bool SceneScriptHC01::ClickedOnItem(int itemId, bool a2) {
- if (itemId == 107) {
- Item_Remove_From_World(107);
+ if (itemId == kItemCamera) {
+ Item_Remove_From_World(kItemCamera);
Item_Pickup_Spin_Effect(977, 361, 381);
Delay(1500);
Item_Pickup_Spin_Effect(984, 377, 397);
@@ -143,7 +147,7 @@ bool SceneScriptHC01::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptHC01::ClickedOnExit(int exitId) {
if (exitId == 0) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 814.0f, 0.14f, 153.0f, 0, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 814.0f, 0.14f, 153.0f, 0, true, false, 0)) {
Music_Adjust(12, 0, 2);
Game_Flag_Set(kFlagHC01toAR01);
Set_Enter(kSetAR01_AR02, kSceneAR01);
@@ -153,15 +157,15 @@ bool SceneScriptHC01::ClickedOnExit(int exitId) {
return true;
}
if (exitId == 1) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 607.0f, 0.14f, 9.0f, 0, 1, false, 0)) {
- Game_Flag_Set(386);
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 607.0f, 0.14f, 9.0f, 0, true, false, 0)) {
+ Game_Flag_Set(kFlagHC01toHC03);
Set_Enter(kSetHC01_HC02_HC03_HC04, kSceneHC03);
}
return true;
}
if (exitId == 2) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 105.0f, 0.14f, 103.0f, 0, 1, false, 0)) {
- Game_Flag_Set(384);
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 105.0f, 0.14f, 103.0f, 0, true, false, 0)) {
+ Game_Flag_Set(kFlagHC01toHC02);
Async_Actor_Walk_To_XYZ(kActorMcCoy, -57.0f, 0.14f, 83.0f, 0, false);
Set_Enter(kSetHC01_HC02_HC03_HC04, kSceneHC02);
}
@@ -193,7 +197,7 @@ void SceneScriptHC01::SceneFrameAdvanced(int frame) {
}
if (frame == 80) {
Ambient_Sounds_Play_Sound(316, 40, 100, 100, 0);
- Item_Add_To_World(121, 931, 8, 582.0f, 27.0f, -41.0f, 0, 8, 8, true, true, false, true);
+ Item_Add_To_World(kItemHC03Lock, 931, kSetHC01_HC02_HC03_HC04, 582.0f, 27.0f, -41.0f, 0, 8, 8, true, true, false, true);
}
}
@@ -201,12 +205,12 @@ void SceneScriptHC01::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
}
void SceneScriptHC01::PlayerWalkedIn() {
- if (Game_Flag_Query(385)) {
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, 105.0f, 0.14f, 103.0f, 0, 0, false, 0);
- Game_Flag_Reset(385);
+ if (Game_Flag_Query(kFlagHC02toHC01)) {
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, 105.0f, 0.14f, 103.0f, 0, false, false, 0);
+ Game_Flag_Reset(kFlagHC02toHC01);
}
- if (Game_Flag_Query(387)) {
- Game_Flag_Reset(387);
+ if (Game_Flag_Query(kFlagHC03toHC01)) {
+ Game_Flag_Reset(kFlagHC03toHC01);
}
if (Game_Flag_Query(kFlagAR01toHC01)) {
Game_Flag_Reset(kFlagAR01toHC01);
@@ -215,69 +219,66 @@ void SceneScriptHC01::PlayerWalkedIn() {
void SceneScriptHC01::PlayerWalkedOut() {
Set_Fade_Density(0.0f);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
}
void SceneScriptHC01::DialogueQueueFlushed(int a1) {
}
-void SceneScriptHC01::sub_402384() {
- if (!Game_Flag_Query(401)) {
+void SceneScriptHC01::dialogueWithIzo() {
+ if (!Game_Flag_Query(kFlagIzoTalk2)) {
Actor_Says(kActorMcCoy, 1055, 13);
Actor_Says(kActorIzo, 130, 13);
Actor_Says_With_Pause(kActorMcCoy, 1060, 0.2f, 13);
Actor_Says(kActorIzo, 140, 13);
- Game_Flag_Set(401);
+ Game_Flag_Set(kFlagIzoTalk2);
}
+
Dialogue_Menu_Clear_List();
- if (Actor_Clue_Query(kActorMcCoy, kCluePeruvianLadyInterview) == 1) {
- DM_Add_To_List_Never_Repeat_Once_Selected(1020, 6, 7, 3);
- } else if (Actor_Clue_Query(kActorMcCoy, kClueDragonflyEarring) || Actor_Clue_Query(kActorMcCoy, kClueBombingSuspect) || Actor_Clue_Query(kActorMcCoy, kClueDragonflyAnklet)) {
- DM_Add_To_List_Never_Repeat_Once_Selected(1010, 6, 7, 3);
+ if (Actor_Clue_Query(kActorMcCoy, kCluePeruvianLadyInterview)) {
+ DM_Add_To_List_Never_Repeat_Once_Selected(1020, 6, 7, 3); // DRAGONFLY JEWERLY
+ } else if (Actor_Clue_Query(kActorMcCoy, kClueDragonflyEarring)
+ || Actor_Clue_Query(kActorMcCoy, kClueBombingSuspect)
+ || Actor_Clue_Query(kActorMcCoy, kClueDragonflyAnklet)
+ ) {
+ DM_Add_To_List_Never_Repeat_Once_Selected(1010, 6, 7, 3); // INSECT JEWELRY
}
- if (Actor_Clue_Query(kActorMcCoy, kClueBobInterview1) == 1) {
- DM_Add_To_List_Never_Repeat_Once_Selected(1030, 1, 5, 7);
- } else if (Actor_Clue_Query(kActorMcCoy, kClueShellCasings) == 1) {
- DM_Add_To_List_Never_Repeat_Once_Selected(1040, 4, 4, 6);
+ if (Actor_Clue_Query(kActorMcCoy, kClueBobInterview1)) {
+ DM_Add_To_List_Never_Repeat_Once_Selected(1030, 1, 5, 7); // WEAPONS
+ } else if (Actor_Clue_Query(kActorMcCoy, kClueShellCasings)) {
+ DM_Add_To_List_Never_Repeat_Once_Selected(1040, 4, 4, 6); // SHELL CASINGS
}
- if (Actor_Clue_Query(kActorMcCoy, kClueGrigorianInterviewB2) == 1) {
- DM_Add_To_List_Never_Repeat_Once_Selected(1050, -1, 3, 8);
- } else if (Actor_Clue_Query(kActorMcCoy, kClueGrigorianInterviewB1) == 1) {
- DM_Add_To_List_Never_Repeat_Once_Selected(1060, -1, 3, 8);
+ if (Actor_Clue_Query(kActorMcCoy, kClueGrigorianInterviewB2)) {
+ DM_Add_To_List_Never_Repeat_Once_Selected(1050, -1, 3, 8); // GRIGORIAN 1
+ } else if (Actor_Clue_Query(kActorMcCoy, kClueGrigorianInterviewB1)) {
+ DM_Add_To_List_Never_Repeat_Once_Selected(1060, -1, 3, 8); // GRIGORIAN 2
}
- if (!Dialogue_Menu_Query_List_Size()) {
+
+ if (Dialogue_Menu_Query_List_Size() == 0) {
Actor_Says_With_Pause(kActorMcCoy, 1105, 1.2f, 13);
if (Actor_Query_Friendliness_To_Other(kActorIzo, kActorMcCoy) < 50) {
Actor_Says(kActorIzo, 550, 15);
} else {
Actor_Says(kActorIzo, 250, 13);
Actor_Modify_Friendliness_To_Other(kActorIzo, kActorMcCoy, -1);
- if (Actor_Query_Friendliness_To_Other(kActorIzo, kActorMcCoy) < 47 && Query_Difficulty_Level() == 0) {
- sub_40346C();
+ if (Actor_Query_Friendliness_To_Other(kActorIzo, kActorMcCoy) < 47
+ && Query_Difficulty_Level() == 0
+ ) {
+ takePhotoAndRunAway();
}
}
return;
}
- Dialogue_Menu_Add_DONE_To_List(100);
+
+ Dialogue_Menu_Add_DONE_To_List(100); // DONE
+
bool end = false;
do {
Dialogue_Menu_Appear(320, 240);
int answer = Dialogue_Menu_Query_Input();
Dialogue_Menu_Disappear();
- if (answer == 1020) {
- Dialogue_Menu_Remove_From_List(1020);
- Actor_Says(kActorMcCoy, 1065, 15);
- Actor_Says(kActorIzo, 160, 3);
- Actor_Says(kActorMcCoy, 1110, 16);
- Actor_Says(kActorIzo, 170, 3);
- Actor_Says(kActorIzo, 180, 3);
- Actor_Says(kActorIzo, 190, 12);
- if (Query_Difficulty_Level() < 2) {
- Actor_Modify_Friendliness_To_Other(kActorIzo, kActorMcCoy, -2);
- }
- }
- if (answer == 1010) {
+ if (answer == 1010) { // INSECT JEWELRY
Dialogue_Menu_Remove_From_List(1010);
Actor_Clue_Acquire(kActorMcCoy, kClueIzoInterview, false, kActorIzo);
Actor_Says(kActorMcCoy, 1070, 13);
@@ -285,30 +286,36 @@ void SceneScriptHC01::sub_402384() {
Actor_Says(kActorIzo, 210, 12);
Actor_Says(kActorMcCoy, 1115, 12);
Actor_Says(kActorIzo, 220, 16);
- Actor_Says(kActorIzo, 230, 3);
+ Actor_Says(kActorIzo, 230, kAnimationModeTalk);
Actor_Says(kActorIzo, 240, 15);
if (Query_Difficulty_Level() < 2) {
Actor_Modify_Friendliness_To_Other(kActorIzo, kActorMcCoy, -1);
}
}
- if (answer == 1010 || answer == 1020) {
+ if (answer == 1020) { // DRAGONFLY JEWERLY
+ Dialogue_Menu_Remove_From_List(1020);
+ Actor_Says(kActorMcCoy, 1065, 15);
+ Actor_Says(kActorIzo, 160, kAnimationModeTalk);
+ Actor_Says(kActorMcCoy, 1110, 16);
+ Actor_Says(kActorIzo, 170, kAnimationModeTalk);
+ Actor_Says(kActorIzo, 180, kAnimationModeTalk);
+ Actor_Says(kActorIzo, 190, 12);
+ if (Query_Difficulty_Level() < 2) {
+ Actor_Modify_Friendliness_To_Other(kActorIzo, kActorMcCoy, -2);
+ }
+ }
+ if (answer == 1010 // INSECT JEWELRY
+ || answer == 1020 // DRAGONFLY JEWERLY
+ ) {
Actor_Says_With_Pause(kActorMcCoy, 1120, 0.9f, 17);
Actor_Says(kActorIzo, 250, 13);
Actor_Says(kActorMcCoy, 1125, 14);
if (Actor_Query_Friendliness_To_Other(kActorIzo, kActorMcCoy) < 47) {
- Actor_Set_Goal_Number(kActorIzo, 1);
- Player_Loses_Control();
- Actor_Says(kActorIzo, 90, 3);
- Actor_Face_Actor(kActorIzo, kActorMcCoy, true);
- Actor_Says(kActorIzo, 100, 3);
- Actor_Says(kActorIzo, 110, 3);
- Actor_Says_With_Pause(kActorMcCoy, 1050, 0.2f, 3);
- Actor_Says(kActorIzo, 120, 3);
- Actor_Set_Goal_Number(kActorIzo, 2);
+ takePhotoAndRunAway();
}
end = true;
}
- if (answer == 1030) {
+ if (answer == 1030) { // WEAPONS
Dialogue_Menu_Remove_From_List(1030);
Actor_Says(kActorMcCoy, 1075, 18);
Actor_Says(kActorIzo, 260, 12);
@@ -319,24 +326,16 @@ void SceneScriptHC01::sub_402384() {
Actor_Says(kActorIzo, 290, 15);
Actor_Says(kActorIzo, 300, 12);
Actor_Says(kActorIzo, 310, 17);
- Actor_Says(kActorMcCoy, 1140, 3);
+ Actor_Says(kActorMcCoy, 1140, kAnimationModeTalk);
if (Query_Difficulty_Level() < 2) {
Actor_Modify_Friendliness_To_Other(kActorIzo, kActorMcCoy, -2);
}
if (Actor_Query_Friendliness_To_Other(kActorIzo, kActorMcCoy) < 47) {
- Actor_Set_Goal_Number(kActorIzo, 1);
- Player_Loses_Control();
- Actor_Says(kActorIzo, 90, 3);
- Actor_Face_Actor(kActorIzo, kActorMcCoy, true);
- Actor_Says(kActorIzo, 100, 3);
- Actor_Says(kActorIzo, 110, 3);
- Actor_Says_With_Pause(kActorMcCoy, 1050, 0.2f, 3);
- Actor_Says(kActorIzo, 120, 3);
- Actor_Set_Goal_Number(kActorIzo, 2);
+ takePhotoAndRunAway();
}
end = true;
}
- if (answer == 1040) {
+ if (answer == 1040) { // SHELL CASINGS
Dialogue_Menu_Remove_From_List(1040);
Actor_Says(kActorMcCoy, 1080, 15);
Actor_Says(kActorMcCoy, 1085, 17);
@@ -347,7 +346,7 @@ void SceneScriptHC01::sub_402384() {
Actor_Says(kActorIzo, 350, 12);
end = true;
}
- if (answer == 1050) {
+ if (answer == 1050) { // GRIGORIAN 1
Dialogue_Menu_Remove_From_List(1050);
Actor_Says(kActorMcCoy, 1090, 18);
Actor_Says(kActorIzo, 360, 14);
@@ -367,19 +366,11 @@ void SceneScriptHC01::sub_402384() {
Actor_Says(kActorIzo, 440, 13);
Actor_Modify_Friendliness_To_Other(kActorIzo, kActorMcCoy, -4);
if (Actor_Query_Friendliness_To_Other(kActorIzo, kActorMcCoy) < 47) {
- Actor_Set_Goal_Number(kActorIzo, 1);
- Player_Loses_Control();
- Actor_Says(kActorIzo, 90, 3);
- Actor_Face_Actor(kActorIzo, kActorMcCoy, true);
- Actor_Says(kActorIzo, 100, 3);
- Actor_Says(kActorIzo, 110, 3);
- Actor_Says_With_Pause(kActorMcCoy, 1050, 0.2f, 3);
- Actor_Says(kActorIzo, 120, 3);
- Actor_Set_Goal_Number(kActorIzo, 2);
+ takePhotoAndRunAway();
}
end = true;
}
- if (answer == 1060) {
+ if (answer == 1060) { // GRIGORIAN 2
Dialogue_Menu_Remove_From_List(1060);
Actor_Says(kActorMcCoy, 1095, 15);
Actor_Says_With_Pause(kActorMcCoy, 1100, 1.2f, 18);
@@ -400,34 +391,26 @@ void SceneScriptHC01::sub_402384() {
Actor_Says(kActorMcCoy, 1210, 16);
Actor_Modify_Friendliness_To_Other(kActorIzo, kActorMcCoy, -4);
if (Actor_Query_Friendliness_To_Other(kActorIzo, kActorMcCoy) < 47) {
- Actor_Set_Goal_Number(kActorIzo, 1);
- Player_Loses_Control();
- Actor_Says(kActorIzo, 90, 3);
- Actor_Face_Actor(kActorIzo, kActorMcCoy, true);
- Actor_Says(kActorIzo, 100, 3);
- Actor_Says(kActorIzo, 110, 3);
- Actor_Says_With_Pause(kActorMcCoy, 1050, 0.2f, 3);
- Actor_Says(kActorIzo, 120, 3);
- Actor_Set_Goal_Number(kActorIzo, 2);
+ takePhotoAndRunAway();
}
end = true;
}
- if (answer == 100) {
+ if (answer == 100) { // DONE
end = true;
}
} while (!end);
}
-void SceneScriptHC01::sub_40346C() {
- Actor_Set_Goal_Number(kActorIzo, 1);
+void SceneScriptHC01::takePhotoAndRunAway() {
+ Actor_Set_Goal_Number(kActorIzo, kGoalIzoPrepareCamera);
Player_Loses_Control();
- Actor_Says(kActorIzo, 90, 3);
+ Actor_Says(kActorIzo, 90, kAnimationModeTalk);
Actor_Face_Actor(kActorIzo, kActorMcCoy, true);
- Actor_Says(kActorIzo, 100, 3);
- Actor_Says(kActorIzo, 110, 3);
- Actor_Says_With_Pause(kActorMcCoy, 1050, 0.2f, 3);
- Actor_Says(kActorIzo, 120, 3);
- Actor_Set_Goal_Number(kActorIzo, 2);
+ Actor_Says(kActorIzo, 100, kAnimationModeTalk);
+ Actor_Says(kActorIzo, 110, kAnimationModeTalk);
+ Actor_Says_With_Pause(kActorMcCoy, 1050, 0.2f, kAnimationModeTalk);
+ Actor_Says(kActorIzo, 120, kAnimationModeTalk);
+ Actor_Set_Goal_Number(kActorIzo, kGoalIzoTakePhoto);
}
} // End of namespace BladeRunner
diff --git a/engines/bladerunner/script/scene/hc02.cpp b/engines/bladerunner/script/scene/hc02.cpp
index 4b293612dc..76cf09c6e0 100644
--- a/engines/bladerunner/script/scene/hc02.cpp
+++ b/engines/bladerunner/script/scene/hc02.cpp
@@ -35,16 +35,16 @@ void SceneScriptHC02::InitializeScene() {
Scene_Exit_Add_2D_Exit(1, 505, 0, 639, 170, 0);
Ambient_Sounds_Add_Looping_Sound(103, 50, 50, 0);
Ambient_Sounds_Add_Looping_Sound(280, 50, 50, 0);
- Ambient_Sounds_Add_Sound(252, 3, 60, 33, 33, -60, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(254, 3, 60, 33, 33, -60, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(255, 3, 60, 33, 33, -60, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(256, 3, 60, 33, 33, -60, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(257, 3, 60, 33, 33, -60, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(258, 3, 60, 33, 33, -60, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(259, 3, 60, 33, 33, -100, 20, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(260, 3, 60, 33, 33, -100, 20, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(261, 3, 60, 33, 33, -100, 20, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(262, 3, 60, 33, 33, -100, 20, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(252, 3, 60, 33, 33, -60, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(254, 3, 60, 33, 33, -60, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(255, 3, 60, 33, 33, -60, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(256, 3, 60, 33, 33, -60, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(257, 3, 60, 33, 33, -60, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(258, 3, 60, 33, 33, -60, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(259, 3, 60, 33, 33, -100, 20, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(260, 3, 60, 33, 33, -100, 20, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(261, 3, 60, 33, 33, -100, 20, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(262, 3, 60, 33, 33, -100, 20, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(182, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(184, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(185, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
@@ -54,20 +54,20 @@ void SceneScriptHC02::InitializeScene() {
Ambient_Sounds_Add_Sound(191, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(192, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(195, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(242, 3, 30, 14, 14, 30, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(243, 3, 30, 14, 14, 30, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(244, 3, 30, 14, 14, 30, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(245, 3, 30, 14, 14, 30, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(246, 3, 30, 14, 14, 30, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(247, 3, 30, 14, 14, 30, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(248, 3, 30, 14, 14, 30, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(249, 3, 30, 14, 14, 30, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(242, 3, 30, 14, 14, 30, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(243, 3, 30, 14, 14, 30, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(244, 3, 30, 14, 14, 30, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(245, 3, 30, 14, 14, 30, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(246, 3, 30, 14, 14, 30, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(247, 3, 30, 14, 14, 30, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(248, 3, 30, 14, 14, 30, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(249, 3, 30, 14, 14, 30, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(238, 3, 50, 20, 20, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(240, 3, 50, 25, 25, -100, 100, -101, -101, 0, 0);
- if (Game_Flag_Query(384)) {
+ if (Game_Flag_Query(kFlagHC01toHC02)) {
Scene_Loop_Start_Special(0, 0, 0);
Scene_Loop_Set_Default(1);
- Game_Flag_Reset(384);
+ Game_Flag_Reset(kFlagHC01toHC02);
} else {
Scene_Loop_Set_Default(1);
}
@@ -86,10 +86,10 @@ bool SceneScriptHC02::ClickedOn3DObject(const char *objectName, bool a2) {
}
bool SceneScriptHC02::ClickedOnActor(int actorId) {
- if (actorId == 32) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -150.51f, 0.14f, 62.74f, 0, 1, false, 0)) {
+ if (actorId == kActorHawkersBarkeep) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -150.51f, 0.14f, 62.74f, 0, true, false, 0)) {
Actor_Face_Actor(kActorMcCoy, kActorHawkersBarkeep, true);
- if (!Game_Flag_Query(404)) {
+ if (!Game_Flag_Query(kFlagHawkersBarkeepIntroduction)) {
Actor_Says(kActorMcCoy, 1225, 13);
Actor_Says_With_Pause(kActorHawkersBarkeep, 0, 0.0f, 13);
Actor_Says(kActorHawkersBarkeep, 10, 16);
@@ -98,15 +98,22 @@ bool SceneScriptHC02::ClickedOnActor(int actorId) {
Delay(1500);
Actor_Change_Animation_Mode(kActorMcCoy, 75);
Delay(1500);
- Global_Variable_Increment(42, 1);
- Game_Flag_Set(404);
- } else if (Actor_Clue_Query(kActorMcCoy, kClueChinaBarSecurityCamera) && !Actor_Clue_Query(kActorMcCoy, kClueChinaBarSecurityDisc)) {
+ Global_Variable_Increment(kVariableMcCoyDrinks, 1);
+ Game_Flag_Set(kFlagHawkersBarkeepIntroduction);
+ } else if ( Actor_Clue_Query(kActorMcCoy, kClueChinaBarSecurityCamera)
+ && !Actor_Clue_Query(kActorMcCoy, kClueChinaBarSecurityDisc)
+ ) {
Actor_Says(kActorMcCoy, 4545, 11);
Actor_Says(kActorHawkersBarkeep, 120, 12);
Actor_Says(kActorHawkersBarkeep, 180, 13);
Actor_Clue_Acquire(kActorMcCoy, kClueChinaBarSecurityDisc, true, kActorHawkersBarkeep);
Item_Pickup_Spin_Effect(975, 229, 215);
- } else if (Actor_Clue_Query(kActorMcCoy, kClueHomelessManInterview1) && !Actor_Clue_Query(kActorMcCoy, kClueFlaskOfAbsinthe) && (Global_Variable_Query(2) > 20 || Query_Difficulty_Level() == 0)) {
+ } else if ( Actor_Clue_Query(kActorMcCoy, kClueHomelessManInterview1)
+ && !Actor_Clue_Query(kActorMcCoy, kClueFlaskOfAbsinthe)
+ && (Global_Variable_Query(kVariableChinyen) > 20
+ || Query_Difficulty_Level() == 0
+ )
+ ) {
Actor_Clue_Acquire(kActorMcCoy, kClueFlaskOfAbsinthe, true, kActorHawkersBarkeep);
Actor_Says(kActorMcCoy, 1230, 13);
Actor_Says(kActorHawkersBarkeep, 20, 12);
@@ -120,23 +127,25 @@ bool SceneScriptHC02::ClickedOnActor(int actorId) {
Delay(1500);
Actor_Says_With_Pause(kActorHawkersBarkeep, 50, 1.6f, 17);
if (Query_Difficulty_Level() != 0) {
- Global_Variable_Decrement(2, 20);
+ Global_Variable_Decrement(kVariableChinyen, 20);
}
Actor_Says(kActorMcCoy, 1245, 13);
} else {
if ( Actor_Clue_Query(kActorMcCoy, kClueMaggieBracelet)
- && !Game_Flag_Query(405)
+ && !Game_Flag_Query(kFlagHawkersBarkeepBraceletTalk)
) {
Actor_Says(kActorHawkersBarkeep, 80, 16);
Actor_Says(kActorMcCoy, 1265, 13);
Actor_Says(kActorHawkersBarkeep, 90, 13);
- Game_Flag_Set(405);
+ Game_Flag_Set(kFlagHawkersBarkeepBraceletTalk);
}
- if (Global_Variable_Query(2) > 5 || Query_Difficulty_Level() == 0) {
+ if (Global_Variable_Query(kVariableChinyen) > 5
+ || Query_Difficulty_Level() == 0
+ ) {
if (Query_Difficulty_Level() != 0) {
- Global_Variable_Decrement(2, 5);
+ Global_Variable_Decrement(kVariableChinyen, 5);
}
- Global_Variable_Increment(42, 1);
+ Global_Variable_Increment(kVariableMcCoyDrinks, 1);
Actor_Says(kActorMcCoy, 1250, 13);
Actor_Says_With_Pause(kActorHawkersBarkeep, 60, 0.8f, 14);
Actor_Says(kActorMcCoy, 1255, 13);
@@ -163,16 +172,16 @@ bool SceneScriptHC02::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptHC02::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 7.0f, 0.14f, 79.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(385);
+ Game_Flag_Set(kFlagHC02toHC01);
Set_Enter(kSetHC01_HC02_HC03_HC04, kSceneHC01);
}
return true;
}
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -76.0f, 0.14f, -339.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagHC02toHC04);
Async_Actor_Walk_To_XYZ(kActorMcCoy, -88.0f, 0.14f, -463.0f, 0, false);
@@ -204,7 +213,7 @@ void SceneScriptHC02::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
void SceneScriptHC02::PlayerWalkedIn() {
if (Game_Flag_Query(kFlagHC04toHC02)) {
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -76.0f, 0.14f, -339.0f, 0, 0, false, 0);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -76.0f, 0.14f, -339.0f, 0, false, false, 0);
Game_Flag_Reset(kFlagHC04toHC02);
}
}
diff --git a/engines/bladerunner/script/scene/hc03.cpp b/engines/bladerunner/script/scene/hc03.cpp
index e8490b5d4d..07016f6c5f 100644
--- a/engines/bladerunner/script/scene/hc03.cpp
+++ b/engines/bladerunner/script/scene/hc03.cpp
@@ -24,21 +24,33 @@
namespace BladeRunner {
+enum kHC03Loops {
+ kHC03LoopMain = 0,
+ kHC03LoopCageDoorOpening = 2,
+ kHC03LoopMainCageOpen = 3,
+ kHC03LoopTrapDoorOpening = 5,
+ kHC03LoopMainCageOpenTrapDoorOpen = 6
+};
+
void SceneScriptHC03::InitializeScene() {
if (Game_Flag_Query(kFlagUG02toHC03)) {
Setup_Scene_Information(656.0f, 1.61f, -95.0f, 497);
- Game_Flag_Set(388);
+ Game_Flag_Set(kFlagHC03TrapDoorOpen);
Game_Flag_Reset(kFlagUG02toHC03);
} else {
Setup_Scene_Information(607.0f, 0.14f, 13.0f, 57);
- Game_Flag_Reset(386);
+ Game_Flag_Reset(kFlagHC01toHC03);
}
Scene_Exit_Add_2D_Exit(0, 0, 0, 30, 479, 3);
- if (Game_Flag_Query(403) || Global_Variable_Query(kVariableChapter) > 3) {
- Item_Remove_From_World(121);
- Game_Flag_Set(403);
+
+ if (Game_Flag_Query(kFlagHC03CageOpen)
+ || Global_Variable_Query(kVariableChapter) > 3
+ ) {
+ Item_Remove_From_World(kItemHC03Lock);
+ Game_Flag_Set(kFlagHC03CageOpen);
Scene_Exit_Add_2D_Exit(1, 400, 275, 515, 375, 2);
}
+
Ambient_Sounds_Add_Looping_Sound(103, 50, 50, 0);
Ambient_Sounds_Add_Looping_Sound(241, 50, 50, 0);
Ambient_Sounds_Add_Sound(242, 3, 30, 16, 16, -100, -70, -101, -101, 0, 0);
@@ -65,18 +77,24 @@ void SceneScriptHC03::InitializeScene() {
Ambient_Sounds_Add_Sound(193, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(194, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(195, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
- if (Game_Flag_Query(388)) {
- Scene_Loop_Set_Default(6);
- } else if (Game_Flag_Query(403) || Global_Variable_Query(kVariableChapter) > 3) {
- Scene_Loop_Set_Default(3);
+
+ if (Game_Flag_Query(kFlagHC03TrapDoorOpen)) {
+ Scene_Loop_Set_Default(kHC03LoopMainCageOpenTrapDoorOpen);
+ } else if (Game_Flag_Query(kFlagHC03CageOpen)
+ || Global_Variable_Query(kVariableChapter) > 3
+ ) {
+ Scene_Loop_Set_Default(kHC03LoopMainCageOpen);
} else {
- Scene_Loop_Set_Default(0);
+ Scene_Loop_Set_Default(kHC03LoopMain);
}
}
void SceneScriptHC03::SceneLoaded() {
Obstacle_Object("GUITAR01", true);
- if (Game_Flag_Query(403) || Game_Flag_Query(388) || Global_Variable_Query(kVariableChapter) > 3) {
+ if (Game_Flag_Query(kFlagHC03CageOpen)
+ || Game_Flag_Query(kFlagHC03TrapDoorOpen)
+ || Global_Variable_Query(kVariableChapter) > 3
+ ) {
Unobstacle_Object("GPscisGate", true);
} else {
Obstacle_Object("GPscisGate", true);
@@ -96,21 +114,22 @@ bool SceneScriptHC03::ClickedOnActor(int actorId) {
return false;
}
-bool SceneScriptHC03::ClickedOnItem(int itemId, bool a2) {
- if (itemId == 121) {
- if (a2) {
- Scene_Loop_Set_Default(3);
- Scene_Loop_Start_Special(kSceneLoopModeOnce, 2, true);
- Game_Flag_Set(403);
- Item_Remove_From_World(121);
+bool SceneScriptHC03::ClickedOnItem(int itemId, bool combatMode) {
+ if (itemId == kItemHC03Lock) {
+ if (combatMode) {
+ Scene_Loop_Set_Default(kHC03LoopMainCageOpen);
+ Scene_Loop_Start_Special(kSceneLoopModeOnce, kHC03LoopCageDoorOpening, true);
+ Game_Flag_Set(kFlagHC03CageOpen);
+ Item_Remove_From_World(kItemHC03Lock);
Unobstacle_Object("GPscisGate", true);
} else {
Actor_Says(kActorMcCoy, 8522, 12);
}
return true;
}
- if (itemId == 107) {
- Item_Remove_From_World(107);
+
+ if (itemId == kItemCamera) {
+ Item_Remove_From_World(kItemCamera);
Item_Pickup_Spin_Effect(977, 68, 435);
Delay(1500);
Item_Pickup_Spin_Effect(984, 78, 435);
@@ -129,25 +148,26 @@ bool SceneScriptHC03::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptHC03::ClickedOnExit(int exitId) {
if (exitId == 0) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 607.0f, 0.14f, 9.0f, 0, 1, false, 0)) {
- Game_Flag_Set(387);
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 607.0f, 0.14f, 9.0f, 0, true, false, 0)) {
+ Game_Flag_Set(kFlagHC03toHC01);
Set_Enter(kSetHC01_HC02_HC03_HC04, kSceneHC01);
}
return true;
}
+
if (exitId == 1) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 628.0f, 2.04f, -123.0f, 0, 1, false, 0)) {
- if (Game_Flag_Query(388)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 628.0f, 2.04f, -123.0f, 0, true, false, 0)) {
+ if (!Game_Flag_Query(kFlagHC03TrapDoorOpen)) {
+ Scene_Loop_Set_Default(kHC03LoopMainCageOpenTrapDoorOpen);
+ Scene_Loop_Start_Special(kSceneLoopModeOnce, kHC03LoopTrapDoorOpening, true);
+ Game_Flag_Set(kFlagHC03TrapDoorOpen);
+ } else {
Game_Flag_Set(kFlagHC03toUG02);
Game_Flag_Reset(kFlagMcCoyAtHCxx);
Game_Flag_Set(kFlagMcCoyAtUGxx);
- Game_Flag_Set(388);
+ Game_Flag_Set(kFlagHC03TrapDoorOpen);
Music_Stop(2);
Set_Enter(kSetUG02, kSceneUG02);
- } else {
- Scene_Loop_Set_Default(6);
- Scene_Loop_Start_Special(kSceneLoopModeOnce, 5, true);
- Game_Flag_Set(388);
}
}
return true;
@@ -160,10 +180,26 @@ bool SceneScriptHC03::ClickedOn2DRegion(int region) {
}
void SceneScriptHC03::SceneFrameAdvanced(int frame) {
- if (frame == 10 || frame == 19 || frame == 29 || frame == 39 || frame == 49 || frame == 59 || frame == 71 || frame == 82 || frame == 91 || frame == 101 || frame == 111 || frame == 121 || frame == 131) {
+ if (frame == 10
+ || frame == 19
+ || frame == 29
+ || frame == 39
+ || frame == 49
+ || frame == 59
+ || frame == 71
+ || frame == 82
+ || frame == 91
+ || frame == 101
+ || frame == 111
+ || frame == 121
+ || frame == 131
+ ) {
Sound_Play(281, Random_Query(33, 50), 50, 50, 50);
}
- if (!Game_Flag_Query(521) && frame == 66) {
+
+ if (!Game_Flag_Query(521)
+ && frame == 66
+ ) {
Ambient_Sounds_Play_Sound(328, 90, 0, -40, 99);
Sound_Play(201, Random_Query(47, 47), 0, -40, 50);
Scene_Exit_Add_2D_Exit(1, 400, 275, 515, 375, 2);
@@ -178,7 +214,7 @@ void SceneScriptHC03::PlayerWalkedIn() {
}
void SceneScriptHC03::PlayerWalkedOut() {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
}
diff --git a/engines/bladerunner/script/scene/hc04.cpp b/engines/bladerunner/script/scene/hc04.cpp
index a20b65c623..35965ea472 100644
--- a/engines/bladerunner/script/scene/hc04.cpp
+++ b/engines/bladerunner/script/scene/hc04.cpp
@@ -34,20 +34,20 @@ void SceneScriptHC04::InitializeScene() {
Music_Play(4, 14, -90, 1, -1, 1, 2);
Actor_Put_In_Set(kActorIsabella, kSetHC01_HC02_HC03_HC04);
Actor_Set_At_XYZ(kActorIsabella, -210.0f, 0.0f, -445.0f, 250);
- Scene_Exit_Add_2D_Exit(0, 539, 51, 639, 309, 0);
- Scene_Exit_Add_2D_Exit(1, 0, 456, 639, 479, 2);
+ Scene_Exit_Add_2D_Exit(0, 539, 51, 639, 309, 0);
+ Scene_Exit_Add_2D_Exit(1, 0, 456, 639, 479, 2);
Ambient_Sounds_Add_Looping_Sound(103, 50, 50, 0);
Ambient_Sounds_Add_Looping_Sound(329, 16, 16, 0);
Ambient_Sounds_Add_Looping_Sound(330, 40, 40, 0);
- Ambient_Sounds_Add_Sound(182, 5, 70, 14, 16, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(184, 5, 70, 14, 16, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(185, 5, 70, 14, 16, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(186, 5, 70, 14, 16, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(188, 5, 70, 14, 16, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(189, 5, 70, 14, 16, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(191, 5, 70, 14, 16, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(192, 5, 70, 14, 16, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(195, 5, 70, 14, 16, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(182, 5, 70, 14, 16, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(184, 5, 70, 14, 16, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(185, 5, 70, 14, 16, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(186, 5, 70, 14, 16, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(188, 5, 70, 14, 16, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(189, 5, 70, 14, 16, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(191, 5, 70, 14, 16, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(192, 5, 70, 14, 16, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(195, 5, 70, 14, 16, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(252, 3, 60, 16, 16, -100, -100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(252, 3, 60, 16, 16, -100, -100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(254, 3, 60, 16, 16, -100, -100, -101, -101, 0, 0);
@@ -84,17 +84,17 @@ bool SceneScriptHC04::ClickedOn3DObject(const char *objectName, bool a2) {
bool SceneScriptHC04::ClickedOnActor(int actorId) {
if (actorId == kActorIsabella) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -155.0f, 0.0f, -475.0f, 12, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -155.0f, 0.0f, -475.0f, 12, true, false, 0)) {
Actor_Face_Actor(kActorMcCoy, kActorIsabella, true);
Actor_Face_Actor(kActorIsabella, kActorMcCoy, true);
- if (Game_Flag_Query(kFlagIsabellaIntroduced)) {
- sub_401B90();
+ if (!Game_Flag_Query(kFlagIsabellaIntroduced)) {
+ Actor_Says(kActorIsabella, 0, kAnimationModeTalk);
+ Actor_Says(kActorMcCoy, 1280, kAnimationModeTalk);
+ Actor_Says(kActorIsabella, 20, kAnimationModeTalk);
+ Game_Flag_Set(kFlagIsabellaIntroduced);
return true;
} else {
- Actor_Says(kActorIsabella, 0, 3);
- Actor_Says(kActorMcCoy, 1280, 3);
- Actor_Says(kActorIsabella, 20, 3);
- Game_Flag_Set(kFlagIsabellaIntroduced);
+ dialogueWithIsabella();
return true;
}
}
@@ -108,7 +108,7 @@ bool SceneScriptHC04::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptHC04::ClickedOnExit(int exitId) {
if (exitId == 0) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -108.0f, 0.14f, -639.0f, 0, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -108.0f, 0.14f, -639.0f, 0, true, false, 0)) {
Music_Stop(2);
Game_Flag_Set(kFlagHC04toRC03);
Game_Flag_Reset(kFlagMcCoyAtHCxx);
@@ -118,7 +118,7 @@ bool SceneScriptHC04::ClickedOnExit(int exitId) {
return true;
}
if (exitId == 1) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -72.0f, 0.14f, -399.0f, 0, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -72.0f, 0.14f, -399.0f, 0, true, false, 0)) {
Game_Flag_Set(kFlagHC04toHC02);
Set_Enter(kSetHC01_HC02_HC03_HC04, kSceneHC02);
}
@@ -141,100 +141,113 @@ void SceneScriptHC04::PlayerWalkedIn() {
}
void SceneScriptHC04::PlayerWalkedOut() {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
}
void SceneScriptHC04::DialogueQueueFlushed(int a1) {
}
-void SceneScriptHC04::sub_401B90() {
+void SceneScriptHC04::dialogueWithIsabella() {
Dialogue_Menu_Clear_List();
- if (Actor_Clue_Query(kActorMcCoy, kClueKingstonKitchenBox2) || Actor_Clue_Query(kActorMcCoy, kClueKingstonKitchenBox1)) {
+ if (Actor_Clue_Query(kActorMcCoy, kClueKingstonKitchenBox2)
+ || Actor_Clue_Query(kActorMcCoy, kClueKingstonKitchenBox1)
+ ) {
if (Actor_Clue_Query(kActorMcCoy, kClueBombingSuspect)) {
- DM_Add_To_List_Never_Repeat_Once_Selected(340, 5, 6, 5);
+ DM_Add_To_List_Never_Repeat_Once_Selected(340, 5, 6, 5); // SADIK PHOTO
} else if (Actor_Clue_Query(kActorMcCoy, kClueTyrellSecurityPhoto)) {
- DM_Add_To_List_Never_Repeat_Once_Selected(350, 5, 6, 5);
+ DM_Add_To_List_Never_Repeat_Once_Selected(350, 5, 6, 5); // DELIVERYMEN
}
- DM_Add_To_List_Never_Repeat_Once_Selected(360, 6, 4, 3);
+ DM_Add_To_List_Never_Repeat_Once_Selected(360, 6, 4, 3); // MARCUS EISENDULLER
}
- if (Actor_Clue_Query(kActorMcCoy, kClueCheese) && !Actor_Clue_Query(kActorMcCoy, kClueSpecialIngredient)) {
- DM_Add_To_List_Never_Repeat_Once_Selected(370, 3, 4, 7);
+ if ( Actor_Clue_Query(kActorMcCoy, kClueCheese)
+ && !Actor_Clue_Query(kActorMcCoy, kClueSpecialIngredient)
+ ) {
+ DM_Add_To_List_Never_Repeat_Once_Selected(370, 3, 4, 7); // CHEESE
}
if (Actor_Clue_Query(kActorMcCoy, kClueSpecialIngredient)) {
- DM_Add_To_List_Never_Repeat_Once_Selected(380, -1, 5, 8);
+ DM_Add_To_List_Never_Repeat_Once_Selected(380, -1, 5, 8); // MIA AND MURRAY INFO
}
- DM_Add_To_List_Never_Repeat_Once_Selected(390, 7, 5, -1);
- Dialogue_Menu_Add_DONE_To_List(400);
+ DM_Add_To_List_Never_Repeat_Once_Selected(390, 7, 5, -1); // BUY STEW
+ Dialogue_Menu_Add_DONE_To_List(400); // DONE
+
Dialogue_Menu_Appear(320, 240);
int answer = Dialogue_Menu_Query_Input();
Dialogue_Menu_Disappear();
+
switch (answer) {
- case 340:
- Actor_Says(kActorMcCoy, 1285, 3);
- Actor_Says(kActorIsabella, 50, 3);
- Actor_Says(kActorMcCoy, 1330, 3);
- Actor_Says(kActorIsabella, 60, 3);
+ case 340: // SADIK PHOTO
+ Actor_Says(kActorMcCoy, 1285, kAnimationModeTalk);
+ Actor_Says(kActorIsabella, 50, kAnimationModeTalk);
+ Actor_Says(kActorMcCoy, 1330, kAnimationModeTalk);
+ Actor_Says(kActorIsabella, 60, kAnimationModeTalk);
break;
- case 350:
- Actor_Says(kActorMcCoy, 1290, 3);
- Actor_Says(kActorIsabella, 70, 3);
- Actor_Says(kActorMcCoy, 1335, 3);
- Actor_Says(kActorIsabella, 80, 3);
- Actor_Says(kActorMcCoy, 1340, 3);
- Actor_Says(kActorIsabella, 90, 3);
- Actor_Says(kActorMcCoy, 1345, 3);
+
+ case 350: // DELIVERYMEN
+ Actor_Says(kActorMcCoy, 1290, kAnimationModeTalk);
+ Actor_Says(kActorIsabella, 70, kAnimationModeTalk);
+ Actor_Says(kActorMcCoy, 1335, kAnimationModeTalk);
+ Actor_Says(kActorIsabella, 80, kAnimationModeTalk);
+ Actor_Says(kActorMcCoy, 1340, kAnimationModeTalk);
+ Actor_Says(kActorIsabella, 90, kAnimationModeTalk);
+ Actor_Says(kActorMcCoy, 1345, kAnimationModeTalk);
break;
- case 360:
- Actor_Says(kActorMcCoy, 1295, 3);
- Actor_Says(kActorIsabella, 100, 3);
- Actor_Says(kActorMcCoy, 1350, 3);
- Actor_Says(kActorIsabella, 110, 3);
- Actor_Says(kActorMcCoy, 1355, 3);
- Actor_Says(kActorIsabella, 130, 3);
- Actor_Says(kActorMcCoy, 1360, 3);
+
+ case 360: // MARCUS EISENDULLER
+ Actor_Says(kActorMcCoy, 1295, kAnimationModeTalk);
+ Actor_Says(kActorIsabella, 100, kAnimationModeTalk);
+ Actor_Says(kActorMcCoy, 1350, kAnimationModeTalk);
+ Actor_Says(kActorIsabella, 110, kAnimationModeTalk);
+ Actor_Says(kActorMcCoy, 1355, kAnimationModeTalk);
+ Actor_Says(kActorIsabella, 130, kAnimationModeTalk);
+ Actor_Says(kActorMcCoy, 1360, kAnimationModeTalk);
break;
- case 370:
- Actor_Says(kActorMcCoy, 1300, 3);
- Actor_Says(kActorIsabella, 140, 3);
- Actor_Says(kActorMcCoy, 1365, 3);
- Actor_Says(kActorIsabella, 150, 3);
+
+ case 370: // CHEESE
+ Actor_Says(kActorMcCoy, 1300, kAnimationModeTalk);
+ Actor_Says(kActorIsabella, 140, kAnimationModeTalk);
+ Actor_Says(kActorMcCoy, 1365, kAnimationModeTalk);
+ Actor_Says(kActorIsabella, 150, kAnimationModeTalk);
break;
- case 380:
- Actor_Says(kActorMcCoy, 1305, 3);
+
+ case 380: // MIA AND MURRAY INFO
+ Actor_Says(kActorMcCoy, 1305, kAnimationModeTalk);
Actor_Modify_Friendliness_To_Other(kActorIsabella, kActorMcCoy, -2);
- Actor_Says(kActorIsabella, 160, 3);
- Actor_Says(kActorMcCoy, 1370, 3);
- Actor_Says(kActorIsabella, 170, 3);
- Actor_Says(kActorMcCoy, 1375, 3);
- Actor_Says(kActorIsabella, 180, 3);
- Actor_Says(kActorMcCoy, 1380, 3);
- Actor_Says(kActorIsabella, 190, 3);
- Actor_Says(kActorIsabella, 210, 3);
- Actor_Says(kActorIsabella, 240, 3);
- Actor_Says(kActorMcCoy, 1385, 3);
- Actor_Says(kActorIsabella, 260, 3);
- Actor_Says(kActorMcCoy, 1390, 3);
- Actor_Says(kActorIsabella, 300, 3);
- Actor_Says(kActorIsabella, 310, 3);
- Actor_Says(kActorIsabella, 320, 3);
- Actor_Says(kActorMcCoy, 1395, 3);
- Actor_Says(kActorIsabella, 330, 3);
+ Actor_Says(kActorIsabella, 160, kAnimationModeTalk);
+ Actor_Says(kActorMcCoy, 1370, kAnimationModeTalk);
+ Actor_Says(kActorIsabella, 170, kAnimationModeTalk);
+ Actor_Says(kActorMcCoy, 1375, kAnimationModeTalk);
+ Actor_Says(kActorIsabella, 180, kAnimationModeTalk);
+ Actor_Says(kActorMcCoy, 1380, kAnimationModeTalk);
+ Actor_Says(kActorIsabella, 190, kAnimationModeTalk);
+ Actor_Says(kActorIsabella, 210, kAnimationModeTalk);
+ Actor_Says(kActorIsabella, 240, kAnimationModeTalk);
+ Actor_Says(kActorMcCoy, 1385, kAnimationModeTalk);
+ Actor_Says(kActorIsabella, 260, kAnimationModeTalk);
+ Actor_Says(kActorMcCoy, 1390, kAnimationModeTalk);
+ Actor_Says(kActorIsabella, 300, kAnimationModeTalk);
+ Actor_Says(kActorIsabella, 310, kAnimationModeTalk);
+ Actor_Says(kActorIsabella, 320, kAnimationModeTalk);
+ Actor_Says(kActorMcCoy, 1395, kAnimationModeTalk);
+ Actor_Says(kActorIsabella, 330, kAnimationModeTalk);
Actor_Clue_Acquire(kActorMcCoy, kClueStolenCheese, false, kActorIsabella);
break;
- case 390:
- Actor_Says(kActorMcCoy, 1310, 3);
+
+ case 390: // BUY STEW
+ Actor_Says(kActorMcCoy, 1310, kAnimationModeTalk);
Actor_Modify_Friendliness_To_Other(kActorIsabella, kActorMcCoy, 2);
- Actor_Says(kActorIsabella, 340, 3);
+ Actor_Says(kActorIsabella, 340, kAnimationModeTalk);
break;
- case 400:
- Actor_Says(kActorMcCoy, 1315, 3);
+
+ case 400: // DONE
+ Actor_Says(kActorMcCoy, 1315, kAnimationModeTalk);
break;
- default:
- Actor_Says(kActorMcCoy, 1320, 3);
- Actor_Says(kActorIsabella, 30, 3);
- Actor_Says(kActorMcCoy, 1325, 3);
- Actor_Says(kActorMcCoy, 1345, 3);
+
+ default: // never used?
+ Actor_Says(kActorMcCoy, 1320, kAnimationModeTalk);
+ Actor_Says(kActorIsabella, 30, kAnimationModeTalk);
+ Actor_Says(kActorMcCoy, 1325, kAnimationModeTalk);
+ Actor_Says(kActorMcCoy, 1345, kAnimationModeTalk);
break;
}
}
diff --git a/engines/bladerunner/script/scene/hf01.cpp b/engines/bladerunner/script/scene/hf01.cpp
index 9e445ca572..25f663c9c4 100644
--- a/engines/bladerunner/script/scene/hf01.cpp
+++ b/engines/bladerunner/script/scene/hf01.cpp
@@ -92,13 +92,13 @@ bool SceneScriptHF01::ClickedOn3DObject(const char *objectName, bool a2) {
}
bool SceneScriptHF01::ClickedOnActor(int actorId) {
- int v1;
- if (Global_Variable_Query(kVariableAffectionTowards) == 2) {
- v1 = kActorDektora;
- } else if (Global_Variable_Query(kVariableAffectionTowards) == 3) {
- v1 = kActorLucy;
+ int affectionTowardsActor;
+ if (Global_Variable_Query(kVariableAffectionTowards) == kAffectionTowardsDektora) {
+ affectionTowardsActor = kActorDektora;
+ } else if (Global_Variable_Query(kVariableAffectionTowards) == kAffectionTowardsLucy) {
+ affectionTowardsActor = kActorLucy;
} else {
- v1 = -1;
+ affectionTowardsActor = -1;
}
if (actorId == kActorMia || actorId == kActorMurray) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 504.04f, 8.0f, -242.17f, 12, 1, false, 0)) {
@@ -128,9 +128,9 @@ bool SceneScriptHF01::ClickedOnActor(int actorId) {
}
return false;
}
- if (v1 != -1 && actorId == v1) {
+ if (affectionTowardsActor != -1 && actorId == affectionTowardsActor) {
if (!Loop_Actor_Walk_To_Actor(kActorMcCoy, actorId, 28, 1, false)) {
- if (Actor_Query_Goal_Number(v1) == 599) {
+ if (Actor_Query_Goal_Number(affectionTowardsActor) == 599) {
Actor_Says(kActorMcCoy, 8630, 13);
return true;
}
@@ -144,14 +144,14 @@ bool SceneScriptHF01::ClickedOnActor(int actorId) {
&& !Game_Flag_Query(662)
) {
Game_Flag_Set(662);
- Actor_Face_Actor(kActorMcCoy, v1, true);
- Actor_Face_Actor(v1, kActorMcCoy, true);
- if (v1 == kActorDektora) {
+ Actor_Face_Actor(kActorMcCoy, affectionTowardsActor, true);
+ Actor_Face_Actor(affectionTowardsActor, kActorMcCoy, true);
+ if (affectionTowardsActor == kActorDektora) {
sub_4032DC();
- } else if (v1 == kActorLucy) {
+ } else if (affectionTowardsActor == kActorLucy) {
sub_403484();
}
- Async_Actor_Walk_To_XYZ(v1, -175.0f, 8.0f, -617.0f, 0, false);
+ Async_Actor_Walk_To_XYZ(affectionTowardsActor, -175.0f, 8.0f, -617.0f, 0, false);
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -137.0f, 8.0f, -577.0f, 0, 0, false, 1);
Game_Flag_Set(kFlagHF01toHF05);
Set_Enter(kSetHF05, kSceneHF05);
@@ -310,11 +310,17 @@ void SceneScriptHF01::PlayerWalkedIn() {
Non_Player_Actor_Combat_Mode_On(kActorOfficerGrayford, kActorCombatStateUncover, true, kActorMcCoy, 4, kAnimationModeCombatIdle, kAnimationModeCombatWalk, kAnimationModeCombatRun, 0, 0, 0, 100, 300, false);
}
if (!Game_Flag_Query(kFlagCrazylegsArrested) && Actor_Query_Goal_Number(kActorCrazylegs) != 2) {
- if (Actor_Clue_Query(kActorMcCoy, kCluePhoneCallLucy1) && Global_Variable_Query(kVariableAffectionTowards) == 3 && Actor_Query_Goal_Number(kActorLucy) != 599) {
+ if (Actor_Clue_Query(kActorMcCoy, kCluePhoneCallLucy1)
+ && Global_Variable_Query(kVariableAffectionTowards) == kAffectionTowardsLucy
+ && Actor_Query_Goal_Number(kActorLucy) != 599
+ ) {
Actor_Put_In_Set(kActorLucy, kSetHF01);
Actor_Set_At_XYZ(kActorLucy, -5.0f, 8.0f, -622.0f, 419);
Actor_Set_Targetable(kActorLucy, true);
- } else if (Actor_Clue_Query(kActorMcCoy, kCluePhoneCallDektora1) && Global_Variable_Query(kVariableAffectionTowards) == 2 && Actor_Query_Goal_Number(kActorDektora) != 599) {
+ } else if (Actor_Clue_Query(kActorMcCoy, kCluePhoneCallDektora1)
+ && Global_Variable_Query(kVariableAffectionTowards) == kAffectionTowardsDektora
+ && Actor_Query_Goal_Number(kActorDektora) != 599
+ ) {
Actor_Put_In_Set(kActorDektora, kSetHF01);
Actor_Set_At_XYZ(kActorDektora, -5.0f, 8.0f, -622.0f, 419);
Actor_Set_Targetable(kActorDektora, true);
@@ -359,14 +365,14 @@ void SceneScriptHF01::PlayerWalkedIn() {
}
void SceneScriptHF01::PlayerWalkedOut() {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
if (!Game_Flag_Query(kFlagHF01toHF05)
&& !Game_Flag_Query(kFlagHF01toHF02)
&& !Game_Flag_Query(kFlagHF01toHF03)
&& !Game_Flag_Query(722)
) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Outtake_Play(kOuttakeInside2, true, -1);
Outtake_Play(kOuttakeTowards3, true, -1);
@@ -389,16 +395,18 @@ void SceneScriptHF01::DialogueQueueFlushed(int a1) {
void SceneScriptHF01::sub_4026B4() {
Dialogue_Menu_Clear_List();
- if (Actor_Clue_Query(kActorMcCoy, kClueLucy) == 1) {
+ if (Actor_Clue_Query(kActorMcCoy, kClueLucy)) {
DM_Add_To_List_Never_Repeat_Once_Selected(440, 8, 6, 3);
}
- if (!Actor_Clue_Query(kActorMcCoy, kClueLucy) && Actor_Clue_Query(kActorMcCoy, kClueRunciterInterviewA) == 1) {
+ if (!Actor_Clue_Query(kActorMcCoy, kClueLucy)
+ && Actor_Clue_Query(kActorMcCoy, kClueRunciterInterviewA)
+ ) {
DM_Add_To_List_Never_Repeat_Once_Selected(450, 7, 6, 3);
}
- if (Actor_Clue_Query(kActorMcCoy, kClueCheese) == 1) {
+ if (Actor_Clue_Query(kActorMcCoy, kClueCheese)) {
DM_Add_To_List_Never_Repeat_Once_Selected(460, 3, 5, 6);
}
- if (Actor_Clue_Query(kActorMcCoy, kClueLichenDogWrapper) == 1) {
+ if (Actor_Clue_Query(kActorMcCoy, kClueLichenDogWrapper)) {
DM_Add_To_List_Never_Repeat_Once_Selected(470, -1, 3, 8);
}
Dialogue_Menu_Add_DONE_To_List(480);
diff --git a/engines/bladerunner/script/scene/hf02.cpp b/engines/bladerunner/script/scene/hf02.cpp
index 1bc4e9501f..c7a179587c 100644
--- a/engines/bladerunner/script/scene/hf02.cpp
+++ b/engines/bladerunner/script/scene/hf02.cpp
@@ -85,7 +85,7 @@ bool SceneScriptHF02::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptHF02::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 42.0f, 47.76f, -296.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagHF02toHF01);
Set_Enter(kSetHF01, kSceneHF01);
@@ -94,7 +94,7 @@ bool SceneScriptHF02::ClickedOnExit(int exitId) {
}
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 470.0f, 47.76f, -444.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(527);
Set_Enter(kSetHF03, kSceneHF03);
diff --git a/engines/bladerunner/script/scene/hf03.cpp b/engines/bladerunner/script/scene/hf03.cpp
index 4557d0a3d0..c0bdf23183 100644
--- a/engines/bladerunner/script/scene/hf03.cpp
+++ b/engines/bladerunner/script/scene/hf03.cpp
@@ -96,8 +96,10 @@ void SceneScriptHF03::sub_401C80() {
Actor_Says(kActorLucy, 210, 13);
Actor_Says(kActorMcCoy, 1655, 15);
Actor_Modify_Friendliness_To_Other(kActorLucy, kActorMcCoy, Random_Query(9, 10));
- if (Actor_Query_Friendliness_To_Other(kActorLucy, kActorMcCoy) > 59 && Global_Variable_Query(kVariableAffectionTowards) == 0) {
- Global_Variable_Set(kVariableAffectionTowards, 3);
+ if (Actor_Query_Friendliness_To_Other(kActorLucy, kActorMcCoy) > 59
+ && Global_Variable_Query(kVariableAffectionTowards) == kAffectionTowardsNone
+ ) {
+ Global_Variable_Set(kVariableAffectionTowards, kAffectionTowardsLucy);
Actor_Says(kActorLucy, 940, 14);
Actor_Says(kActorMcCoy, 6780, 11);
Actor_Says(kActorLucy, 950, 12);
@@ -149,7 +151,7 @@ void SceneScriptHF03::sub_401C80() {
}
bool SceneScriptHF03::ClickedOnActor(int actorId) {
- if (actorId == 6 && Actor_Query_Goal_Number(kActorLucy) == 205) {
+ if (actorId == kActorLucy && Actor_Query_Goal_Number(kActorLucy) == 205) {
if (Game_Flag_Query(kFlagLucyIsReplicant) ? !Loop_Actor_Walk_To_Waypoint(kActorMcCoy, 377, 0, 1, false) : !Loop_Actor_Walk_To_Waypoint(kActorMcCoy, 378, 0, 1, false)) {
Actor_Face_Actor(kActorMcCoy, kActorLucy, true);
if (!Game_Flag_Query(613)) {
@@ -244,7 +246,7 @@ void SceneScriptHF03::PlayerWalkedIn() {
}
void SceneScriptHF03::PlayerWalkedOut() {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
}
diff --git a/engines/bladerunner/script/scene/hf04.cpp b/engines/bladerunner/script/scene/hf04.cpp
index 5921f57f0d..c03157fbb4 100644
--- a/engines/bladerunner/script/scene/hf04.cpp
+++ b/engines/bladerunner/script/scene/hf04.cpp
@@ -83,7 +83,7 @@ bool SceneScriptHF04::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptHF04::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 1132.27f, -0.31f, -113.46f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(567);
Set_Enter(kSetHF02, kSceneHF02);
diff --git a/engines/bladerunner/script/scene/hf05.cpp b/engines/bladerunner/script/scene/hf05.cpp
index 75c9dc1547..9815c91f80 100644
--- a/engines/bladerunner/script/scene/hf05.cpp
+++ b/engines/bladerunner/script/scene/hf05.cpp
@@ -119,7 +119,7 @@ bool SceneScriptHF05::ClickedOn3DObject(const char *objectName, bool a2) {
ADQ_Add(kActorVoiceOver, 940, -1);
Ambient_Sounds_Play_Sound(147, 50, 99, 0, 0);
Delay(1500);
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, 181.54f, 40.63f, 388.09f, 0, 0, true, 0);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, 181.54f, 40.63f, 388.09f, 0, false, true, 0);
Actor_Face_Heading(kActorMcCoy, 0, false);
Actor_Change_Animation_Mode(kActorMcCoy, 23);
Actor_Clue_Lose(kActorMcCoy, kClueBomb);
@@ -133,7 +133,7 @@ bool SceneScriptHF05::ClickedOn3DObject(const char *objectName, bool a2) {
}
bool SceneScriptHF05::ClickedOnActor(int actorId) {
- if (actorId == 9) {
+ if (actorId == kActorCrazylegs) {
if (!Loop_Actor_Walk_To_Actor(kActorMcCoy, kActorCrazylegs, 60, true, false)) {
Actor_Face_Actor(kActorMcCoy, kActorCrazylegs, true);
Actor_Face_Actor(kActorCrazylegs, kActorMcCoy, true);
@@ -149,28 +149,37 @@ bool SceneScriptHF05::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptHF05::ClickedOnExit(int exitId) {
if (exitId == 0) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 483.0f, 40.63f, -189.0f, 0, 1, false, 0) && !Game_Flag_Query(684)) {
- Game_Flag_Set(kFlagHF05toHF01);
- Set_Enter(kSetHF01, kSceneHF01);
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 483.0f, 40.63f, -189.0f, 0, true, false, 0)) {
+ if (!Game_Flag_Query(684)) {
+ Game_Flag_Set(kFlagHF05toHF01);
+ Set_Enter(kSetHF01, kSceneHF01);
+ }
}
return true;
}
if (exitId == 1) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 330.0f, 40.63f, -85.0f, 0, 1, false, 0) && !Game_Flag_Query(684)) {
- int v2 = sub_404858();
- if (Game_Flag_Query(663) && Game_Flag_Query(368) && v2 != -1) {
- Actor_Face_Actor(kActorMcCoy, v2, true);
- Actor_Says(kActorMcCoy, 1810, 16);
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 330.0f, 40.63f, -85.0f, 0, true, false, 0)) {
+ if (!Game_Flag_Query(684)) {
+ int affectionTowardsActor = getAffectionTowardsActor();
+ if (Game_Flag_Query(663)
+ && Game_Flag_Query(368)
+ && affectionTowardsActor != -1
+ ) {
+ Actor_Face_Actor(kActorMcCoy, affectionTowardsActor, true);
+ Actor_Says(kActorMcCoy, 1810, 16);
+ }
+ Game_Flag_Set(359);
+ Set_Enter(kSetHF07, kSceneHF07);
}
- Game_Flag_Set(359);
- Set_Enter(kSetHF07, kSceneHF07);
}
return true;
}
if (exitId == 2) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 277.0f, 40.63f, 410.0f, 0, 1, false, 0) && !Game_Flag_Query(684)) {
- Game_Flag_Set(529);
- Set_Enter(kSetHF06, kSceneHF06);
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 277.0f, 40.63f, 410.0f, 0, true, false, 0)) {
+ if (!Game_Flag_Query(684)) {
+ Game_Flag_Set(529);
+ Set_Enter(kSetHF06, kSceneHF06);
+ }
}
return true;
}
@@ -228,7 +237,7 @@ void SceneScriptHF05::SceneFrameAdvanced(int frame) {
}
void SceneScriptHF05::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bool currentSet) {
- if (actorId == 23 && newGoal == 430) {
+ if (actorId == kActorOfficerLeary && newGoal == 430) {
Game_Flag_Set(684);
sub_4042E4();
}
@@ -237,19 +246,19 @@ void SceneScriptHF05::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
void SceneScriptHF05::PlayerWalkedIn() {
if (Game_Flag_Query(662)) {
- int v0 = sub_404858();
- if (Game_Flag_Query(662) && v0 != -1) {
- Actor_Put_In_Set(v0, kSetHF05);
- Actor_Force_Stop_Walking(v0);
+ int affectionTowardsActor = getAffectionTowardsActor();
+ if (Game_Flag_Query(662) && affectionTowardsActor != -1) {
+ Actor_Put_In_Set(affectionTowardsActor, kSetHF05);
+ Actor_Force_Stop_Walking(affectionTowardsActor);
if (Game_Flag_Query(kFlagHF01toHF05)) {
- Actor_Set_At_XYZ(v0, 506.81f, 40.63f, -140.92f, 0);
- Async_Actor_Walk_To_Waypoint(v0, 437, 36, 0);
+ Actor_Set_At_XYZ(affectionTowardsActor, 506.81f, 40.63f, -140.92f, 0);
+ Async_Actor_Walk_To_Waypoint(affectionTowardsActor, 437, 36, 0);
} else if (Game_Flag_Query(530)) {
- Actor_Set_At_XYZ(v0, 288.0f, 40.63f, 410.0f, 909);
+ Actor_Set_At_XYZ(affectionTowardsActor, 288.0f, 40.63f, 410.0f, 909);
} else if (Game_Flag_Query(358)) {
- Actor_Set_At_XYZ(v0, 298.0f, 40.63f, -107.0f, 512);
+ Actor_Set_At_XYZ(affectionTowardsActor, 298.0f, 40.63f, -107.0f, 512);
} else {
- Actor_Set_At_XYZ(v0, 284.0f, 40.63f, 286.0f, 0);
+ Actor_Set_At_XYZ(affectionTowardsActor, 284.0f, 40.63f, 286.0f, 0);
}
}
if (Game_Flag_Query(684)) {
@@ -268,7 +277,7 @@ void SceneScriptHF05::PlayerWalkedIn() {
}
}
} else {
- sub_403A34(v0);
+ sub_403A34(affectionTowardsActor);
}
} else if (Game_Flag_Query(kFlagHF01toHF05)) {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, 399.0f, 40.63f, -85.0f, 0, 0, false, 0);
@@ -298,7 +307,7 @@ void SceneScriptHF05::PlayerWalkedOut() {
if (Actor_Query_Goal_Number(kActorCrazylegs) == 210) {
Actor_Set_Goal_Number(kActorCrazylegs, 2);
}
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
}
@@ -487,11 +496,15 @@ void SceneScriptHF05::sub_403738() {
}
}
-int SceneScriptHF05::sub_404858() {
- if (Global_Variable_Query(kVariableAffectionTowards) == 2 && Actor_Query_Goal_Number(kActorDektora) != 599) {
+int SceneScriptHF05::getAffectionTowardsActor() {
+ if (Global_Variable_Query(kVariableAffectionTowards) == kAffectionTowardsDektora
+ && Actor_Query_Goal_Number(kActorDektora) != 599
+ ) {
return kActorDektora;
}
- if (Global_Variable_Query(kVariableAffectionTowards) == 3 && Actor_Query_Goal_Number(kActorLucy) != 599) {
+ if (Global_Variable_Query(kVariableAffectionTowards) == kAffectionTowardsLucy
+ && Actor_Query_Goal_Number(kActorLucy) != 599
+ ) {
return kActorLucy;
}
return -1;
@@ -547,13 +560,13 @@ void SceneScriptHF05::sub_40410C() {
Actor_Says_With_Pause(kActorMcCoy, 1780, 1.0f, 18);
}
-void SceneScriptHF05::sub_403A34(int actorId) {
- if (actorId != -1 && Actor_Query_In_Set(kActorCrazylegs, kSetHF05)) {
- Async_Actor_Walk_To_Waypoint(actorId, 437, 36, 0);
+void SceneScriptHF05::sub_403A34(int affectionTowardsActor) {
+ if (affectionTowardsActor != -1 && Actor_Query_In_Set(kActorCrazylegs, kSetHF05)) {
+ Async_Actor_Walk_To_Waypoint(affectionTowardsActor, 437, 36, 0);
Loop_Actor_Walk_To_Waypoint(kActorMcCoy, 437, 0, 0, false);
Actor_Face_Actor(kActorCrazylegs, kActorMcCoy, true);
Actor_Face_Actor(kActorMcCoy, kActorCrazylegs, true);
- Actor_Face_Actor(actorId, kActorCrazylegs, true);
+ Actor_Face_Actor(affectionTowardsActor, kActorCrazylegs, true);
Actor_Says(kActorCrazylegs, 0, 3);
Actor_Says(kActorCrazylegs, 10, 12);
Actor_Says(kActorMcCoy, 1715, 19);
@@ -574,8 +587,8 @@ void SceneScriptHF05::sub_403A34(int actorId) {
Actor_Says(kActorMcCoy, 1735, 17);
Actor_Says(kActorCrazylegs, 100, 16);
Actor_Says(kActorCrazylegs, 110, 3);
- Actor_Face_Actor(actorId, kActorMcCoy, true);
- if (actorId == kActorDektora) {
+ Actor_Face_Actor(affectionTowardsActor, kActorMcCoy, true);
+ if (affectionTowardsActor == kActorDektora) {
Actor_Says(kActorDektora, 90, 3);
} else {
Actor_Says(kActorLucy, 380, 3);
@@ -583,14 +596,14 @@ void SceneScriptHF05::sub_403A34(int actorId) {
Actor_Says(kActorMcCoy, 1740, 14);
Actor_Says(kActorCrazylegs, 120, 12);
Actor_Set_Goal_Number(kActorCrazylegs, 2);
- if (actorId == kActorDektora) {
+ if (affectionTowardsActor == kActorDektora) {
Actor_Says(kActorDektora, 100, 3);
} else {
Actor_Says(kActorLucy, 390, 3);
}
- Actor_Face_Actor(kActorMcCoy, actorId, true);
+ Actor_Face_Actor(kActorMcCoy, affectionTowardsActor, true);
Actor_Says(kActorMcCoy, 1745, 3);
- Async_Actor_Walk_To_XYZ(actorId, 309.0f, 40.63f, 402.0f, 0, false);
+ Async_Actor_Walk_To_XYZ(affectionTowardsActor, 309.0f, 40.63f, 402.0f, 0, false);
Loop_Actor_Walk_To_XYZ(kActorMcCoy, 277.0f, 40.63f, 410.0f, 0, 0, false, 0);
Game_Flag_Set(529);
Set_Enter(kSetHF06, kSceneHF06);
diff --git a/engines/bladerunner/script/scene/hf06.cpp b/engines/bladerunner/script/scene/hf06.cpp
index 3c1eac4807..bb073bcce7 100644
--- a/engines/bladerunner/script/scene/hf06.cpp
+++ b/engines/bladerunner/script/scene/hf06.cpp
@@ -96,14 +96,14 @@ bool SceneScriptHF06::ClickedOn3DObject(const char *objectName, bool a2) {
}
bool SceneScriptHF06::ClickedOnActor(int actorId) {
- if (actorId == 6 && Actor_Query_Goal_Number(kActorLucy) != 599) {
+ if (actorId == kActorLucy && Actor_Query_Goal_Number(kActorLucy) != 599) {
Actor_Face_Actor(kActorLucy, kActorMcCoy, true);
Actor_Face_Actor(kActorMcCoy, kActorLucy, true);
if (Game_Flag_Query(559)) {
Actor_Says(kActorLucy, 390, 18);
Actor_Says(kActorMcCoy, 2115, 17);
}
- } else if (actorId == 3 && Actor_Query_Goal_Number(kActorDektora) != 599) {
+ } else if (actorId == kActorDektora && Actor_Query_Goal_Number(kActorDektora) != 599) {
Actor_Face_Actor(kActorDektora, kActorMcCoy, true);
Actor_Face_Actor(kActorMcCoy, kActorDektora, true);
if (Game_Flag_Query(559)) {
@@ -123,7 +123,7 @@ bool SceneScriptHF06::ClickedOnExit(int exitId) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 170.0f, 367.93f, 497.0f, 0, 1, false, 0)) {
Actor_Face_Heading(kActorMcCoy, 730, false);
Loop_Actor_Travel_Stairs(kActorMcCoy, 2, 0, kAnimationModeIdle);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(530);
Set_Enter(kSetHF05, kSceneHF05);
@@ -181,11 +181,15 @@ void SceneScriptHF06::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
void SceneScriptHF06::PlayerWalkedIn() {
if (Game_Flag_Query(662)) {
int actorId = -1;
- if (Global_Variable_Query(kVariableAffectionTowards) == 3 && Actor_Query_Goal_Number(kActorLucy) != 599) {
+ if (Global_Variable_Query(kVariableAffectionTowards) == kAffectionTowardsLucy
+ && Actor_Query_Goal_Number(kActorLucy) != 599
+ ) {
actorId = kActorLucy;
- } else if (Global_Variable_Query(kVariableAffectionTowards) == 2 && Actor_Query_Goal_Number(kActorDektora) != 599) {
+ } else if (Global_Variable_Query(kVariableAffectionTowards) == kAffectionTowardsDektora
+ && Actor_Query_Goal_Number(kActorDektora) != 599
+ ) {
actorId = kActorDektora;
- }
+ }
if (actorId != -1) {
Actor_Put_In_Set(actorId, kSetHF06);
@@ -231,9 +235,9 @@ void SceneScriptHF06::sub_401EF4() {
Actor_Set_At_XYZ(kActorSteele, 92.0f, 367.93f, 19.0f, 0);
Actor_Set_Targetable(kActorSteele, true);
Actor_Face_Actor(actorId, kActorSteele, true);
- if (actorId == 3) {
+ if (actorId == kActorDektora) {
Actor_Says(kActorDektora, 90, 13);
- } else if (actorId == 6) {
+ } else if (actorId == kActorLucy) {
Actor_Says(kActorLucy, 380, 13);
}
Actor_Says(kActorMcCoy, 6230, 0);
diff --git a/engines/bladerunner/script/scene/hf07.cpp b/engines/bladerunner/script/scene/hf07.cpp
index 8194e95359..14da5c20de 100644
--- a/engines/bladerunner/script/scene/hf07.cpp
+++ b/engines/bladerunner/script/scene/hf07.cpp
@@ -81,7 +81,7 @@ bool SceneScriptHF07::ClickedOnExit(int exitId) {
Loop_Actor_Travel_Stairs(kActorMcCoy, 30, true, kAnimationModeIdle);
Footstep_Sound_Override_Off();
}
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Set_Enter(kSetHF05, kSceneHF05);
}
@@ -94,7 +94,7 @@ bool SceneScriptHF07::ClickedOnExit(int exitId) {
Async_Actor_Walk_To_XYZ(kActorLucy, -73.0f, 58.43f, -7.0f, 0, false);
}
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -84.0f, 58.43f, -105.0f, 0, true, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(360);
Set_Enter(kSetUG05, kSceneUG05);
@@ -116,7 +116,7 @@ void SceneScriptHF07::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
void SceneScriptHF07::PlayerWalkedIn() {
if (Game_Flag_Query(662)) {
- int actorId = sub_401864();
+ int actorId = getAffectionTowardsActor();
if (Game_Flag_Query(662) && actorId != -1) {
Actor_Put_In_Set(actorId, kSetHF07);
if (Game_Flag_Query(361)) {
@@ -141,11 +141,15 @@ void SceneScriptHF07::PlayerWalkedOut() {
void SceneScriptHF07::DialogueQueueFlushed(int a1) {
}
-int SceneScriptHF07::sub_401864() {
- if (Global_Variable_Query(kVariableAffectionTowards) == 2 && Actor_Query_Goal_Number(kActorDektora) != 599) {
+int SceneScriptHF07::getAffectionTowardsActor() {
+ if (Global_Variable_Query(kVariableAffectionTowards) == kAffectionTowardsDektora
+ && Actor_Query_Goal_Number(kActorDektora) != 599
+ ) {
return kActorDektora;
}
- if (Global_Variable_Query(kVariableAffectionTowards) == 3 && Actor_Query_Goal_Number(kActorLucy) != 599) {
+ if (Global_Variable_Query(kVariableAffectionTowards) == kAffectionTowardsLucy
+ && Actor_Query_Goal_Number(kActorLucy) != 599
+ ) {
return kActorLucy;
}
return -1;
diff --git a/engines/bladerunner/script/scene/kp01.cpp b/engines/bladerunner/script/scene/kp01.cpp
index b2daa6b101..273fa58608 100644
--- a/engines/bladerunner/script/scene/kp01.cpp
+++ b/engines/bladerunner/script/scene/kp01.cpp
@@ -80,7 +80,7 @@ bool SceneScriptKP01::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptKP01::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -125.0f, -12.2f, -61.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(415);
Set_Enter(kSetKP04, kSceneKP04);
@@ -89,7 +89,7 @@ bool SceneScriptKP01::ClickedOnExit(int exitId) {
}
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -284.0f, -12.2f, -789.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(417);
Set_Enter(kSetKP03, kSceneKP03);
@@ -98,7 +98,7 @@ bool SceneScriptKP01::ClickedOnExit(int exitId) {
}
if (exitId == 2) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 239.0f, 12.2f, -146.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(414);
Set_Enter(kSetKP02, kSceneKP02);
@@ -117,9 +117,9 @@ void SceneScriptKP01::SceneFrameAdvanced(int frame) {
}
void SceneScriptKP01::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bool currentSet) {
- if (actorId == 1) {
+ if (actorId == kActorSteele) {
if (newGoal == 422) {
- if (Game_Flag_Query(kFlagDirectorsCut) == 1) {
+ if (Game_Flag_Query(kFlagDirectorsCut)) {
Delay(500);
Actor_Change_Animation_Mode(kActorMcCoy, 75);
Delay(4500);
@@ -133,7 +133,7 @@ void SceneScriptKP01::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
} else if (newGoal == 423) {
Player_Gains_Control();
Actor_Force_Stop_Walking(kActorMcCoy);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(417);
Set_Enter(kSetKP03, kSceneKP03);
diff --git a/engines/bladerunner/script/scene/kp02.cpp b/engines/bladerunner/script/scene/kp02.cpp
index 4912a88c6f..e249420a8e 100644
--- a/engines/bladerunner/script/scene/kp02.cpp
+++ b/engines/bladerunner/script/scene/kp02.cpp
@@ -81,12 +81,12 @@ bool SceneScriptKP02::ClickedOnExit(int exitId) {
Non_Player_Actor_Combat_Mode_Off(kActorFreeSlotA);
Actor_Set_Goal_Number(kActorFreeSlotB, 400);
Actor_Set_Goal_Number(kActorFreeSlotA, 400);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(411);
Set_Enter(kSetUG12, kSceneUG12);
} else {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(411);
Set_Enter(kSetUG12, kSceneUG12);
@@ -101,12 +101,12 @@ bool SceneScriptKP02::ClickedOnExit(int exitId) {
Non_Player_Actor_Combat_Mode_Off(kActorFreeSlotA);
Actor_Set_Goal_Number(kActorFreeSlotB, 400);
Actor_Set_Goal_Number(kActorFreeSlotA, 400);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(413);
Set_Enter(kSetKP01, kSceneKP01);
} else {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(413);
Set_Enter(kSetKP01, kSceneKP01);
diff --git a/engines/bladerunner/script/scene/kp03.cpp b/engines/bladerunner/script/scene/kp03.cpp
index 1d810f2fd9..370927b877 100644
--- a/engines/bladerunner/script/scene/kp03.cpp
+++ b/engines/bladerunner/script/scene/kp03.cpp
@@ -64,10 +64,10 @@ bool SceneScriptKP03::MouseClick(int x, int y) {
return false;
}
-bool SceneScriptKP03::ClickedOn3DObject(const char *objectName, bool a2) {
+bool SceneScriptKP03::ClickedOn3DObject(const char *objectName, bool combatMode) {
Actor_Face_Object(kActorSteele, "BRACK MID", true);
if (Object_Query_Click("BRACK MID", objectName) && !Game_Flag_Query(422)) {
- if (a2) {
+ if (combatMode) {
Scene_Loop_Set_Default(5);
Scene_Loop_Start_Special(kSceneLoopModeOnce, 4, true);
Actor_Change_Animation_Mode(kActorMcCoy, 39);
@@ -104,7 +104,7 @@ bool SceneScriptKP03::ClickedOn3DObject(const char *objectName, bool a2) {
}
bool SceneScriptKP03::ClickedOnActor(int actorId) {
- if (actorId == 1 && Actor_Query_Goal_Number(kActorSteele) == 411) {
+ if (actorId == kActorSteele && Actor_Query_Goal_Number(kActorSteele) == 411) {
Actor_Face_Object(kActorSteele, "BRACK MID", true);
sub_401E54();
}
@@ -121,7 +121,7 @@ bool SceneScriptKP03::ClickedOnExit(int exitId) {
} else {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 1.0f, -36.55f, 111.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Music_Stop(2);
Game_Flag_Reset(417);
@@ -133,7 +133,7 @@ bool SceneScriptKP03::ClickedOnExit(int exitId) {
}
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -321.0f, -36.55f, 26.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Music_Stop(2);
Game_Flag_Reset(417);
@@ -250,7 +250,7 @@ void SceneScriptKP03::sub_401E54() {
Ambient_Sounds_Play_Sound(151, 40, -60, -60, 0);
Loop_Actor_Walk_To_XYZ(kActorMcCoy, 1.0f, -36.55f, 111.0f, 0, 0, false, 0);
Actor_Set_Goal_Number(kActorSteele, 430);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Reset(417);
Game_Flag_Reset(420);
diff --git a/engines/bladerunner/script/scene/kp04.cpp b/engines/bladerunner/script/scene/kp04.cpp
index ae9e4021c5..4c138a1962 100644
--- a/engines/bladerunner/script/scene/kp04.cpp
+++ b/engines/bladerunner/script/scene/kp04.cpp
@@ -71,7 +71,7 @@ bool SceneScriptKP04::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptKP04::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -905.0f, 94.89f, 1357.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(416);
Set_Enter(kSetKP01, kSceneKP01);
@@ -80,7 +80,7 @@ bool SceneScriptKP04::ClickedOnExit(int exitId) {
}
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -544.0f, 94.89f, 288.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(574);
Set_Enter(kSetKP05_KP06, kSceneKP05);
diff --git a/engines/bladerunner/script/scene/kp05.cpp b/engines/bladerunner/script/scene/kp05.cpp
index 8d8aa7ffee..c46b739e53 100644
--- a/engines/bladerunner/script/scene/kp05.cpp
+++ b/engines/bladerunner/script/scene/kp05.cpp
@@ -85,7 +85,7 @@ bool SceneScriptKP05::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptKP05::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -802.0f, 0.0f, 972.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(420);
Set_Enter(kSetKP03, kSceneKP03);
@@ -94,7 +94,7 @@ bool SceneScriptKP05::ClickedOnExit(int exitId) {
}
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -1142.0f, 0.0f, 932.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(575);
Set_Enter(kSetKP04, kSceneKP04);
@@ -103,7 +103,7 @@ bool SceneScriptKP05::ClickedOnExit(int exitId) {
}
if (exitId == 2) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -868.0f, 0.0f, -68.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(576);
Async_Actor_Walk_To_XYZ(kActorMcCoy, -868.0f, 0.0f, -216.0f, 0, false);
diff --git a/engines/bladerunner/script/scene/kp06.cpp b/engines/bladerunner/script/scene/kp06.cpp
index f08b6d8b36..ad0bb9966d 100644
--- a/engines/bladerunner/script/scene/kp06.cpp
+++ b/engines/bladerunner/script/scene/kp06.cpp
@@ -72,7 +72,7 @@ bool SceneScriptKP06::ClickedOn3DObject(const char *objectName, bool a2) {
}
bool SceneScriptKP06::ClickedOnActor(int actorId) {
- if (actorId == 8 && !Game_Flag_Query(714)) {
+ if (actorId == kActorSadik && !Game_Flag_Query(714)) {
if (Actor_Clue_Query(kActorSadik, kCluePowerSource)) {
Actor_Face_Actor(kActorMcCoy, kActorSadik, true);
Actor_Says(kActorMcCoy, 8610, 15);
@@ -98,7 +98,7 @@ bool SceneScriptKP06::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptKP06::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -868.0f, 8.26f, -68.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(577);
Set_Enter(kSetKP05_KP06, kSceneKP05);
@@ -117,7 +117,7 @@ bool SceneScriptKP06::ClickedOnExit(int exitId) {
} else {
Actor_Set_Goal_Number(kActorGaff, 499);
}
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(578);
Set_Enter(kSetKP07, kSceneKP07);
@@ -128,7 +128,7 @@ bool SceneScriptKP06::ClickedOnExit(int exitId) {
Actor_Clue_Acquire(kActorSadik, kCluePowerSource, true, kActorMcCoy);
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -731.0f, 8.26f, -657.0f, 0, 0, true, 0);
Player_Set_Combat_Mode(false);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(578);
Set_Enter(kSetKP07, kSceneKP07);
@@ -173,7 +173,7 @@ void SceneScriptKP06::PlayerWalkedIn() {
Delay(1000);
Actor_Says(kActorMcCoy, 6220, -1);
Delay(3000);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Outtake_Play(kOuttakeEnd6, false, -1);
Game_Over();
diff --git a/engines/bladerunner/script/scene/kp07.cpp b/engines/bladerunner/script/scene/kp07.cpp
index 7a0c0eb535..d0fc730bce 100644
--- a/engines/bladerunner/script/scene/kp07.cpp
+++ b/engines/bladerunner/script/scene/kp07.cpp
@@ -119,7 +119,7 @@ bool SceneScriptKP07::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptKP07::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -12.0f, -41.58f, 72.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(579);
Set_Enter(kSetKP05_KP06, kSceneKP06);
diff --git a/engines/bladerunner/script/scene/ma04.cpp b/engines/bladerunner/script/scene/ma04.cpp
index ed6ee682a9..0484e69db1 100644
--- a/engines/bladerunner/script/scene/ma04.cpp
+++ b/engines/bladerunner/script/scene/ma04.cpp
@@ -176,9 +176,9 @@ bool SceneScriptMA04::ClickedOn2DRegion(int region) {
Overlay_Remove("MA04OVER");
Delay(500);
if (Game_Flag_Query(653)) {
- if (Global_Variable_Query(kVariableAffectionTowards) == 2) {
+ if (Global_Variable_Query(kVariableAffectionTowards) == kAffectionTowardsDektora) {
phoneCallWithDektora();
- } else if (Global_Variable_Query(kVariableAffectionTowards) == 3) {
+ } else if (Global_Variable_Query(kVariableAffectionTowards) == kAffectionTowardsLucy) {
phoneCallWithLucy();
} else {
phoneCallWithClovis();
diff --git a/engines/bladerunner/script/scene/ma07.cpp b/engines/bladerunner/script/scene/ma07.cpp
index 62a5187e77..b7b91d9c54 100644
--- a/engines/bladerunner/script/scene/ma07.cpp
+++ b/engines/bladerunner/script/scene/ma07.cpp
@@ -97,7 +97,7 @@ bool SceneScriptMA07::ClickedOnExit(int exitId) {
}
if (exitId == 2) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 8.0f, -172.43f, 356.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(357);
Set_Enter(kSetUG19, kSceneUG19);
@@ -115,7 +115,7 @@ void SceneScriptMA07::SceneFrameAdvanced(int frame) {
}
void SceneScriptMA07::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bool currentSet) {
- if (actorId == 53 && newGoal == 302) {
+ if (actorId == kActorGaff && newGoal == 302) {
Scene_Exits_Enable();
}
}
diff --git a/engines/bladerunner/script/scene/nr01.cpp b/engines/bladerunner/script/scene/nr01.cpp
index 8be9fe219b..9708d186c5 100644
--- a/engines/bladerunner/script/scene/nr01.cpp
+++ b/engines/bladerunner/script/scene/nr01.cpp
@@ -113,7 +113,7 @@ bool SceneScriptNR01::ClickedOnExit(int exitId) {
if (Global_Variable_Query(kVariableChapter) > 3) {
Actor_Says(kActorMcCoy, 8522, 12);
} else {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(535);
Set_Enter(kSetNR03, kSceneNR03);
@@ -125,7 +125,7 @@ bool SceneScriptNR01::ClickedOnExit(int exitId) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -281.0f, 31.93f, -1061.0f, 0, true, false, 0)) {
Actor_Face_Heading(kActorMcCoy, 45, false);
Loop_Actor_Travel_Stairs(kActorMcCoy, 3, 0, kAnimationModeIdle);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(343);
Set_Enter(kSetUG06, kSceneUG06);
@@ -134,7 +134,7 @@ bool SceneScriptNR01::ClickedOnExit(int exitId) {
}
if (exitId == 2) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 312.0f, 31.66f, -901.0f, 0, true, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(532);
Set_Enter(kSetNR02, kSceneNR02);
@@ -416,10 +416,10 @@ void SceneScriptNR01::PlayerWalkedIn() {
}
void SceneScriptNR01::PlayerWalkedOut() {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
if (!Game_Flag_Query(343) && !Game_Flag_Query(532) && !Game_Flag_Query(535) && !Game_Flag_Query(632) && !Game_Flag_Query(722)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Outtake_Play(kOuttakeAway1, true, -1);
Outtake_Play(kOuttakeInside2, true, -1);
diff --git a/engines/bladerunner/script/scene/nr02.cpp b/engines/bladerunner/script/scene/nr02.cpp
index 83c92275c7..97a460032d 100644
--- a/engines/bladerunner/script/scene/nr02.cpp
+++ b/engines/bladerunner/script/scene/nr02.cpp
@@ -97,14 +97,18 @@ bool SceneScriptNR02::ClickedOn3DObject(const char *objectName, bool a2) {
}
bool SceneScriptNR02::ClickedOnActor(int actorId) {
- if (actorId == 2 && Actor_Query_Goal_Number(kActorGordo) == 201 && !Loop_Actor_Walk_To_XYZ(kActorMcCoy, 67.37f, -24.0f, 389.32f, 0, 1, false, 0)) {
- Actor_Set_Goal_Number(kActorGordo, 215);
+ if (actorId == kActorGordo
+ && Actor_Query_Goal_Number(kActorGordo) == 201
+ ) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 67.37f, -24.0f, 389.32f, 0, true, false, 0)) {
+ Actor_Set_Goal_Number(kActorGordo, 215);
+ }
}
return false;
}
bool SceneScriptNR02::ClickedOnItem(int itemId, bool a2) {
- if ((itemId == 89 || itemId == 90) && !Loop_Actor_Walk_To_XYZ(kActorMcCoy, 109.38f, -24.0f, 420.5f, 0, 1, false, 0)) {
+ if ((itemId == 89 || itemId == 90) && !Loop_Actor_Walk_To_XYZ(kActorMcCoy, 109.38f, -24.0f, 420.5f, 0, true, false, 0)) {
Actor_Face_Heading(kActorMcCoy, 423, false);
if (itemId == 89) {
Item_Remove_From_World(89);
@@ -126,7 +130,7 @@ bool SceneScriptNR02::ClickedOnExit(int exitId) {
if (Actor_Query_Goal_Number(kActorGordo) < 230 || Actor_Query_Goal_Number(kActorGordo) > 250) {
Music_Stop(2);
}
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(533);
Set_Enter(kSetNR01, kSceneNR01);
diff --git a/engines/bladerunner/script/scene/nr03.cpp b/engines/bladerunner/script/scene/nr03.cpp
index c06b7ed6af..a2a09cbb85 100644
--- a/engines/bladerunner/script/scene/nr03.cpp
+++ b/engines/bladerunner/script/scene/nr03.cpp
@@ -101,22 +101,24 @@ bool SceneScriptNR03::ClickedOn3DObject(const char *objectName, bool a2) {
}
bool SceneScriptNR03::ClickedOnActor(int actorId) {
- if (actorId == 25 && !Loop_Actor_Walk_To_Actor(kActorMcCoy, kActorHanoi, 48, 1, false)) {
- AI_Movement_Track_Pause(kActorHanoi);
- Actor_Face_Actor(kActorMcCoy, kActorHanoi, true);
- if (Game_Flag_Query(611)) {
- Actor_Says(kActorMcCoy, 3350, 16);
- Actor_Says(kActorHanoi, 50, 17);
- } else {
- Game_Flag_Set(611);
- Actor_Says(kActorMcCoy, 3340, 3);
- Actor_Face_Actor(kActorHanoi, kActorMcCoy, true);
- Actor_Says(kActorHanoi, 30, 13);
- Actor_Says(kActorMcCoy, 3345, 14);
- Actor_Says(kActorHanoi, 40, 14);
+ if (actorId == kActorHanoi) {
+ if (!Loop_Actor_Walk_To_Actor(kActorMcCoy, kActorHanoi, 48, true, false)) {
+ AI_Movement_Track_Pause(kActorHanoi);
+ Actor_Face_Actor(kActorMcCoy, kActorHanoi, true);
+ if (Game_Flag_Query(611)) {
+ Actor_Says(kActorMcCoy, 3350, 16);
+ Actor_Says(kActorHanoi, 50, 17);
+ } else {
+ Game_Flag_Set(611);
+ Actor_Says(kActorMcCoy, 3340, 3);
+ Actor_Face_Actor(kActorHanoi, kActorMcCoy, true);
+ Actor_Says(kActorHanoi, 30, 13);
+ Actor_Says(kActorMcCoy, 3345, 14);
+ Actor_Says(kActorHanoi, 40, 14);
+ }
+ AI_Movement_Track_Unpause(kActorHanoi);
+ return true;
}
- AI_Movement_Track_Unpause(kActorHanoi);
- return true;
}
return false;
}
@@ -128,7 +130,7 @@ bool SceneScriptNR03::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptNR03::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 410.0f, -70.19f, -715.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(534);
Set_Enter(kSetNR01, kSceneNR01);
@@ -154,7 +156,7 @@ bool SceneScriptNR03::ClickedOnExit(int exitId) {
}
Global_Variable_Increment(44, 1);
} else {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(438);
Set_Enter(kSetNR04, kSceneNR04);
@@ -170,7 +172,7 @@ bool SceneScriptNR03::ClickedOnExit(int exitId) {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -229.0f, -70.19f, -469.0f, 0, 0, false, 1);
Actor_Face_Heading(kActorMcCoy, 656, false);
Actor_Change_Animation_Mode(kActorMcCoy, 53);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(536);
Set_Enter(kSetNR05_NR08, kSceneNR05);
diff --git a/engines/bladerunner/script/scene/nr04.cpp b/engines/bladerunner/script/scene/nr04.cpp
index dc571ed7cc..d6332fe099 100644
--- a/engines/bladerunner/script/scene/nr04.cpp
+++ b/engines/bladerunner/script/scene/nr04.cpp
@@ -116,7 +116,7 @@ bool SceneScriptNR04::ClickedOn3DObject(const char *objectName, bool a2) {
}
bool SceneScriptNR04::ClickedOnActor(int actorId) {
- if (actorId == 18 && Game_Flag_Query(606)) {
+ if (actorId == kActorEarlyQ && Game_Flag_Query(606)) {
Actor_Voice_Over(1640, kActorVoiceOver);
Actor_Voice_Over(1650, kActorVoiceOver);
Actor_Voice_Over(1660, kActorVoiceOver);
@@ -134,7 +134,7 @@ bool SceneScriptNR04::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptNR04::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 45.0f, 0.0f, -106.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(437);
Set_Enter(kSetNR03, kSceneNR03);
@@ -180,7 +180,7 @@ void SceneScriptNR04::SceneFrameAdvanced(int frame) {
}
void SceneScriptNR04::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bool currentSet) {
- if (actorId == 18) {
+ if (actorId == kActorEarlyQ) {
switch (newGoal) {
case 214:
Actor_Change_Animation_Mode(kActorEarlyQ, 29);
diff --git a/engines/bladerunner/script/scene/nr05.cpp b/engines/bladerunner/script/scene/nr05.cpp
index 15a626ae2b..96b881b729 100644
--- a/engines/bladerunner/script/scene/nr05.cpp
+++ b/engines/bladerunner/script/scene/nr05.cpp
@@ -185,7 +185,7 @@ void SceneScriptNR05::PlayerWalkedOut() {
if (Game_Flag_Query(537)) {
Music_Stop(2);
}
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
}
@@ -226,13 +226,13 @@ void SceneScriptNR05::sub_4020B4() {
Actor_Says(kActorEarlyQBartender, 40, 13);
Actor_Change_Animation_Mode(kActorEarlyQBartender, 23);
Actor_Change_Animation_Mode(kActorMcCoy, 75);
- Global_Variable_Increment(42, 1);
+ Global_Variable_Increment(kVariableMcCoyDrinks, 1);
} else {
Actor_Says(kActorMcCoy, 3475, 17);
Actor_Says(kActorEarlyQBartender, 20, 23);
Game_Flag_Set(589);
Actor_Change_Animation_Mode(kActorMcCoy, 75);
- Global_Variable_Increment(42, 1);
+ Global_Variable_Increment(kVariableMcCoyDrinks, 1);
}
} else {
Actor_Says(kActorEarlyQBartender, 0, 13);
@@ -240,7 +240,7 @@ void SceneScriptNR05::sub_4020B4() {
Actor_Says(kActorEarlyQBartender, 10, 23);
Game_Flag_Set(588);
Actor_Change_Animation_Mode(kActorMcCoy, 75);
- Global_Variable_Increment(42, 1);
+ Global_Variable_Increment(kVariableMcCoyDrinks, 1);
}
}
diff --git a/engines/bladerunner/script/scene/nr06.cpp b/engines/bladerunner/script/scene/nr06.cpp
index acb8bc7525..4d1e7ebf6b 100644
--- a/engines/bladerunner/script/scene/nr06.cpp
+++ b/engines/bladerunner/script/scene/nr06.cpp
@@ -82,7 +82,7 @@ bool SceneScriptNR06::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptNR06::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 48.0f, -71.88f, -26.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Game_Flag_Set(441);
Set_Enter(kSetNR07, kSceneNR07);
}
@@ -93,7 +93,7 @@ bool SceneScriptNR06::ClickedOnExit(int exitId) {
Actor_Face_Heading(kActorMcCoy, 95, false);
Loop_Actor_Travel_Stairs(kActorMcCoy, 8, 1, kAnimationModeIdle);
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -36.0f, 0.37f, -373.0f, 0, 0, false, 0);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(439);
Set_Enter(kSetNR05_NR08, kSceneNR08);
diff --git a/engines/bladerunner/script/scene/nr07.cpp b/engines/bladerunner/script/scene/nr07.cpp
index 13d3139197..aa70aa3f3a 100644
--- a/engines/bladerunner/script/scene/nr07.cpp
+++ b/engines/bladerunner/script/scene/nr07.cpp
@@ -118,7 +118,7 @@ bool SceneScriptNR07::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -102.0f, -73.5f, -233.0f, 0, 1, false, 0)) {
Actor_Set_Goal_Number(kActorHanoi, 201);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(442);
Set_Enter(kSetNR06, kSceneNR06);
diff --git a/engines/bladerunner/script/scene/nr08.cpp b/engines/bladerunner/script/scene/nr08.cpp
index 5f58e4ce28..9a3e9164f0 100644
--- a/engines/bladerunner/script/scene/nr08.cpp
+++ b/engines/bladerunner/script/scene/nr08.cpp
@@ -207,7 +207,7 @@ void SceneScriptNR08::PlayerWalkedIn() {
}
void SceneScriptNR08::PlayerWalkedOut() {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
if (!Game_Flag_Query(547)) {
Music_Stop(2);
diff --git a/engines/bladerunner/script/scene/nr09.cpp b/engines/bladerunner/script/scene/nr09.cpp
index f924652270..bddf91d037 100644
--- a/engines/bladerunner/script/scene/nr09.cpp
+++ b/engines/bladerunner/script/scene/nr09.cpp
@@ -81,7 +81,7 @@ bool SceneScriptNR09::ClickedOnExit(int exitId) {
}
if (exitId == 1) {
int v1 = Loop_Actor_Walk_To_XYZ(kActorMcCoy, -704.07f, 0.35f, 663.04f, 0, 1, false, 0);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
if (!v1) {
Game_Flag_Set(615);
diff --git a/engines/bladerunner/script/scene/nr10.cpp b/engines/bladerunner/script/scene/nr10.cpp
index e5bd41c6e9..1d80283857 100644
--- a/engines/bladerunner/script/scene/nr10.cpp
+++ b/engines/bladerunner/script/scene/nr10.cpp
@@ -61,8 +61,8 @@ bool SceneScriptNR10::MouseClick(int x, int y) {
return Game_Flag_Query(642);
}
-bool SceneScriptNR10::ClickedOn3DObject(const char *objectName, bool a2) {
- if (Object_Query_Click("BOX18", objectName) && a2 && Game_Flag_Query(642)) {
+bool SceneScriptNR10::ClickedOn3DObject(const char *objectName, bool combatMode) {
+ if (Object_Query_Click("BOX18", objectName) && combatMode && Game_Flag_Query(642)) {
Actor_Set_Goal_Number(kActorDektora, 250);
Game_Flag_Set(640);
Game_Flag_Reset(642);
diff --git a/engines/bladerunner/script/scene/nr11.cpp b/engines/bladerunner/script/scene/nr11.cpp
index 4a48ebeca4..518f4fc436 100644
--- a/engines/bladerunner/script/scene/nr11.cpp
+++ b/engines/bladerunner/script/scene/nr11.cpp
@@ -109,10 +109,10 @@ bool SceneScriptNR11::MouseClick(int x, int y) {
return false;
}
-bool SceneScriptNR11::ClickedOn3DObject(const char *objectName, bool a2) {
+bool SceneScriptNR11::ClickedOn3DObject(const char *objectName, bool combatMode) {
if (Object_Query_Click("CLOTHING02", objectName) || Object_Query_Click("BOX27", objectName) || Object_Query_Click("BOX39", objectName) || Object_Query_Click("BOX44", objectName) || Object_Query_Click("DRESS", objectName) || Object_Query_Click("COATRACK", objectName) || Object_Query_Click("COLUMN3 DETS", objectName) || Object_Query_Click("COLUMN PIPE01", objectName) || Object_Query_Click("RECTANGLE02", objectName) || Object_Query_Click("COLUMN04", objectName) || Object_Query_Click("COATRACK01", objectName) || Object_Query_Click("SHIRT", objectName) || Object_Query_Click("SKIRT 02", objectName) || Object_Query_Click("CLOTHING B 03", objectName) || Object_Query_Click("BUST BUST", objectName)) {
- if (a2) {
+ if (combatMode) {
Actor_Set_Goal_Number(kActorSteele, 211);
Scene_Exits_Disable();
sub_4028EC();
@@ -140,7 +140,7 @@ bool SceneScriptNR11::ClickedOn3DObject(const char *objectName, bool a2) {
} else {
Actor_Says(kActorMcCoy, 3840, 18);
Delay(1000);
- if (Actor_Query_Friendliness_To_Other(kActorDektora, kActorMcCoy) > 59 && Global_Variable_Query(kVariableAffectionTowards) == 0) {
+ if (Actor_Query_Friendliness_To_Other(kActorDektora, kActorMcCoy) > 59 && Global_Variable_Query(kVariableAffectionTowards) == kAffectionTowardsNone) {
Music_Play(21, 35, 0, 3, -1, 0, 0);
}
Loop_Actor_Walk_To_XYZ(kActorDektora, -135.0f, 0.33f, -267.0f, 0, 0, false, 0);
@@ -164,8 +164,10 @@ bool SceneScriptNR11::ClickedOn3DObject(const char *objectName, bool a2) {
Actor_Says(kActorMcCoy, 3870, 3);
Actor_Says(kActorDektora, 1070, 14);
Actor_Modify_Friendliness_To_Other(kActorDektora, kActorMcCoy, 5);
- if (Actor_Query_Friendliness_To_Other(kActorDektora, kActorMcCoy) > 55 && Global_Variable_Query(kVariableAffectionTowards) == 0) {
- Global_Variable_Set(kVariableAffectionTowards, 2);
+ if (Actor_Query_Friendliness_To_Other(kActorDektora, kActorMcCoy) > 55
+ && Global_Variable_Query(kVariableAffectionTowards) == kAffectionTowardsNone
+ ) {
+ Global_Variable_Set(kVariableAffectionTowards, kAffectionTowardsDektora);
Actor_Says(kActorDektora, 1130, 17);
Actor_Says(kActorMcCoy, 6365, 12);
Actor_Says(kActorDektora, 1140, 14);
diff --git a/engines/bladerunner/script/scene/ps01.cpp b/engines/bladerunner/script/scene/ps01.cpp
index 681f68a1a0..34c7583381 100644
--- a/engines/bladerunner/script/scene/ps01.cpp
+++ b/engines/bladerunner/script/scene/ps01.cpp
@@ -262,10 +262,10 @@ void SceneScriptPS01::PlayerWalkedIn() {
void SceneScriptPS01::PlayerWalkedOut() {
Actor_Set_Invisible(kActorMcCoy, false);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
if (!Game_Flag_Query(718) && Global_Variable_Query(kVariableChapter) == 1) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Outtake_Play(kOuttakeTowards3, true, -1);
}
diff --git a/engines/bladerunner/script/scene/ps02.cpp b/engines/bladerunner/script/scene/ps02.cpp
index c577640df1..a358321b10 100644
--- a/engines/bladerunner/script/scene/ps02.cpp
+++ b/engines/bladerunner/script/scene/ps02.cpp
@@ -144,7 +144,7 @@ void SceneScriptPS02::PlayerWalkedIn() {
}
void SceneScriptPS02::PlayerWalkedOut() {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Player_Gains_Control();
}
diff --git a/engines/bladerunner/script/scene/ps03.cpp b/engines/bladerunner/script/scene/ps03.cpp
index d8ccf47133..480f44123e 100644
--- a/engines/bladerunner/script/scene/ps03.cpp
+++ b/engines/bladerunner/script/scene/ps03.cpp
@@ -77,7 +77,7 @@ bool SceneScriptPS03::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -674.0f, -354.0f, 550.0f, 0, 1, false, 0)) {
Game_Flag_Set(kFlagPS03toPS04);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Set_Enter(kSetPS04, kScenePS04);
}
@@ -85,7 +85,7 @@ bool SceneScriptPS03::ClickedOnExit(int exitId) {
}
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -569.54f, -354.62f, -1076.15f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Set_Enter(kSetPS02, kScenePS02);
Game_Flag_Reset(kFlagMcCoyAtPS03);
@@ -98,7 +98,7 @@ bool SceneScriptPS03::ClickedOnExit(int exitId) {
if (exitId == 2) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -875.0f, -354.0f, -1241.0f, 0, 1, false, 0)) {
Game_Flag_Set(kFlagPS03toPS14);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Set_Enter(kSetPS14, kScenePS14);
}
diff --git a/engines/bladerunner/script/scene/ps04.cpp b/engines/bladerunner/script/scene/ps04.cpp
index 605b1d5340..510d596d83 100644
--- a/engines/bladerunner/script/scene/ps04.cpp
+++ b/engines/bladerunner/script/scene/ps04.cpp
@@ -61,7 +61,7 @@ void SceneScriptPS04::SceneLoaded() {
&& !Actor_Clue_Query(kActorMcCoy, kClueWeaponsOrderForm)
&& !Game_Flag_Query(kFlagPS04WeaponsOrderForm)
) {
- Item_Add_To_World(kItemWeaponsOrderForm, 958, 64, -643.5f, -318.82f, 1148.87f, 525, 16, 12, false, true, false, true);
+ Item_Add_To_World(kItemWeaponsOrderForm, 958, kSetPS04, -643.5f, -318.82f, 1148.87f, 525, 16, 12, false, true, false, true);
Game_Flag_Set(kFlagPS04WeaponsOrderForm);
}
@@ -108,7 +108,7 @@ bool SceneScriptPS04::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -668.0f, -350.85f, 962.0f, 0, true, false, 0)) {
Game_Flag_Set(kFlagPS04toPS03);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Set_Enter(kSetPS03, kScenePS03);
}
diff --git a/engines/bladerunner/script/scene/ps06.cpp b/engines/bladerunner/script/scene/ps06.cpp
index 4298f98bf6..0869cf20c8 100644
--- a/engines/bladerunner/script/scene/ps06.cpp
+++ b/engines/bladerunner/script/scene/ps06.cpp
@@ -104,7 +104,7 @@ bool SceneScriptPS06::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptPS06::ClickedOnExit(int exitId) {
if (exitId == 0) {
Game_Flag_Set(kFlagPS06toPS05);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Set_Enter(kSetPS05, kScenePS05);
return true;
diff --git a/engines/bladerunner/script/scene/ps09.cpp b/engines/bladerunner/script/scene/ps09.cpp
index 456a3038ce..46bfac5d03 100644
--- a/engines/bladerunner/script/scene/ps09.cpp
+++ b/engines/bladerunner/script/scene/ps09.cpp
@@ -145,7 +145,7 @@ bool SceneScriptPS09::ClickedOnActor(int actorId) {
if (!Game_Flag_Query(kFlagPS09IzoTalk1)) {
Actor_Says(kActorMcCoy, 4200, 14);
- Actor_Says(kActorIzo, 570, 3);
+ Actor_Says(kActorIzo, 570, kAnimationModeTalk);
Actor_Says(kActorMcCoy, 4205, 18);
Game_Flag_Set(kFlagPS09IzoTalk1);
return true;
@@ -155,14 +155,14 @@ bool SceneScriptPS09::ClickedOnActor(int actorId) {
&& !Game_Flag_Query(kFlagPS09IzoTalk2)
) {
Actor_Says(kActorMcCoy, 4210, 18);
- Actor_Says(kActorIzo, 580, 3);
+ Actor_Says(kActorIzo, 580, kAnimationModeTalk);
Actor_Says(kActorMcCoy, 4215, 14);
- Actor_Says(kActorIzo, 590, 3);
- Actor_Says(kActorIzo, 600, 3);
+ Actor_Says(kActorIzo, 590, kAnimationModeTalk);
+ Actor_Says(kActorIzo, 600, kAnimationModeTalk);
Actor_Says(kActorMcCoy, 4220, 18);
- Actor_Says(kActorIzo, 610, 3);
+ Actor_Says(kActorIzo, 610, kAnimationModeTalk);
Actor_Says(kActorMcCoy, 4225, 19);
- Actor_Says(kActorIzo, 620, 3);
+ Actor_Says(kActorIzo, 620, kAnimationModeTalk);
Actor_Says(kActorMcCoy, 4230, 14);
Game_Flag_Set(kFlagPS09IzoTalk2);
return true;
@@ -180,7 +180,7 @@ bool SceneScriptPS09::ClickedOnActor(int actorId) {
if (!Game_Flag_Query(kFlagPS09CrazylegsTalk1)) {
Actor_Says(kActorMcCoy, 4415, 18);
- Actor_Says(kActorCrazylegs, 1090, 3);
+ Actor_Says(kActorCrazylegs, 1090, kAnimationModeTalk);
Actor_Says(kActorMcCoy, 4420, 18);
Game_Flag_Set(kFlagPS09CrazylegsTalk1);
}
@@ -192,11 +192,11 @@ bool SceneScriptPS09::ClickedOnActor(int actorId) {
Actor_Face_Actor(kActorGrigorian, kActorCrazylegs, true);
Actor_Says(kActorGrigorian, 420, 14);
Actor_Face_Actor(kActorCrazylegs, kActorGrigorian, true);
- Actor_Says(kActorCrazylegs, 1120, 3);
+ Actor_Says(kActorCrazylegs, 1120, kAnimationModeTalk);
Actor_Face_Actor(kActorMcCoy, kActorGrigorian, true);
Actor_Says(kActorMcCoy, 4435, 14);
Actor_Says(kActorGrigorian, 430, 16);
- Actor_Says(kActorCrazylegs, 1130, 3);
+ Actor_Says(kActorCrazylegs, 1130, kAnimationModeTalk);
Game_Flag_Set(kFlagPS09CrazylegsGrigorianTalk);
return true;
}
@@ -205,15 +205,15 @@ bool SceneScriptPS09::ClickedOnActor(int actorId) {
&& !Game_Flag_Query(kFlagGrigorianArrested)
&& !Game_Flag_Query(kFlagPS09CrazylegsTalk2)) {
Actor_Says(kActorMcCoy, 4425, 18);
- Actor_Says(kActorCrazylegs, 1100, 3);
+ Actor_Says(kActorCrazylegs, 1100, kAnimationModeTalk);
Actor_Says(kActorMcCoy, 4430, 19);
- Actor_Says(kActorCrazylegs, 1110, 3);
+ Actor_Says(kActorCrazylegs, 1110, kAnimationModeTalk);
Game_Flag_Set(kFlagPS09CrazylegsTalk2);
return true;
}
Actor_Says(kActorMcCoy, 4425, 18);
- Actor_Says(kActorCrazylegs, 1160, 3);
+ Actor_Says(kActorCrazylegs, 1160, kAnimationModeTalk);
return true;
}
}
@@ -227,7 +227,7 @@ bool SceneScriptPS09::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptPS09::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -559.15f, 0.0f, -85.06f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Set_Enter(kSetPS02, kScenePS02);
Game_Flag_Reset(kFlagPS09Entered);
@@ -339,7 +339,7 @@ void SceneScriptPS09::dialogueWithGregorian() {
case 180: // CARS
Actor_Says(kActorMcCoy, 4270, 18);
- Actor_Says(kActorMcCoy, 4255, 3);
+ Actor_Says(kActorMcCoy, 4255, kAnimationModeTalk);
Actor_Says(kActorGrigorian, 210, 12);
Actor_Says(kActorGrigorian, 220, 13);
Actor_Says(kActorGrigorian, 230, 14);
@@ -356,24 +356,24 @@ void SceneScriptPS09::dialogueWithGregorian() {
if (Game_Flag_Query(kFlagCrazylegsArrested)) {
Actor_Says(kActorGrigorian, 300, 12);
Actor_Face_Actor(kActorCrazylegs, kActorGrigorian, true);
- Actor_Says(kActorCrazylegs, 1010, 3);
+ Actor_Says(kActorCrazylegs, 1010, kAnimationModeTalk);
Actor_Face_Actor(kActorGrigorian, kActorCrazylegs, true);
Actor_Says(kActorGrigorian, 310, 16);
Actor_Face_Actor(kActorMcCoy, kActorCrazylegs, true);
Actor_Says(kActorMcCoy, 4345, 14);
Actor_Face_Actor(kActorCrazylegs, kActorMcCoy, true);
- Actor_Says(kActorCrazylegs, 1020, 3);
+ Actor_Says(kActorCrazylegs, 1020, kAnimationModeTalk);
Actor_Says(kActorMcCoy, 4350, 18);
- Actor_Says(kActorCrazylegs, 1030, 3);
+ Actor_Says(kActorCrazylegs, 1030, kAnimationModeTalk);
Actor_Says(kActorMcCoy, 4355, 19);
- Actor_Says(kActorCrazylegs, 1040, 3);
+ Actor_Says(kActorCrazylegs, 1040, kAnimationModeTalk);
Actor_Says(kActorMcCoy, 4360, 16);
Actor_Says(kActorMcCoy, 4365, 14);
- Actor_Says(kActorCrazylegs, 1050, 3);
- Actor_Says(kActorCrazylegs, 1060, 3);
+ Actor_Says(kActorCrazylegs, 1050, kAnimationModeTalk);
+ Actor_Says(kActorCrazylegs, 1060, kAnimationModeTalk);
Actor_Says(kActorMcCoy, 4370, 14);
- Actor_Says(kActorCrazylegs, 1070, 3);
- Actor_Says(kActorCrazylegs, 1080, 3);
+ Actor_Says(kActorCrazylegs, 1070, kAnimationModeTalk);
+ Actor_Says(kActorCrazylegs, 1080, kAnimationModeTalk);
} else {
Actor_Says(kActorGrigorian, 320, 13);
Actor_Says(kActorGrigorian, 340, 14);
@@ -384,7 +384,7 @@ void SceneScriptPS09::dialogueWithGregorian() {
case 190: // NOTE
Actor_Says(kActorMcCoy, 4270, 18);
- Actor_Says(kActorMcCoy, 4260, 3);
+ Actor_Says(kActorMcCoy, 4260, kAnimationModeTalk);
Actor_Says(kActorGrigorian, 360, 16);
Actor_Says(kActorMcCoy, 4380, 19);
Actor_Says(kActorMcCoy, 4385, 19);
diff --git a/engines/bladerunner/script/scene/ps10.cpp b/engines/bladerunner/script/scene/ps10.cpp
index c9da4892d0..de0dc9539b 100644
--- a/engines/bladerunner/script/scene/ps10.cpp
+++ b/engines/bladerunner/script/scene/ps10.cpp
@@ -42,20 +42,20 @@ static const int *getPoliceMazePS10TrackData1() {
static int trackData[] = {
kPMTIActivate, kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount,
kPMTIVariableInc, kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount,
- kPMTIObstacleReset, kItemPoliceMazeTarget1,
- kPMTIObstacleReset, kItemPoliceMazeTarget2,
+ kPMTIObstacleReset, kItemPS10Target1,
+ kPMTIObstacleReset, kItemPS10Target2,
kPMTIFacing, 989,
kPMTIPosition, 0,
- kPMTITargetSet, kItemPoliceMazeTarget1, 1,
- kPMTITargetSet, kItemPoliceMazeTarget2, 1,
- kPMTIEnemyReset, kItemPoliceMazeTarget1,
+ kPMTITargetSet, kItemPS10Target1, 1,
+ kPMTITargetSet, kItemPS10Target2, 1,
+ kPMTIEnemyReset, kItemPS10Target1,
kPMTIWaitRandom, 3000, 5000,
- kPMTIObstacleSet, kItemPoliceMazeTarget1,
+ kPMTIObstacleSet, kItemPS10Target1,
kPMTIPlaySound, 159, 100,
kPMTIMove, 14,
kPMTIWait, 1000,
kPMTIRotate, 740, 80,
- kPMTIEnemySet, kItemPoliceMazeTarget1,
+ kPMTIEnemySet, kItemPS10Target1,
kPMTIWait, 0,
kPMTIRotate, 488, 80,
kPMTIWait, 1000,
@@ -63,13 +63,12 @@ static const int *getPoliceMazePS10TrackData1() {
kPMTIWait, 0,
kPMTIRotate, 740, 80,
kPMTIPausedReset, kPoliceMazePS10Track2,
- kPMTIObstacleReset, kItemPoliceMazeTarget1,
- kPMTIObstacleSet, kItemPoliceMazeTarget2,
+ kPMTIObstacleReset, kItemPS10Target1,
+ kPMTIObstacleSet, kItemPS10Target2,
kPMTIPausedSet, kPoliceMazePS10Track1,
kPMTIPosition, 0,
kPMTIRestart
};
-
return trackData;
}
@@ -77,10 +76,10 @@ static const int *getPoliceMazePS10TrackData2() {
static int trackData[] = {
kPMTIFacing, 740,
kPMTIPosition, 0,
- kPMTIEnemySet, kItemPoliceMazeTarget2,
+ kPMTIEnemySet, kItemPS10Target2,
kPMTIMove, 69,
kPMTIWait, 500,
- kPMTIObstacleReset, kItemPoliceMazeTarget2,
+ kPMTIObstacleReset, kItemPS10Target2,
kPMTIPausedReset, kPoliceMazePS10Track5,
kPMTIPausedSet, kPoliceMazePS10Track2,
kPMTIPosition, 0,
@@ -93,17 +92,17 @@ static const int *getPoliceMazePS10TrackData3() {
static int trackData[] = {
kPMTIActivate, kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount,
kPMTIVariableInc, kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount,
- kPMTIObstacleReset, kItemPoliceMazeTarget3,
+ kPMTIObstacleReset, kItemPS10Target3,
kPMTIFacing, 993,
kPMTIPosition, 0,
kPMTIWaitRandom, 3000, 5000,
- kPMTIObstacleSet, kItemPoliceMazeTarget3,
+ kPMTIObstacleSet, kItemPS10Target3,
kPMTIPlaySound, 159, 100,
- kPMTITargetSet, kItemPoliceMazeTarget3, 1,
- kPMTIEnemyReset, kItemPoliceMazeTarget3,
+ kPMTITargetSet, kItemPS10Target3, 1,
+ kPMTIEnemyReset, kItemPS10Target3,
kPMTIMove, 5,
kPMTIWait, 1000,
- kPMTIEnemySet, kItemPoliceMazeTarget3,
+ kPMTIEnemySet, kItemPS10Target3,
kPMTIRotate, 233, 80,
kPMTIWait, 0,
kPMTIRotate, 491, 80,
@@ -115,7 +114,7 @@ static const int *getPoliceMazePS10TrackData3() {
kPMTIRotate, 993, 80,
kPMTIPlaySound, 34, 33,
kPMTIMove, 0,
- kPMTIObstacleReset, kItemPoliceMazeTarget3,
+ kPMTIObstacleReset, kItemPS10Target3,
kPMTIRestart
};
return trackData;
@@ -125,20 +124,20 @@ static const int *getPoliceMazePS10TrackData4() {
static int trackData[] = {
kPMTIActivate, kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount,
kPMTIVariableInc, kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount,
- kPMTIObstacleReset, kItemPoliceMazeTarget4,
+ kPMTIObstacleReset, kItemPS10Target4,
kPMTIFacing, 993,
kPMTIPosition, 0,
kPMTIWaitRandom, 3000, 6000,
- kPMTIObstacleSet, kItemPoliceMazeTarget4,
+ kPMTIObstacleSet, kItemPS10Target4,
kPMTIPlaySound, 159, 100,
- kPMTITargetSet, kItemPoliceMazeTarget4, 1,
- kPMTIEnemyReset, kItemPoliceMazeTarget4,
+ kPMTITargetSet, kItemPS10Target4, 1,
+ kPMTIEnemyReset, kItemPS10Target4,
kPMTIMove, 34,
kPMTIWait, 500,
kPMTIRotate, 491, 80,
kPMTIMove, 0,
kPMTILeave,
- kPMTIObstacleReset, kItemPoliceMazeTarget4,
+ kPMTIObstacleReset, kItemPS10Target4,
kPMTIPausedReset, kPoliceMazePS10Track8,
kPMTIPausedSet, kPoliceMazePS10Track4,
kPMTIRestart
@@ -150,14 +149,14 @@ static const int *getPoliceMazePS10TrackData5() {
static int trackData[] = {
kPMTIActivate, kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount,
kPMTIVariableInc, kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount,
- kPMTIObstacleReset, kItemPoliceMazeTarget5,
+ kPMTIObstacleReset, kItemPS10Target5,
kPMTIFacing, 0,
kPMTIPosition, 0,
kPMTIWaitRandom, 4000, 6000,
- kPMTIObstacleSet, kItemPoliceMazeTarget5,
+ kPMTIObstacleSet, kItemPS10Target5,
kPMTIPlaySound, 159, 100,
- kPMTITargetSet, kItemPoliceMazeTarget5, 1,
- kPMTIEnemyReset, kItemPoliceMazeTarget5,
+ kPMTITargetSet, kItemPS10Target5, 1,
+ kPMTIEnemyReset, kItemPS10Target5,
kPMTIMove, 5,
kPMTIWait, 1000,
kPMTIRotate, 512, 100,
@@ -166,7 +165,7 @@ static const int *getPoliceMazePS10TrackData5() {
kPMTIPlaySound, 34, 33,
kPMTIMove, 0,
kPMTILeave,
- kPMTIObstacleReset, kItemPoliceMazeTarget5,
+ kPMTIObstacleReset, kItemPS10Target5,
kPMTIPausedReset, kPoliceMazePS10Track1,
kPMTIPausedSet, kPoliceMazePS10Track5,
kPMTIRestart
@@ -178,17 +177,17 @@ static const int *getPoliceMazePS10TrackData6() {
static int trackData[] = {
kPMTIActivate, kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount,
kPMTIVariableInc, kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount,
- kPMTIObstacleReset, kItemPoliceMazeTarget6,
+ kPMTIObstacleReset, kItemPS10Target6,
kPMTIFacing, 999,
kPMTIPosition, 0,
kPMTIWaitRandom, 4000, 6000,
- kPMTIObstacleSet, kItemPoliceMazeTarget6,
+ kPMTIObstacleSet, kItemPS10Target6,
kPMTIPlaySound, 159, 100,
- kPMTITargetSet, kItemPoliceMazeTarget6, 1,
- kPMTIEnemyReset, kItemPoliceMazeTarget6,
+ kPMTITargetSet, kItemPS10Target6, 1,
+ kPMTIEnemyReset, kItemPS10Target6,
kPMTIMove, 7,
kPMTIWait, 500,
- kPMTIEnemySet, kItemPoliceMazeTarget6,
+ kPMTIEnemySet, kItemPS10Target6,
kPMTIRotate, 750, 80,
kPMTIWait, 0,
kPMTIRotate, 500, 80,
@@ -200,7 +199,7 @@ static const int *getPoliceMazePS10TrackData6() {
kPMTIRotate, 999, 80,
kPMTIPlaySound, 34, 33,
kPMTIMove, 0,
- kPMTIObstacleReset, kItemPoliceMazeTarget6,
+ kPMTIObstacleReset, kItemPS10Target6,
kPMTIPausedReset, kPoliceMazePS10Track7,
kPMTIPausedReset, kPoliceMazePS10Track9,
kPMTIPausedSet, kPoliceMazePS10Track6,
@@ -213,19 +212,19 @@ static const int *getPoliceMazePS10TrackData7() {
static int trackData[] = {
kPMTIActivate, kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount,
kPMTIVariableInc, kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount,
- kPMTIObstacleReset, kItemPoliceMazeTarget7,
+ kPMTIObstacleReset, kItemPS10Target7,
kPMTIFacing, 264,
kPMTIPosition, 0,
kPMTIWaitRandom, 3000, 6000,
- kPMTITargetSet, kItemPoliceMazeTarget7, 1,
- kPMTIEnemyReset, kItemPoliceMazeTarget7,
- kPMTIObstacleSet, kItemPoliceMazeTarget7,
+ kPMTITargetSet, kItemPS10Target7, 1,
+ kPMTIEnemyReset, kItemPS10Target7,
+ kPMTIObstacleSet, kItemPS10Target7,
kPMTIMove, 89,
kPMTIWaitRandom, 4000, 8000,
kPMTIFacing, 776,
kPMTIMove, 0,
kPMTILeave,
- kPMTIObstacleReset, kItemPoliceMazeTarget7,
+ kPMTIObstacleReset, kItemPS10Target7,
kPMTIPausedSet, kPoliceMazePS10Track7,
kPMTIRestart
};
@@ -236,23 +235,23 @@ static const int *getPoliceMazePS10TrackData8() {
static int trackData[] = {
kPMTIActivate, kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount,
kPMTIVariableInc, kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount,
- kPMTIObstacleReset, kItemPoliceMazeTarget8,
+ kPMTIObstacleReset, kItemPS10Target8,
kPMTIFacing, 993,
kPMTIPosition, 0,
kPMTIWaitRandom, 4000, 6000,
- kPMTIObstacleSet, kItemPoliceMazeTarget8,
+ kPMTIObstacleSet, kItemPS10Target8,
kPMTIPlaySound, 159, 100,
- kPMTITargetSet, kItemPoliceMazeTarget8, 1,
- kPMTIEnemyReset, kItemPoliceMazeTarget8,
+ kPMTITargetSet, kItemPS10Target8, 1,
+ kPMTIEnemyReset, kItemPS10Target8,
kPMTIMove, 34,
kPMTIWait, 500,
- kPMTIEnemySet, kItemPoliceMazeTarget8,
+ kPMTIEnemySet, kItemPS10Target8,
kPMTIRotate, 491, 80,
kPMTIMove, 20,
kPMTIWait, 0,
kPMTIShoot, 27, 33,
kPMTIMove, 0,
- kPMTIObstacleReset, kItemPoliceMazeTarget8,
+ kPMTIObstacleReset, kItemPS10Target8,
kPMTIPausedReset, kPoliceMazePS10Track4,
kPMTIPausedSet, kPoliceMazePS10Track8,
kPMTIRestart
@@ -264,13 +263,13 @@ static const int *getPoliceMazePS10TrackData9() {
static int trackData[] = {
kPMTIActivate, kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount,
kPMTIVariableInc, kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount,
- kPMTIObstacleReset, kItemPoliceMazeTarget9,
+ kPMTIObstacleReset, kItemPS10Target9,
kPMTIFacing, 738,
kPMTIPosition, 0,
kPMTIWaitRandom, 2000, 5000,
- kPMTITargetSet, kItemPoliceMazeTarget9, 1,
- kPMTIEnemySet, kItemPoliceMazeTarget9,
- kPMTIObstacleSet, kItemPoliceMazeTarget9,
+ kPMTITargetSet, kItemPS10Target9, 1,
+ kPMTIEnemySet, kItemPS10Target9,
+ kPMTIObstacleSet, kItemPS10Target9,
kPMTIPlaySound, 0, 33,
kPMTIMove, 23,
kPMTIPlaySound, 0, 33,
@@ -296,8 +295,8 @@ static const int *getPoliceMazePS10TrackData9() {
kPMTIMove, 89,
kPMTIPlaySound, 0, 33,
kPMTIWaitRandom, 4000, 6000,
- kPMTITargetSet, kItemPoliceMazeTarget9, 1,
- kPMTIEnemySet, kItemPoliceMazeTarget9,
+ kPMTITargetSet, kItemPS10Target9, 1,
+ kPMTIEnemySet, kItemPS10Target9,
kPMTIFacing, 216,
kPMTIPlaySound, 32, 33,
kPMTIMove, 69,
@@ -310,7 +309,7 @@ static const int *getPoliceMazePS10TrackData9() {
kPMTIRotate, 216, 100,
kPMTIPlaySound, 32, 33,
kPMTIMove, 0,
- kPMTIObstacleReset, kItemPoliceMazeTarget9,
+ kPMTIObstacleReset, kItemPS10Target9,
kPMTIPausedSet, kPoliceMazePS10Track9,
kPMTIRestart
};
@@ -330,8 +329,8 @@ void SceneScriptPS10::InitializeScene() {
Scene_Exit_Add_2D_Exit(1, 0, 0, 20, 479, 3);
Ambient_Sounds_Remove_All_Non_Looping_Sounds(0);
Ambient_Sounds_Add_Looping_Sound(387, 50, 1, 1);
- Ambient_Sounds_Add_Looping_Sound(54, 50, 1, 1);
- Ambient_Sounds_Add_Sound( 1, 10, 50, 16, 25, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Looping_Sound( 54, 50, 1, 1);
+ Ambient_Sounds_Add_Sound( 1, 10, 50, 16, 25, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(389, 5, 50, 16, 25, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(390, 6, 50, 16, 25, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(443, 2, 100, 14, 16, -100, 100, -101, -101, 0, 0);
@@ -368,26 +367,26 @@ void SceneScriptPS10::SceneLoaded() {
Unclickable_Object("PARKMETR16");
Unobstacle_Object("E.SM.WIRE01", true);
if (!Query_System_Currently_Loading_Game()) {
- Item_Add_To_World(kItemPoliceMazeTarget1, 443, 14, -240.0f, -80.74f, 145.0f, 989, 72, 36, true, false, false, true);
- Item_Add_To_World(kItemPoliceMazeTarget2, 443, 14, -240.0f, -8.74f, 145.0f, 740, 72, 36, true, false, false, true);
- Item_Add_To_World(kItemPoliceMazeTarget3, 445, 14, -165.0f, 111.53f, -10.0f, 993, 72, 36, true, false, false, true);
- Item_Add_To_World(kItemPoliceMazeTarget4, 447, 14, -125.0f, 160.0f, -10.0f, 993, 72, 36, true, false, false, true);
- Item_Add_To_World(kItemPoliceMazeTarget5, 441, 14, -246.71f, 205.51f, -20.0f, 0, 72, 36, true, false, false, true);
- Item_Add_To_World(kItemPoliceMazeTarget6, 445, 14, -27.69f, -86.92f, 434.0f, 999, 72, 36, true, false, false, true);
- Item_Add_To_World(kItemPoliceMazeTarget7, 441, 14, -347.15f, 7.68f, -20.0f, 264, 72, 36, true, false, false, true);
- Item_Add_To_World(kItemPoliceMazeTarget8, 449, 14, -51.0f, 160.0f, -10.0f, 993, 72, 36, true, false, false, true);
- Item_Add_To_World(kItemPoliceMazeTarget9, 445, 14, 39.0f, 9.16f, -20.0f, 738, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS10Target1, 443, kSetPS10_PS11_PS12_PS13, -240.0f, -80.74f, 145.0f, 989, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS10Target2, 443, kSetPS10_PS11_PS12_PS13, -240.0f, -8.74f, 145.0f, 740, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS10Target3, 445, kSetPS10_PS11_PS12_PS13, -165.0f, 111.53f, -10.0f, 993, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS10Target4, 447, kSetPS10_PS11_PS12_PS13, -125.0f, 160.0f, -10.0f, 993, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS10Target5, 441, kSetPS10_PS11_PS12_PS13, -246.71f, 205.51f, -20.0f, 0, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS10Target6, 445, kSetPS10_PS11_PS12_PS13, -27.69f, -86.92f, 434.0f, 999, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS10Target7, 441, kSetPS10_PS11_PS12_PS13, -347.15f, 7.68f, -20.0f, 264, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS10Target8, 449, kSetPS10_PS11_PS12_PS13, -51.0f, 160.0f, -10.0f, 993, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS10Target9, 445, kSetPS10_PS11_PS12_PS13, 39.0f, 9.16f, -20.0f, 738, 72, 36, true, false, false, true);
}
- Police_Maze_Target_Track_Add(kItemPoliceMazeTarget1, -240.0f, -80.74f, 145.0f, -240.0f, -8.74f, 145.0f, 15, getPoliceMazePS10TrackData1(), false);
- Police_Maze_Target_Track_Add(kItemPoliceMazeTarget2, -240.0f, -8.74f, 145.0f, -450.0f, -8.74f, 145.0f, 70, getPoliceMazePS10TrackData2(), false);
- Police_Maze_Target_Track_Add(kItemPoliceMazeTarget3, -165.0f, 111.53f, -10.0f, -165.0f, 167.53f, -10.0f, 6, getPoliceMazePS10TrackData3(), true);
- Police_Maze_Target_Track_Add(kItemPoliceMazeTarget4, -125.0f, 160.0f, -10.0f, -51.0f, 160.0f, -10.0f, 35, getPoliceMazePS10TrackData4(), false);
- Police_Maze_Target_Track_Add(kItemPoliceMazeTarget5, -246.71f, 205.51f, -20.0f, -246.71f, 241.51f, -20.0f, 6, getPoliceMazePS10TrackData5(), true);
- Police_Maze_Target_Track_Add(kItemPoliceMazeTarget6, -27.69f, -86.92f, 434.0f, -27.69f, -18.92f, 434.0f, 8, getPoliceMazePS10TrackData6(), true);
- Police_Maze_Target_Track_Add(kItemPoliceMazeTarget7, -347.15f, 7.68f, -20.0f, 39.0f, 9.16f, -20.0f, 90, getPoliceMazePS10TrackData7(), false);
- Police_Maze_Target_Track_Add(kItemPoliceMazeTarget8, -51.0f, 160.0f, -10.0f, -125.0f, 160.0f, -10.0f, 35, getPoliceMazePS10TrackData8(), true);
- Police_Maze_Target_Track_Add(kItemPoliceMazeTarget9, 39.0f, 9.16f, -20.0f, -347.15f, 7.68f, -20.0f, 90, getPoliceMazePS10TrackData9(), false);
+ Police_Maze_Target_Track_Add(kItemPS10Target1, -240.0f, -80.74f, 145.0f, -240.0f, -8.74f, 145.0f, 15, getPoliceMazePS10TrackData1(), false);
+ Police_Maze_Target_Track_Add(kItemPS10Target2, -240.0f, -8.74f, 145.0f, -450.0f, -8.74f, 145.0f, 70, getPoliceMazePS10TrackData2(), false);
+ Police_Maze_Target_Track_Add(kItemPS10Target3, -165.0f, 111.53f, -10.0f, -165.0f, 167.53f, -10.0f, 6, getPoliceMazePS10TrackData3(), true);
+ Police_Maze_Target_Track_Add(kItemPS10Target4, -125.0f, 160.0f, -10.0f, -51.0f, 160.0f, -10.0f, 35, getPoliceMazePS10TrackData4(), false);
+ Police_Maze_Target_Track_Add(kItemPS10Target5, -246.71f, 205.51f, -20.0f, -246.71f, 241.51f, -20.0f, 6, getPoliceMazePS10TrackData5(), true);
+ Police_Maze_Target_Track_Add(kItemPS10Target6, -27.69f, -86.92f, 434.0f, -27.69f, -18.92f, 434.0f, 8, getPoliceMazePS10TrackData6(), true);
+ Police_Maze_Target_Track_Add(kItemPS10Target7, -347.15f, 7.68f, -20.0f, 39.0f, 9.16f, -20.0f, 90, getPoliceMazePS10TrackData7(), false);
+ Police_Maze_Target_Track_Add(kItemPS10Target8, -51.0f, 160.0f, -10.0f, -125.0f, 160.0f, -10.0f, 35, getPoliceMazePS10TrackData8(), true);
+ Police_Maze_Target_Track_Add(kItemPS10Target9, 39.0f, 9.16f, -20.0f, -347.15f, 7.68f, -20.0f, 90, getPoliceMazePS10TrackData9(), false);
Preload(441);
Preload(442);
Preload(443);
@@ -404,7 +403,7 @@ bool SceneScriptPS10::MouseClick(int x, int y) {
return false;
}
-bool SceneScriptPS10::ClickedOn3DObject(const char *objectName, bool a2) {
+bool SceneScriptPS10::ClickedOn3DObject(const char *objectName, bool combatMode) {
return false;
}
@@ -412,16 +411,16 @@ bool SceneScriptPS10::ClickedOnActor(int actorId) {
return false;
}
-bool SceneScriptPS10::ClickedOnItem(int itemId, bool a2) {
+bool SceneScriptPS10::ClickedOnItem(int itemId, bool combatMode) {
if (Player_Query_Combat_Mode()) {
switch (itemId) {
- case kItemPoliceMazeTarget4:
+ case kItemPS10Target4:
Sound_Play(4, 50, 0, 0, 50);
break;
- case kItemPoliceMazeTarget5:
+ case kItemPS10Target5:
Sound_Play(555, 50, 0, 0, 50);
break;
- case kItemPoliceMazeTarget7:
+ case kItemPS10Target7:
Sound_Play(555, 50, 0, 0, 50);
break;
default:
@@ -429,34 +428,34 @@ bool SceneScriptPS10::ClickedOnItem(int itemId, bool a2) {
break;
}
Item_Spin_In_World(itemId);
- if (itemId == kItemPoliceMazeTarget1) {
- Item_Flag_As_Non_Target(kItemPoliceMazeTarget1);
- Item_Flag_As_Non_Target(kItemPoliceMazeTarget2);
+ if (itemId == kItemPS10Target1) {
+ Item_Flag_As_Non_Target(kItemPS10Target1);
+ Item_Flag_As_Non_Target(kItemPS10Target2);
}
- if (itemId == kItemPoliceMazeTarget2) {
- Item_Flag_As_Non_Target(kItemPoliceMazeTarget1);
- Item_Flag_As_Non_Target(kItemPoliceMazeTarget2);
+ if (itemId == kItemPS10Target2) {
+ Item_Flag_As_Non_Target(kItemPS10Target1);
+ Item_Flag_As_Non_Target(kItemPS10Target2);
}
- if (itemId == kItemPoliceMazeTarget3) {
- Item_Flag_As_Non_Target(kItemPoliceMazeTarget3);
+ if (itemId == kItemPS10Target3) {
+ Item_Flag_As_Non_Target(kItemPS10Target3);
}
- if (itemId == kItemPoliceMazeTarget4) {
- Item_Flag_As_Non_Target(kItemPoliceMazeTarget4);
+ if (itemId == kItemPS10Target4) {
+ Item_Flag_As_Non_Target(kItemPS10Target4);
}
- if (itemId == kItemPoliceMazeTarget5) {
- Item_Flag_As_Non_Target(kItemPoliceMazeTarget5);
+ if (itemId == kItemPS10Target5) {
+ Item_Flag_As_Non_Target(kItemPS10Target5);
}
- if (itemId == kItemPoliceMazeTarget6) {
- Item_Flag_As_Non_Target(kItemPoliceMazeTarget6);
+ if (itemId == kItemPS10Target6) {
+ Item_Flag_As_Non_Target(kItemPS10Target6);
}
- if (itemId == kItemPoliceMazeTarget7) {
- Item_Flag_As_Non_Target(kItemPoliceMazeTarget7);
+ if (itemId == kItemPS10Target7) {
+ Item_Flag_As_Non_Target(kItemPS10Target7);
}
- if (itemId == kItemPoliceMazeTarget8) {
- Item_Flag_As_Non_Target(kItemPoliceMazeTarget8);
+ if (itemId == kItemPS10Target8) {
+ Item_Flag_As_Non_Target(kItemPS10Target8);
}
- if (itemId == kItemPoliceMazeTarget9) {
- Item_Flag_As_Non_Target(kItemPoliceMazeTarget9);
+ if (itemId == kItemPS10Target9) {
+ Item_Flag_As_Non_Target(kItemPS10Target9);
} else {
Item_Flag_As_Non_Target(itemId);
}
@@ -517,15 +516,15 @@ void SceneScriptPS10::DialogueQueueFlushed(int a1) {
}
void SceneScriptPS10::removeTargets() {
- Item_Remove_From_World(kItemPoliceMazeTarget1);
- Item_Remove_From_World(kItemPoliceMazeTarget2);
- Item_Remove_From_World(kItemPoliceMazeTarget3);
- Item_Remove_From_World(kItemPoliceMazeTarget4);
- Item_Remove_From_World(kItemPoliceMazeTarget5);
- Item_Remove_From_World(kItemPoliceMazeTarget6);
- Item_Remove_From_World(kItemPoliceMazeTarget7);
- Item_Remove_From_World(kItemPoliceMazeTarget8);
- Item_Remove_From_World(kItemPoliceMazeTarget9);
+ Item_Remove_From_World(kItemPS10Target1);
+ Item_Remove_From_World(kItemPS10Target2);
+ Item_Remove_From_World(kItemPS10Target3);
+ Item_Remove_From_World(kItemPS10Target4);
+ Item_Remove_From_World(kItemPS10Target5);
+ Item_Remove_From_World(kItemPS10Target6);
+ Item_Remove_From_World(kItemPS10Target7);
+ Item_Remove_From_World(kItemPS10Target8);
+ Item_Remove_From_World(kItemPS10Target9);
}
} // End of namespace BladeRunner
diff --git a/engines/bladerunner/script/scene/ps11.cpp b/engines/bladerunner/script/scene/ps11.cpp
index 01ed9874c3..1e45ddc768 100644
--- a/engines/bladerunner/script/scene/ps11.cpp
+++ b/engines/bladerunner/script/scene/ps11.cpp
@@ -24,9 +24,11 @@
namespace BladeRunner {
+static int kPoliceMazePS11TargetCount = 20;
+
void SceneScriptPS11::InitializeScene() {
if (Game_Flag_Query(kFlagPS10toPS11)) {
- Scene_Loop_Start_Special(0, 0, 0);
+ Scene_Loop_Start_Special(kSceneLoopModeLoseControl, 0, false);
Scene_Loop_Set_Default(1);
Game_Flag_Reset(kFlagPS10toPS11);
Setup_Scene_Information(World_Waypoint_Query_X(6), World_Waypoint_Query_Y(6), World_Waypoint_Query_Z(6), 840);
@@ -35,7 +37,7 @@ void SceneScriptPS11::InitializeScene() {
Setup_Scene_Information(World_Waypoint_Query_X(7), World_Waypoint_Query_Y(7), World_Waypoint_Query_Z(7), 132);
}
Scene_Exit_Add_2D_Exit(0, 0, 460, 639, 479, 2);
- Scene_Exit_Add_2D_Exit(1, 0, 0, 20, 479, 3);
+ Scene_Exit_Add_2D_Exit(1, 0, 0, 20, 479, 3);
}
static int track_data_9[] = {-26, 11, 20, -18, 11, 20, -9, 9, -5, 50, -1, 0, -7, 5000, 5000, -8, 9, -10, 31, 33, -15, 9, 1, -22, 9, -2, 7, -3, 1000, -24, 27, 33, -10, 34, 33, -2, 0, -3, 500, -9, 9, -13, 15, 10, -12, 9, -4};
@@ -75,63 +77,63 @@ void SceneScriptPS11::SceneLoaded() {
Unclickable_Object("PARKMETR15");
Unclickable_Object("PARKMETR16");
if (!Query_System_Currently_Loading_Game()) {
- Item_Add_To_World(9, 449, 14, -450.0f, -7.5f, 335.0f, 50, 72, 36, true, false, false, true);
- Item_Add_To_World(10, 449, 14, -740.0f, 27.0f, -30.0f, 860, 72, 36, true, false, false, true);
- Item_Add_To_World(11, 449, 14, -740.0f, 99.0f, -30.0f, 860, 72, 36, true, false, false, true);
- Item_Add_To_World(12, 441, 14, -400.0f, -9.23f, -75.0f, 725, 72, 36, true, false, false, true);
- Item_Add_To_World(13, 443, 14, -803.72f, -72.7f, 60.22f, 340, 72, 36, true, false, false, true);
- Item_Add_To_World(14, 443, 14, -853.0f, -70.0f, 195.0f, 900, 72, 36, true, false, false, true);
- Item_Add_To_World(15, 447, 14, -740.0f, 27.0f, -30.0f, 860, 72, 36, true, false, false, true);
- Item_Add_To_World(16, 447, 14, -740.0f, 99.0f, -30.0f, 860, 72, 36, true, false, false, true);
- Item_Add_To_World(17, 445, 14, -888.0f, 155.0f, 100.0f, 310, 72, 36, true, false, false, true);
- Item_Add_To_World(18, 443, 14, -430.0f, 164.0f, 11.0f, 900, 72, 36, true, false, false, true);
- Item_Add_To_World(19, 443, 14, -430.0f, -0.86f, 11.0f, 512, 72, 36, true, false, false, true);
- Item_Add_To_World(20, 443, 14, -891.0f, 3.1f, 90.0f, 280, 72, 36, true, false, false, true);
- Item_Add_To_World(21, 447, 14, -891.0f, 3.1f, 90.0f, 280, 72, 36, true, false, false, true);
- Item_Add_To_World(22, 445, 14, -891.0f, 171.0f, 190.0f, 255, 72, 36, true, false, false, true);
- Item_Add_To_World(23, 441, 14, -888.0f, 155.0f, 30.0f, 310, 72, 36, true, false, false, true);
- Item_Add_To_World(27, 445, 14, -800.0f, -9.23f, -75.0f, 346, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS11Target1, 449, kSetPS10_PS11_PS12_PS13, -450.0f, -7.5f, 335.0f, 50, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS11Target2, 449, kSetPS10_PS11_PS12_PS13, -740.0f, 27.0f, -30.0f, 860, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS11Target3, 449, kSetPS10_PS11_PS12_PS13, -740.0f, 99.0f, -30.0f, 860, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS11Target4, 441, kSetPS10_PS11_PS12_PS13, -400.0f, -9.23f, -75.0f, 725, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS11Target5, 443, kSetPS10_PS11_PS12_PS13, -803.72f, -72.7f, 60.22f, 340, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS11Target6, 443, kSetPS10_PS11_PS12_PS13, -853.0f, -70.0f, 195.0f, 900, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS11Target7, 447, kSetPS10_PS11_PS12_PS13, -740.0f, 27.0f, -30.0f, 860, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS11Target8, 447, kSetPS10_PS11_PS12_PS13, -740.0f, 99.0f, -30.0f, 860, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS11Target9, 445, kSetPS10_PS11_PS12_PS13, -888.0f, 155.0f, 100.0f, 310, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS11Target10, 443, kSetPS10_PS11_PS12_PS13, -430.0f, 164.0f, 11.0f, 900, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS11Target11, 443, kSetPS10_PS11_PS12_PS13, -430.0f, -0.86f, 11.0f, 512, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS11Target12, 443, kSetPS10_PS11_PS12_PS13, -891.0f, 3.1f, 90.0f, 280, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS11Target13, 447, kSetPS10_PS11_PS12_PS13, -891.0f, 3.1f, 90.0f, 280, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS11Target14, 445, kSetPS10_PS11_PS12_PS13, -891.0f, 171.0f, 190.0f, 255, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS11Target15, 441, kSetPS10_PS11_PS12_PS13, -888.0f, 155.0f, 30.0f, 310, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS11Target16, 445, kSetPS10_PS11_PS12_PS13, -800.0f, -9.23f, -75.0f, 346, 72, 36, true, false, false, true);
}
- Police_Maze_Target_Track_Add(9, -450.0f, -7.5f, 335.0f, -450.0f, -7.5f, 295.0f, 8, track_data_9, true);
- Police_Maze_Target_Track_Add(10, -740.0f, 27.0f, -30.0f, -740.0f, 99.0f, -30.0f, 15, track_data_10, false);
- Police_Maze_Target_Track_Add(11, -740.0f, 99.0f, -30.0f, -200.0f, 99.0f, -30.0f, 80, track_data_11, false);
- Police_Maze_Target_Track_Add(12, -400.0f, -9.23f, -75.0f, -800.0f, -9.23f, -75.0f, 100, track_data_12, false);
- Police_Maze_Target_Track_Add(13, -803.72f, -72.7f, 60.22f, -803.72f, -0.7f, 60.22f, 6, track_data_13, true);
- Police_Maze_Target_Track_Add(14, -853.0f, -70.0f, 195.0f, -853.0f, 2.0f, 195.0f, 6, track_data_14, false);
- Police_Maze_Target_Track_Add(15, -740.0f, 27.0f, -30.0f, -740.0f, 99.0f, -30.0f, 15, track_data_15, false);
- Police_Maze_Target_Track_Add(16, -740.0f, 99.0f, -30.0f, -200.0f, 99.0f, -30.0f, 80, track_data_16, false);
- Police_Maze_Target_Track_Add(17, -888.0f, 155.0f, 100.0f, -888.0f, 155.0f, 30.0f, 25, track_data_17, false);
- Police_Maze_Target_Track_Add(18, -430.0f, 164.0f, 11.0f, -430.0f, -0.86f, 11.0f, 6, track_data_18, false);
- Police_Maze_Target_Track_Add(19, -430.0f, -0.86f, 11.0f, -300.0f, -0.86f, -80.0f, 20, track_data_19, false);
- Police_Maze_Target_Track_Add(20, -891.0f, 3.1f, 90.0f, -891.0f, 3.1f, 105.0f, 10, track_data_20, true);
- Police_Maze_Target_Track_Add(21, -891.0f, 3.1f, 90.0f, -891.0f, 3.1f, 105.0f, 6, track_data_21, false);
- Police_Maze_Target_Track_Add(22, -891.0f, 171.0f, 190.0f, -891.0f, 171.0f, 147.0f, 8, track_data_22, false);
- Police_Maze_Target_Track_Add(23, -888.0f, 155.0f, 30.0f, -888.0f, 155.0f, 100.0f, 25, track_data_23, true);
- Police_Maze_Target_Track_Add(27, -800.0f, -9.23f, -75.0f, -740.0f, -9.23f, -75.0f, 15, track_data_27, false);
+ Police_Maze_Target_Track_Add(kItemPS11Target1, -450.0f, -7.5f, 335.0f, -450.0f, -7.5f, 295.0f, 8, track_data_9, true);
+ Police_Maze_Target_Track_Add(kItemPS11Target2, -740.0f, 27.0f, -30.0f, -740.0f, 99.0f, -30.0f, 15, track_data_10, false);
+ Police_Maze_Target_Track_Add(kItemPS11Target3, -740.0f, 99.0f, -30.0f, -200.0f, 99.0f, -30.0f, 80, track_data_11, false);
+ Police_Maze_Target_Track_Add(kItemPS11Target4, -400.0f, -9.23f, -75.0f, -800.0f, -9.23f, -75.0f, 100, track_data_12, false);
+ Police_Maze_Target_Track_Add(kItemPS11Target5, -803.72f, -72.7f, 60.22f, -803.72f, -0.7f, 60.22f, 6, track_data_13, true);
+ Police_Maze_Target_Track_Add(kItemPS11Target6, -853.0f, -70.0f, 195.0f, -853.0f, 2.0f, 195.0f, 6, track_data_14, false);
+ Police_Maze_Target_Track_Add(kItemPS11Target7, -740.0f, 27.0f, -30.0f, -740.0f, 99.0f, -30.0f, 15, track_data_15, false);
+ Police_Maze_Target_Track_Add(kItemPS11Target8, -740.0f, 99.0f, -30.0f, -200.0f, 99.0f, -30.0f, 80, track_data_16, false);
+ Police_Maze_Target_Track_Add(kItemPS11Target9, -888.0f, 155.0f, 100.0f, -888.0f, 155.0f, 30.0f, 25, track_data_17, false);
+ Police_Maze_Target_Track_Add(kItemPS11Target10, -430.0f, 164.0f, 11.0f, -430.0f, -0.86f, 11.0f, 6, track_data_18, false);
+ Police_Maze_Target_Track_Add(kItemPS11Target11, -430.0f, -0.86f, 11.0f, -300.0f, -0.86f, -80.0f, 20, track_data_19, false);
+ Police_Maze_Target_Track_Add(kItemPS11Target12, -891.0f, 3.1f, 90.0f, -891.0f, 3.1f, 105.0f, 10, track_data_20, true);
+ Police_Maze_Target_Track_Add(kItemPS11Target13, -891.0f, 3.1f, 90.0f, -891.0f, 3.1f, 105.0f, 6, track_data_21, false);
+ Police_Maze_Target_Track_Add(kItemPS11Target14, -891.0f, 171.0f, 190.0f, -891.0f, 171.0f, 147.0f, 8, track_data_22, false);
+ Police_Maze_Target_Track_Add(kItemPS11Target15, -888.0f, 155.0f, 30.0f, -888.0f, 155.0f, 100.0f, 25, track_data_23, true);
+ Police_Maze_Target_Track_Add(kItemPS11Target16, -800.0f, -9.23f, -75.0f, -740.0f, -9.23f, -75.0f, 15, track_data_27, false);
Ambient_Sounds_Remove_All_Non_Looping_Sounds(0);
Ambient_Sounds_Add_Looping_Sound(387, 50, 1, 1);
- Ambient_Sounds_Add_Looping_Sound(54, 50, 1, 1);
- Ambient_Sounds_Add_Sound(1, 10, 50, 16, 25, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(389, 5, 50, 16, 25, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(390, 6, 50, 16, 25, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(443, 2, 100, 14, 16, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(444, 2, 100, 14, 16, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(445, 2, 100, 14, 16, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(446, 2, 100, 14, 16, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(303, 5, 100, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(304, 5, 100, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(305, 5, 100, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(306, 5, 100, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(307, 5, 100, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(308, 5, 100, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Looping_Sound( 54, 50, 1, 1);
+ Ambient_Sounds_Add_Sound( 1, 10, 50, 16, 25, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(389, 5, 50, 16, 25, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(390, 6, 50, 16, 25, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(443, 2, 100, 14, 16, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(444, 2, 100, 14, 16, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(445, 2, 100, 14, 16, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(446, 2, 100, 14, 16, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(303, 5, 100, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(304, 5, 100, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(305, 5, 100, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(306, 5, 100, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(307, 5, 100, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(308, 5, 100, 17, 27, -100, 100, -101, -101, 0, 0);
}
bool SceneScriptPS11::MouseClick(int x, int y) {
return false;
}
-bool SceneScriptPS11::ClickedOn3DObject(const char *objectName, bool a2) {
+bool SceneScriptPS11::ClickedOn3DObject(const char *objectName, bool combatMode) {
return false;
}
@@ -139,22 +141,22 @@ bool SceneScriptPS11::ClickedOnActor(int actorId) {
return false;
}
-bool SceneScriptPS11::ClickedOnItem(int itemId, bool a2) {
+bool SceneScriptPS11::ClickedOnItem(int itemId, bool combatMode) {
if (Player_Query_Combat_Mode()) {
switch (itemId) {
- case 15:
- Sound_Play(4, 50, 0, 0, 50);
+ case kItemPS11Target4:
+ Sound_Play(555, 50, 0, 0, 50);
break;
- case 16:
+ case kItemPS11Target7:
Sound_Play(4, 50, 0, 0, 50);
break;
- case 21:
+ case kItemPS11Target8:
Sound_Play(4, 50, 0, 0, 50);
break;
- case 23:
- Sound_Play(555, 50, 0, 0, 50);
+ case kItemPS11Target13:
+ Sound_Play(4, 50, 0, 0, 50);
break;
- case 12:
+ case kItemPS11Target15:
Sound_Play(555, 50, 0, 0, 50);
break;
default:
@@ -162,59 +164,59 @@ bool SceneScriptPS11::ClickedOnItem(int itemId, bool a2) {
break;
}
Item_Spin_In_World(itemId);
- if (itemId == 9) {
- Item_Flag_As_Non_Target(9);
+ if (itemId == kItemPS11Target1) {
+ Item_Flag_As_Non_Target(kItemPS11Target1);
}
- if (itemId == 10) {
- Item_Flag_As_Non_Target(10);
- Item_Flag_As_Non_Target(11);
+ if (itemId == kItemPS11Target2) {
+ Item_Flag_As_Non_Target(kItemPS11Target2);
+ Item_Flag_As_Non_Target(kItemPS11Target3);
}
- if (itemId == 11) {
- Item_Flag_As_Non_Target(10);
- Item_Flag_As_Non_Target(11);
+ if (itemId == kItemPS11Target3) {
+ Item_Flag_As_Non_Target(kItemPS11Target2);
+ Item_Flag_As_Non_Target(kItemPS11Target3);
}
- if (itemId == 12) {
- Item_Flag_As_Non_Target(12);
+ if (itemId == kItemPS11Target4) {
+ Item_Flag_As_Non_Target(kItemPS11Target4);
}
- if (itemId == 13) {
- Item_Flag_As_Non_Target(13);
+ if (itemId == kItemPS11Target5) {
+ Item_Flag_As_Non_Target(kItemPS11Target5);
}
- if (itemId == 14) {
- Item_Flag_As_Non_Target(14);
+ if (itemId == kItemPS11Target6) {
+ Item_Flag_As_Non_Target(kItemPS11Target6);
}
- if (itemId == 15) {
- Item_Flag_As_Non_Target(15);
- Item_Flag_As_Non_Target(16);
+ if (itemId == kItemPS11Target7) {
+ Item_Flag_As_Non_Target(kItemPS11Target7);
+ Item_Flag_As_Non_Target(kItemPS11Target8);
}
- if (itemId == 16) {
- Item_Flag_As_Non_Target(15);
- Item_Flag_As_Non_Target(16);
+ if (itemId == kItemPS11Target8) {
+ Item_Flag_As_Non_Target(kItemPS11Target7);
+ Item_Flag_As_Non_Target(kItemPS11Target8);
}
- if (itemId == 17) {
- Item_Flag_As_Non_Target(17);
+ if (itemId == kItemPS11Target9) {
+ Item_Flag_As_Non_Target(kItemPS11Target9);
}
- if (itemId == 18) {
- Item_Flag_As_Non_Target(18);
- Item_Flag_As_Non_Target(19);
+ if (itemId == kItemPS11Target10) {
+ Item_Flag_As_Non_Target(kItemPS11Target10);
+ Item_Flag_As_Non_Target(kItemPS11Target11);
}
- if (itemId == 19) {
- Item_Flag_As_Non_Target(18);
- Item_Flag_As_Non_Target(19);
+ if (itemId == kItemPS11Target11) {
+ Item_Flag_As_Non_Target(kItemPS11Target10);
+ Item_Flag_As_Non_Target(kItemPS11Target11);
}
- if (itemId == 20) {
- Item_Flag_As_Non_Target(20);
+ if (itemId == kItemPS11Target12) {
+ Item_Flag_As_Non_Target(kItemPS11Target12);
}
- if (itemId == 21) {
- Item_Flag_As_Non_Target(21);
+ if (itemId == kItemPS11Target13) {
+ Item_Flag_As_Non_Target(kItemPS11Target13);
}
- if (itemId == 22) {
- Item_Flag_As_Non_Target(22);
+ if (itemId == kItemPS11Target14) {
+ Item_Flag_As_Non_Target(kItemPS11Target14);
}
- if (itemId == 23) {
- Item_Flag_As_Non_Target(23);
+ if (itemId == kItemPS11Target15) {
+ Item_Flag_As_Non_Target(kItemPS11Target15);
}
- if (itemId == 27) {
- Item_Flag_As_Non_Target(27);
+ if (itemId == kItemPS11Target16) {
+ Item_Flag_As_Non_Target(kItemPS11Target16);
}
return true;
}
@@ -223,19 +225,19 @@ bool SceneScriptPS11::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptPS11::ClickedOnExit(int exitId) {
if (exitId == 0) {
- if (!Loop_Actor_Walk_To_Waypoint(kActorMcCoy, 6, 12, 1, false)) {
+ if (!Loop_Actor_Walk_To_Waypoint(kActorMcCoy, 6, 12, true, false)) {
Game_Flag_Set(kFlagPS11toPS10);
- sub_402744();
+ removeTargets();
Set_Enter(kSetPS10_PS11_PS12_PS13, kScenePS10);
}
return true;
}
if (exitId == 1) {
- if (!Loop_Actor_Walk_To_Waypoint(kActorMcCoy, 8, 12, 1, false)) {
+ if (!Loop_Actor_Walk_To_Waypoint(kActorMcCoy, 8, 12, true, false)) {
Game_Flag_Set(kFlagPS11toPS12);
- sub_402744();
- Global_Variable_Decrement(9, 20 - Global_Variable_Query(11));
- Global_Variable_Set(11, 20);
+ removeTargets();
+ Global_Variable_Decrement(kVariablePoliceMazeScore, kPoliceMazePS11TargetCount - Global_Variable_Query(kVariablePoliceMazePS11TargetCounter));
+ Global_Variable_Set(kVariablePoliceMazePS11TargetCounter, kPoliceMazePS11TargetCount);
Set_Enter(kSetPS10_PS11_PS12_PS13, kScenePS12);
}
return true;
@@ -263,23 +265,23 @@ void SceneScriptPS11::PlayerWalkedOut() {
void SceneScriptPS11::DialogueQueueFlushed(int a1) {
}
-void SceneScriptPS11::sub_402744() {
- Item_Remove_From_World(9);
- Item_Remove_From_World(10);
- Item_Remove_From_World(11);
- Item_Remove_From_World(12);
- Item_Remove_From_World(13);
- Item_Remove_From_World(14);
- Item_Remove_From_World(15);
- Item_Remove_From_World(16);
- Item_Remove_From_World(17);
- Item_Remove_From_World(18);
- Item_Remove_From_World(19);
- Item_Remove_From_World(20);
- Item_Remove_From_World(21);
- Item_Remove_From_World(22);
- Item_Remove_From_World(23);
- Item_Remove_From_World(27);
+void SceneScriptPS11::removeTargets() {
+ Item_Remove_From_World(kItemPS11Target1);
+ Item_Remove_From_World(kItemPS11Target2);
+ Item_Remove_From_World(kItemPS11Target3);
+ Item_Remove_From_World(kItemPS11Target4);
+ Item_Remove_From_World(kItemPS11Target5);
+ Item_Remove_From_World(kItemPS11Target6);
+ Item_Remove_From_World(kItemPS11Target7);
+ Item_Remove_From_World(kItemPS11Target8);
+ Item_Remove_From_World(kItemPS11Target9);
+ Item_Remove_From_World(kItemPS11Target10);
+ Item_Remove_From_World(kItemPS11Target11);
+ Item_Remove_From_World(kItemPS11Target12);
+ Item_Remove_From_World(kItemPS11Target13);
+ Item_Remove_From_World(kItemPS11Target14);
+ Item_Remove_From_World(kItemPS11Target15);
+ Item_Remove_From_World(kItemPS11Target16);
}
} // End of namespace BladeRunner
diff --git a/engines/bladerunner/script/scene/ps12.cpp b/engines/bladerunner/script/scene/ps12.cpp
index 7a13d1417d..ebccb60b85 100644
--- a/engines/bladerunner/script/scene/ps12.cpp
+++ b/engines/bladerunner/script/scene/ps12.cpp
@@ -24,10 +24,12 @@
namespace BladeRunner {
+static int kPoliceMazePS12TargetCount = 20;
+
void SceneScriptPS12::InitializeScene() {
Police_Maze_Set_Pause_State(true);
if (Game_Flag_Query(kFlagPS11toPS12)) {
- Scene_Loop_Start_Special(0, 0, 0);
+ Scene_Loop_Start_Special(kSceneLoopModeLoseControl, 0, false);
Scene_Loop_Set_Default(1);
Setup_Scene_Information(World_Waypoint_Query_X(8), World_Waypoint_Query_Y(8), World_Waypoint_Query_Z(8), 512);
} else {
@@ -35,7 +37,7 @@ void SceneScriptPS12::InitializeScene() {
Setup_Scene_Information(World_Waypoint_Query_X(9), World_Waypoint_Query_Y(9), World_Waypoint_Query_Z(9), 0);
}
Scene_Exit_Add_2D_Exit(0, 0, 460, 639, 479, 2);
- Scene_Exit_Add_2D_Exit(1, 0, 5, 110, 196, 3);
+ Scene_Exit_Add_2D_Exit(1, 0, 5, 110, 196, 3);
}
static int track_data_29[] = {-26, 12, 20, -18, 12, 20, -9, 29, -5, 200, -1, 0, -7, 4000, 10000, -8, 29, -10, 33, 33, -15, 29, 1, -22, 29, -2, 5, -3, 500, -24, 27, 33, -10, 34, 33, -2, 0, -9, 29, -13, 44, 42, -12, 29, -4};
@@ -76,47 +78,47 @@ void SceneScriptPS12::SceneLoaded() {
Unclickable_Object("PARKMETR15");
Unclickable_Object("PARKMETR16");
if (!Query_System_Currently_Loading_Game()) {
- Item_Add_To_World(29, 449, 14, -691.8f, -9.06f, 587.67f, 200, 72, 36, true, false, false, true);
- Item_Add_To_World(30, 445, 14, -679.6f, -45.4f, 721.05f, 67, 72, 36, true, false, false, true);
- Item_Add_To_World(31, 447, 14, -414.04f, -8.98f, 711.91f, 480, 72, 36, true, false, false, true);
- Item_Add_To_World(32, 443, 14, -440.0f, -8.97f, 1137.0f, 1010, 72, 36, true, false, false, true);
- Item_Add_To_World(33, 441, 14, -764.92f, -0.84f, 950.22f, 540, 72, 36, true, false, false, true);
- Item_Add_To_World(34, 449, 14, -696.0f, -5.7f, 1185.0f, 469, 72, 36, true, false, false, true);
- Item_Add_To_World(35, 449, 14, -635.0f, -5.7f, 1165.0f, 198, 72, 36, true, false, false, true);
- Item_Add_To_World(36, 449, 14, -620.0f, -8.63f, 1366.0f, 469, 72, 36, true, false, false, true);
- Item_Add_To_World(37, 447, 14, -584.0f, -79.4f, 775.0f, 1010, 72, 36, true, false, false, true);
- Item_Add_To_World(38, 445, 14, -578.0f, -79.4f, 810.0f, 990, 72, 36, true, false, false, true);
- Item_Add_To_World(39, 443, 14, -400.0f, -12.0f, 1110.0f, 513, 72, 36, true, false, false, true);
- Item_Add_To_World(40, 449, 14, -414.04f, -8.98f, 711.91f, 480, 72, 36, true, false, false, true);
- Item_Add_To_World(41, 447, 14, -400.0f, -12.0f, 1110.0f, 513, 72, 36, true, false, false, true);
- Item_Add_To_World(42, 449, 14, -731.0f, 93.66f, 788.0f, 109, 72, 36, true, false, false, true);
- Item_Add_To_World(43, 441, 14, -580.0f, -80.0f, 925.0f, 540, 72, 36, true, false, false, true);
- Item_Add_To_World(44, 441, 14, -731.0f, 93.66f, 788.0f, 109, 72, 36, true, false, false, true);
- Item_Add_To_World(45, 443, 14, -580.0f, -80.0f, 925.0f, 540, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS12Target1, 449, kSetPS10_PS11_PS12_PS13, -691.8f, -9.06f, 587.67f, 200, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS12Target2, 445, kSetPS10_PS11_PS12_PS13, -679.6f, -45.4f, 721.05f, 67, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS12Target3, 447, kSetPS10_PS11_PS12_PS13, -414.04f, -8.98f, 711.91f, 480, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS12Target4, 443, kSetPS10_PS11_PS12_PS13, -440.0f, -8.97f, 1137.0f, 1010, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS12Target5, 441, kSetPS10_PS11_PS12_PS13, -764.92f, -0.84f, 950.22f, 540, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS12Target6, 449, kSetPS10_PS11_PS12_PS13, -696.0f, -5.7f, 1185.0f, 469, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS12Target7, 449, kSetPS10_PS11_PS12_PS13, -635.0f, -5.7f, 1165.0f, 198, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS12Target8, 449, kSetPS10_PS11_PS12_PS13, -620.0f, -8.63f, 1366.0f, 469, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS12Target9, 447, kSetPS10_PS11_PS12_PS13, -584.0f, -79.4f, 775.0f, 1010, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS12Target10, 445, kSetPS10_PS11_PS12_PS13, -578.0f, -79.4f, 810.0f, 990, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS12Target11, 443, kSetPS10_PS11_PS12_PS13, -400.0f, -12.0f, 1110.0f, 513, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS12Target12, 449, kSetPS10_PS11_PS12_PS13, -414.04f, -8.98f, 711.91f, 480, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS12Target13, 447, kSetPS10_PS11_PS12_PS13, -400.0f, -12.0f, 1110.0f, 513, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS12Target14, 449, kSetPS10_PS11_PS12_PS13, -731.0f, 93.66f, 788.0f, 109, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS12Target15, 441, kSetPS10_PS11_PS12_PS13, -580.0f, -80.0f, 925.0f, 540, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS12Target16, 441, kSetPS10_PS11_PS12_PS13, -731.0f, 93.66f, 788.0f, 109, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS12Target17, 443, kSetPS10_PS11_PS12_PS13, -580.0f, -80.0f, 925.0f, 540, 72, 36, true, false, false, true);
}
- Police_Maze_Target_Track_Add(29, -691.8f, -9.06f, 587.67f, -649.11f, -9.06f, 587.71f, 6, track_data_29, true);
- Police_Maze_Target_Track_Add(30, -679.6f, -45.4f, 721.05f, -679.6f, -1.4f, 721.05f, 6, track_data_30, true);
- Police_Maze_Target_Track_Add(31, -414.04f, -8.98f, 711.91f, -459.54f, -8.99f, 707.81f, 6, track_data_31, false);
- Police_Maze_Target_Track_Add(32, -440.0f, -8.97f, 1137.0f, -430.0f, -8.97f, 921.0f, 6, track_data_32, false);
- Police_Maze_Target_Track_Add(33, -764.92f, -0.84f, 950.22f, -722.92f, -0.84f, 950.22f, 6, track_data_33, false);
- Police_Maze_Target_Track_Add(34, -696.0f, -5.7f, 1185.0f, -635.0f, -5.7f, 1185.0f, 20, track_data_34, false);
- Police_Maze_Target_Track_Add(35, -635.0f, -5.7f, 1165.0f, -620.0f, -8.63f, 1366.0f, 10, track_data_35, false);
- Police_Maze_Target_Track_Add(36, -620.0f, -8.63f, 1366.0f, -595.0f, -8.63f, 1366.0f, 10, track_data_36, false);
- Police_Maze_Target_Track_Add(37, -584.0f, -79.4f, 775.0f, -584.0f, -27.4f, 775.0f, 10, track_data_37, true);
- Police_Maze_Target_Track_Add(38, -578.0f, -79.4f, 810.0f, -578.0f, -27.4f, 810.0f, 10, track_data_38, false);
- Police_Maze_Target_Track_Add(39, -400.0f, -12.0f, 1110.0f, -400.0f, 60.0f, 1110.0f, 6, track_data_39, false);
- Police_Maze_Target_Track_Add(40, -414.04f, -8.98f, 711.91f, -459.54f, -8.99f, 707.81f, 6, track_data_40, true);
- Police_Maze_Target_Track_Add(41, -400.0f, -12.0f, 1110.0f, -400.0f, 60.0f, 1110.0f, 6, track_data_41, false);
- Police_Maze_Target_Track_Add(42, -731.0f, 93.66f, 788.0f, -702.0f, 93.66f, 788.0f, 6, track_data_42, false);
- Police_Maze_Target_Track_Add(43, -580.0f, -80.0f, 925.0f, -580.0f, -8.0f, 925.0f, 10, track_data_43, true);
- Police_Maze_Target_Track_Add(44, -731.0f, 93.66f, 788.0f, -702.0f, 93.66f, 788.0f, 6, track_data_44, false);
- Police_Maze_Target_Track_Add(45, -580.0f, -80.0f, 925.0f, -580.0f, -8.0f, 925.0f, 10, track_data_45, false);
+ Police_Maze_Target_Track_Add(kItemPS12Target1, -691.8f, -9.06f, 587.67f, -649.11f, -9.06f, 587.71f, 6, track_data_29, true);
+ Police_Maze_Target_Track_Add(kItemPS12Target2, -679.6f, -45.4f, 721.05f, -679.6f, -1.4f, 721.05f, 6, track_data_30, true);
+ Police_Maze_Target_Track_Add(kItemPS12Target3, -414.04f, -8.98f, 711.91f, -459.54f, -8.99f, 707.81f, 6, track_data_31, false);
+ Police_Maze_Target_Track_Add(kItemPS12Target4, -440.0f, -8.97f, 1137.0f, -430.0f, -8.97f, 921.0f, 6, track_data_32, false);
+ Police_Maze_Target_Track_Add(kItemPS12Target5, -764.92f, -0.84f, 950.22f, -722.92f, -0.84f, 950.22f, 6, track_data_33, false);
+ Police_Maze_Target_Track_Add(kItemPS12Target6, -696.0f, -5.7f, 1185.0f, -635.0f, -5.7f, 1185.0f, 20, track_data_34, false);
+ Police_Maze_Target_Track_Add(kItemPS12Target7, -635.0f, -5.7f, 1165.0f, -620.0f, -8.63f, 1366.0f, 10, track_data_35, false);
+ Police_Maze_Target_Track_Add(kItemPS12Target8, -620.0f, -8.63f, 1366.0f, -595.0f, -8.63f, 1366.0f, 10, track_data_36, false);
+ Police_Maze_Target_Track_Add(kItemPS12Target9, -584.0f, -79.4f, 775.0f, -584.0f, -27.4f, 775.0f, 10, track_data_37, true);
+ Police_Maze_Target_Track_Add(kItemPS12Target10, -578.0f, -79.4f, 810.0f, -578.0f, -27.4f, 810.0f, 10, track_data_38, false);
+ Police_Maze_Target_Track_Add(kItemPS12Target11, -400.0f, -12.0f, 1110.0f, -400.0f, 60.0f, 1110.0f, 6, track_data_39, false);
+ Police_Maze_Target_Track_Add(kItemPS12Target12, -414.04f, -8.98f, 711.91f, -459.54f, -8.99f, 707.81f, 6, track_data_40, true);
+ Police_Maze_Target_Track_Add(kItemPS12Target13, -400.0f, -12.0f, 1110.0f, -400.0f, 60.0f, 1110.0f, 6, track_data_41, false);
+ Police_Maze_Target_Track_Add(kItemPS12Target14, -731.0f, 93.66f, 788.0f, -702.0f, 93.66f, 788.0f, 6, track_data_42, false);
+ Police_Maze_Target_Track_Add(kItemPS12Target15, -580.0f, -80.0f, 925.0f, -580.0f, -8.0f, 925.0f, 10, track_data_43, true);
+ Police_Maze_Target_Track_Add(kItemPS12Target16, -731.0f, 93.66f, 788.0f, -702.0f, 93.66f, 788.0f, 6, track_data_44, false);
+ Police_Maze_Target_Track_Add(kItemPS12Target17, -580.0f, -80.0f, 925.0f, -580.0f, -8.0f, 925.0f, 10, track_data_45, false);
Ambient_Sounds_Remove_All_Non_Looping_Sounds(0);
Ambient_Sounds_Add_Looping_Sound(387, 50, 1, 1);
Ambient_Sounds_Add_Looping_Sound(54, 50, 1, 1);
- Ambient_Sounds_Add_Sound(1, 10, 50, 16, 25, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(389, 5, 50, 16, 25, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(390, 6, 50, 16, 25, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(1, 10, 50, 16, 25, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(389, 5, 50, 16, 25, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(390, 6, 50, 16, 25, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(443, 2, 100, 14, 16, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(444, 2, 100, 14, 16, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(445, 2, 100, 14, 16, -100, 100, -101, -101, 0, 0);
@@ -144,22 +146,22 @@ bool SceneScriptPS12::ClickedOnActor(int actorId) {
bool SceneScriptPS12::ClickedOnItem(int itemId, bool a2) {
if (Player_Query_Combat_Mode()) {
switch (itemId) {
- case 31:
+ case kItemPS12Target3:
Sound_Play(4, 50, 0, 0, 50);
break;
- case 37:
- Sound_Play(4, 50, 0, 0, 50);
+ case kItemPS12Target5:
+ Sound_Play(555, 50, 0, 0, 50);
break;
- case 41:
+ case kItemPS12Target9:
Sound_Play(4, 50, 0, 0, 50);
break;
- case 33:
- Sound_Play(555, 50, 0, 0, 50);
+ case kItemPS12Target13:
+ Sound_Play(4, 50, 0, 0, 50);
break;
- case 43:
+ case kItemPS12Target15:
Sound_Play(555, 50, 0, 0, 50);
break;
- case 44:
+ case kItemPS12Target16:
Sound_Play(555, 50, 0, 0, 50);
break;
default:
@@ -168,62 +170,62 @@ bool SceneScriptPS12::ClickedOnItem(int itemId, bool a2) {
}
Item_Spin_In_World(itemId);
Item_Flag_As_Non_Target(itemId);
- if (itemId == 29) {
- Item_Flag_As_Non_Target(29);
+ if (itemId == kItemPS12Target1) {
+ Item_Flag_As_Non_Target(kItemPS12Target1);
}
- if (itemId == 30) {
- Item_Flag_As_Non_Target(30);
+ if (itemId == kItemPS12Target2) {
+ Item_Flag_As_Non_Target(kItemPS12Target2);
}
- if (itemId == 31) {
- Item_Flag_As_Non_Target(31);
+ if (itemId == kItemPS12Target3) {
+ Item_Flag_As_Non_Target(kItemPS12Target3);
}
- if (itemId == 32) {
- Item_Flag_As_Non_Target(32);
+ if (itemId == kItemPS12Target4) {
+ Item_Flag_As_Non_Target(kItemPS12Target4);
}
- if (itemId == 33) {
- Item_Flag_As_Non_Target(33);
+ if (itemId == kItemPS12Target5) {
+ Item_Flag_As_Non_Target(kItemPS12Target5);
}
- if (itemId == 34) {
- Item_Flag_As_Non_Target(34);
- Item_Flag_As_Non_Target(35);
- Item_Flag_As_Non_Target(36);
+ if (itemId == kItemPS12Target6) {
+ Item_Flag_As_Non_Target(kItemPS12Target6);
+ Item_Flag_As_Non_Target(kItemPS12Target7);
+ Item_Flag_As_Non_Target(kItemPS12Target8);
}
- if (itemId == 35) {
- Item_Flag_As_Non_Target(34);
- Item_Flag_As_Non_Target(35);
- Item_Flag_As_Non_Target(36);
+ if (itemId == kItemPS12Target7) {
+ Item_Flag_As_Non_Target(kItemPS12Target6);
+ Item_Flag_As_Non_Target(kItemPS12Target7);
+ Item_Flag_As_Non_Target(kItemPS12Target8);
}
- if (itemId == 36) {
- Item_Flag_As_Non_Target(34);
- Item_Flag_As_Non_Target(35);
- Item_Flag_As_Non_Target(36);
+ if (itemId == kItemPS12Target8) {
+ Item_Flag_As_Non_Target(kItemPS12Target6);
+ Item_Flag_As_Non_Target(kItemPS12Target7);
+ Item_Flag_As_Non_Target(kItemPS12Target8);
}
- if (itemId == 37) {
- Item_Flag_As_Non_Target(37);
+ if (itemId == kItemPS12Target9) {
+ Item_Flag_As_Non_Target(kItemPS12Target9);
}
- if (itemId == 38) {
- Item_Flag_As_Non_Target(38);
+ if (itemId == kItemPS12Target10) {
+ Item_Flag_As_Non_Target(kItemPS12Target10);
}
- if (itemId == 39) {
- Item_Flag_As_Non_Target(39);
+ if (itemId == kItemPS12Target11) {
+ Item_Flag_As_Non_Target(kItemPS12Target11);
}
- if (itemId == 40) {
- Item_Flag_As_Non_Target(40);
+ if (itemId == kItemPS12Target12) {
+ Item_Flag_As_Non_Target(kItemPS12Target12);
}
- if (itemId == 41) {
- Item_Flag_As_Non_Target(41);
+ if (itemId == kItemPS12Target13) {
+ Item_Flag_As_Non_Target(kItemPS12Target13);
}
- if (itemId == 42) {
- Item_Flag_As_Non_Target(42);
+ if (itemId == kItemPS12Target14) {
+ Item_Flag_As_Non_Target(kItemPS12Target14);
}
- if (itemId == 43) {
- Item_Flag_As_Non_Target(43);
+ if (itemId == kItemPS12Target15) {
+ Item_Flag_As_Non_Target(kItemPS12Target15);
}
- if (itemId == 44) {
- Item_Flag_As_Non_Target(44);
+ if (itemId == kItemPS12Target16) {
+ Item_Flag_As_Non_Target(kItemPS12Target16);
}
- if (itemId == 45) {
- Item_Flag_As_Non_Target(45);
+ if (itemId == kItemPS12Target17) {
+ Item_Flag_As_Non_Target(kItemPS12Target17);
}
return true;
}
@@ -232,22 +234,22 @@ bool SceneScriptPS12::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptPS12::ClickedOnExit(int exitId) {
if (exitId == 0) {
- if (!Loop_Actor_Walk_To_Waypoint(kActorMcCoy, 8, 12, 1, false)) {
+ if (!Loop_Actor_Walk_To_Waypoint(kActorMcCoy, 8, 12, true, false)) {
Game_Flag_Set(kFlagPS12toPS11);
- sub_4028C4();
+ removeTargets();
Set_Enter(kSetPS10_PS11_PS12_PS13, kScenePS11);
}
return true;
}
if (exitId == 1) {
- if (!Loop_Actor_Walk_To_Waypoint(kActorMcCoy, 9, 12, 1, false)) {
+ if (!Loop_Actor_Walk_To_Waypoint(kActorMcCoy, 9, 12, true, false)) {
Player_Loses_Control();
- Loop_Actor_Walk_To_Waypoint(kActorMcCoy, 10, 12, 0, false);
+ Loop_Actor_Walk_To_Waypoint(kActorMcCoy, 10, 12, false, false);
Player_Gains_Control();
Game_Flag_Set(kFlagPS12toPS13);
- sub_4028C4();
- Global_Variable_Decrement(9, 20 - Global_Variable_Query(12));
- Global_Variable_Set(12, 20);
+ removeTargets();
+ Global_Variable_Decrement(kVariablePoliceMazeScore, kPoliceMazePS12TargetCount - Global_Variable_Query(kVariablePoliceMazePS12TargetCounter));
+ Global_Variable_Set(kVariablePoliceMazePS12TargetCounter, kPoliceMazePS12TargetCount);
Set_Enter(kSetPS10_PS11_PS12_PS13, kScenePS13);
}
return true;
@@ -267,7 +269,7 @@ void SceneScriptPS12::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
void SceneScriptPS12::PlayerWalkedIn() {
if (Game_Flag_Query(kFlagPS11toPS12)) {
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -546.0f, -9.06f, 570.0f, 0, 1, false, 0);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -546.0f, -9.06f, 570.0f, 0, true, false, 0);
Game_Flag_Reset(kFlagPS11toPS12);
}
Police_Maze_Set_Pause_State(false);
@@ -279,24 +281,24 @@ void SceneScriptPS12::PlayerWalkedOut() {
void SceneScriptPS12::DialogueQueueFlushed(int a1) {
}
-void SceneScriptPS12::sub_4028C4() {
- Item_Remove_From_World(29);
- Item_Remove_From_World(30);
- Item_Remove_From_World(31);
- Item_Remove_From_World(32);
- Item_Remove_From_World(33);
- Item_Remove_From_World(34);
- Item_Remove_From_World(35);
- Item_Remove_From_World(36);
- Item_Remove_From_World(37);
- Item_Remove_From_World(38);
- Item_Remove_From_World(39);
- Item_Remove_From_World(40);
- Item_Remove_From_World(41);
- Item_Remove_From_World(42);
- Item_Remove_From_World(43);
- Item_Remove_From_World(44);
- Item_Remove_From_World(45);
+void SceneScriptPS12::removeTargets() {
+ Item_Remove_From_World(kItemPS12Target1);
+ Item_Remove_From_World(kItemPS12Target2);
+ Item_Remove_From_World(kItemPS12Target3);
+ Item_Remove_From_World(kItemPS12Target4);
+ Item_Remove_From_World(kItemPS12Target5);
+ Item_Remove_From_World(kItemPS12Target6);
+ Item_Remove_From_World(kItemPS12Target7);
+ Item_Remove_From_World(kItemPS12Target8);
+ Item_Remove_From_World(kItemPS12Target9);
+ Item_Remove_From_World(kItemPS12Target10);
+ Item_Remove_From_World(kItemPS12Target11);
+ Item_Remove_From_World(kItemPS12Target12);
+ Item_Remove_From_World(kItemPS12Target13);
+ Item_Remove_From_World(kItemPS12Target14);
+ Item_Remove_From_World(kItemPS12Target15);
+ Item_Remove_From_World(kItemPS12Target16);
+ Item_Remove_From_World(kItemPS12Target17);
}
} // End of namespace BladeRunner
diff --git a/engines/bladerunner/script/scene/ps13.cpp b/engines/bladerunner/script/scene/ps13.cpp
index fc6a9c1736..3a1d906480 100644
--- a/engines/bladerunner/script/scene/ps13.cpp
+++ b/engines/bladerunner/script/scene/ps13.cpp
@@ -24,10 +24,12 @@
namespace BladeRunner {
+static int kPoliceMazePS13TargetCount = 20;
+
void SceneScriptPS13::InitializeScene() {
Police_Maze_Set_Pause_State(true);
if (Game_Flag_Query(kFlagPS12toPS13)) {
- Scene_Loop_Start_Special(0, 0, 0);
+ Scene_Loop_Start_Special(kSceneLoopModeLoseControl, 0, false);
Scene_Loop_Set_Default(1);
Game_Flag_Reset(kFlagPS12toPS13);
Setup_Scene_Information(World_Waypoint_Query_X(10), World_Waypoint_Query_Y(10), World_Waypoint_Query_Z(10), 200);
@@ -36,13 +38,13 @@ void SceneScriptPS13::InitializeScene() {
Setup_Scene_Information(World_Waypoint_Query_X(11), World_Waypoint_Query_Y(11), World_Waypoint_Query_Z(11), 840);
}
Scene_Exit_Add_2D_Exit(0, 0, 460, 639, 479, 2);
- Scene_Exit_Add_2D_Exit(1, 0, 0, 20, 479, 3);
+ Scene_Exit_Add_2D_Exit(1, 0, 0, 20, 479, 3);
Ambient_Sounds_Remove_All_Non_Looping_Sounds(0);
Ambient_Sounds_Add_Looping_Sound(387, 50, 1, 1);
- Ambient_Sounds_Add_Looping_Sound(54, 50, 1, 1);
- Ambient_Sounds_Add_Sound(1, 10, 50, 16, 25, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(389, 5, 50, 16, 25, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(390, 6, 50, 16, 25, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Looping_Sound( 54, 50, 1, 1);
+ Ambient_Sounds_Add_Sound(1, 10, 50, 16, 25, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(389, 5, 50, 16, 25, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(390, 6, 50, 16, 25, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(443, 2, 100, 14, 16, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(444, 2, 100, 14, 16, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(445, 2, 100, 14, 16, -100, 100, -101, -101, 0, 0);
@@ -91,37 +93,37 @@ void SceneScriptPS13::SceneLoaded() {
Unclickable_Object("PARKMETR15");
Unclickable_Object("PARKMETR16");
if (!Query_System_Currently_Loading_Game()) {
- Item_Add_To_World(46, 443, 14, -372.0f, -9.0f, 1509.0f, 960, 72, 36, true, false, false, true);
- Item_Add_To_World(47, 443, 14, 291.61f, -0.66f, 1610.3f, 823, 72, 36, true, false, false, true);
- Item_Add_To_World(48, 447, 14, -25.0f, 102.0f, 1625.0f, 823, 72, 36, true, false, false, true);
- Item_Add_To_World(49, 449, 14, -45.51f, -8.8f, 1676.0f, 922, 72, 36, true, false, false, true);
- Item_Add_To_World(50, 447, 14, 291.61f, -0.66f, 1610.3f, 823, 72, 36, true, false, false, true);
- Item_Add_To_World(51, 443, 14, -24.0f, 102.0f, 1625.0f, 823, 72, 36, true, false, false, true);
- Item_Add_To_World(52, 449, 14, 180.0f, -72.7f, 1605.0f, 305, 72, 36, true, false, false, true);
- Item_Add_To_World(53, 443, 14, 127.79f, 14.56f, 1703.03f, 356, 72, 36, true, false, false, true);
- Item_Add_To_World(54, 443, 14, 136.37f, -6.84f, 1425.43f, 512, 72, 36, true, false, false, true);
- Item_Add_To_World(55, 441, 14, 77.83f, -79.8f, 1520.5f, 327, 72, 36, true, false, false, true);
- Item_Add_To_World(56, 441, 14, 77.83f, -7.8f, 1520.5f, 327, 72, 36, true, false, false, true);
- Item_Add_To_World(57, 443, 14, -88.0f, -8.8f, 1520.5f, 327, 72, 36, true, false, false, true);
- Item_Add_To_World(58, 447, 14, -45.51f, -8.8f, 1676.0f, 922, 72, 36, true, false, false, true);
- Item_Add_To_World(62, 445, 14, -300.0f, -79.75f, 1543.0f, 465, 72, 36, true, false, false, true);
- Item_Add_To_World(63, 449, 14, -325.0f, -7.75f, 1543.0f, 465, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS13Target1, 443, kSetPS10_PS11_PS12_PS13, -372.0f, -9.0f, 1509.0f, 960, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS13Target2, 443, kSetPS10_PS11_PS12_PS13, 291.61f, -0.66f, 1610.3f, 823, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS13Target3, 447, kSetPS10_PS11_PS12_PS13, -25.0f, 102.0f, 1625.0f, 823, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS13Target4, 449, kSetPS10_PS11_PS12_PS13, -45.51f, -8.8f, 1676.0f, 922, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS13Target5, 447, kSetPS10_PS11_PS12_PS13, 291.61f, -0.66f, 1610.3f, 823, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS13Target6, 443, kSetPS10_PS11_PS12_PS13, -24.0f, 102.0f, 1625.0f, 823, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS13Target7, 449, kSetPS10_PS11_PS12_PS13, 180.0f, -72.7f, 1605.0f, 305, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS13Target8, 443, kSetPS10_PS11_PS12_PS13, 127.79f, 14.56f, 1703.03f, 356, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS13Target9, 443, kSetPS10_PS11_PS12_PS13, 136.37f, -6.84f, 1425.43f, 512, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS13Target10, 441, kSetPS10_PS11_PS12_PS13, 77.83f, -79.8f, 1520.5f, 327, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS13Target11, 441, kSetPS10_PS11_PS12_PS13, 77.83f, -7.8f, 1520.5f, 327, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS13Target12, 443, kSetPS10_PS11_PS12_PS13, -88.0f, -8.8f, 1520.5f, 327, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS13Target13, 447, kSetPS10_PS11_PS12_PS13, -45.51f, -8.8f, 1676.0f, 922, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS13Target14, 445, kSetPS10_PS11_PS12_PS13, -300.0f, -79.75f, 1543.0f, 465, 72, 36, true, false, false, true);
+ Item_Add_To_World(kItemPS13Target15, 449, kSetPS10_PS11_PS12_PS13, -325.0f, -7.75f, 1543.0f, 465, 72, 36, true, false, false, true);
}
- Police_Maze_Target_Track_Add(46, -372.0f, -9.0f, 1509.0f, -345.0f, -9.0f, 1509.0f, 6, track_data_46, true);
- Police_Maze_Target_Track_Add(47, 291.61f, -0.66f, 1610.3f, 238.83f, 1.03f, 1557.03f, 10, track_data_47, true);
- Police_Maze_Target_Track_Add(48, -25.0f, 102.0f, 1625.0f, -25.0f, 138.0f, 1625.0f, 10, track_data_48, true);
- Police_Maze_Target_Track_Add(49, -45.51f, -8.8f, 1676.0f, 15.51f, -8.8f, 1679.0f, 10, track_data_49, false);
- Police_Maze_Target_Track_Add(50, 291.61f, -0.66f, 1610.3f, 238.83f, 1.03f, 1557.03f, 10, track_data_50, false);
- Police_Maze_Target_Track_Add(51, -24.0f, 102.0f, 1625.0f, -24.0f, 138.0f, 1625.0f, 10, track_data_51, false);
- Police_Maze_Target_Track_Add(52, 180.0f, -72.7f, 1605.0f, 180.0f, -0.7f, 1605.0f, 10, track_data_52, false);
- Police_Maze_Target_Track_Add(53, 127.79f, 14.56f, 1703.03f, -56.07f, 1.89f, 1589.04f, 6, track_data_53, false);
- Police_Maze_Target_Track_Add(54, 136.37f, -6.84f, 1425.43f, 117.55f, -6.84f, 1442.09f, 4, track_data_54, false);
- Police_Maze_Target_Track_Add(55, 77.83f, -79.8f, 1520.5f, 77.83f, -7.8f, 1520.5f, 15, track_data_55, false);
- Police_Maze_Target_Track_Add(56, 77.83f, -7.8f, 1520.5f, -88.0f, -8.8f, 1520.5f, 15, track_data_56, false);
- Police_Maze_Target_Track_Add(57, -88.0f, -8.8f, 1520.5f, -88.0f, -80.8f, 1520.5f, 15, track_data_57, false);
- Police_Maze_Target_Track_Add(58, -45.51f, -8.8f, 1676.0f, 15.51f, -8.8f, 1679.0f, 10, track_data_58, true);
- Police_Maze_Target_Track_Add(62, -300.0f, -79.75f, 1543.0f, -300.0f, -14.75f, 1543.0f, 15, track_data_62, false);
- Police_Maze_Target_Track_Add(63, -325.0f, -7.75f, 1543.0f, -300.0f, -7.75f, 1543.0f, 10, track_data_63, false);
+ Police_Maze_Target_Track_Add(kItemPS13Target1, -372.0f, -9.0f, 1509.0f, -345.0f, -9.0f, 1509.0f, 6, track_data_46, true);
+ Police_Maze_Target_Track_Add(kItemPS13Target2, 291.61f, -0.66f, 1610.3f, 238.83f, 1.03f, 1557.03f, 10, track_data_47, true);
+ Police_Maze_Target_Track_Add(kItemPS13Target3, -25.0f, 102.0f, 1625.0f, -25.0f, 138.0f, 1625.0f, 10, track_data_48, true);
+ Police_Maze_Target_Track_Add(kItemPS13Target4, -45.51f, -8.8f, 1676.0f, 15.51f, -8.8f, 1679.0f, 10, track_data_49, false);
+ Police_Maze_Target_Track_Add(kItemPS13Target5, 291.61f, -0.66f, 1610.3f, 238.83f, 1.03f, 1557.03f, 10, track_data_50, false);
+ Police_Maze_Target_Track_Add(kItemPS13Target6, -24.0f, 102.0f, 1625.0f, -24.0f, 138.0f, 1625.0f, 10, track_data_51, false);
+ Police_Maze_Target_Track_Add(kItemPS13Target7, 180.0f, -72.7f, 1605.0f, 180.0f, -0.7f, 1605.0f, 10, track_data_52, false);
+ Police_Maze_Target_Track_Add(kItemPS13Target8, 127.79f, 14.56f, 1703.03f, -56.07f, 1.89f, 1589.04f, 6, track_data_53, false);
+ Police_Maze_Target_Track_Add(kItemPS13Target9, 136.37f, -6.84f, 1425.43f, 117.55f, -6.84f, 1442.09f, 4, track_data_54, false);
+ Police_Maze_Target_Track_Add(kItemPS13Target10, 77.83f, -79.8f, 1520.5f, 77.83f, -7.8f, 1520.5f, 15, track_data_55, false);
+ Police_Maze_Target_Track_Add(kItemPS13Target11, 77.83f, -7.8f, 1520.5f, -88.0f, -8.8f, 1520.5f, 15, track_data_56, false);
+ Police_Maze_Target_Track_Add(kItemPS13Target12, -88.0f, -8.8f, 1520.5f, -88.0f, -80.8f, 1520.5f, 15, track_data_57, false);
+ Police_Maze_Target_Track_Add(kItemPS13Target13, -45.51f, -8.8f, 1676.0f, 15.51f, -8.8f, 1679.0f, 10, track_data_58, true);
+ Police_Maze_Target_Track_Add(kItemPS13Target14, -300.0f, -79.75f, 1543.0f, -300.0f, -14.75f, 1543.0f, 15, track_data_62, false);
+ Police_Maze_Target_Track_Add(kItemPS13Target15, -325.0f, -7.75f, 1543.0f, -300.0f, -7.75f, 1543.0f, 10, track_data_63, false);
}
bool SceneScriptPS13::MouseClick(int x, int y) {
@@ -139,16 +141,16 @@ bool SceneScriptPS13::ClickedOnActor(int actorId) {
bool SceneScriptPS13::ClickedOnItem(int itemId, bool a2) {
if (Player_Query_Combat_Mode()) {
switch (itemId) {
- case 48:
+ case kItemPS13Target3:
Sound_Play(4, 50, 0, 0, 50);
break;
- case 50:
+ case kItemPS13Target5:
Sound_Play(4, 50, 0, 0, 50);
break;
- case 55:
+ case kItemPS13Target10:
Sound_Play(555, 50, 0, 0, 50);
break;
- case 56:
+ case kItemPS13Target11:
Sound_Play(555, 50, 0, 0, 50);
break;
default:
@@ -157,56 +159,56 @@ bool SceneScriptPS13::ClickedOnItem(int itemId, bool a2) {
}
Item_Spin_In_World(itemId);
Item_Flag_As_Non_Target(itemId);
- if (itemId == 46) {
- Item_Flag_As_Non_Target(46);
+ if (itemId == kItemPS13Target1) {
+ Item_Flag_As_Non_Target(kItemPS13Target1);
}
- if (itemId == 47) {
- Item_Flag_As_Non_Target(47);
+ if (itemId == kItemPS13Target2) {
+ Item_Flag_As_Non_Target(kItemPS13Target2);
}
- if (itemId == 48) {
- Item_Flag_As_Non_Target(48);
+ if (itemId == kItemPS13Target3) {
+ Item_Flag_As_Non_Target(kItemPS13Target3);
}
- if (itemId == 49) {
- Item_Flag_As_Non_Target(49);
+ if (itemId == kItemPS13Target4) {
+ Item_Flag_As_Non_Target(kItemPS13Target4);
}
- if (itemId == 50) {
- Item_Flag_As_Non_Target(50);
+ if (itemId == kItemPS13Target5) {
+ Item_Flag_As_Non_Target(kItemPS13Target5);
}
- if (itemId == 51) {
- Item_Flag_As_Non_Target(51);
+ if (itemId == kItemPS13Target6) {
+ Item_Flag_As_Non_Target(kItemPS13Target6);
}
- if (itemId == 52) {
- Item_Flag_As_Non_Target(52);
+ if (itemId == kItemPS13Target7) {
+ Item_Flag_As_Non_Target(kItemPS13Target7);
}
- if (itemId == 53) {
- Item_Flag_As_Non_Target(53);
+ if (itemId == kItemPS13Target8) {
+ Item_Flag_As_Non_Target(kItemPS13Target8);
}
- if (itemId == 54) {
- Item_Flag_As_Non_Target(54);
+ if (itemId == kItemPS13Target9) {
+ Item_Flag_As_Non_Target(kItemPS13Target9);
}
- if (itemId == 55) {
- Item_Flag_As_Non_Target(55);
- Item_Flag_As_Non_Target(56);
- Item_Flag_As_Non_Target(57);
+ if (itemId == kItemPS13Target10) {
+ Item_Flag_As_Non_Target(kItemPS13Target10);
+ Item_Flag_As_Non_Target(kItemPS13Target11);
+ Item_Flag_As_Non_Target(kItemPS13Target12);
}
- if (itemId == 56) {
- Item_Flag_As_Non_Target(55);
- Item_Flag_As_Non_Target(56);
- Item_Flag_As_Non_Target(57);
+ if (itemId == kItemPS13Target11) {
+ Item_Flag_As_Non_Target(kItemPS13Target10);
+ Item_Flag_As_Non_Target(kItemPS13Target11);
+ Item_Flag_As_Non_Target(kItemPS13Target12);
}
- if (itemId == 57) {
- Item_Flag_As_Non_Target(55);
- Item_Flag_As_Non_Target(56);
- Item_Flag_As_Non_Target(57);
+ if (itemId == kItemPS13Target12) {
+ Item_Flag_As_Non_Target(kItemPS13Target10);
+ Item_Flag_As_Non_Target(kItemPS13Target11);
+ Item_Flag_As_Non_Target(kItemPS13Target12);
}
- if (itemId == 58) {
- Item_Flag_As_Non_Target(58);
+ if (itemId == kItemPS13Target13) {
+ Item_Flag_As_Non_Target(kItemPS13Target13);
}
- if (itemId == 62) {
- Item_Flag_As_Non_Target(62);
+ if (itemId == kItemPS13Target14) {
+ Item_Flag_As_Non_Target(kItemPS13Target14);
}
- if (itemId == 63) {
- Item_Flag_As_Non_Target(63);
+ if (itemId == kItemPS13Target15) {
+ Item_Flag_As_Non_Target(kItemPS13Target15);
}
return true;
}
@@ -218,7 +220,7 @@ bool SceneScriptPS13::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_Waypoint(kActorMcCoy, 10, 12, true, false)) {
Game_Flag_Set(kFlagPS13toPS12);
- sub_40267C();
+ removeTargets();
Set_Enter(kSetPS10_PS11_PS12_PS13, kScenePS12);
}
return true;
@@ -227,16 +229,16 @@ bool SceneScriptPS13::ClickedOnExit(int exitId) {
if (!Loop_Actor_Walk_To_Waypoint(kActorMcCoy, 11, 12, true, false)) {
Game_Flag_Set(kFlagPS13toPS05);
Player_Set_Combat_Mode(false);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- sub_40267C();
- Global_Variable_Decrement(9, 20 - Global_Variable_Query(13));
- Set_Score(0, Global_Variable_Query(9));
- Global_Variable_Reset(10);
- Global_Variable_Reset(11);
- Global_Variable_Reset(12);
- Global_Variable_Reset(13);
- Global_Variable_Reset(9);
+ removeTargets();
+ Global_Variable_Decrement(kVariablePoliceMazeScore, kPoliceMazePS13TargetCount - Global_Variable_Query(kVariablePoliceMazePS13TargetCounter));
+ Set_Score(kActorMcCoy, Global_Variable_Query(kVariablePoliceMazeScore));
+ Global_Variable_Reset(kVariablePoliceMazePS10TargetCounter);
+ Global_Variable_Reset(kVariablePoliceMazePS11TargetCounter);
+ Global_Variable_Reset(kVariablePoliceMazePS12TargetCounter);
+ Global_Variable_Reset(kVariablePoliceMazePS13TargetCounter);
+ Global_Variable_Reset(kVariablePoliceMazeScore);
Set_Enter(kSetPS05, kScenePS05);
}
return true;
@@ -264,22 +266,22 @@ void SceneScriptPS13::PlayerWalkedOut() {
void SceneScriptPS13::DialogueQueueFlushed(int a1) {
}
-void SceneScriptPS13::sub_40267C() {
- Item_Remove_From_World(46);
- Item_Remove_From_World(47);
- Item_Remove_From_World(48);
- Item_Remove_From_World(49);
- Item_Remove_From_World(50);
- Item_Remove_From_World(51);
- Item_Remove_From_World(52);
- Item_Remove_From_World(53);
- Item_Remove_From_World(54);
- Item_Remove_From_World(55);
- Item_Remove_From_World(56);
- Item_Remove_From_World(57);
- Item_Remove_From_World(58);
- Item_Remove_From_World(62);
- Item_Remove_From_World(63);
+void SceneScriptPS13::removeTargets() {
+ Item_Remove_From_World(kItemPS13Target1);
+ Item_Remove_From_World(kItemPS13Target2);
+ Item_Remove_From_World(kItemPS13Target3);
+ Item_Remove_From_World(kItemPS13Target4);
+ Item_Remove_From_World(kItemPS13Target5);
+ Item_Remove_From_World(kItemPS13Target6);
+ Item_Remove_From_World(kItemPS13Target7);
+ Item_Remove_From_World(kItemPS13Target8);
+ Item_Remove_From_World(kItemPS13Target9);
+ Item_Remove_From_World(kItemPS13Target10);
+ Item_Remove_From_World(kItemPS13Target11);
+ Item_Remove_From_World(kItemPS13Target12);
+ Item_Remove_From_World(kItemPS13Target13);
+ Item_Remove_From_World(kItemPS13Target14);
+ Item_Remove_From_World(kItemPS13Target15);
}
} // End of namespace BladeRunner
diff --git a/engines/bladerunner/script/scene/rc01.cpp b/engines/bladerunner/script/scene/rc01.cpp
index a347d3e38e..03df5b061a 100644
--- a/engines/bladerunner/script/scene/rc01.cpp
+++ b/engines/bladerunner/script/scene/rc01.cpp
@@ -97,7 +97,9 @@ void SceneScriptRC01::InitializeScene() {
if (Game_Flag_Query(kFlagSpinnerAtRC01)) {
Scene_Exit_Add_2D_Exit(kRC01ExitSpinner, 482, 226, 639, 280, 2);
}
- if (Global_Variable_Query(kVariableChapter) > 1 && Game_Flag_Query(710)) {
+ if (Global_Variable_Query(kVariableChapter) > 1
+ && Game_Flag_Query(kFlagAR01Entered)
+ ) {
Scene_Exit_Add_2D_Exit(kRC01ExitRC03, 0, 0, 10, 479, 3);
}
if (!Game_Flag_Query(kFlagRC01PoliceDone)) {
@@ -125,9 +127,9 @@ void SceneScriptRC01::InitializeScene() {
}
Ambient_Sounds_Add_Looping_Sound(81, 60, 100, 1); // RCAMBR1.AUD
- Ambient_Sounds_Add_Sound(82, 5, 30, 30, 50, -100, 100, -101, -101, 0, 0); // RCCARBY1.AUD
- Ambient_Sounds_Add_Sound(83, 5, 30, 30, 55, -100, 100, -101, -101, 0, 0); // RCCARBY2.AUD
- Ambient_Sounds_Add_Sound(84, 5, 30, 30, 50, -100, 100, -101, -101, 0, 0); // RCCARBY3.AUD
+ Ambient_Sounds_Add_Sound(82, 5, 30, 30, 50, -100, 100, -101, -101, 0, 0); // RCCARBY1.AUD
+ Ambient_Sounds_Add_Sound(83, 5, 30, 30, 55, -100, 100, -101, -101, 0, 0); // RCCARBY2.AUD
+ Ambient_Sounds_Add_Sound(84, 5, 30, 30, 50, -100, 100, -101, -101, 0, 0); // RCCARBY3.AUD
Ambient_Sounds_Add_Sound(67, 10, 50, 30, 50, -100, 100, -101, -101, 0, 0); // SPIN2A.AUD
Ambient_Sounds_Add_Sound(87, 20, 80, 20, 40, -100, 100, -101, -101, 0, 0); // SIREN2.AUD
@@ -263,7 +265,7 @@ bool SceneScriptRC01::ClickedOn3DObject(const char *objectName, bool a2) {
if (Object_Query_Click("HYDRANT02", objectName)) {
if (!Loop_Actor_Walk_To_Scene_Object(kActorMcCoy, "HYDRANT02", 60, true, false)) {
if (Actor_Clue_Query(kActorMcCoy, kCluePaintTransfer)) {
- Actor_Says(kActorMcCoy, 6975, 3);
+ Actor_Says(kActorMcCoy, 6975, kAnimationModeTalk);
} else {
Actor_Face_Object(kActorMcCoy, "HYDRANT02", true);
Actor_Voice_Over(1880, kActorVoiceOver);
@@ -347,7 +349,7 @@ bool SceneScriptRC01::ClickedOnActor(int actorId) {
Actor_Says(kActorMcCoy, 4515, 13);
Game_Flag_Set(KFlagMcCoyAndOfficerLearyTalking);
Actor_Says(kActorOfficerLeary, 40, 13);
- if (!Game_Flag_Query(kFlagRC02Discovered)) {
+ if (!Game_Flag_Query(kFlagRC02Entered)) {
Actor_Says(kActorOfficerLeary, 50, 14);
Actor_Says(kActorOfficerLeary, 60, 15);
I_Sez("MG: It's all fun and games until someone loses a tiger cub.");
@@ -425,7 +427,7 @@ bool SceneScriptRC01::ClickedOnExit(int exitId) {
return true;
}
if (exitId == kRC01ExitSpinner) {
- if (Game_Flag_Query(486)) {
+ if (Game_Flag_Query(kFlagDNARowAvailable)) {
Spinner_Set_Selectable_Destination_Flag(kSpinnerDestinationDNARow, true);
}
I_Sez("MG: Leaving already? The fun is just beginning!");
@@ -433,13 +435,15 @@ bool SceneScriptRC01::ClickedOnExit(int exitId) {
Player_Loses_Control();
Actor_Set_Immunity_To_Obstacles(kActorMcCoy, true);
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -10.98f, -0.3f, 318.15f, 0, 0, false, 0);
- if (Game_Flag_Query(486) && !Game_Flag_Query(660)) {
+ if ( Game_Flag_Query(kFlagDNARowAvailable)
+ && !Game_Flag_Query(kFlagDNARowAvailableTalk)
+ ) {
Actor_Voice_Over(4310, kActorVoiceOver);
Actor_Voice_Over(4320, kActorVoiceOver);
Actor_Voice_Over(4330, kActorVoiceOver);
Actor_Voice_Over(4340, kActorVoiceOver);
Actor_Voice_Over(4350, kActorVoiceOver);
- Game_Flag_Set(660);
+ Game_Flag_Set(kFlagDNARowAvailableTalk);
}
Actor_Set_Immunity_To_Obstacles(kActorMcCoy, false);
Player_Gains_Control();
@@ -641,7 +645,7 @@ void SceneScriptRC01::PlayerWalkedIn() {
Player_Gains_Control();
Game_Flag_Reset(kFlagRC02toRC01);
- if (Game_Flag_Query(kFlagRC02Discovered) && !Game_Flag_Query(kFlagRC02FirstLeave)) {
+ if (Game_Flag_Query(kFlagRC02Entered) && !Game_Flag_Query(kFlagRC02FirstLeave)) {
Actor_Voice_Over(1910, kActorVoiceOver);
Actor_Voice_Over(1920, kActorVoiceOver);
Actor_Voice_Over(1930, kActorVoiceOver);
diff --git a/engines/bladerunner/script/scene/rc02.cpp b/engines/bladerunner/script/scene/rc02.cpp
index c4bb775dce..a5ad0ab591 100644
--- a/engines/bladerunner/script/scene/rc02.cpp
+++ b/engines/bladerunner/script/scene/rc02.cpp
@@ -36,24 +36,24 @@ void SceneScriptRC02::InitializeScene() {
Setup_Scene_Information(-20.2f, -1238.89f, 108100.73f, 539);
}
Scene_Exit_Add_2D_Exit(kRC02ExitRC01, 0, 460, 639, 479, 2);
- if (Game_Flag_Query(kFlagRC02LucyDeskAvailable)) {
+ if (Game_Flag_Query(kFlagRC51Available)) {
Scene_Exit_Add_2D_Exit(kRC02ExitRC51, 265, 58, 346, 154, 0);
}
Ambient_Sounds_Remove_All_Non_Looping_Sounds(0);
- Ambient_Sounds_Add_Looping_Sound(71, 50, 1, 1);
- Ambient_Sounds_Add_Looping_Sound(75, 75, 1, 1);
+ Ambient_Sounds_Add_Looping_Sound( 71, 50, 1, 1);
+ Ambient_Sounds_Add_Looping_Sound( 75, 75, 1, 1);
Ambient_Sounds_Add_Looping_Sound(105, 30, 100, 1);
Ambient_Sounds_Add_Sound(73, 5, 20, 10, 10, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(74, 5, 20, 10, 10, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(76, 5, 40, 6, 6, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(77, 5, 40, 6, 6, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(78, 5, 40, 6, 6, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(79, 5, 40, 6, 6, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(76, 5, 40, 6, 6, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(77, 5, 40, 6, 6, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(78, 5, 40, 6, 6, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(79, 5, 40, 6, 6, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Speech_Sound(23, 250, 10, 60, 5, 5, 100, 100, -101, -101, 1, 1);
Ambient_Sounds_Add_Speech_Sound(23, 330, 10, 60, 5, 5, 100, 100, -101, -101, 1, 1);
Ambient_Sounds_Add_Speech_Sound(24, 380, 10, 60, 5, 5, 100, 100, -101, -101, 1, 1);
Ambient_Sounds_Add_Speech_Sound(24, 510, 10, 60, 5, 5, 100, 100, -101, -101, 1, 1);
- Ambient_Sounds_Add_Speech_Sound(38, 80, 10, 60, 5, 5, 100, 100, -101, -101, 1, 1);
+ Ambient_Sounds_Add_Speech_Sound(38, 80, 10, 60, 5, 5, 100, 100, -101, -101, 1, 1);
Ambient_Sounds_Add_Speech_Sound(38, 160, 10, 60, 5, 5, 100, 100, -101, -101, 1, 1);
Ambient_Sounds_Add_Sound(87, 20, 80, 10, 20, 100, 100, -101, -101, 0, 0);
}
@@ -85,9 +85,9 @@ void SceneScriptRC02::SceneLoaded() {
Unclickable_Object("SCRTY CA03");
}
if (!Game_Flag_Query(kFlagShellCasingsTaken)) {
- Item_Add_To_World(kItemShellCasingA, 966, 16, -52.88f, -1238.89f, 108467.74f, 256, 6, 6, false, true, false, true);
- Item_Add_To_World(kItemShellCasingB, 966, 16, -37.16f, -1238.89f, 108456.59f, 512, 6, 6, false, true, false, true);
- Item_Add_To_World(kItemShellCasingC, 966, 16, -62.86f, -1238.89f, 108437.52f, 625, 6, 6, false, true, false, true);
+ Item_Add_To_World(kItemShellCasingA, 966, kSetRC02_RC51, -52.88f, -1238.89f, 108467.74f, 256, 6, 6, false, true, false, true);
+ Item_Add_To_World(kItemShellCasingB, 966, kSetRC02_RC51, -37.16f, -1238.89f, 108456.59f, 512, 6, 6, false, true, false, true);
+ Item_Add_To_World(kItemShellCasingC, 966, kSetRC02_RC51, -62.86f, -1238.89f, 108437.52f, 625, 6, 6, false, true, false, true);
}
}
@@ -138,7 +138,7 @@ bool SceneScriptRC02::ClickedOn3DObject(const char *objectName, bool a2) {
void SceneScriptRC02::dialogueWithRunciter() {
Dialogue_Menu_Clear_List();
- DM_Add_To_List_Never_Repeat_Once_Selected(0, 5, 6, 2); // MOTIVES
+ DM_Add_To_List_Never_Repeat_Once_Selected( 0, 5, 6, 2); // MOTIVES
DM_Add_To_List_Never_Repeat_Once_Selected(10, 5, 4, 8); // LUCY
if (Actor_Clue_Query(kActorMcCoy, kClueRunciterInterviewB1)
|| Actor_Clue_Query(kActorMcCoy, kClueRunciterInterviewB2)
@@ -185,7 +185,7 @@ void SceneScriptRC02::dialogueWithRunciter() {
Actor_Says(kActorRunciter, 350, 13);
Actor_Face_Actor(kActorRunciter, kActorMcCoy, true);
Scene_Exit_Add_2D_Exit(kRC02ExitRC51, 265, 58, 346, 154, 0);
- Game_Flag_Set(kFlagRC02LucyDeskAvailable);
+ Game_Flag_Set(kFlagRC51Available);
break;
case 20: // REFERENCE
@@ -214,105 +214,111 @@ void SceneScriptRC02::dialogueWithRunciter() {
}
bool SceneScriptRC02::ClickedOnActor(int actorId) {
- if (actorId != kActorRunciter) {
- return false;
- }
-
- if (Global_Variable_Query(kVariableChapter) == 4) {
- Actor_Face_Actor(kActorMcCoy, kActorRunciter, true);
- if (Actor_Query_Goal_Number(kActorRunciter) == 599) {
- if (Random_Query(1, 2) == 1) {
- Actor_Says(kActorMcCoy, 8715, 17);
- } else {
- Actor_Says(kActorMcCoy, 8720, 17);
- }
- } else if (Game_Flag_Query(705) || Game_Flag_Query(706)) {
- Actor_Says(kActorMcCoy, 4805, 11);
- Actor_Face_Actor(kActorRunciter, kActorMcCoy, true);
- if (Game_Flag_Query(706)) {
- Actor_Says(kActorRunciter, 720, 15);
- } else {
- Actor_Says(kActorRunciter, 730, 14);
- }
- Actor_Face_Heading(kActorRunciter, 1007, false);
- } else {
- Actor_Says(kActorMcCoy, 4690, 11);
- Actor_Says(kActorMcCoy, 4695, 13);
- Actor_Face_Actor(kActorRunciter, kActorMcCoy, true);
- Actor_Says(kActorRunciter, 1610, 14);
- if (Actor_Clue_Query(kActorMcCoy, kClueEnvelope)) {
- Actor_Says(kActorMcCoy, 4700, 12);
- Actor_Says(kActorMcCoy, 4705, 13);
- Actor_Says(kActorRunciter, 1620, 12);
- Actor_Says(kActorMcCoy, 4710, 15);
- Actor_Says(kActorMcCoy, 4715, 11);
- Delay(2000);
- Actor_Says(kActorMcCoy, 4720, 16);
- Actor_Says(kActorMcCoy, 4725, 17);
- Actor_Says(kActorRunciter, 430, 16);
+ if (actorId == kActorRunciter) {
+ if (Global_Variable_Query(kVariableChapter) == 4) {
+ Actor_Face_Actor(kActorMcCoy, kActorRunciter, true);
+ if (Actor_Query_Goal_Number(kActorRunciter) == kGoalRunciterDead) {
+ if (Random_Query(1, 2) == 1) {
+ Actor_Says(kActorMcCoy, 8715, 17);
+ } else {
+ Actor_Says(kActorMcCoy, 8720, 17);
+ }
+ } else if (Game_Flag_Query(705)
+ || Game_Flag_Query(706)
+ ) {
+ Actor_Says(kActorMcCoy, 4805, 11);
+ Actor_Face_Actor(kActorRunciter, kActorMcCoy, true);
+ if (Game_Flag_Query(706)) {
+ Actor_Says(kActorRunciter, 720, 15);
+ } else {
+ Actor_Says(kActorRunciter, 730, 14);
+ }
Actor_Face_Heading(kActorRunciter, 1007, false);
+ } else {
+ Actor_Says(kActorMcCoy, 4690, 11);
+ Actor_Says(kActorMcCoy, 4695, 13);
+ Actor_Face_Actor(kActorRunciter, kActorMcCoy, true);
+ Actor_Says(kActorRunciter, 1610, 14);
+ if (Actor_Clue_Query(kActorMcCoy, kClueEnvelope)) {
+ Actor_Says(kActorMcCoy, 4700, 12);
+ Actor_Says(kActorMcCoy, 4705, 13);
+ Actor_Says(kActorRunciter, 1620, 12);
+ Actor_Says(kActorMcCoy, 4710, 15);
+ Actor_Says(kActorMcCoy, 4715, 11);
+ Delay(2000);
+ Actor_Says(kActorMcCoy, 4720, 16);
+ Actor_Says(kActorMcCoy, 4725, 17);
+ Actor_Says(kActorRunciter, 430, 16);
+ Actor_Face_Heading(kActorRunciter, 1007, false);
+ }
+ Game_Flag_Set(706);
}
- Game_Flag_Set(706);
+ return true;
}
- return true;
- }
- AI_Movement_Track_Pause(kActorRunciter);
- Loop_Actor_Walk_To_Actor(kActorMcCoy, kActorRunciter, 48, 1, false);
- Actor_Face_Actor(kActorMcCoy, kActorRunciter, true);
- if (!Game_Flag_Query(kFlagRunciterInterviewA)) {
- Actor_Says(kActorMcCoy, 4560, 13);
- Actor_Face_Actor(kActorRunciter, kActorMcCoy, true);
- Actor_Says(kActorRunciter, 40, 16);
- Actor_Says(kActorRunciter, 50, 15);
- Actor_Says(kActorMcCoy, 4565, 13);
- Actor_Says(kActorRunciter, 60, 14);
- Actor_Says(kActorMcCoy, 4570, 18);
- Actor_Says(kActorRunciter, 70, 13);
- Game_Flag_Set(kFlagRunciterInterviewA);
- Actor_Clue_Acquire(kActorMcCoy, kClueRunciterInterviewA, true, kActorRunciter);
- AI_Movement_Track_Unpause(kActorRunciter);
- return true;
- }
- if (Game_Flag_Query(kFlagRC02TalkedToRunciter)) {
- if (Player_Query_Agenda() == kPlayerAgendaPolite) {
- Game_Flag_Reset(kFlagNotUsed0);
- dialogueWithRunciter();
+
+ AI_Movement_Track_Pause(kActorRunciter);
+ Loop_Actor_Walk_To_Actor(kActorMcCoy, kActorRunciter, 48, true, false);
+ Actor_Face_Actor(kActorMcCoy, kActorRunciter, true);
+ if (!Game_Flag_Query(kFlagRunciterInterviewA)) {
+ Actor_Says(kActorMcCoy, 4560, 13);
+ Actor_Face_Actor(kActorRunciter, kActorMcCoy, true);
+ Actor_Says(kActorRunciter, 40, 16);
+ Actor_Says(kActorRunciter, 50, 15);
+ Actor_Says(kActorMcCoy, 4565, 13);
+ Actor_Says(kActorRunciter, 60, 14);
+ Actor_Says(kActorMcCoy, 4570, 18);
+ Actor_Says(kActorRunciter, 70, 13);
+ Game_Flag_Set(kFlagRunciterInterviewA);
+ Actor_Clue_Acquire(kActorMcCoy, kClueRunciterInterviewA, true, kActorRunciter);
AI_Movement_Track_Unpause(kActorRunciter);
return true;
}
- Actor_Says(kActorMcCoy, 4610, 19);
- Actor_Face_Actor(kActorRunciter, kActorMcCoy, true);
- Actor_Says(kActorRunciter, 150, 15);
- Actor_Says(kActorMcCoy, 4615, 13);
- Actor_Says(kActorRunciter, 160, 14);
- Actor_Says(kActorRunciter, 170, 15);
- Actor_Says(kActorRunciter, 180, 13);
+ if (Game_Flag_Query(kFlagRC02TalkedToRunciter)) {
+ if (Player_Query_Agenda() == kPlayerAgendaPolite) {
+ Game_Flag_Reset(kFlagNotUsed0);
+ dialogueWithRunciter();
+ AI_Movement_Track_Unpause(kActorRunciter);
+ return true;
+ }
- if (Player_Query_Agenda() == kPlayerAgendaSurly) {
- Actor_Says(kActorMcCoy, 4620, 19);
- Actor_Says(kActorRunciter, 190, 14);
- Actor_Says(kActorMcCoy, 4625, 13);
- Actor_Says(kActorRunciter, 210, 13);
- Actor_Says(kActorMcCoy, 4630, 18);
- Actor_Says(kActorRunciter, 220, 14);
- Actor_Says(kActorRunciter, 230, 13);
- Actor_Says(kActorMcCoy, 4635, 19);
- Actor_Says(kActorRunciter, 240, 16);
- Actor_Says(kActorMcCoy, 4640, 17);
+ Actor_Says(kActorMcCoy, 4610, 19);
+ Actor_Face_Actor(kActorRunciter, kActorMcCoy, true);
+ Actor_Says(kActorRunciter, 150, 15);
+ Actor_Says(kActorMcCoy, 4615, 13);
+ Actor_Says(kActorRunciter, 160, 14);
+ Actor_Says(kActorRunciter, 170, 15);
+ Actor_Says(kActorRunciter, 180, 13);
+
+ if (Player_Query_Agenda() == kPlayerAgendaSurly) {
+ Actor_Says(kActorMcCoy, 4620, 19);
+ Actor_Says(kActorRunciter, 190, 14);
+ Actor_Says(kActorMcCoy, 4625, 13);
+ Actor_Says(kActorRunciter, 210, 13);
+ Actor_Says(kActorMcCoy, 4630, 18);
+ Actor_Says(kActorRunciter, 220, 14);
+ Actor_Says(kActorRunciter, 230, 13);
+ Actor_Says(kActorMcCoy, 4635, 19);
+ Actor_Says(kActorRunciter, 240, 16);
+ Actor_Says(kActorMcCoy, 4640, 17);
+ }
+ Game_Flag_Reset(kFlagRC02TalkedToRunciter);
+ AI_Movement_Track_Unpause(kActorRunciter);
+ return true;
}
- Game_Flag_Reset(kFlagRC02TalkedToRunciter);
+ dialogueWithRunciter();
AI_Movement_Track_Unpause(kActorRunciter);
return true;
}
- dialogueWithRunciter();
- AI_Movement_Track_Unpause(kActorRunciter);
- return true;
+ return false;
}
bool SceneScriptRC02::ClickedOnItem(int itemId, bool a2) {
- if (itemId == kItemShellCasingA || itemId == kItemShellCasingB || itemId == kItemShellCasingC) {
- if (!Loop_Actor_Walk_To_Item(kActorMcCoy, kItemShellCasingA, 24, 1, false)) {
+ if (itemId == kItemShellCasingA
+ || itemId == kItemShellCasingB
+ || itemId == kItemShellCasingC
+ ) {
+ if (!Loop_Actor_Walk_To_Item(kActorMcCoy, kItemShellCasingA, 24, true, false)) {
Actor_Face_Item(kActorMcCoy, kItemShellCasingA, true);
Actor_Clue_Acquire(kActorMcCoy, kClueShellCasings, true, -1);
Game_Flag_Set(kFlagShellCasingsTaken);
@@ -331,11 +337,11 @@ bool SceneScriptRC02::ClickedOnExit(int exitId) {
if (exitId == kRC02ExitRC01) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -71.51f, -1238.89f, 108587.15f, 0, true, false, 0)) {
Game_Flag_Set(kFlagRC02toRC01);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_Looping_Sound(71, true);
Ambient_Sounds_Remove_Looping_Sound(75, true);
Ambient_Sounds_Adjust_Looping_Sound(85, 100, -101, 1);
- Actor_Set_Goal_Number(kActorRunciter, 0);
+ Actor_Set_Goal_Number(kActorRunciter, kGoalRunciterDefault);
Set_Enter(kSetRC01, kSceneRC01);
}
return true;
@@ -367,18 +373,22 @@ void SceneScriptRC02::PlayerWalkedIn() {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -72.2f, -1238.89f, 108496.73f, 0, false, false, 0);
Player_Gains_Control();
Game_Flag_Reset(kFlagRC01toRC02);
- if (!Game_Flag_Query(kFlagRC02Discovered)) {
+ if (!Game_Flag_Query(kFlagRC02Entered)) {
Actor_Voice_Over(1970, kActorVoiceOver);
Actor_Voice_Over(1980, kActorVoiceOver);
Actor_Voice_Over(1990, kActorVoiceOver);
Actor_Clue_Acquire(kActorMcCoy, kClueLimpingFootprints, true, -1);
Actor_Clue_Acquire(kActorMcCoy, kClueGracefulFootprints, true, -1);
- Game_Flag_Set(kFlagRC02Discovered);
+ Game_Flag_Set(kFlagRC02Entered);
}
- if (Actor_Query_Which_Set_In(kActorRunciter) == kSetRC02_RC51 && Actor_Query_Goal_Number(kActorRunciter) < 300) {
- Actor_Set_Goal_Number(kActorRunciter, 1);
+ if (Actor_Query_Which_Set_In(kActorRunciter) == kSetRC02_RC51
+ && Actor_Query_Goal_Number(kActorRunciter) < kGoalRunciterAtShop
+ ) {
+ Actor_Set_Goal_Number(kActorRunciter, kGoalRunciterWalkAround);
}
- if (Actor_Query_Goal_Number(kActorRunciter) == 300 && !Game_Flag_Query(704)) {
+ if ( Actor_Query_Goal_Number(kActorRunciter) == kGoalRunciterAtShop
+ && !Game_Flag_Query(704)
+ ) {
Actor_Face_Actor(kActorRunciter, kActorMcCoy, true);
Actor_Says(kActorRunciter, 370, 12);
Actor_Says(kActorRunciter, 380, 14);
@@ -393,7 +403,7 @@ void SceneScriptRC02::PlayerWalkedIn() {
}
} else {
Player_Loses_Control();
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -20.2f, -1238.89f, 108152.73f, 0, 0, false, 0);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -20.2f, -1238.89f, 108152.73f, 0, false, false, 0);
Player_Gains_Control();
}
}
diff --git a/engines/bladerunner/script/scene/rc03.cpp b/engines/bladerunner/script/scene/rc03.cpp
index 969d8daf12..8668be8045 100644
--- a/engines/bladerunner/script/scene/rc03.cpp
+++ b/engines/bladerunner/script/scene/rc03.cpp
@@ -42,42 +42,45 @@ void SceneScriptRC03::InitializeScene() {
} else {
Setup_Scene_Information(0.0f, 0.0f, 0.0f, 0);
}
+
Scene_Exit_Add_2D_Exit(0, 610, 0, 639, 479, 1);
- Scene_Exit_Add_2D_Exit(1, 0, 0, 30, 479, 3);
+ Scene_Exit_Add_2D_Exit(1, 0, 0, 30, 479, 3);
if (Game_Flag_Query(kFlagRC03UnlockedToUG01)) {
Scene_Exit_Add_2D_Exit(2, 524, 350, 573, 359, 2);
}
- Scene_Exit_Add_2D_Exit(3, 85, 255, 112, 315, 0);
+ Scene_Exit_Add_2D_Exit(3, 85, 255, 112, 315, 0);
Scene_Exit_Add_2D_Exit(4, 428, 260, 453, 324, 0);
+
Ambient_Sounds_Add_Looping_Sound(54, 50, 0, 1);
Ambient_Sounds_Add_Sound(82, 5, 30, 40, 70, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(83, 5, 30, 40, 75, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(84, 5, 30, 40, 70, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Speech_Sound(60, 0, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1);
+ Ambient_Sounds_Add_Speech_Sound(60, 0, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1);
Ambient_Sounds_Add_Speech_Sound(60, 20, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1);
Ambient_Sounds_Add_Speech_Sound(60, 40, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1);
Ambient_Sounds_Add_Speech_Sound(60, 50, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1);
- Ambient_Sounds_Add_Sound(68, 60, 180, 16, 25, 0, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(69, 60, 180, 16, 25, 0, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(375, 60, 180, 50, 100, 0, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(376, 50, 180, 50, 100, 0, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(377, 50, 180, 50, 100, 0, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(181, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(182, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(183, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(184, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(185, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(186, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(188, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(189, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(190, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(191, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(192, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(193, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(194, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(195, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(68, 60, 180, 16, 25, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(69, 60, 180, 16, 25, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(375, 60, 180, 50, 100, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(376, 50, 180, 50, 100, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(377, 50, 180, 50, 100, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(181, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(182, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(183, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(184, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(185, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(186, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(188, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(189, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(190, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(191, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(192, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(193, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(194, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(195, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0);
+
if (Game_Flag_Query(kFlagHC04toRC03)
- && Actor_Query_Goal_Number(kActorIzo) != 102
+ && Actor_Query_Goal_Number(kActorIzo) != kGoalIzoWaitingAtRC03
) {
Scene_Loop_Start_Special(kSceneLoopModeLoseControl, 0, false);
}
@@ -238,9 +241,9 @@ void SceneScriptRC03::sub_402834() {
}
void SceneScriptRC03::PlayerWalkedIn() {
- if (Actor_Query_Goal_Number(kActorIzo) == 102) {
+ if (Actor_Query_Goal_Number(kActorIzo) == kGoalIzoWaitingAtRC03) {
Scene_Exits_Disable();
- if (Game_Flag_Query(kFlagUG01toRC03) ) {
+ if (Game_Flag_Query(kFlagUG01toRC03)) {
Player_Set_Combat_Mode(false);
Player_Loses_Control();
Actor_Set_At_XYZ(kActorMcCoy, 147.51f, -4.0f, 166.48f, 500);
@@ -253,23 +256,24 @@ void SceneScriptRC03::PlayerWalkedIn() {
Actor_Says_With_Pause(kActorIzo, 640, 0, -1);
Actor_Says_With_Pause(kActorIzo, 650, 0, -1);
if (Game_Flag_Query(kFlagIzoIsReplicant) ) {
- Actor_Set_Goal_Number(kActorSteele, 100);
+ Actor_Set_Goal_Number(kActorSteele, kGoalSteeleApprehendIzo);
}
Actor_Change_Animation_Mode(kActorMcCoy, 20);
Loop_Actor_Walk_To_XYZ(kActorIzo, 180.0f, -4.0f, 184.0f, 0, false, false, 0);
Actor_Change_Animation_Mode(kActorIzo, 6);
if (!Game_Flag_Query(kFlagIzoIsReplicant)) {
- Actor_Set_Goal_Number(kActorSteele, 100);
+ Actor_Set_Goal_Number(kActorSteele, kGoalSteeleApprehendIzo);
}
Player_Gains_Control();
} else {
Actor_Put_In_Set(kActorIzo, kSetRC03);
Actor_Set_At_XYZ(kActorIzo, -226.0f, 1.72f, 86.0f, 0);
Actor_Set_Targetable(kActorIzo, true);
- Actor_Set_Goal_Number(kActorIzo, 110);
+ Actor_Set_Goal_Number(kActorIzo, kGoalIzoRC03Walk);
}
}
- if (Actor_Query_Goal_Number(kActorIzo) == 103) {
+
+ if (Actor_Query_Goal_Number(kActorIzo) == kGoalIzoEscape) {
Player_Loses_Control();
Actor_Set_Goal_Number(kActorSteele, 200);
Actor_Put_In_Set(kActorSteele, kSetRC03);
@@ -289,6 +293,7 @@ void SceneScriptRC03::PlayerWalkedIn() {
Game_Flag_Reset(kFlagAR02toRC03);
Game_Flag_Reset(kFlagHC04toRC03);
Game_Flag_Reset(kFlagRC04toRC03);
+
if (Global_Variable_Query(kVariableChapter) == 1
|| Global_Variable_Query(kVariableChapter) == 2
) {
@@ -297,8 +302,8 @@ void SceneScriptRC03::PlayerWalkedIn() {
}
void SceneScriptRC03::PlayerWalkedOut() {
- if (Actor_Query_Goal_Number(kActorIzo) == 199) {
- Actor_Set_Goal_Number(kActorIzo, 198);
+ if (Actor_Query_Goal_Number(kActorIzo) == kGoalIzoDie) {
+ Actor_Set_Goal_Number(kActorIzo, kGoalIzoDieHidden);
}
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
diff --git a/engines/bladerunner/script/scene/tb02.cpp b/engines/bladerunner/script/scene/tb02.cpp
index 2bb548c51d..ac6f613d59 100644
--- a/engines/bladerunner/script/scene/tb02.cpp
+++ b/engines/bladerunner/script/scene/tb02.cpp
@@ -164,7 +164,7 @@ bool SceneScriptTB02::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptTB02::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -152.0f, 0.0f, 1774.0f, 0, true, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagTB02toTB03);
Game_Flag_Reset(kFlagTB02ElevatorToTB05);
@@ -175,7 +175,7 @@ bool SceneScriptTB02::ClickedOnExit(int exitId) {
}
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -32.0f, 0.0f, 1578.0f, 0, true, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
if (Global_Variable_Query(kVariableChapter) < 4) {
Game_Flag_Set(kFlagTB05Entered);
@@ -375,7 +375,7 @@ void SceneScriptTB02::PlayerWalkedIn() {
}
void SceneScriptTB02::PlayerWalkedOut() {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
}
diff --git a/engines/bladerunner/script/scene/tb03.cpp b/engines/bladerunner/script/scene/tb03.cpp
index babef94e1e..8a46c8c3c4 100644
--- a/engines/bladerunner/script/scene/tb03.cpp
+++ b/engines/bladerunner/script/scene/tb03.cpp
@@ -105,7 +105,7 @@ bool SceneScriptTB03::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -260.0f, 0.15f, 2014.0f, 0, 1, false, 0)) {
Actor_Set_Goal_Number(kActorTyrellGuard, 304);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(447);
Set_Enter(kSetUG17, kSceneUG17);
@@ -114,7 +114,7 @@ bool SceneScriptTB03::ClickedOnExit(int exitId) {
}
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -152.0f, 0.0f, 1774.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagTB03toTB02);
Set_Enter(kSetTB02_TB03, kSceneTB02);
diff --git a/engines/bladerunner/script/scene/tb05.cpp b/engines/bladerunner/script/scene/tb05.cpp
index 3b272991c1..ab16bdc317 100644
--- a/engines/bladerunner/script/scene/tb05.cpp
+++ b/engines/bladerunner/script/scene/tb05.cpp
@@ -33,18 +33,18 @@ void SceneScriptTB05::InitializeScene() {
Setup_Scene_Information(14.0f, 151.53f, -77.0f, 6);
}
Scene_Exit_Add_2D_Exit(0, 62, 193, 206, 419, 0);
- Scene_Exit_Add_2D_Exit(1, 0, 455, 639, 479, 2);
+ Scene_Exit_Add_2D_Exit(1, 0, 455, 639, 479, 2);
Ambient_Sounds_Add_Looping_Sound(236, 100, 0, 1);
Ambient_Sounds_Add_Looping_Sound(237, 100, 0, 1);
Ambient_Sounds_Add_Sound(217, 5, 30, 25, 33, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(218, 5, 30, 25, 33, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(219, 5, 30, 25, 33, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(220, 5, 30, 25, 33, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(146, 2, 30, 20, 25, 0, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(147, 2, 30, 20, 25, 0, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(148, 2, 30, 20, 25, 0, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(149, 2, 30, 20, 25, 0, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(151, 2, 30, 20, 25, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(146, 2, 30, 20, 25, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(147, 2, 30, 20, 25, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(148, 2, 30, 20, 25, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(149, 2, 30, 20, 25, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(151, 2, 30, 20, 25, 0, 0, -101, -101, 0, 0);
Scene_Loop_Set_Default(0);
}
@@ -52,7 +52,7 @@ void SceneScriptTB05::SceneLoaded() {
Clickable_Object("MONITOR05");
Unclickable_Object("SMUDGE_GLASS01");
if (!Actor_Clue_Query(kActorMcCoy, kClueDragonflyEarring)) {
- Item_Add_To_World(kItemDragonflyEarring, 940, 72, 76.16f, 147.36f, -235.15f, 0, 6, 6, false, true, false, true);
+ Item_Add_To_World(kItemDragonflyEarring, 940, kSetTB05, 76.16f, 147.36f, -235.15f, 0, 6, 6, false, true, false, true);
}
if (!Actor_Clue_Query(kActorMcCoy, kClueTyrellSalesPamphlet1)
&& !Actor_Clue_Query(kActorMcCoy, kClueTyrellSalesPamphlet2)
@@ -60,7 +60,7 @@ void SceneScriptTB05::SceneLoaded() {
|| Game_Flag_Query(kFlagLucyIsReplicant)
)
) {
- Item_Add_To_World(kItemTyrellSalesPamphlet, 972, 72, 129.01f, 147.12f, -162.98f, 0, 8, 8, false, true, false, true);
+ Item_Add_To_World(kItemTyrellSalesPamphlet, 972, kSetTB05, 129.01f, 147.12f, -162.98f, 0, 8, 8, false, true, false, true);
}
}
@@ -212,7 +212,7 @@ void SceneScriptTB05::PlayerWalkedIn() {
}
void SceneScriptTB05::PlayerWalkedOut() {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
}
diff --git a/engines/bladerunner/script/scene/tb06.cpp b/engines/bladerunner/script/scene/tb06.cpp
index 1c71196af4..aa20c591dd 100644
--- a/engines/bladerunner/script/scene/tb06.cpp
+++ b/engines/bladerunner/script/scene/tb06.cpp
@@ -50,17 +50,17 @@ void SceneScriptTB06::SceneLoaded() {
if (!Game_Flag_Query(kFlagTB06DogCollarTaken)
&& Actor_Query_Goal_Number(kActorPhotographer) != 199
) {
- Item_Add_To_World(kItemDogCollar, 942, 73, 36.54f, 149.48f, -565.67f, 0, 6, 6, false, true, false, true);
+ Item_Add_To_World(kItemDogCollar, 942, kSetTB06, 36.54f, 149.48f, -565.67f, 0, 6, 6, false, true, false, true);
}
if (!Game_Flag_Query(kFlagTB06KitchenBoxTaken)) {
- Item_Add_To_World(kItemKitchenBox, 955, 73, 18.0f, 149.65f, -599.0f, 0, 6, 6, false, true, false, true);
+ Item_Add_To_World(kItemKitchenBox, 955, kSetTB06, 18.0f, 149.65f, -599.0f, 0, 6, 6, false, true, false, true);
}
if (Actor_Query_Goal_Number(kActorPhotographer) != 199) {
- Item_Add_To_World(kItemDeadDogA, 978, 73, -46.82f, 149.6f, -666.88f, 0, 12, 12, false, true, false, true);
- Item_Add_To_World(kItemDeadDogB, 979, 73, -30.27f, 149.6f, -610.7f, 0, 15, 45, false, true, false, true);
- Item_Add_To_World(kItemDeadDogC, 980, 73, 9.87f, 149.6f, -683.5f, 0, 12, 12, false, true, false, true);
+ Item_Add_To_World(kItemDeadDogA, 978, kSetTB06, -46.82f, 149.6f, -666.88f, 0, 12, 12, false, true, false, true);
+ Item_Add_To_World(kItemDeadDogB, 979, kSetTB06, -30.27f, 149.6f, -610.7f, 0, 15, 45, false, true, false, true);
+ Item_Add_To_World(kItemDeadDogC, 980, kSetTB06, 9.87f, 149.6f, -683.5f, 0, 12, 12, false, true, false, true);
}
}
diff --git a/engines/bladerunner/script/scene/tb07.cpp b/engines/bladerunner/script/scene/tb07.cpp
index ee8e8fc2bb..145aa45c77 100644
--- a/engines/bladerunner/script/scene/tb07.cpp
+++ b/engines/bladerunner/script/scene/tb07.cpp
@@ -79,7 +79,7 @@ bool SceneScriptTB07::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptTB07::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 68.0f, 12.0f, 288.0f, 0, true, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
if (Global_Variable_Query(kVariableChapter) == 4) {
Game_Flag_Set(kFlagTB07toTB02);
diff --git a/engines/bladerunner/script/scene/ug01.cpp b/engines/bladerunner/script/scene/ug01.cpp
index 71227df96e..98e79a5c2e 100644
--- a/engines/bladerunner/script/scene/ug01.cpp
+++ b/engines/bladerunner/script/scene/ug01.cpp
@@ -34,30 +34,32 @@ void SceneScriptUG01::InitializeScene() {
Setup_Scene_Information(-126.0f, -50.13f, -286.0f, 0);
}
Scene_Exit_Add_2D_Exit(0, 280, 204, 330, 265, 0);
- Scene_Exit_Add_2D_Exit(1, 144, 0, 210, 104, 0);
- Scene_Exit_Add_2D_Exit(2, 0, 173, 139, 402, 3);
+ Scene_Exit_Add_2D_Exit(1, 144, 0, 210, 104, 0);
+ Scene_Exit_Add_2D_Exit(2, 0, 173, 139, 402, 3);
+
Ambient_Sounds_Add_Looping_Sound(331, 28, 0, 1);
Ambient_Sounds_Add_Looping_Sound(332, 40, 0, 1);
Ambient_Sounds_Add_Looping_Sound(333, 40, 0, 1);
- Ambient_Sounds_Add_Sound(291, 2, 20, 20, 25, -100, 100, -100, 100, 0, 0);
- Ambient_Sounds_Add_Sound(293, 2, 20, 20, 25, -100, 100, -100, 100, 0, 0);
- Ambient_Sounds_Add_Sound(402, 2, 120, 10, 11, 20, 100, 0, 100, 0, 0);
- Ambient_Sounds_Add_Sound(370, 2, 120, 10, 11, 20, 100, 0, 100, 0, 0);
- Ambient_Sounds_Add_Sound(397, 2, 120, 10, 11, 20, 100, 0, 100, 0, 0);
- Ambient_Sounds_Add_Sound(396, 2, 120, 10, 11, 20, 100, 0, 100, 0, 0);
- Ambient_Sounds_Add_Sound(294, 2, 20, 20, 25, -100, 100, -100, 100, 0, 0);
- Ambient_Sounds_Add_Sound(295, 2, 20, 20, 25, -100, 100, -100, 100, 0, 0);
- Ambient_Sounds_Add_Sound(234, 2, 190, 12, 16, 0, 100, 0, 100, 0, 0);
- Ambient_Sounds_Add_Sound(391, 2, 190, 12, 16, 0, 100, 0, 100, 0, 0);
- Ambient_Sounds_Add_Sound(394, 2, 190, 12, 16, 0, 100, 0, 100, 0, 0);
- Ambient_Sounds_Add_Sound(224, 2, 190, 12, 16, 0, 100, 0, 100, 0, 0);
- Ambient_Sounds_Add_Sound(227, 2, 190, 12, 16, 0, 100, 0, 100, 0, 0);
- Ambient_Sounds_Add_Sound(228, 2, 190, 12, 16, 0, 100, 0, 100, 0, 0);
- Ambient_Sounds_Add_Sound(229, 2, 190, 12, 16, 0, 100, 0, 100, 0, 0);
- Ambient_Sounds_Add_Sound(303, 5, 50, 17, 37, 0, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(304, 5, 50, 17, 37, 0, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(305, 5, 50, 17, 37, 0, 100, -101, -101, 0, 0);
- if (Game_Flag_Query(324)) {
+ Ambient_Sounds_Add_Sound(291, 2, 20, 20, 25, -100, 100, -100, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(293, 2, 20, 20, 25, -100, 100, -100, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(402, 2, 120, 10, 11, 20, 100, 0, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(370, 2, 120, 10, 11, 20, 100, 0, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(397, 2, 120, 10, 11, 20, 100, 0, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(396, 2, 120, 10, 11, 20, 100, 0, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(294, 2, 20, 20, 25, -100, 100, -100, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(295, 2, 20, 20, 25, -100, 100, -100, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(234, 2, 190, 12, 16, 0, 100, 0, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(391, 2, 190, 12, 16, 0, 100, 0, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(394, 2, 190, 12, 16, 0, 100, 0, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(224, 2, 190, 12, 16, 0, 100, 0, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(227, 2, 190, 12, 16, 0, 100, 0, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(228, 2, 190, 12, 16, 0, 100, 0, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(229, 2, 190, 12, 16, 0, 100, 0, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(303, 5, 50, 17, 37, 0, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(304, 5, 50, 17, 37, 0, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(305, 5, 50, 17, 37, 0, 100, -101, -101, 0, 0);
+
+ if (Game_Flag_Query(kFlagUG01SteamOff)) {
Scene_Loop_Set_Default(3);
} else {
Scene_Loop_Set_Default(0);
@@ -77,11 +79,13 @@ bool SceneScriptUG01::MouseClick(int x, int y) {
bool SceneScriptUG01::ClickedOn3DObject(const char *objectName, bool a2) {
if (Object_Query_Click("PIPES_FG_LFT", objectName)) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -9.0f, -50.13f, -148.0f, 0, 1, false, 0) && !Game_Flag_Query(324)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -9.0f, -50.13f, -148.0f, 0, 1, false, 0)
+ && !Game_Flag_Query(kFlagUG01SteamOff)
+ ) {
Actor_Says(kActorMcCoy, 8525, 13);
Scene_Loop_Set_Default(3);
Scene_Loop_Start_Special(kSceneLoopModeOnce, 2, true);
- Game_Flag_Set(324);
+ Game_Flag_Set(kFlagUG01SteamOff);
} else {
Actor_Says(kActorMcCoy, 8525, 13);
}
@@ -105,6 +109,7 @@ bool SceneScriptUG01::ClickedOnExit(int exitId) {
}
return true;
}
+
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -70.0f, -50.13f, -500.0f, 0, true, false, 0)) {
Actor_Face_Heading(kActorMcCoy, 768, false);
@@ -116,6 +121,7 @@ bool SceneScriptUG01::ClickedOnExit(int exitId) {
}
return true;
}
+
if (exitId == 2) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -126.0f, -50.13f, -286.0f, 0, true, false, 0)) {
Game_Flag_Set(kFlagUG01toUG02);
@@ -132,11 +138,11 @@ bool SceneScriptUG01::ClickedOn2DRegion(int region) {
void SceneScriptUG01::SceneFrameAdvanced(int frame) {
if (frame >= 61 && frame <= 120) {
- float v1 = (120 - frame) / 29500.0f;
- Set_Fog_Density("BoxFog01", v1);
- Set_Fog_Density("BoxFog02", v1);
- Set_Fog_Density("BoxFog03", v1);
- Set_Fog_Density("BoxFog04", v1);
+ float density = (120 - frame) / 29500.0f; // why is this so big?
+ Set_Fog_Density("BoxFog01", density);
+ Set_Fog_Density("BoxFog02", density);
+ Set_Fog_Density("BoxFog03", density);
+ Set_Fog_Density("BoxFog04", density);
} else if (frame > 120) {
Set_Fog_Density("BoxFog01", 0.0f);
Set_Fog_Density("BoxFog02", 0.0f);
@@ -154,12 +160,14 @@ void SceneScriptUG01::PlayerWalkedIn() {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -55.0f, -50.13f, -288.0f, 12, 0, false, 0);
Game_Flag_Reset(kFlagUG02toUG01);
}
+
if (Game_Flag_Query(kFlagRC03toUG01)) {
Actor_Set_At_XYZ(kActorMcCoy, -70.0f, 93.87f, -500.0f, 768);
Loop_Actor_Travel_Ladder(kActorMcCoy, 12, 0, 0);
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -58.0f, -50.13f, -488.0f, 0, 0, false, 0);
Game_Flag_Reset(kFlagRC03toUG01);
}
+
if (Actor_Query_Goal_Number(kActorLucy) == 310) {
Music_Play(21, 35, 0, 3, -1, 0, 0);
Actor_Set_Goal_Number(kActorLucy, 311);
@@ -168,7 +176,7 @@ void SceneScriptUG01::PlayerWalkedIn() {
}
void SceneScriptUG01::PlayerWalkedOut() {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
}
diff --git a/engines/bladerunner/script/scene/ug02.cpp b/engines/bladerunner/script/scene/ug02.cpp
index b196e7c997..ccea89a41e 100644
--- a/engines/bladerunner/script/scene/ug02.cpp
+++ b/engines/bladerunner/script/scene/ug02.cpp
@@ -31,7 +31,7 @@ void SceneScriptUG02::InitializeScene() {
Setup_Scene_Information(-95.0f, 74.78f, -503.0f, 556);
}
Scene_Exit_Add_2D_Exit(0, 529, 130, 607, 277, 0);
- Scene_Exit_Add_2D_Exit(1, 305, 36, 335, 192, 0);
+ Scene_Exit_Add_2D_Exit(1, 305, 36, 335, 192, 0);
Ambient_Sounds_Add_Looping_Sound(332, 43, 0, 1);
Ambient_Sounds_Add_Looping_Sound(333, 43, 0, 1);
Ambient_Sounds_Add_Sound(303, 5, 50, 17, 37, 100, 100, -101, -101, 0, 0);
@@ -44,13 +44,13 @@ void SceneScriptUG02::InitializeScene() {
Ambient_Sounds_Add_Sound(134, 2, 50, 17, 37, -50, -20, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(135, 2, 50, 17, 37, -50, -20, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(136, 2, 50, 17, 37, -50, -20, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(47, 2, 50, 27, 27, 10, 30, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(48, 2, 50, 27, 27, 10, 30, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(49, 2, 50, 27, 27, 10, 30, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(50, 2, 50, 27, 27, 10, 30, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(51, 2, 50, 27, 27, 10, 30, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(52, 2, 50, 27, 27, 10, 30, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(53, 2, 50, 27, 27, 10, 30, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 47, 2, 50, 27, 27, 10, 30, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 48, 2, 50, 27, 27, 10, 30, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 49, 2, 50, 27, 27, 10, 30, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 50, 2, 50, 27, 27, 10, 30, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 51, 2, 50, 27, 27, 10, 30, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 52, 2, 50, 27, 27, 10, 30, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 53, 2, 50, 27, 27, 10, 30, -101, -101, 0, 0);
}
void SceneScriptUG02::SceneLoaded() {
@@ -67,62 +67,80 @@ void SceneScriptUG02::SceneLoaded() {
Clickable_Object("CRATE_3");
Footstep_Sounds_Set(0, 0);
Footstep_Sounds_Set(8, 2);
- if (!Game_Flag_Query(656) && Game_Flag_Query(kFlagIzoIsReplicant)) {
- Item_Add_To_World(88, 963, 75, -300.37f, 120.16f, -81.31f, 0, 8, 8, false, true, false, true);
+
+ if (!Game_Flag_Query(kFlagRagiationGooglesTaken)
+ && Game_Flag_Query(kFlagIzoIsReplicant)
+ ) {
+ Item_Add_To_World(kItemRadiationGoogles, 963, kSetUG02, -300.37f, 120.16f, -81.31f, 0, 8, 8, false, true, false, true);
}
}
bool SceneScriptUG02::MouseClick(int x, int y) {
- if (Game_Flag_Query(499)) {
+ if (Game_Flag_Query(kFlagUG02Interactive)) {
return false;
}
- if (Region_Check(0, 0, 245, 285) || Region_Check(0, 0, 350, 257)) {
+
+ if (Region_Check(0, 0, 245, 285)
+ || Region_Check(0, 0, 350, 257)
+ ) {
return true;
}
- if (Region_Check(81, 224, 639, 479) && !Game_Flag_Query(498)) {
- Game_Flag_Set(499);
- sub_402354();
- Game_Flag_Reset(499);
+
+ if ( Region_Check(81, 224, 639, 479)
+ && !Game_Flag_Query(kFlagUG02FromUG01)
+ ) {
+ Game_Flag_Set(kFlagUG02Interactive);
+ walkToCenter();
+ Game_Flag_Reset(kFlagUG02Interactive);
return true;
}
+
return false;
}
bool SceneScriptUG02::ClickedOn3DObject(const char *objectName, bool a2) {
- if (Object_Query_Click("GUN_1", objectName) || Object_Query_Click("GUN_2", objectName) || Object_Query_Click("CRATE_3", objectName)) {
+ if (Object_Query_Click("GUN_1", objectName)
+ || Object_Query_Click("GUN_2", objectName)
+ || Object_Query_Click("CRATE_3", objectName)
+ ) {
Actor_Face_Object(kActorMcCoy, "GUN_1", true);
- if (!Game_Flag_Query(449) && Global_Variable_Query(kVariableChapter) < 4) {
+ if (!Game_Flag_Query(kFlagUG02WeaponsChecked)
+ && Global_Variable_Query(kVariableChapter) < 4
+ ) {
Actor_Voice_Over(2430, kActorVoiceOver);
Actor_Voice_Over(2440, kActorVoiceOver);
Actor_Voice_Over(2450, kActorVoiceOver);
Actor_Voice_Over(2460, kActorVoiceOver);
- Game_Flag_Set(449);
+ Game_Flag_Set(kFlagUG02WeaponsChecked);
Actor_Clue_Acquire(kActorMcCoy, kClueWeaponsCache, true, -1);
return true;
}
- if (Global_Variable_Query(kVariableChapter) <= 3) {
- Actor_Says(kActorMcCoy, 8580, 14);
- return false;
- }
- if (Actor_Clue_Query(kActorMcCoy, kClueWeaponsCache) && !Actor_Clue_Query(kActorMcCoy, kClueIzosStashRaided)) {
- Actor_Voice_Over(2470, kActorVoiceOver);
- Actor_Voice_Over(2480, kActorVoiceOver);
- Actor_Voice_Over(2490, kActorVoiceOver);
- Actor_Voice_Over(2500, kActorVoiceOver);
- Actor_Clue_Acquire(kActorMcCoy, kClueIzosStashRaided, true, -1);
- } else if (!Actor_Clue_Query(kActorMcCoy, kClueWeaponsCache)) {
- Actor_Voice_Over(2510, kActorVoiceOver);
- Actor_Voice_Over(2520, kActorVoiceOver);
- Actor_Voice_Over(2530, kActorVoiceOver);
- } else if (Game_Flag_Query(708)) {
- Actor_Says(kActorMcCoy, 8580, 14);
- } else {
- Item_Pickup_Spin_Effect(996, 360, 440);
- Actor_Says(kActorMcCoy, 8525, 14);
- Give_McCoy_Ammo(2, 18);
- Game_Flag_Set(708);
+
+ if (Global_Variable_Query(kVariableChapter) > 3) {
+ if ( Actor_Clue_Query(kActorMcCoy, kClueWeaponsCache)
+ && !Actor_Clue_Query(kActorMcCoy, kClueIzosStashRaided)
+ ) {
+ Actor_Voice_Over(2470, kActorVoiceOver);
+ Actor_Voice_Over(2480, kActorVoiceOver);
+ Actor_Voice_Over(2490, kActorVoiceOver);
+ Actor_Voice_Over(2500, kActorVoiceOver);
+ Actor_Clue_Acquire(kActorMcCoy, kClueIzosStashRaided, true, -1);
+ } else if (!Actor_Clue_Query(kActorMcCoy, kClueWeaponsCache)) {
+ Actor_Voice_Over(2510, kActorVoiceOver);
+ Actor_Voice_Over(2520, kActorVoiceOver);
+ Actor_Voice_Over(2530, kActorVoiceOver);
+ } else if (!Game_Flag_Query(kFlagUG02AmmoTaken)) {
+ Item_Pickup_Spin_Effect(996, 360, 440);
+ Actor_Says(kActorMcCoy, 8525, 14);
+ Give_McCoy_Ammo(2, 18);
+ Game_Flag_Set(kFlagUG02AmmoTaken);
+ } else {
+ Actor_Says(kActorMcCoy, 8580, 14);
+ }
+ return true;
}
- return true;
+
+ Actor_Says(kActorMcCoy, 8580, 14);
}
return false;
}
@@ -132,11 +150,11 @@ bool SceneScriptUG02::ClickedOnActor(int actorId) {
}
bool SceneScriptUG02::ClickedOnItem(int itemId, bool a2) {
- if (itemId == 88) {
- Actor_Face_Item(kActorMcCoy, 88, true);
+ if (itemId == kItemRadiationGoogles) {
+ Actor_Face_Item(kActorMcCoy, kItemRadiationGoogles, true);
Actor_Clue_Acquire(kActorMcCoy, kClueRadiationGoggles, true, -1);
- Game_Flag_Set(656);
- Item_Remove_From_World(88);
+ Game_Flag_Set(kFlagRagiationGooglesTaken);
+ Item_Remove_From_World(kItemRadiationGoogles);
Item_Pickup_Spin_Effect(963, 426, 316);
return true;
}
@@ -145,41 +163,41 @@ bool SceneScriptUG02::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptUG02::ClickedOnExit(int exitId) {
if (exitId == 0) {
- if (Game_Flag_Query(498) || !sub_402354()) {
- int v2 = Player_Query_Combat_Mode();
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -202.0f, 120.16f, -74.0f, 0, 1, v2, 0)) {
+ if ( Game_Flag_Query(kFlagUG02FromUG01)
+ || !walkToCenter()
+ ) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -202.0f, 120.16f, -74.0f, 0, 1, Player_Query_Combat_Mode(), 0)) {
Actor_Face_Heading(kActorMcCoy, 270, false);
Footstep_Sound_Override_On(2);
- Loop_Actor_Travel_Stairs(kActorMcCoy, 4, 0, kAnimationModeIdle);
+ Loop_Actor_Travel_Stairs(kActorMcCoy, 4, false, kAnimationModeIdle);
Footstep_Sound_Override_Off();
- int v3 = Player_Query_Combat_Mode();
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -96.57f, 74.87f, -271.28f, 0, 0, v3, 0);
- int v4 = Player_Query_Combat_Mode();
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -95.0f, 74.87f, -503.0f, 0, 0, v4, 0);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -96.57f, 74.87f, -271.28f, 0, false, Player_Query_Combat_Mode(), 0);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -95.0f, 74.87f, -503.0f, 0, false, Player_Query_Combat_Mode(), 0);
Game_Flag_Set(kFlagUG02toUG01);
Set_Enter(kSetUG01, kSceneUG01);
}
}
return true;
}
+
if (exitId == 1) {
- if (Game_Flag_Query(498)) {
- if (sub_402354()) {
+ if (Game_Flag_Query(kFlagUG02FromUG01)) {
+ if (walkToCenter()) {
return true;
}
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -368.75f, 155.75f, -63.0f, 0, 0, false, 0);
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -340.75f, 155.75f, -119.0f, 0, 0, false, 0);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -368.75f, 155.75f, -63.0f, 0, false, false, 0);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -340.75f, 155.75f, -119.0f, 0, false, false, 0);
}
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -304.75f, 155.75f, -171.0f, 0, 0, false, 0);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -304.75f, 155.75f, -171.0f, 0, false, false, 0);
Actor_Face_Heading(kActorMcCoy, 14, false);
- Loop_Actor_Travel_Ladder(kActorMcCoy, 9, 1, 0);
+ Loop_Actor_Travel_Ladder(kActorMcCoy, 9, true, 0);
Game_Flag_Set(kFlagUG02toHC03);
Game_Flag_Reset(kFlagMcCoyAtUGxx);
Game_Flag_Set(kFlagMcCoyAtHCxx);
- if (!Game_Flag_Query(403)) {
- Game_Flag_Set(388);
- Game_Flag_Set(403);
- Item_Remove_From_World(121);
+ if (!Game_Flag_Query(kFlagHC03CageOpen)) {
+ Game_Flag_Set(kFlagHC03TrapDoorOpen);
+ Game_Flag_Set(kFlagHC03CageOpen);
+ Item_Remove_From_World(kItemHC03Lock);
}
Set_Enter(kSetHC01_HC02_HC03_HC04, kSceneHC03);
return true;
@@ -201,55 +219,57 @@ void SceneScriptUG02::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
void SceneScriptUG02::PlayerWalkedIn() {
if (Game_Flag_Query(kFlagUG01toUG02)) {
Actor_Set_At_XYZ(kActorMcCoy, -106.01f, 84.13f, -228.62f, 575);
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -148.0f, 84.13f, -67.0f, 0, 0, false, 0);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -148.0f, 84.13f, -67.0f, 0, false, false, 0);
Actor_Face_Heading(kActorMcCoy, 761, false);
Footstep_Sound_Override_On(2);
Loop_Actor_Travel_Stairs(kActorMcCoy, 4, true, kAnimationModeIdle);
Footstep_Sound_Override_Off();
Game_Flag_Reset(kFlagUG01toUG02);
- Game_Flag_Set(498);
+ Game_Flag_Set(kFlagUG02FromUG01);
} else if (Game_Flag_Query(kFlagHC03toUG02)) {
Actor_Set_At_XYZ(kActorMcCoy, -304.75f, 265.0f, -171.0f, 0);
Loop_Actor_Travel_Ladder(kActorMcCoy, 9, false, 0);
Game_Flag_Reset(kFlagHC03toUG02);
- Game_Flag_Reset(498);
+ Game_Flag_Reset(kFlagUG02FromUG01);
} else {
Actor_Set_At_XYZ(kActorMcCoy, -269.24f, 120.16f, -9.94f, 477);
- Game_Flag_Set(498);
+ Game_Flag_Set(kFlagUG02FromUG01);
}
- Game_Flag_Reset(499);
+ Game_Flag_Reset(kFlagUG02Interactive);
//return false;
}
void SceneScriptUG02::PlayerWalkedOut() {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
}
void SceneScriptUG02::DialogueQueueFlushed(int a1) {
}
-bool SceneScriptUG02::sub_402354() {
- if (!Game_Flag_Query(498)) {
- int v0 = Player_Query_Combat_Mode();
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -340.75f, 155.75f, -119.0f, 0, 0, v0, 0);
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -368.75f, 155.75f, -63.0f, 0, 0, v0, 0);
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -365.0f, 155.65f, -19.0f, 0, 0, v0, 0);
+bool SceneScriptUG02::walkToCenter() {
+ if (!Game_Flag_Query(kFlagUG02FromUG01)) {
+ int combatMode = Player_Query_Combat_Mode();
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -340.75f, 155.75f, -119.0f, 0, 0, combatMode, 0);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -368.75f, 155.75f, -63.0f, 0, 0, combatMode, 0);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -365.0f, 155.65f, -19.0f, 0, 0, combatMode, 0);
Actor_Face_Heading(kActorMcCoy, 318, false);
Footstep_Sound_Override_On(2);
- Loop_Actor_Travel_Stairs(kActorMcCoy, 4, 0, kAnimationModeIdle);
+ Loop_Actor_Travel_Stairs(kActorMcCoy, 4, false, kAnimationModeIdle);
Footstep_Sound_Override_Off();
- Game_Flag_Set(498);
+ Game_Flag_Set(kFlagUG02FromUG01);
return false;
}
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -312.75f, 120.16f, 1.01f, 0, 1, false, 0)) {
+
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -312.75f, 120.16f, 1.01f, 0, true, false, 0)) {
Actor_Face_Heading(kActorMcCoy, 830, false);
Footstep_Sound_Override_On(2);
- Loop_Actor_Travel_Stairs(kActorMcCoy, 4, 1, kAnimationModeIdle);
+ Loop_Actor_Travel_Stairs(kActorMcCoy, 4, true, kAnimationModeIdle);
Footstep_Sound_Override_Off();
- Game_Flag_Reset(498);
+ Game_Flag_Reset(kFlagUG02FromUG01);
return false;
}
+
return true;
}
diff --git a/engines/bladerunner/script/scene/ug03.cpp b/engines/bladerunner/script/scene/ug03.cpp
index 81e9b967e8..c9c88e7fbf 100644
--- a/engines/bladerunner/script/scene/ug03.cpp
+++ b/engines/bladerunner/script/scene/ug03.cpp
@@ -103,7 +103,7 @@ bool SceneScriptUG03::ClickedOnExit(int exitId) {
if (Global_Variable_Query(kVariableChapter) < 4) {
Actor_Says(kActorMcCoy, 8522, 14);
} else {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(336);
Set_Enter(kSetUG10, kSceneUG10);
@@ -113,7 +113,7 @@ bool SceneScriptUG03::ClickedOnExit(int exitId) {
}
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -51.0f, 0.0f, 255.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(334);
Set_Enter(kSetUG04, kSceneUG04);
diff --git a/engines/bladerunner/script/scene/ug04.cpp b/engines/bladerunner/script/scene/ug04.cpp
index 497b3d6b3d..7aa0ad130c 100644
--- a/engines/bladerunner/script/scene/ug04.cpp
+++ b/engines/bladerunner/script/scene/ug04.cpp
@@ -130,7 +130,7 @@ void SceneScriptUG04::PlayerWalkedIn() {
}
void SceneScriptUG04::PlayerWalkedOut() {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
}
diff --git a/engines/bladerunner/script/scene/ug05.cpp b/engines/bladerunner/script/scene/ug05.cpp
index da1cb2fd90..3be09c1ee1 100644
--- a/engines/bladerunner/script/scene/ug05.cpp
+++ b/engines/bladerunner/script/scene/ug05.cpp
@@ -87,7 +87,7 @@ bool SceneScriptUG05::ClickedOn3DObject(const char *objectName, bool a2) {
bool SceneScriptUG05::ClickedOnActor(int actorId) {
if (!Loop_Actor_Walk_To_Actor(kActorMcCoy, actorId, 30, 1, false)) {
Actor_Face_Actor(kActorMcCoy, actorId, true);
- int v1 = sub_4021B0();
+ int affectionTowardsActor = getAffectionTowardsActor();
if (actorId == kActorOfficerGrayford && Game_Flag_Query(368) && !Game_Flag_Query(683)) {
Actor_Says(kActorOfficerGrayford, 220, -1);
Actor_Says(kActorMcCoy, 5540, 14);
@@ -98,7 +98,7 @@ bool SceneScriptUG05::ClickedOnActor(int actorId) {
Game_Flag_Set(683);
return false;
}
- if (actorId == v1) {
+ if (actorId == affectionTowardsActor) {
sub_402218();
return true;
}
@@ -143,12 +143,12 @@ bool SceneScriptUG05::ClickedOnExit(int exitId) {
return true;
}
} else {
- int v1 = sub_4021B0();
+ int affectionTowardsActor = getAffectionTowardsActor();
bool v2;
- if (v1 == -1) {
+ if (affectionTowardsActor == -1) {
v2 = Loop_Actor_Walk_To_XYZ(kActorMcCoy, 0.0f, -1.37f, -1500.0f, 0, 1, false, 0) != 0;
} else {
- v2 = Loop_Actor_Walk_To_Actor(kActorMcCoy, v1, 30, 1, false) != 0;
+ v2 = Loop_Actor_Walk_To_Actor(kActorMcCoy, affectionTowardsActor, 30, 1, false) != 0;
}
if (!v2) {
sub_402218();
@@ -177,12 +177,12 @@ void SceneScriptUG05::PlayerWalkedIn() {
Actor_Set_At_XYZ(kActorOfficerGrayford, 4.22f, -1.37f, -925.0f, 750);
Actor_Set_Goal_Number(kActorOfficerGrayford, 599);
Actor_Retired_Here(kActorOfficerGrayford, 70, 36, 1, -1);
- int v0 = sub_4021B0();
- if (v0 == kActorDektora) {
+ int affectionTowardsActor = getAffectionTowardsActor();
+ if (affectionTowardsActor == kActorDektora) {
Actor_Put_In_Set(kActorDektora, kSetUG05);
Actor_Set_At_XYZ(kActorDektora, -100.0f, -10.31f, -906.0f, 866);
Actor_Force_Stop_Walking(kActorDektora);
- } else if (v0 == kActorLucy){
+ } else if (affectionTowardsActor == kActorLucy){
Actor_Put_In_Set(kActorLucy, kSetUG05);
Actor_Set_At_XYZ(kActorLucy, -100.0f, -10.31f, -906.0f, 866);
Actor_Force_Stop_Walking(kActorLucy);
@@ -214,38 +214,42 @@ void SceneScriptUG05::PlayerWalkedIn() {
}
void SceneScriptUG05::PlayerWalkedOut() {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
}
void SceneScriptUG05::DialogueQueueFlushed(int a1) {
}
-int SceneScriptUG05::sub_4021B0() {
- if (Global_Variable_Query(kVariableAffectionTowards) == 2 && Actor_Query_Goal_Number(kActorDektora) != 599) {
+int SceneScriptUG05::getAffectionTowardsActor() {
+ if (Global_Variable_Query(kVariableAffectionTowards) == kAffectionTowardsDektora
+ && Actor_Query_Goal_Number(kActorDektora) != 599
+ ) {
return kActorDektora;
}
- if (Global_Variable_Query(kVariableAffectionTowards) == 3 && Actor_Query_Goal_Number(kActorLucy) != 599) {
+ if (Global_Variable_Query(kVariableAffectionTowards) == kAffectionTowardsLucy
+ && Actor_Query_Goal_Number(kActorLucy) != 599
+ ) {
return kActorLucy;
}
return -1;
}
void SceneScriptUG05::sub_402218() {
- int v0 = sub_4021B0();
- if (v0 != -1) {
- Actor_Face_Actor(kActorMcCoy, v0, true);
- Actor_Face_Actor(v0, kActorMcCoy, true);
+ int affectionTowardsActor = getAffectionTowardsActor();
+ if (affectionTowardsActor != -1) {
+ Actor_Face_Actor(kActorMcCoy, affectionTowardsActor, true);
+ Actor_Face_Actor(affectionTowardsActor, kActorMcCoy, true);
Actor_Says(kActorMcCoy, 5535, 13);
- if (v0 == kActorDektora) {
+ if (affectionTowardsActor == kActorDektora) {
Actor_Says(kActorDektora, 1110, 15);
} else {
Actor_Says(kActorLucy, 670, 17);
}
}
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- if (v0 == kActorLucy) {
+ if (affectionTowardsActor == kActorLucy) {
if (Game_Flag_Query(kFlagLucyIsReplicant)) {
if (Global_Variable_Query(kVariableDNAEvidences) > 3) {
Outtake_Play(kOuttakeEnd1B, false, -1);
@@ -255,7 +259,7 @@ void SceneScriptUG05::sub_402218() {
} else {
Outtake_Play(kOuttakeEnd1A, false, -1);
}
- } else if (v0 == kActorDektora) {
+ } else if (affectionTowardsActor == kActorDektora) {
if (Game_Flag_Query(kFlagDektoraIsReplicant)) {
if (Global_Variable_Query(kVariableDNAEvidences) > 3) {
Outtake_Play(kOuttakeEnd1E, false, -1);
diff --git a/engines/bladerunner/script/scene/ug06.cpp b/engines/bladerunner/script/scene/ug06.cpp
index e13e720ead..8c93eb7eaa 100644
--- a/engines/bladerunner/script/scene/ug06.cpp
+++ b/engines/bladerunner/script/scene/ug06.cpp
@@ -26,7 +26,7 @@ namespace BladeRunner {
void SceneScriptUG06::InitializeScene() {
if (Game_Flag_Query(680)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Outtake_Play(kOuttakeMovieC1, false, -1);
if (Game_Flag_Query(560)) {
@@ -92,7 +92,7 @@ bool SceneScriptUG06::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptUG06::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 23.0f, 0.0f, 321.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(341);
Set_Enter(kSetUG04, kSceneUG04);
@@ -104,7 +104,7 @@ bool SceneScriptUG06::ClickedOnExit(int exitId) {
Actor_Face_Heading(kActorMcCoy, 0, false);
Loop_Actor_Travel_Stairs(kActorMcCoy, 17, 1, kAnimationModeIdle);
Loop_Actor_Walk_To_XYZ(kActorMcCoy, 66.0f, 153.0f, -446.0f, 0, 0, false, 0);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(342);
Set_Enter(kSetNR01, kSceneNR01);
diff --git a/engines/bladerunner/script/scene/ug07.cpp b/engines/bladerunner/script/scene/ug07.cpp
index 6880d2008a..f31660c7b5 100644
--- a/engines/bladerunner/script/scene/ug07.cpp
+++ b/engines/bladerunner/script/scene/ug07.cpp
@@ -95,7 +95,7 @@ bool SceneScriptUG07::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptUG07::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -94.0f, -12.21f, -710.0f, 0, 1, false, 0) && Actor_Query_Goal_Number(kActorClovis) != 402) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(427);
Set_Enter(kSetUG09, kSceneUG09);
@@ -104,7 +104,7 @@ bool SceneScriptUG07::ClickedOnExit(int exitId) {
}
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 110.0f, -12.21f, -274.0f, 0, 1, false, 0) && Actor_Query_Goal_Number(kActorClovis) != 402) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(425);
Set_Enter(kSetUG08, kSceneUG08);
@@ -143,7 +143,7 @@ bool SceneScriptUG07::ClickedOnExit(int exitId) {
}
} else {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -10.0f, -21.47f, -58.0f, 0, 1, false, 0) && Actor_Query_Goal_Number(kActorClovis) != 402) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(423);
Set_Enter(kSetUG10, kSceneUG10);
diff --git a/engines/bladerunner/script/scene/ug08.cpp b/engines/bladerunner/script/scene/ug08.cpp
index 2c5cc613cf..6ae9d73ad2 100644
--- a/engines/bladerunner/script/scene/ug08.cpp
+++ b/engines/bladerunner/script/scene/ug08.cpp
@@ -86,7 +86,7 @@ bool SceneScriptUG08::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptUG08::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -432.0f, 0.0f, -152.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(426);
Set_Enter(kSetUG07, kSceneUG07);
diff --git a/engines/bladerunner/script/scene/ug09.cpp b/engines/bladerunner/script/scene/ug09.cpp
index f238161a4b..0724ce8d81 100644
--- a/engines/bladerunner/script/scene/ug09.cpp
+++ b/engines/bladerunner/script/scene/ug09.cpp
@@ -101,7 +101,7 @@ bool SceneScriptUG09::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptUG09::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -67.0f, 156.94f, -425.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagUG09toCT12);
Set_Enter(kSetCT01_CT12, kSceneCT12);
@@ -110,7 +110,7 @@ bool SceneScriptUG09::ClickedOnExit(int exitId) {
}
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -53.0f, 156.94f, 206.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(428);
Set_Enter(kSetUG07, kSceneUG07);
diff --git a/engines/bladerunner/script/scene/ug10.cpp b/engines/bladerunner/script/scene/ug10.cpp
index e95f57b237..64e63a6a03 100644
--- a/engines/bladerunner/script/scene/ug10.cpp
+++ b/engines/bladerunner/script/scene/ug10.cpp
@@ -35,35 +35,39 @@ void SceneScriptUG10::InitializeScene() {
} else {
Setup_Scene_Information(235.0f, 1.15f, 29.0f, 0);
}
+
Scene_Exit_Add_2D_Exit(0, 589, 300, 639, 479, 1);
- Scene_Exit_Add_2D_Exit(1, 460, 70, 632, 171, 0);
- Scene_Exit_Add_2D_Exit(2, 38, 78, 83, 264, 3);
- Scene_Exit_Add_2D_Exit(3, 0, 0, 30, 479, 3);
+ Scene_Exit_Add_2D_Exit(1, 460, 70, 632, 171, 0);
+ Scene_Exit_Add_2D_Exit(2, 38, 78, 83, 264, 3);
+ Scene_Exit_Add_2D_Exit(3, 0, 0, 30, 479, 3);
+
Scene_2D_Region_Add(0, 349, 311, 382, 364);
+
Ambient_Sounds_Add_Looping_Sound(105, 71, 0, 1);
- Ambient_Sounds_Add_Looping_Sound(95, 45, 0, 1);
+ Ambient_Sounds_Add_Looping_Sound( 95, 45, 0, 1);
Ambient_Sounds_Add_Looping_Sound(332, 76, 0, 1);
- Ambient_Sounds_Add_Sound(291, 2, 20, 25, 33, -100, 100, -100, 100, 0, 0);
- Ambient_Sounds_Add_Sound(293, 2, 20, 25, 33, -100, 100, -100, 100, 0, 0);
- Ambient_Sounds_Add_Sound(295, 2, 20, 25, 33, -100, 100, -100, 100, 0, 0);
- Ambient_Sounds_Add_Sound(368, 2, 120, 11, 12, -100, 100, -100, 100, 0, 0);
- Ambient_Sounds_Add_Sound(401, 2, 120, 11, 12, -100, 100, -100, 100, 0, 0);
- Ambient_Sounds_Add_Sound(402, 2, 120, 11, 12, -100, 100, -100, 100, 0, 0);
- Ambient_Sounds_Add_Sound(369, 2, 120, 11, 12, -100, 100, -100, 100, 0, 0);
- Ambient_Sounds_Add_Sound(397, 2, 120, 11, 12, -100, 100, -100, 100, 0, 0);
- Ambient_Sounds_Add_Sound(398, 2, 120, 11, 12, -100, 100, -100, 100, 0, 0);
- Ambient_Sounds_Add_Sound(303, 5, 50, 47, 57, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(304, 5, 50, 47, 57, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(1, 5, 150, 47, 57, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(58, 5, 150, 17, 37, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(230, 2, 20, 25, 32, -100, 100, -100, 100, 0, 0);
- Ambient_Sounds_Add_Sound(233, 2, 20, 25, 32, -100, 100, -100, 100, 0, 0);
- Ambient_Sounds_Add_Sound(235, 2, 190, 12, 16, -100, 100, -100, 100, 0, 0);
- Ambient_Sounds_Add_Sound(394, 2, 190, 12, 16, -100, 100, -100, 100, 0, 0);
- Ambient_Sounds_Add_Sound(224, 2, 190, 12, 16, -100, 100, -100, 100, 0, 0);
- Ambient_Sounds_Add_Sound(228, 2, 190, 12, 16, -100, 100, -100, 100, 0, 0);
- Ambient_Sounds_Add_Sound(229, 2, 190, 12, 16, -100, 100, -100, 100, 0, 0);
- if (Game_Flag_Query(474)) {
+ Ambient_Sounds_Add_Sound(291, 2, 20, 25, 33, -100, 100, -100, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(293, 2, 20, 25, 33, -100, 100, -100, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(295, 2, 20, 25, 33, -100, 100, -100, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(368, 2, 120, 11, 12, -100, 100, -100, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(401, 2, 120, 11, 12, -100, 100, -100, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(402, 2, 120, 11, 12, -100, 100, -100, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(369, 2, 120, 11, 12, -100, 100, -100, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(397, 2, 120, 11, 12, -100, 100, -100, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(398, 2, 120, 11, 12, -100, 100, -100, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(303, 5, 50, 47, 57, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(304, 5, 50, 47, 57, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 1, 5, 150, 47, 57, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 58, 5, 150, 17, 37, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(230, 2, 20, 25, 32, -100, 100, -100, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(233, 2, 20, 25, 32, -100, 100, -100, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(235, 2, 190, 12, 16, -100, 100, -100, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(394, 2, 190, 12, 16, -100, 100, -100, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(224, 2, 190, 12, 16, -100, 100, -100, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(228, 2, 190, 12, 16, -100, 100, -100, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(229, 2, 190, 12, 16, -100, 100, -100, 100, 0, 0);
+
+ if (Game_Flag_Query(kFlagUG10GateOpen)) {
Scene_Loop_Set_Default(4);
} else {
Scene_Loop_Set_Default(1);
@@ -72,10 +76,14 @@ void SceneScriptUG10::InitializeScene() {
void SceneScriptUG10::SceneLoaded() {
Obstacle_Object("SLUICEGATE_LEVER", true);
- if (Global_Variable_Query(kVariableChapter) == 4 && !Game_Flag_Query(474) && Game_Flag_Query(kFlagDumpsterEmptied) && !Game_Flag_Query(693)) {
+ if (Global_Variable_Query(kVariableChapter) == 4
+ && !Game_Flag_Query(kFlagUG10GateOpen)
+ && Game_Flag_Query(kFlagDumpsterEmptied)
+ && !Game_Flag_Query(kFlagUG03DeadHomeless)
+ ) {
Scene_Loop_Set_Default(1);
Scene_Loop_Start_Special(kSceneLoopModeOnce, 6, true);
- Game_Flag_Set(693);
+ Game_Flag_Set(kFlagUG03DeadHomeless);
//return true;
}
//return false;
@@ -101,17 +109,25 @@ bool SceneScriptUG10::ClickedOnExit(int exitId) {
float x, y, z;
Actor_Query_XYZ(kActorMcCoy, &x, &y, &z);
if (exitId == 0) {
- if ((!Game_Flag_Query(474) && x > 125.0f) || Game_Flag_Query(474)) {
+ if ((!Game_Flag_Query(kFlagUG10GateOpen)
+ && x > 125.0f
+ )
+ || Game_Flag_Query(kFlagUG10GateOpen)
+ ) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 235.0f, 1.15f, 29.0f, 0, 1, false, 0)) {
Game_Flag_Set(kFlagUG10toUG01);
Set_Enter(kSetUG01, kSceneUG01);
return true;
}
- } else if (!Game_Flag_Query(474)) {
+ } else if (!Game_Flag_Query(kFlagUG10GateOpen)) {
Actor_Says(kActorMcCoy, 8521, 3);
}
} else if (exitId == 1) {
- if ((!Game_Flag_Query(474) && x < 120.0f) || Game_Flag_Query(474)) {
+ if ((!Game_Flag_Query(kFlagUG10GateOpen)
+ && x < 120.0f
+ )
+ || Game_Flag_Query(kFlagUG10GateOpen)
+ ) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -1.83f, 1.15f, -410.8f, 0, 1, false, 0)) {
Actor_Face_Heading(kActorMcCoy, 0, false);
Loop_Actor_Travel_Stairs(kActorMcCoy, 9, 1, kAnimationModeIdle);
@@ -120,11 +136,15 @@ bool SceneScriptUG10::ClickedOnExit(int exitId) {
Set_Enter(kSetUG03, kSceneUG03);
return true;
}
- } else if (!Game_Flag_Query(474)) {
+ } else if (!Game_Flag_Query(kFlagUG10GateOpen)) {
Actor_Says(kActorMcCoy, 6165, 3);
}
} else if (exitId == 2) {
- if ((!Game_Flag_Query(474) && x < 120.0f) || Game_Flag_Query(474)) {
+ if ((!Game_Flag_Query(kFlagUG10GateOpen)
+ && x < 120.0f
+ )
+ || Game_Flag_Query(kFlagUG10GateOpen)
+ ) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -385.0f, 1.15f, 57.44f, 0, 1, false, 0)) {
Actor_Face_Heading(kActorMcCoy, 1001, false);
Loop_Actor_Travel_Ladder(kActorMcCoy, 1, 1, 0);
@@ -132,17 +152,21 @@ bool SceneScriptUG10::ClickedOnExit(int exitId) {
Set_Enter(kSetUG07, kSceneUG07);
return true;
}
- } else if (!Game_Flag_Query(474)) {
+ } else if (!Game_Flag_Query(kFlagUG10GateOpen)) {
Actor_Says(kActorMcCoy, 6165, 3);
}
} else if (exitId == 3) {
- if ((!Game_Flag_Query(474) && x < 120.0f) || Game_Flag_Query(474)) {
+ if ((!Game_Flag_Query(kFlagUG10GateOpen)
+ && x < 120.0f
+ )
+ || Game_Flag_Query(kFlagUG10GateOpen)
+ ) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 2.5f, 1.15f, 405.0f, 0, 1, false, 0)) {
Game_Flag_Set(347);
Set_Enter(kSetUG14, kSceneUG14);
return true;
}
- } else if (!Game_Flag_Query(474)) {
+ } else if (!Game_Flag_Query(kFlagUG10GateOpen)) {
Actor_Says(kActorMcCoy, 6165, 3);
}
}
@@ -155,19 +179,19 @@ bool SceneScriptUG10::ClickedOn2DRegion(int region) {
if (region == 0 && !Player_Query_Combat_Mode()) {
if (x >= 120.0f) {
Actor_Says(kActorMcCoy, 8525, 3);
- } else if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 4.98f, 0.38f, 83.15f, 0, 1, false, 0)) {
- if (Game_Flag_Query(474)) {
- Scene_Loop_Set_Default(1);
- Scene_Loop_Start_Special(kSceneLoopModeOnce, 0, false);
- Game_Flag_Reset(474);
- Obstacle_Object("BOX01 BRIDGE", true);
- Player_Loses_Control();
- } else {
+ } else if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 4.98f, 0.38f, 83.15f, 0, true, false, 0)) {
+ if (!Game_Flag_Query(kFlagUG10GateOpen)) {
Scene_Loop_Set_Default(4);
Scene_Loop_Start_Special(kSceneLoopModeOnce, 3, false);
- Game_Flag_Set(474);
+ Game_Flag_Set(kFlagUG10GateOpen);
Unobstacle_Object("BOX01 BRIDGE", true);
Player_Loses_Control();
+ } else {
+ Scene_Loop_Set_Default(1);
+ Scene_Loop_Start_Special(kSceneLoopModeOnce, 0, false);
+ Game_Flag_Reset(kFlagUG10GateOpen);
+ Obstacle_Object("BOX01 BRIDGE", true);
+ Player_Loses_Control();
}
}
return true;
@@ -206,17 +230,18 @@ void SceneScriptUG10::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
void SceneScriptUG10::PlayerWalkedIn() {
if (Game_Flag_Query(346)) {
Game_Flag_Reset(346);
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, 2.5f, 1.15f, 377.0f, 0, 0, false, 0);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, 2.5f, 1.15f, 377.0f, 0, false, false, 0);
} else if (Game_Flag_Query(kFlagUG01toUG10)) {
Game_Flag_Reset(kFlagUG01toUG10);
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, 207.0f, 1.15f, 29.0f, 0, 0, false, 0);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, 207.0f, 1.15f, 29.0f, 0, false, false, 0);
} else if (Game_Flag_Query(336)) {
Game_Flag_Reset(336);
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -1.83f, 81.33f, -518.8f, 0, 0, false, 0);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -1.83f, 81.33f, -518.8f, 0, false, false, 0);
Actor_Face_Heading(kActorMcCoy, 506, false);
- Loop_Actor_Travel_Stairs(kActorMcCoy, 9, 0, kAnimationModeIdle);
+ Loop_Actor_Travel_Stairs(kActorMcCoy, 9, false, kAnimationModeIdle);
}
- if (Game_Flag_Query(474)) {
+
+ if (Game_Flag_Query(kFlagUG10GateOpen)) {
Unobstacle_Object("BOX01 BRIDGE", true);
} else {
Obstacle_Object("BOX01 BRIDGE", true);
@@ -224,7 +249,7 @@ void SceneScriptUG10::PlayerWalkedIn() {
}
void SceneScriptUG10::PlayerWalkedOut() {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
}
diff --git a/engines/bladerunner/script/scene/ug12.cpp b/engines/bladerunner/script/scene/ug12.cpp
index 90f72d52bd..f189224713 100644
--- a/engines/bladerunner/script/scene/ug12.cpp
+++ b/engines/bladerunner/script/scene/ug12.cpp
@@ -81,7 +81,7 @@ bool SceneScriptUG12::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptUG12::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 375.0f, -126.21f, 180.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(344);
Set_Enter(kSetUG14, kSceneUG14);
@@ -90,7 +90,7 @@ bool SceneScriptUG12::ClickedOnExit(int exitId) {
}
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 207.0f, -126.21f, -364.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(412);
Set_Enter(kSetKP02, kSceneKP02);
diff --git a/engines/bladerunner/script/scene/ug13.cpp b/engines/bladerunner/script/scene/ug13.cpp
index a0acf7fe82..3fb1aaf3dc 100644
--- a/engines/bladerunner/script/scene/ug13.cpp
+++ b/engines/bladerunner/script/scene/ug13.cpp
@@ -109,7 +109,7 @@ bool SceneScriptUG13::ClickedOn3DObject(const char *objectName, bool a2) {
}
bool SceneScriptUG13::ClickedOnActor(int actorId) {
- if (actorId == 12
+ if (actorId == kActorTransient
&& Global_Variable_Query(kVariableChapter) == 4
) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -248.0f, 44.0f, -390.0f, 12, true, false, 0)) {
@@ -269,7 +269,7 @@ void SceneScriptUG13::PlayerWalkedOut() {
Ambient_Sounds_Remove_Sound(397, false);
Ambient_Sounds_Remove_Sound(398, false);
} else {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
}
}
diff --git a/engines/bladerunner/script/scene/ug14.cpp b/engines/bladerunner/script/scene/ug14.cpp
index 0a391cac43..6e95691367 100644
--- a/engines/bladerunner/script/scene/ug14.cpp
+++ b/engines/bladerunner/script/scene/ug14.cpp
@@ -93,7 +93,7 @@ bool SceneScriptUG14::ClickedOnExit(int exitId) {
Footstep_Sound_Override_Off();
}
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -278.0f, 12.97f, -152.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(348);
Set_Enter(kSetUG19, kSceneUG19);
@@ -111,7 +111,7 @@ bool SceneScriptUG14::ClickedOnExit(int exitId) {
Footstep_Sound_Override_Off();
}
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -50.0f, 129.0f, -814.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(345);
Set_Enter(kSetCT08_CT51_UG12, kSceneUG12);
@@ -134,7 +134,7 @@ bool SceneScriptUG14::ClickedOnExit(int exitId) {
Loop_Actor_Travel_Stairs(kActorMcCoy, 6, 1, kAnimationModeIdle);
Footstep_Sound_Override_Off();
Loop_Actor_Walk_To_XYZ(kActorMcCoy, 233.0f, 186.04f, -32.0f, 0, 0, false, 0);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(346);
Set_Enter(kSetUG10, kSceneUG10);
diff --git a/engines/bladerunner/script/scene/ug15.cpp b/engines/bladerunner/script/scene/ug15.cpp
index 231c1a3e42..4743c8d336 100644
--- a/engines/bladerunner/script/scene/ug15.cpp
+++ b/engines/bladerunner/script/scene/ug15.cpp
@@ -105,7 +105,7 @@ bool SceneScriptUG15::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -25.0f, 26.31f, -434.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(352);
Set_Enter(kSetUG17, kSceneUG17);
@@ -114,7 +114,7 @@ bool SceneScriptUG15::ClickedOnExit(int exitId) {
}
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -17.0f, 26.31f, -346.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagUG15toUG16);
Set_Enter(kSetUG16, kSceneUG16);
@@ -126,7 +126,7 @@ bool SceneScriptUG15::ClickedOnExit(int exitId) {
if (v1 >= 300 && v1 <= 303) {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -137.61f, 48.07f, 147.12f, 0, 1, false, 0);
} else if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 18.0f, 52.28f, 46.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(354);
Set_Enter(kSetUG16, kSceneUG16);
@@ -135,7 +135,7 @@ bool SceneScriptUG15::ClickedOnExit(int exitId) {
}
if (exitId == 3) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -238.0f, 52.46f, 222.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(350);
Set_Enter(kSetUG13, kSceneUG13);
diff --git a/engines/bladerunner/script/scene/ug16.cpp b/engines/bladerunner/script/scene/ug16.cpp
index 38ce6e439a..fbffe9f701 100644
--- a/engines/bladerunner/script/scene/ug16.cpp
+++ b/engines/bladerunner/script/scene/ug16.cpp
@@ -130,7 +130,7 @@ bool SceneScriptUG16::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptUG16::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -322.0f, -34.0f, -216.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(355);
Set_Enter(kSetUG15, kSceneUG15);
@@ -139,7 +139,7 @@ bool SceneScriptUG16::ClickedOnExit(int exitId) {
}
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -322.0f, -34.0f, -404.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagUG16toUG15);
Set_Enter(kSetUG15, kSceneUG15);
@@ -150,7 +150,7 @@ bool SceneScriptUG16::ClickedOnExit(int exitId) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -316.78f, -34.88f, -533.27f, 0, 1, false, 0)) {
Actor_Face_Heading(kActorMcCoy, 0, false);
Loop_Actor_Travel_Stairs(kActorMcCoy, 13, 1, kAnimationModeIdle);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(551);
Set_Enter(kSetDR06, kSceneDR06);
diff --git a/engines/bladerunner/script/scene/ug17.cpp b/engines/bladerunner/script/scene/ug17.cpp
index e05648f3f0..104c831e59 100644
--- a/engines/bladerunner/script/scene/ug17.cpp
+++ b/engines/bladerunner/script/scene/ug17.cpp
@@ -65,7 +65,7 @@ bool SceneScriptUG17::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptUG17::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 1000.0f, 67.96f, -1539.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(353);
Set_Enter(kSetUG15, kSceneUG15);
@@ -79,7 +79,7 @@ bool SceneScriptUG17::ClickedOnExit(int exitId) {
Actor_Says(kActorMcCoy, 8522, 14);
} else {
Loop_Actor_Travel_Ladder(kActorMcCoy, 10, 1, 0);
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(448);
Set_Enter(kSetTB02_TB03, kSceneTB03);
diff --git a/engines/bladerunner/script/scene/ug18.cpp b/engines/bladerunner/script/scene/ug18.cpp
index f438d9b030..5afb87e80a 100644
--- a/engines/bladerunner/script/scene/ug18.cpp
+++ b/engines/bladerunner/script/scene/ug18.cpp
@@ -94,9 +94,9 @@ bool SceneScriptUG18::ClickedOnActor(int actorId) {
return false;
}
-bool SceneScriptUG18::ClickedOnItem(int itemId, bool a2) {
+bool SceneScriptUG18::ClickedOnItem(int itemId, bool combatMode) {
if (itemId == 91) {
- if (a2) {
+ if (combatMode) {
Item_Remove_From_World(91);
} else if (!Loop_Actor_Walk_To_Item(kActorMcCoy, 91, 12, 1, false)) {
Item_Pickup_Spin_Effect(987, 368, 243);
@@ -111,7 +111,7 @@ bool SceneScriptUG18::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptUG18::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -684.71f, 0.0f, 171.59f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(435);
Set_Enter(kSetUG13, kSceneUG13);
@@ -129,7 +129,7 @@ void SceneScriptUG18::SceneFrameAdvanced(int frame) {
}
void SceneScriptUG18::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bool currentSet) {
- if (actorId == 4) {
+ if (actorId == kActorGuzza) {
if (newGoal == 303) {
Game_Flag_Set(607);
ADQ_Flush();
@@ -150,7 +150,7 @@ void SceneScriptUG18::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
Scene_Exits_Enable();
Actor_Set_Goal_Number(kActorGuzza, 306);
}
- } else if (actorId == 8) {
+ } else if (actorId == kActorSadik) {
if (newGoal == 302) {
if (Actor_Query_Friendliness_To_Other(kActorClovis, kActorMcCoy) > 55 && Game_Flag_Query(607)) {
sub_403588();
@@ -324,7 +324,9 @@ void SceneScriptUG18::sub_402734() {
void SceneScriptUG18::sub_402DE8() {
if (Player_Query_Agenda() != kPlayerAgendaPolite) {
- if (Global_Variable_Query(kVariableAffectionTowards) > 1 || Player_Query_Agenda() == kPlayerAgendaSurly) {
+ if (Global_Variable_Query(kVariableAffectionTowards) > 1
+ || Player_Query_Agenda() == kPlayerAgendaSurly
+ ) {
sub_403114();
} else {
sub_402F8C();
diff --git a/engines/bladerunner/script/scene/ug19.cpp b/engines/bladerunner/script/scene/ug19.cpp
index 1f5eccdf65..4c7d96375e 100644
--- a/engines/bladerunner/script/scene/ug19.cpp
+++ b/engines/bladerunner/script/scene/ug19.cpp
@@ -89,7 +89,7 @@ bool SceneScriptUG19::ClickedOnExit(int exitId) {
Footstep_Sound_Override_On(3);
Loop_Actor_Travel_Ladder(kActorMcCoy, 8, 1, 0);
Footstep_Sound_Override_Off();
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(356);
Set_Enter(kSetMA07, kSceneMA07);
@@ -98,7 +98,7 @@ bool SceneScriptUG19::ClickedOnExit(int exitId) {
}
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 181.0f, 11.52f, -18.0f, 0, 1, false, 0)) {
- Ambient_Sounds_Remove_All_Non_Looping_Sounds(1);
+ Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(349);
Set_Enter(kSetUG14, kSceneUG14);
diff --git a/engines/bladerunner/script/scene_script.cpp b/engines/bladerunner/script/scene_script.cpp
index ff43853044..7c890d6538 100644
--- a/engines/bladerunner/script/scene_script.cpp
+++ b/engines/bladerunner/script/scene_script.cpp
@@ -173,23 +173,23 @@ bool SceneScript::mouseClick(int x, int y) {
return true;
_inScriptCounter++;
- //MouseX = x;
- //MouseY = y;
+ _mouseX = x;
+ _mouseY = y;
bool result = _currentScript->MouseClick(x, y);
_vm->_runningActorId = -1;
_inScriptCounter--;
- //MouseX = -1;
- //MouseY = -1;
+ _mouseX = -1;
+ _mouseY = -1;
return result;
}
-bool SceneScript::clickedOn3DObject(const char *objectName, bool attack) {
+bool SceneScript::clickedOn3DObject(const char *objectName, bool combatMode) {
if (_inScriptCounter > 0) {
return true;
}
_inScriptCounter++;
- bool result = _currentScript->ClickedOn3DObject(objectName, attack);
+ bool result = _currentScript->ClickedOn3DObject(objectName, combatMode);
_vm->_runningActorId = -1;
_inScriptCounter--;
return result;
@@ -207,13 +207,13 @@ bool SceneScript::clickedOnActor(int actorId) {
return result;
}
-bool SceneScript::clickedOnItem(int itemId, bool a2) {
+bool SceneScript::clickedOnItem(int itemId, bool combatMode) {
if (_inScriptCounter > 0) {
return true;
}
_inScriptCounter++;
- bool result = _currentScript->ClickedOnItem(itemId, a2);
+ bool result = _currentScript->ClickedOnItem(itemId, combatMode);
_vm->_runningActorId = -1;
_inScriptCounter--;
return result;
diff --git a/engines/bladerunner/script/scene_script.h b/engines/bladerunner/script/scene_script.h
index de9cd0dda5..ee439018d2 100644
--- a/engines/bladerunner/script/scene_script.h
+++ b/engines/bladerunner/script/scene_script.h
@@ -36,9 +36,9 @@ public:
virtual void InitializeScene() = 0;
virtual void SceneLoaded() = 0;
virtual bool MouseClick(int x, int y) = 0;
- virtual bool ClickedOn3DObject(const char *objectName, bool attack) = 0;
+ virtual bool ClickedOn3DObject(const char *objectName, bool combatMode) = 0;
virtual bool ClickedOnActor(int actorId) = 0;
- virtual bool ClickedOnItem(int itemId, bool a2) = 0;
+ virtual bool ClickedOnItem(int itemId, bool combatMode) = 0;
virtual bool ClickedOnExit(int exitId) = 0;
virtual bool ClickedOn2DRegion(int region) = 0;
virtual void SceneFrameAdvanced(int frame) = 0;
@@ -57,9 +57,9 @@ public: \
void InitializeScene(); \
void SceneLoaded(); \
bool MouseClick(int x, int y); \
- bool ClickedOn3DObject(const char *objectName, bool attack); \
+ bool ClickedOn3DObject(const char *objectName, bool combatMode); \
bool ClickedOnActor(int actorId); \
- bool ClickedOnItem(int itemId, bool a2); \
+ bool ClickedOnItem(int itemId, bool combatMode); \
bool ClickedOnExit(int exitId); \
bool ClickedOn2DRegion(int region); \
void SceneFrameAdvanced(int frame); \
@@ -74,9 +74,9 @@ DECLARE_SCRIPT(AR01)
END_SCRIPT
DECLARE_SCRIPT(AR02)
- void sub_402694();
- void sub_402AE0();
- void sub_402CE4();
+ void dialogueWithInsectDealer1();
+ void dialogueWithInsectDealer2();
+ void dialogueWithHassan();
END_SCRIPT
DECLARE_SCRIPT(BB01)
@@ -182,8 +182,8 @@ DECLARE_SCRIPT(DR06)
END_SCRIPT
DECLARE_SCRIPT(HC01)
- void sub_402384();
- void sub_40346C();
+ void dialogueWithIzo();
+ void takePhotoAndRunAway();
END_SCRIPT
DECLARE_SCRIPT(HC02)
@@ -193,7 +193,7 @@ DECLARE_SCRIPT(HC03)
END_SCRIPT
DECLARE_SCRIPT(HC04)
- void sub_401B90();
+ void dialogueWithIsabella();
END_SCRIPT
DECLARE_SCRIPT(HF01)
@@ -222,7 +222,7 @@ DECLARE_SCRIPT(HF05)
void sub_40410C();
void sub_4042E4();
void sub_404474();
- int sub_404858();
+ int getAffectionTowardsActor();
int sub_4048C0();
END_SCRIPT
@@ -232,7 +232,7 @@ DECLARE_SCRIPT(HF06)
END_SCRIPT
DECLARE_SCRIPT(HF07)
- int sub_401864();
+ int getAffectionTowardsActor();
END_SCRIPT
DECLARE_SCRIPT(KP01)
@@ -389,15 +389,15 @@ DECLARE_SCRIPT(PS10)
END_SCRIPT
DECLARE_SCRIPT(PS11)
- void sub_402744();
+ void removeTargets();
END_SCRIPT
DECLARE_SCRIPT(PS12)
- void sub_4028C4();
+ void removeTargets();
END_SCRIPT
DECLARE_SCRIPT(PS13)
- void sub_40267C();
+ void removeTargets();
END_SCRIPT
DECLARE_SCRIPT(PS14)
@@ -448,7 +448,7 @@ DECLARE_SCRIPT(UG01)
END_SCRIPT
DECLARE_SCRIPT(UG02)
- bool sub_402354();
+ bool walkToCenter();
END_SCRIPT
DECLARE_SCRIPT(UG03)
@@ -458,7 +458,7 @@ DECLARE_SCRIPT(UG04)
END_SCRIPT
DECLARE_SCRIPT(UG05)
- int sub_4021B0();
+ int getAffectionTowardsActor();
void sub_402218();
END_SCRIPT
@@ -527,6 +527,9 @@ protected:
SceneScriptBase *_currentScript;
public:
+ int _mouseX;
+ int _mouseY;
+
SceneScript(BladeRunnerEngine *vm);
~SceneScript();
@@ -535,9 +538,9 @@ public:
void initializeScene();
void sceneLoaded();
bool mouseClick(int x, int y);
- bool clickedOn3DObject(const char *objectName, bool attack);
+ bool clickedOn3DObject(const char *objectName, bool combatMode);
bool clickedOnActor(int actorId);
- bool clickedOnItem(int itemId, bool a2);
+ bool clickedOnItem(int itemId, bool combatMode);
bool clickedOnExit(int exitId);
bool clickedOn2DRegion(int region);
void sceneFrameAdvanced(int frame);
diff --git a/engines/bladerunner/script/script.cpp b/engines/bladerunner/script/script.cpp
index dbc193301a..21ddebdf3f 100644
--- a/engines/bladerunner/script/script.cpp
+++ b/engines/bladerunner/script/script.cpp
@@ -46,6 +46,7 @@
#include "bladerunner/scene.h"
#include "bladerunner/scene_objects.h"
#include "bladerunner/script/police_maze.h"
+#include "bladerunner/script/scene_script.h"
#include "bladerunner/slice_animations.h"
#include "bladerunner/slice_renderer.h"
#include "bladerunner/suspects_database.h"
@@ -90,8 +91,11 @@ void ScriptBase::Actor_Set_At_Waypoint(int actorId, int waypointId, int angle) {
bool ScriptBase::Region_Check(int left, int top, int right, int down) {
debugC(kDebugScript, "Region_Check(%d, %d, %d, %d)", left, top, right, down);
- //TODO: return _vm->_mouse.x >= left && _vm->_mouse.y >= top && _vm->_mouse.x <= right && _vm->_mouse.y <= down;
- warning("Region_Check(%d, %d, %d, %d)", left, top, right, down);
+
+ return _vm->_sceneScript->_mouseX >= left
+ && _vm->_sceneScript->_mouseY >= top
+ && _vm->_sceneScript->_mouseX <= right
+ && _vm->_sceneScript->_mouseY <= down;
return false;
}
@@ -1436,7 +1440,7 @@ bool ScriptBase::Query_System_Currently_Loading_Game() {
return _vm->_gameIsLoading;
}
-void ScriptBase::Actor_Retired_Here(int actorId, int width, int height, int retired, int retiredByActorId) {
+void ScriptBase::Actor_Retired_Here(int actorId, int width, int height, bool retired, int retiredByActorId) {
debugC(kDebugScript, "Actor_Retired_Here(%d, %d, %d, %d, %d)", actorId, width, height, retired, retiredByActorId);
Actor *actor = _vm->_actors[actorId];
actor->retire(retired, width, height, retiredByActorId);
diff --git a/engines/bladerunner/script/script.h b/engines/bladerunner/script/script.h
index f5ce3d63b0..3b35f3a81d 100644
--- a/engines/bladerunner/script/script.h
+++ b/engines/bladerunner/script/script.h
@@ -242,7 +242,7 @@ protected:
void Assign_Player_Gun_Miss_Sounds(int ammoType, int soundId1, int soundId2, int soundId3);
void Disable_Shadows(int animationsIdsList[], int listSize);
bool Query_System_Currently_Loading_Game();
- void Actor_Retired_Here(int actorId, int width, int height, int retired, int retiredByActorId);
+ void Actor_Retired_Here(int actorId, int width, int height, bool retired, int retiredByActorId);
void Clickable_Object(const char *objectName);
void Unclickable_Object(const char *objectName);
void Obstacle_Object(const char *objectName, bool updateWalkpath);