aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/bladerunner/game_constants.h336
-rw-r--r--engines/bladerunner/script/ai/clovis.cpp2
-rw-r--r--engines/bladerunner/script/ai/dektora.cpp636
-rw-r--r--engines/bladerunner/script/ai/early_q.cpp2
-rw-r--r--engines/bladerunner/script/ai/gaff.cpp2
-rw-r--r--engines/bladerunner/script/ai/gordo.cpp282
-rw-r--r--engines/bladerunner/script/ai/holloway.cpp2
-rw-r--r--engines/bladerunner/script/ai/howie_lee.cpp22
-rw-r--r--engines/bladerunner/script/ai/insect_dealer.cpp4
-rw-r--r--engines/bladerunner/script/ai/izo.cpp6
-rw-r--r--engines/bladerunner/script/ai/klein.cpp10
-rw-r--r--engines/bladerunner/script/ai/mccoy.cpp10
-rw-r--r--engines/bladerunner/script/ai/moraji.cpp138
-rw-r--r--engines/bladerunner/script/ai/mutant1.cpp4
-rw-r--r--engines/bladerunner/script/ai/mutant2.cpp4
-rw-r--r--engines/bladerunner/script/ai/mutant3.cpp4
-rw-r--r--engines/bladerunner/script/ai/officer_grayford.cpp4
-rw-r--r--engines/bladerunner/script/ai/officer_leary.cpp10
-rw-r--r--engines/bladerunner/script/ai/photographer.cpp4
-rw-r--r--engines/bladerunner/script/ai/runciter.cpp6
-rw-r--r--engines/bladerunner/script/ai/sadik.cpp2
-rw-r--r--engines/bladerunner/script/ai/steele.cpp46
-rw-r--r--engines/bladerunner/script/ai/transient.cpp14
-rw-r--r--engines/bladerunner/script/ai/zuben.cpp73
-rw-r--r--engines/bladerunner/script/ai_script.h8
-rw-r--r--engines/bladerunner/script/esper_script.cpp375
-rw-r--r--engines/bladerunner/script/init_script.cpp2
-rw-r--r--engines/bladerunner/script/scene/ar01.cpp44
-rw-r--r--engines/bladerunner/script/scene/ar02.cpp34
-rw-r--r--engines/bladerunner/script/scene/bb01.cpp63
-rw-r--r--engines/bladerunner/script/scene/bb02.cpp62
-rw-r--r--engines/bladerunner/script/scene/bb03.cpp56
-rw-r--r--engines/bladerunner/script/scene/bb04.cpp49
-rw-r--r--engines/bladerunner/script/scene/bb05.cpp71
-rw-r--r--engines/bladerunner/script/scene/bb06.cpp63
-rw-r--r--engines/bladerunner/script/scene/bb07.cpp37
-rw-r--r--engines/bladerunner/script/scene/bb12.cpp8
-rw-r--r--engines/bladerunner/script/scene/bb51.cpp10
-rw-r--r--engines/bladerunner/script/scene/ct01.cpp54
-rw-r--r--engines/bladerunner/script/scene/ct02.cpp2
-rw-r--r--engines/bladerunner/script/scene/ct03.cpp4
-rw-r--r--engines/bladerunner/script/scene/ct04.cpp40
-rw-r--r--engines/bladerunner/script/scene/ct05.cpp11
-rw-r--r--engines/bladerunner/script/scene/ct06.cpp10
-rw-r--r--engines/bladerunner/script/scene/ct11.cpp78
-rw-r--r--engines/bladerunner/script/scene/ct12.cpp10
-rw-r--r--engines/bladerunner/script/scene/dr01.cpp105
-rw-r--r--engines/bladerunner/script/scene/dr02.cpp25
-rw-r--r--engines/bladerunner/script/scene/dr03.cpp176
-rw-r--r--engines/bladerunner/script/scene/dr04.cpp135
-rw-r--r--engines/bladerunner/script/scene/dr05.cpp81
-rw-r--r--engines/bladerunner/script/scene/dr06.cpp31
-rw-r--r--engines/bladerunner/script/scene/hc01.cpp18
-rw-r--r--engines/bladerunner/script/scene/hc02.cpp12
-rw-r--r--engines/bladerunner/script/scene/hc03.cpp12
-rw-r--r--engines/bladerunner/script/scene/hc04.cpp8
-rw-r--r--engines/bladerunner/script/scene/hf01.cpp32
-rw-r--r--engines/bladerunner/script/scene/hf05.cpp14
-rw-r--r--engines/bladerunner/script/scene/hf07.cpp14
-rw-r--r--engines/bladerunner/script/scene/ma01.cpp36
-rw-r--r--engines/bladerunner/script/scene/ma02.cpp8
-rw-r--r--engines/bladerunner/script/scene/ma04.cpp28
-rw-r--r--engines/bladerunner/script/scene/ma07.cpp57
-rw-r--r--engines/bladerunner/script/scene/nr01.cpp120
-rw-r--r--engines/bladerunner/script/scene/nr04.cpp4
-rw-r--r--engines/bladerunner/script/scene/ps01.cpp36
-rw-r--r--engines/bladerunner/script/scene/ps04.cpp18
-rw-r--r--engines/bladerunner/script/scene/ps05.cpp2
-rw-r--r--engines/bladerunner/script/scene/ps07.cpp26
-rw-r--r--engines/bladerunner/script/scene/ps14.cpp39
-rw-r--r--engines/bladerunner/script/scene/rc01.cpp60
-rw-r--r--engines/bladerunner/script/scene/rc02.cpp10
-rw-r--r--engines/bladerunner/script/scene/rc03.cpp20
-rw-r--r--engines/bladerunner/script/scene/rc51.cpp12
-rw-r--r--engines/bladerunner/script/scene/tb02.cpp34
-rw-r--r--engines/bladerunner/script/scene/tb07.cpp91
-rw-r--r--engines/bladerunner/script/scene/ug01.cpp4
-rw-r--r--engines/bladerunner/script/scene/ug02.cpp10
-rw-r--r--engines/bladerunner/script/scene/ug03.cpp85
-rw-r--r--engines/bladerunner/script/scene/ug04.cpp63
-rw-r--r--engines/bladerunner/script/scene/ug05.cpp22
-rw-r--r--engines/bladerunner/script/scene/ug06.cpp73
-rw-r--r--engines/bladerunner/script/scene/ug09.cpp4
-rw-r--r--engines/bladerunner/script/scene/ug10.cpp36
-rw-r--r--engines/bladerunner/script/scene/ug12.cpp35
-rw-r--r--engines/bladerunner/script/scene/ug13.cpp23
-rw-r--r--engines/bladerunner/script/scene/ug14.cpp99
-rw-r--r--engines/bladerunner/script/scene/ug15.cpp116
-rw-r--r--engines/bladerunner/script/scene/ug16.cpp21
-rw-r--r--engines/bladerunner/script/scene/ug17.cpp17
-rw-r--r--engines/bladerunner/script/scene/ug19.cpp69
-rw-r--r--engines/bladerunner/script/scene_script.h6
92 files changed, 2717 insertions, 1944 deletions
diff --git a/engines/bladerunner/game_constants.h b/engines/bladerunner/game_constants.h
index 52ef19ce58..b14b720fe5 100644
--- a/engines/bladerunner/game_constants.h
+++ b/engines/bladerunner/game_constants.h
@@ -442,17 +442,17 @@ enum Flags {
kFlagNotUsed0 = 0, // is never checked
kFlagRC02Entered = 1,
// 2 is never used
- kFlagGotOfficersStatement = 3,
- kFlagRC02FirstLeave = 4,
+ kFlagRC01GotOfficersStatement = 3,
+ kFlagRC02Left = 4,
// 5 is never used
- kFlagRunciterInterviewA = 6,
+ kFlagRC02RunciterInterview = 6,
// 7 is never used
kFlagRC01toRC02 = 8,
kFlagRC02toRC01 = 9,
kFlagDR01toDR04 = 10,
kFlagDR04toDR01 = 11,
- kFlagKleinTalkShellCasings = 12,
- kFlagKleinTalkOfficersStatement = 13,
+ kFlagPS07KleinTalkShellCasings = 12,
+ kFlagPS07KleinTalkOfficersStatement = 13,
kFlagPS10toPS11 = 14,
kFlagPS11toPS10 = 15,
kFlagPS11toPS12 = 16,
@@ -471,7 +471,7 @@ enum Flags {
kFlagCT01ZubenLeft = 29,
kFlagNotUsed30 = 30, // is never set
kFlagCT01ZubenGone = 31,
- kFlagCT01McCoyTalkedToGordo = 32,
+ kFlagCT01GordoTalk = 32,
kFlagMA02toMA06 = 33,
kFlagMA06ToMA02 = 34,
kFlagMA02ToMA04 = 35,
@@ -533,7 +533,7 @@ enum Flags {
kFlagCT12toCT11 = 91,
// 92 is never used
// 93 is never used
- kFlagWarehouseOpen = 94,
+ kFlagCT05WarehouseOpen = 94,
kFlagTB05toTB02 = 95,
kFlagTB02toTB05 = 96, // is never checked
kFlagTB05toTB06 = 97, // is never checked
@@ -543,14 +543,14 @@ enum Flags {
kFlagTB05MonitorDone = 101,
kFlagTB06Visited = 102,
kFlagNotUsed103 = 103, // is never set
- kFlagKleinTalkPaintTransfer = 104,
- kFlagKleinTalkChromeDebris = 105,
- kFlagIsabellaIntroduced = 106,
+ kFlagPS07KleinTalkPaintTransfer = 104,
+ kFlagPS07KleinTalkChromeDebris = 105,
+ kFlagHC04IsabellaTalk = 106,
kFlagHC04toRC03 = 107,
kFlagRC03toHC04 = 108,
kFlagHC04toHC02 = 109,
kFlagHC02toHC04 = 110,
- kFlagKleinTalkClues = 111,
+ kFlagPS07KleinTalkClues = 111,
// 112 is never used
// 113 is never used
kFlagRC03toRC01 = 114,
@@ -568,7 +568,7 @@ enum Flags {
kFlagMcCoyHasOfficersStatement = 126,
kFlagMcCoyHasPaintTransfer = 127,
kFlagMcCoyHasChromeDebris = 128,
- kFlagZubenCheckOnMcCoy = 129,
+ kFlagCT01ZubenMcCoyCheck = 129,
kFlagPS02toPS01 = 130,
kFlagPS02toPS07 = 131,
kFlagPS02toPS03 = 132,
@@ -576,52 +576,52 @@ enum Flags {
kFlagPS03toPS14 = 134,
kFlagPS14toPS03 = 135,
kFlagPS05toPS06 = 136,
- kFlagHomelessTalkedTo = 137,
- kFlagKleinInsulted = 138,
+ kFlagCT04HomelessTalk = 137,
+ kFlagPS07KleinInsulted = 138,
// 139 is never used
// 140 is never used
kFlagRC51Available = 141,
kFlagNotUsed142 = 142, // is never checked
// 143 is never used
kFlagCT07toCT06 = 144,
- kFlagZubenPhoto = 145,
+ kFlagCT06ZubenPhoto = 145,
kFlagChapter1Ending = 146,
- kFlagChopstickWrapperTaken = 147,
- kFlagCandyTaken = 148,
- kFlagToyDogTaken = 149,
+ kFlagRC51ChopstickWrapperTaken = 147,
+ kFlagRC51CandyTaken = 148,
+ kFlagRC51ToyDogTaken = 149,
kFlagNotUsed150 = 150, // has no use
kFlagRC03UnlockedToUG01 = 151,
- kFlagUG15toUG16 = 152,
- kFlagUG16toUG15 = 153,
+ kFlagUG15toUG16a = 152,
+ kFlagUG16toUG15a = 153,
kFlagTB02toTB03 = 154, // is never checked
kFlagTB03toTB02 = 155,
- kFlagKleinInsultedTalk = 156,
+ kFlagPS07KleinInsultedTalk = 156,
// 157 is never used
kFlagSergeantWallsBuzzInDone = 158,
- kFlagGuzzaTalkZubenRetired = 159,
- kFlagGuzzaTalkZubenEscaped = 160,
- kFlagGuzzaTalk1 = 161,
- kFlagGuzzaTalk2 = 162,
- kFlagChromeDebrisTaken = 163,
+ kFlagPS04GuzzaTalkZubenRetired = 159,
+ kFlagPS04GuzzaTalkZubenEscaped = 160,
+ kFlagPS04GuzzaTalk1 = 161,
+ kFlagPS04GuzzaTalk2 = 162,
+ kFlagRC01ChromeDebrisTaken = 163,
kFlagIzoArrested = 164,
kFlagCrazylegsArrested = 165,
kFlagPS09CrazylegsTalk1 = 166,
kFlagPS09IzoTalk1 = 167,
kFlagPS09IzoTalk2 = 168,
- kFlagMcCoyKilledHomeless = 169,
- kFlagHomelessBodyInDumpster = 170,
- kFlagHomelessBodyFound = 171,
- kFlagDumpsterEmptied = 172,
- kFlagHomelessBodyInDumpsterNotChecked = 173, // is never checked
- kFlagLicensePlaceFound = 174,
+ kFlagCT04HomelessKilledByMcCoy = 169,
+ kFlagCT04HomelessBodyInDumpster = 170,
+ kFlagCT04HomelessBodyFound = 171,
+ kFlagCT04HomelessBodyThrownAway = 172,
+ kFlagCT04HomelessBodyInDumpsterNotChecked = 173, // is never checked
+ kFlagCT04LicensePlaceFound = 174,
kFlagPS09CrazylegsTalk2 = 175,
- kFlagMcCoyAtCTxx = 176,
- kFlagMcCoyAtDRxx = 177,
- kFlagMcCoyAtPSxx = 178,
- kFlagMcCoyAtMAxx = 179,
- kFlagMcCoyAtARxx = 180,
- kFlagMcCoyAtNRxx = 181,
- kFlagMcCoyAtRCxx = 182,
+ kFlagMcCoyInChinaTown = 176,
+ kFlagMcCoyInDNARow = 177,
+ kFlagMcCoyInPoliceStation = 178,
+ kFlagMcCoyInMcCoyApartment = 179,
+ kFlagMcCoyInAnimoidRow = 180,
+ kFlagMcCoyInNightclubRow = 181,
+ kFlagMcCoyInRunciters = 182,
@@ -629,9 +629,9 @@ enum Flags {
kFlagRC02TalkedToRunciter = 187,
// 188 is never used
// 189 is never used
- kFlagShellCasingsTaken = 190,
+ kFlagRC02ShellCasingsTaken = 190,
// 191 is never used
- kFlagBoughtHowieLeeFood = 192,
+ kFlagCT01BoughtHowieLeeFood = 192,
// 193 is never used
// 194 is never used
// 195 is never used
@@ -696,16 +696,16 @@ enum Flags {
kFlagSpinnerAtBB01 = 254,
kFlagSpinnerAtNR01 = 255,
kFlagSpinnerAtHF01 = 256,
- kFlagMcCoyAtHFxx = 257,
- kFlagMcCoyAtBBxx = 258,
- kFlagMcCoyAtUGxx = 259,
+ kFlagMcCoyInHysteriaHall = 257,
+ kFlagMcCoyInBradburyBuilding = 258,
+ kFlagMcCoyInUnderground = 259,
// 260 is never used
- kFlagMcCoyAtTBxx = 261,
+ kFlagMcCoyInTyrellBuilding = 261,
kFlagBB01toBB02 = 262,
kFlagBB02toBB01 = 263,
kFlagBB01toDR02 = 264,
kFlagDR02toBB01 = 265,
- kFlagMorajiExploded = 266,
+ kFlagDR05JustExploded = 266,
kFlagDR03ChewTalk1 = 267,
kFlagDR06JesterActive = 268,
kFlagDR05BombActivated = 269,
@@ -733,7 +733,7 @@ enum Flags {
// 291 is never used
kFlagRC04BobTalk2 = 292,
kFlagCT02PotTipped = 293,
- kFlagGaffSpinnerCT12 = 294,
+ kFlagCT12GaffSpinner = 294,
kFlagRC04BobShootMcCoy = 295,
kFlagRC04McCoyCombatMode = 296,
kFlagBB05toBB06 = 297,
@@ -764,17 +764,54 @@ enum Flags {
kFlagAR01toHC01 = 322,
kFlagHC01toAR01 = 323,
kFlagUG01SteamOff = 324,
-
- kFlagFishDealerTalk = 328,
- kFlagInsectDealerInterviewed = 329,
- kFlagHassanTalk = 330,
- kFlagScorpionsChecked = 331,
-
- kFlagInsectDealerTalk = 366,
- kFlagStungByScorpion = 367,
+ kFlagCT04BodyDumped = 325,
+ kFlagBB01Available = 326,
+ // 327 is never used
+ kFlagAR01FishDealerTalk = 328,
+ kFlagAR02InsectDealerInterviewed = 329,
+ kFlagAR02HassanTalk = 330,
+ kFlagAR02ScorpionsChecked = 331,
+ kFlagBB02toBB04 = 332,
+ kFlagBB04toBB02 = 333,
+ kFlagUG03toUG04 = 334, // is never checked
+ kFlagUG04toUG03 = 335,
+ kFlagUG03toUG10 = 336,
+ kFlagUG10toUG03 = 337,
+ kFlagUG04toUG05 = 338, // is never checked
+ kFlagUG05toUG04 = 339,
+ kFlagUG04toUG06 = 340,
+ kFlagUG06toUG04 = 341,
+ kFlagUG06toNR01 = 342,
+ kFlagNR01toUG06 = 343,
+ kFlagUG12toUG14 = 344,
+ kFlagUG14toUG12 = 345, // is never checked
+ kFlagUG14toUG10 = 346,
+ kFlagUG10toUG14 = 347, // is never checked
+ kFlagUG14toUG19 = 348,
+ kFlagUG19toUG14 = 349,
+ kFlagUG15toUG13 = 350,
+ kFlagUG13toUG15 = 351,
+ kFlagUG15toUG17 = 352,
+ kFlagUG17toUG15 = 353,
+ kFlagUG15toUG16b = 354, // is never checked
+ kFlagUG16toUG15b = 355,
+ kFlagUG19toMA07 = 356,
+ kFlagMA07toUG19 = 357,
+ kFlagHF07toHF05 = 358,
+ kFlagHF05toHF07 = 359,
+ kFlagHF07toUG06 = 360,
+ kFlagUG06toHF07 = 361,
+ kFlagBB07toBB06 = 362,
+ kFlagBB06toBB07 = 363,
+ kFlagBB07toBB12 = 364,
+ kFlagBB12toBB07 = 365,
+ kFlagAR02InsectDealerTalk = 366,
+ kFlagAR02StungByScorpion = 367,
kFlagNotUsed370 = 370, // is never checked
+ kFlagAR02DektoraBoughtScorpions = 374,
+
kFlagDirectorsCut = 378,
kFlagHC01toHC02 = 384,
@@ -785,17 +822,20 @@ enum Flags {
// 389 is never used
// 390 is never used
- KFlagMcCoyAndOfficerLearyTalking = 392,
+ kFlagRC01McCoyAndOfficerLearyTalking = 392,
+ kFlagBB06toBB51 = 393, // is never checked
+ kFlagBB51toBB06a = 394,
+ kFlagBB51toBB06b = 395,
- KFlagMcCoyAndOfficerLearyArtMetaphor = 397,
+ kFlagRC01McCoyAndOfficerLearyArtMetaphor = 397,
- kFlagIzoTalk1 = 400,
- kFlagIzoTalk2 = 401,
+ kFlagHC01IzoTalk1 = 400,
+ kFlagHC01IzoTalk2 = 401,
kFlagHC03Available = 402,
kFlagHC03CageOpen = 403,
- kFlagHawkersBarkeepIntroduction = 404,
- kFlagHawkersBarkeepBraceletTalk = 405,
-
+ kFlagHC02HawkersBarkeepIntroduction = 404,
+ kFlagHC02HawkersBarkeepBraceletTalk = 405,
+ kFlagUnused406 = 406, // is never checked
kFlagUnused407 = 407, // is never checked
kFlagUG09toCT12 = 432,
@@ -816,34 +856,50 @@ enum Flags {
kFlagMcCoyArrested = 465,
kFlagUG10GateOpen = 474,
kFlagMcCoyAtPS03 = 478, // has no use
- kFlagMcCoyAtHCxx = 479,
+ kFlagMcCoyInHawkersCircle = 479,
kFlagTB06Introduction = 483,
- kFlagPhotographerToTB06 = 485,
+ kFlagTB06Photographer = 485,
kFlagDNARowAvailable = 486,
kFlagKIAPrivacyAddon = 487,
+ kFlagDektoraChapter2Started = 489,
kFlagCT04HomelessTrashFinish = 492,
+ kFlagBB02ElevatorDown = 493,
+ kFlagBB02Entered = 494,
kFlagUG02FromUG01 = 498,
kFlagUG02Interactive = 499,
-
+ kFlagAR02DektoraWillBuyScorpions = 504,
+ kFlagDR03ChewTalkExplosion = 505,
kFlagDR05ExplodedEntered = 511,
- kFlagDR05BombExplosionView = 515,
+ kFlagDR05ViewExplosion = 515,
kFlagCT07ZubenAttack = 516,
kFlagTB06DogCollarTaken = 519,
kFlagTB06KitchenBoxTaken = 520,
+ kFlagCT11toDR01 = 531,
+ kFlagGordoTalk1 = 543,
+ kFlagGordoTalk2 = 544,
+ kFlagDR06MannequinHeadOpen = 548,
+ kFlagDR01toCT11 = 558,
kFlagKIAPrivacyAddonIntro = 599,
kFlagTB07toTB02 = 608,
- kFlagMcCoySleeping = 647,
- kFlagPhoneMessageFromClovis = 649,
- kFlagPhoneMessageFromLucy = 650,
- kFlagRagiationGooglesTaken = 656,
+ kFlagTB07RachaelTalk = 612,
+ kFlagMA04McCoySleeping = 647,
+ kFlagMA04PhoneMessageFromClovis = 649,
+ kFlagMA04PhoneMessageFromLucy = 650,
+ kFlagUG02RagiationGooglesTaken = 656,
+
kFlagDNARowAvailableTalk = 660,
+ kFlagTB07ShadeDown = 661, // is never set
+ kFlagMA07toPS14 = 672,
+ kFlagPS14toMA07 = 673,
kFlagChapter2Intro = 678,
+
kFlagPS05TV0 = 688,
kFlagPS05TV1 = 689,
kFlagPS05TV2 = 690,
kFlagPS05TV3 = 691,
kFlagPS05TV4 = 692,
kFlagUG03DeadHomeless = 693,
+ kFlagUG14DeadHomeless = 694,
kFlagRC04Locked = 702,
kFlagTB06PhotographTalk1 = 707,
kFlagUG02AmmoTaken = 708,
@@ -851,6 +907,7 @@ enum Flags {
kFlagAR01Entered = 710,
kFlagMA04WatchedTV = 711,
kFlagMcCoyShotAtZuben = 712,
+ kFlagDR04McCoyShotMoraji = 713,
kFlagRC04BobTalk3 = 717,
kFlagCT02McCoyFell = 719,
kFlagCT02McCoyCombatReady = 720,
@@ -875,6 +932,7 @@ enum Variables {
kVariableGenericWalkerCModel = 34,
kVariableWalkLoopActor = 37,
kVariableWalkLoopRun = 38,
+ kVariableDR06MannequinHeadOpened = 39,
kVariableMcCoyDrinks = 42, // is never checked
kVariableAffectionTowards = 45, // 0 none, 1 steele, 2 dektora, 3 lucy
kVariableDNAEvidences = 48,
@@ -937,6 +995,7 @@ enum AnimationModes {
kAnimationModeCombatAttack = 6,
kAnimationModeCombatWalk = 7,
kAnimationModeCombatRun = 8,
+ // 12 - 17 various talk modes
kAnimationModeHit = 21,
kAnimationModeCombatHit = 22,
kAnimationModeSpinnerGetIn = 41,
@@ -965,37 +1024,37 @@ enum SceneLoopMode {
};
enum Scenes {
- kSceneAR01 = 0,
- kSceneAR02 = 1,
- kSceneBB01 = 2,
- kSceneBB02 = 3,
- kSceneBB03 = 4,
- kSceneBB04 = 5,
- kSceneBB05 = 6,
- kSceneBB06 = 7,
+ kSceneAR01 = 0, // Animoid Row - Fish dealer
+ kSceneAR02 = 1, // Animoid Row - Insect dealer
+ kSceneBB01 = 2, // Bradbury building - Outside
+ kSceneBB02 = 3, // Bradbury building - elevator down
+ kSceneBB03 = 4, // Bradbury building - Entrance
+ kSceneBB04 = 5, // Bradbury building - elevator up
+ kSceneBB05 = 6, // Bradbury building - Entry hall
+ kSceneBB06 = 7, // Bradbury building - Billiard room - front
kSceneBB07 = 8,
- kSceneBB08 = 9,
- kSceneBB09 = 10,
- kSceneBB10 = 11,
- kSceneBB11 = 12,
+ kSceneBB08 = 9, // Bradbury building - Bathroom
+ kSceneBB09 = 10, // Bradbury building - Above bathroom
+ kSceneBB10 = 11, // Bradbury building - Cupboard
+ kSceneBB11 = 12, // Bradbury building - Roof
kSceneCT01 = 13, // Chinatown - Howie Lee Restaurant
- kSceneCT02 = 14, // Chinatown - Kitchen
- kSceneCT03 = 15, // Chinatown - Back alley
+ kSceneCT02 = 14, // Chinatown - Restaurant - Kitchen
+ kSceneCT03 = 15, // Chinatown - Back alley - Restaurant
kSceneCT04 = 16, // Chinatown - Back alley - Dumpster
kSceneCT05 = 17, // Chinatown - Warehouse - Inside
- kSceneCT06 = 18, // Chinatown - Passage
+ kSceneCT06 = 18, // Chinatown - Passage from front
kSceneCT07 = 19, // Chinatown - Passage form back
kSceneCT08 = 20, // Chinatown - Yukon Hotel - Backroom
kSceneCT09 = 21, // Chinatown - Yukon Hotel - Lobby
kSceneCT10 = 22, // Chinatown - Yukon Hotel - Room
kSceneCT11 = 23, // Chinatown - Yukon Hotel - Outside
kSceneCT12 = 24, // Chinatown - Warehouse - Outside
- kSceneDR01 = 25,
- kSceneDR02 = 26,
- kSceneDR03 = 27,
- kSceneDR04 = 28,
- kSceneDR05 = 29,
- kSceneDR06 = 30,
+ kSceneDR01 = 25, // DNA Row - Street
+ kSceneDR02 = 26, // DNA Row - Eye world - Outside
+ kSceneDR03 = 27, // DNA Row - Eye world - Inside
+ kSceneDR04 = 28, // DNA Row - Dermo design - Outside
+ kSceneDR05 = 29, // DNA Row - Dermo design - Inside
+ kSceneDR06 = 30, // DNA Row - Twin's office
kSceneHC01 = 31, // Hawker's circle - Green pawn - Outside
kSceneHC02 = 32, // Hawker's circle - China bar
kSceneHC03 = 33, // Hawker's circle - Green pawn - Inside
@@ -1012,7 +1071,7 @@ enum Scenes {
kSceneKP04 = 44,
kSceneKP05 = 45,
kSceneKP06 = 46,
- kSceneKP07 = 47, // Kipple - Moonbus inside
+ kSceneKP07 = 47, // Kipple - Moonbus - Inside
kSceneMA01 = 48, // McCoy's Apartment - Roof
kSceneMA02 = 49, // McCoy's Apartment - Living room
kSceneMA04 = 50, // McCoy's Apartment - Sleeping room
@@ -1038,19 +1097,19 @@ enum Scenes {
kScenePS06 = 70,
kScenePS07 = 71,
kScenePS09 = 72, // Police Station - Lockup
- kScenePS10 = 73,
- kScenePS11 = 74,
- kScenePS12 = 75,
- kScenePS13 = 76,
- kScenePS14 = 77,
+ kScenePS10 = 73, // Police Station - Shooting range 1
+ kScenePS11 = 74, // Police Station - Shooting range 2
+ kScenePS12 = 75, // Police Station - Shooting range 3
+ kScenePS13 = 76, // Police Station - Shooting range 4
+ kScenePS14 = 77, // Police Station - Outside
kSceneRC01 = 78, // Runciter - Outside
kSceneRC02 = 79, // Runciter - Inside
- kSceneRC03 = 80, // Bullet Bob - outside
- kSceneRC04 = 81, // Bullet Bob - inside
- kSceneTB02 = 82, // Tyrell Building - reception
+ kSceneRC03 = 80, // Bullet Bob - Outside
+ kSceneRC04 = 81, // Bullet Bob - Inside
+ kSceneTB02 = 82, // Tyrell Building - Reception
kSceneTB03 = 83,
- kSceneTB05 = 84, // Tyrell Building - Grav Test Lab - outside
- kSceneTB06 = 85, // Tyrell Building - Grav Test Lab - inside
+ kSceneTB05 = 84, // Tyrell Building - Grav Test Lab - Iutside
+ kSceneTB06 = 85, // Tyrell Building - Grav Test Lab - Inside
kSceneUG01 = 86, // Underground - Under Bullet Bob entrance
kSceneUG02 = 87, // Underground - Under Green pawn
kSceneUG03 = 88,
@@ -1060,7 +1119,7 @@ enum Scenes {
kSceneUG07 = 92,
kSceneUG08 = 93,
kSceneUG09 = 94,
- kSceneUG10 = 95,
+ kSceneUG10 = 95, // Undergound - Bridge
kSceneUG12 = 96,
kSceneUG13 = 97,
kSceneUG14 = 98,
@@ -1069,7 +1128,7 @@ enum Scenes {
kSceneUG17 = 101,
kSceneUG18 = 102,
kSceneUG19 = 103,
- kSceneBB51 = 104,
+ kSceneBB51 = 104, // Bradbury building - Billiard room - Back
kSceneCT51 = 105,
kSceneHC04 = 106, // Hawker's circle - Kingston kitchen
kSceneRC51 = 107, // Runciter - Lucy's desk
@@ -1264,6 +1323,7 @@ enum GameItems {
// 75 is never used
// 76 is never used
kItemDragonflyEarring = 76,
+ kItemBomb = 78,
kItemCandy = 79,
kItemChopstickWrapper = 82,
kItemDogCollar = 84,
@@ -1281,7 +1341,8 @@ enum GameItems {
kItemWeaponsCrate = 110,
kItemWeaponsOrderForm = 111,
kItemTyrellSalesPamphlet = 119,
- kItemHC03Lock = 121
+ kItemGreenPawnLock = 121,
+ kItemChain = 122
};
enum Elevators {
@@ -1361,6 +1422,16 @@ enum AffectionTowards {
kAffectionTowardsLucy = 3
};
+/*
+ * Common goals:
+ * 0 - 99 - first chapter
+ * 100 - 199 - second chapter
+ * 200 - 299 - third chapter
+ * 300 - 399 - fourth chapter
+ * 400 - 499 - fifth chapter
+ * 599 - dead / gone
+ */
+
enum GoalMcCoy {
kGoalMcCoyDefault = 0,
kGoalMcCoyDodge = 1
@@ -1380,6 +1451,34 @@ enum GoalSteele {
kGoalSteeleWalkAroundRestart = 190
};
+enum GoalDektora {
+ kGoalDektoraDefault = 0,
+ kGoalDektoraStartWalkingAround = 100,
+ kGoalDektoraWalkAroundAsReplicant = 101,
+ kGoalDektoraWalkAroundAsHuman = 102,
+ kGoalDektoraStopWalkingAround = 103
+};
+
+enum GoalGordo {
+ // chapter 1
+ kGoalGordoDefault = 0,
+ kGoalGordoLeaveCT01 = 1,
+ kGoalGordoLeftCT01 = 2,
+ kGoalGordoWalkThroughCT05 = 3,
+ kGoalGordoLeaveCT05 = 4,
+ kGoalGordoLeftCT05 = 5,
+ kGoalGordoGetUpCT01 = 90,
+ kGoalGordoWalkOutFromCT01 = 91,
+ kGoalGordoBidFarewellToHowieLee = 92,
+ kGoalGordoWalkToHowieLee = 93,
+ // chapter 2
+ kGoalGordoWalkAround = 100,
+ kGoalGordoGoToDNARow = 101,
+ kGoalGordoGoToChinaTown = 102,
+ kGoalGordoGoToFreeSlotHAGJ = 103,
+ kGoalGordoGoToFreeSlotAH = 104
+};
+
enum GoalGuzza {
kGoalGuzzaLeaveOffice = 100,
kGoalGuzzaGoToHawkersCircle = 101,
@@ -1423,18 +1522,18 @@ enum GoalBulletBob {
enum GoalRunciter {
kGoalRunciterDefault = 0,
- kGoalRunciterWalkAround = 1,
- kGoalRunciterHide = 2,
+ kGoalRunciterWalkAroundRC02 = 1,
+ kGoalRunciterGoToFreeSlotGH = 2,
kGoalRunciterAtShop = 300,
kGoalRunciterDead = 599
};
enum GoalZuben {
kGoalZubenDefault = 0,
- kGoalZubenCT01Leave = 1,
- kGoalZubenCT02Flee = 2,
+ kGoalZubenCT01WalkToCT02 = 1,
+ kGoalZubenCT02RunToFreeSlotG = 2,
kGoalZubenCT07Spared = 4,
- kGoalZubenCT07Leave = 5,
+ kGoalZubenCT07RunToFreeSlotA = 5,
kGoalZubenDie = 6,
kGoalZubenSpared = 7,
kGoalZubenCT02PushPot = 8,
@@ -1442,7 +1541,7 @@ enum GoalZuben {
kGoalZubenCT02OpenDoor = 10,
kGoalZubenCT06JumpDown = 11,
kGoalZubenCT06AttackMcCoy = 12,
- kGoalZubenCT06Hide = 13,
+ kGoalZubenCT06HideAtFreeSlotA = 13,
kGoalZubenCT02PotDodgeCheck = 14,
kGoalZubenFled = 20,
kGoalZubenMA01AttackMcCoy = 21,
@@ -1455,6 +1554,21 @@ enum GoalOfficerLeary {
kGoalOfficerLearyRC01CrowdInterrogation = 2
};
+enum GoalMoraji {
+ kGoalMorajiDefault = 0,
+ kGoalMorajiShot = 5,
+ kGoalMorajiFreed = 10,
+ kGoalMorajiRunOut = 11,
+ kGoalMorajiGetUp = 18,
+ kGoalMorajiScream = 19,
+ kGoalMorajiJump = 20,
+ kGoalMorajiLayDown = 21,
+ kGoalMorajiDie = 22,
+ kGoalMorajiDead = 23,
+ kGoalMorajiChooseFate = 30,
+ kGoalMorajiPerished = 99
+};
+
} // End of namespace BladeRunner
#endif
diff --git a/engines/bladerunner/script/ai/clovis.cpp b/engines/bladerunner/script/ai/clovis.cpp
index d5043280a1..6f4d0bfd3d 100644
--- a/engines/bladerunner/script/ai/clovis.cpp
+++ b/engines/bladerunner/script/ai/clovis.cpp
@@ -282,7 +282,7 @@ bool AIScriptClovis::GoalChanged(int currentGoalNumber, int newGoalNumber) {
Actor_Set_Goal_Number(kActorSadik, 200);
Actor_Clue_Acquire(kActorMcCoy, kClueAct2Ended, true, -1);
Player_Gains_Control();
- Chapter_Enter(3, 6, 20);
+ Chapter_Enter(3, kSetCT08_CT51_UG12, kSceneCT08);
Game_Flag_Set(550);
Game_Flag_Set(679);
return true;
diff --git a/engines/bladerunner/script/ai/dektora.cpp b/engines/bladerunner/script/ai/dektora.cpp
index e6203132e7..c7c6341b72 100644
--- a/engines/bladerunner/script/ai/dektora.cpp
+++ b/engines/bladerunner/script/ai/dektora.cpp
@@ -38,94 +38,94 @@ void AIScriptDektora::Initialize() {
_flag = false;
_x = _y = _z = 0.0f;
- Actor_Set_Goal_Number(kActorDektora, 0);
+ Actor_Set_Goal_Number(kActorDektora, kGoalDektoraDefault);
}
bool AIScriptDektora::Update() {
- int chapter = Global_Variable_Query(kVariableChapter) - 2;
-
- if (chapter > 2)
+ int chapter = Global_Variable_Query(kVariableChapter);
+
+ if (chapter == 2) {
+ if (!Game_Flag_Query(kFlagDektoraChapter2Started)) {
+ Game_Flag_Set(kFlagDektoraChapter2Started);
+ Actor_Put_In_Set(kActorDektora, kSetFreeSlotG);
+ Actor_Set_At_Waypoint(kActorDektora, 39, 0);
+ Actor_Set_Goal_Number(kActorDektora, kGoalDektoraStartWalkingAround);
+ } else {
+ if ( Game_Flag_Query(kFlagAR02DektoraWillBuyScorpions)
+ && !Game_Flag_Query(kFlagAR02DektoraBoughtScorpions)
+ && Player_Query_Current_Scene() != kSceneAR01
+ && Player_Query_Current_Scene() != kSceneAR02
+ ) {
+ if (Game_Flag_Query(kFlagAR02Entered)) {
+ Item_Remove_From_World(kItemScrorpions);
+ }
+ Game_Flag_Set(kFlagAR02DektoraBoughtScorpions);
+ }
+ }
return true;
+ }
- if (chapter) {
- if (chapter == 1) {
- if (Actor_Query_Goal_Number(kActorDektora) < 199) {
- Actor_Set_Goal_Number(kActorDektora, 199);
- } else {
- switch (Actor_Query_Goal_Number(kActorDektora)) {
- case 269:
- Actor_Set_Goal_Number(kActorDektora, 270);
- return 1;
-
- case 270:
- case 272:
- case 274:
- return 1;
-
- case 271:
- if (Actor_Query_Inch_Distance_From_Actor(kActorDektora, kActorMcCoy) <= 48) {
- Actor_Set_Goal_Number(kActorDektora, 279);
- return 1;
- }
-
- if (comp_distance(kActorMcCoy, _x, _y, _z) > 12.0f) {
- Actor_Query_XYZ(kActorMcCoy, &_x, &_y, &_z);
- Async_Actor_Walk_To_XYZ(kActorDektora, _x, _y, _z, 36, 0);
- }
- break;
+ if (chapter == 3) {
+ if (Actor_Query_Goal_Number(kActorDektora) < 199) {
+ Actor_Set_Goal_Number(kActorDektora, 199);
+ } else {
+ switch (Actor_Query_Goal_Number(kActorDektora)) {
+ case 269:
+ Actor_Set_Goal_Number(kActorDektora, 270);
+ break;
- case 273:
- Actor_Set_Goal_Number(kActorDektora, 274);
- return 1;
+ case 271:
+ if (Actor_Query_Inch_Distance_From_Actor(kActorDektora, kActorMcCoy) <= 48) {
+ Actor_Set_Goal_Number(kActorDektora, 279);
+ break;
+ }
- case 275:
- Actor_Set_Goal_Number(kActorDektora, 276);
- return 1;
+ if (comp_distance(kActorMcCoy, _x, _y, _z) > 12.0f) {
+ Actor_Query_XYZ(kActorMcCoy, &_x, &_y, &_z);
+ Async_Actor_Walk_To_XYZ(kActorDektora, _x, _y, _z, 36, 0);
}
+ break;
+
+ case 273:
+ Actor_Set_Goal_Number(kActorDektora, 274);
+ break;
+
+ case 275:
+ Actor_Set_Goal_Number(kActorDektora, 276);
+ break;
}
- } else if (Actor_Query_Goal_Number(kActorDektora) < 300) {
- 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(kFlagAR02Entered)) {
- Item_Remove_From_World(kItemScrorpions);
- }
- Game_Flag_Set(374);
+ return true;
+ }
+
+ if (chapter == 4) {
+ if (Actor_Query_Goal_Number(kActorDektora) < 300) {
+ Actor_Set_Goal_Number(kActorDektora, 300);
}
- } else {
- Game_Flag_Set(489);
- Actor_Put_In_Set(kActorDektora, kSetFreeSlotG);
- Actor_Set_At_Waypoint(kActorDektora, 39, 0);
- Actor_Set_Goal_Number(kActorDektora, 100);
+ return true;
}
return true;
}
void AIScriptDektora::TimerExpired(int timer) {
- if (timer)
- return; //false;
+ if (timer == 0) {
+ if (Actor_Query_Goal_Number(kActorDektora) == 210) {
+ if (Player_Query_Current_Scene() == 61) {
+ AI_Countdown_Timer_Reset(kActorDektora, 0);
+ AI_Countdown_Timer_Start(kActorDektora, 0, 10);
+ } else {
+ Actor_Set_Goal_Number(kActorDektora, 211);
+ AI_Countdown_Timer_Reset(kActorDektora, 0);
+ }
+ return; //true;
+ }
- if (Actor_Query_Goal_Number(kActorDektora) == 210) {
- if (Player_Query_Current_Scene() == 61) {
- AI_Countdown_Timer_Reset(kActorDektora, 0);
- AI_Countdown_Timer_Start(kActorDektora, 0, 10);
- } else {
- Actor_Set_Goal_Number(kActorDektora, 211);
+ if (Actor_Query_Goal_Number(kActorDektora) == 270) {
AI_Countdown_Timer_Reset(kActorDektora, 0);
+ Actor_Set_Goal_Number(kActorDektora, 271);
+ return; //true;
}
- return; //true;
- }
-
- if (Actor_Query_Goal_Number(kActorDektora) == 270) {
- AI_Countdown_Timer_Reset(kActorDektora, 0);
- Actor_Set_Goal_Number(kActorDektora, 271);
- return; //true;
}
return; //false;
@@ -133,34 +133,35 @@ void AIScriptDektora::TimerExpired(int timer) {
void AIScriptDektora::CompletedMovementTrack() {
switch (Actor_Query_Goal_Number(kActorDektora)) {
- case 100:
- if (Game_Flag_Query(47) == 1) {
- Actor_Set_Goal_Number(kActorDektora, 101);
+ case kGoalDektoraStartWalkingAround:
+ if (Game_Flag_Query(kFlagDektoraIsReplicant)) {
+ Actor_Set_Goal_Number(kActorDektora, kGoalDektoraWalkAroundAsReplicant);
} else {
- Actor_Set_Goal_Number(kActorDektora, 102);
+ Actor_Set_Goal_Number(kActorDektora, kGoalDektoraWalkAroundAsHuman);
}
break;
-
- case 101:
+ case kGoalDektoraWalkAroundAsReplicant:
if (Random_Query(1, 7) == 1
- && Actor_Query_Goal_Number(kActorEarlyQ) != 1
- && Actor_Query_Goal_Number(kActorEarlyQ) != 101) {
- Game_Flag_Set(504);
- Actor_Set_Goal_Number(kActorDektora, 100);
+ && Actor_Query_Goal_Number(kActorEarlyQ) != 1
+ && Actor_Query_Goal_Number(kActorEarlyQ) != 101
+ ) {
+ Game_Flag_Set(kFlagAR02DektoraWillBuyScorpions);
+ Actor_Set_Goal_Number(kActorDektora, kGoalDektoraStartWalkingAround);
} else {
- Actor_Set_Goal_Number(kActorDektora, 100);
+ Actor_Set_Goal_Number(kActorDektora, kGoalDektoraStartWalkingAround);
}
break;
- case 102:
+ case kGoalDektoraWalkAroundAsHuman:
if (Random_Query(1, 5) == 1
- && Actor_Query_Goal_Number(kActorEarlyQ) != 1
- && Actor_Query_Goal_Number(kActorEarlyQ) != 101) {
- Game_Flag_Set(504);
- Actor_Set_Goal_Number(kActorDektora, 100);
+ && Actor_Query_Goal_Number(kActorEarlyQ) != 1
+ && Actor_Query_Goal_Number(kActorEarlyQ) != 101
+ ) {
+ Game_Flag_Set(kFlagAR02DektoraWillBuyScorpions);
+ Actor_Set_Goal_Number(kActorDektora, kGoalDektoraStartWalkingAround);
} else {
- Actor_Set_Goal_Number(kActorDektora, 100);
+ Actor_Set_Goal_Number(kActorDektora, kGoalDektoraStartWalkingAround);
}
break;
@@ -191,14 +192,14 @@ void AIScriptDektora::ReceivedClue(int clueId, int fromActorId) {
void AIScriptDektora::ClickedByPlayer() {
if (Actor_Query_Goal_Number(kActorDektora) == 599) {
- Actor_Face_Actor(0, kActorDektora, 1);
+ Actor_Face_Actor(0, kActorDektora, true);
Actor_Says(kActorMcCoy, 8630, 12);
return; //true;
}
if (Actor_Query_Goal_Number(kActorDektora) < 199) {
- Actor_Face_Actor(kActorMcCoy, kActorDektora, 1);
+ Actor_Face_Actor(kActorMcCoy, kActorDektora, true);
Actor_Says(kActorMcCoy, 8590, 13);
}
@@ -220,7 +221,9 @@ void AIScriptDektora::EnteredScene(int sceneId) {
}
void AIScriptDektora::OtherAgentEnteredThisScene(int otherActorId) {
- if (!otherActorId && Actor_Query_Goal_Number(kActorDektora) == 246) {
+ if (otherActorId == kActorMcCoy
+ && Actor_Query_Goal_Number(kActorDektora) == 246
+ ) {
Scene_Exits_Disable();
Actor_Change_Animation_Mode(kActorDektora, 23);
}
@@ -243,8 +246,9 @@ void AIScriptDektora::ShotAtAndMissed() {
bool AIScriptDektora::ShotAtAndHit() {
if (Actor_Query_Goal_Number(kActorDektora) == 270
- || Actor_Query_Goal_Number(kActorDektora) == 271
- || Actor_Query_Goal_Number(kActorDektora) == 272) {
+ || Actor_Query_Goal_Number(kActorDektora) == 271
+ || Actor_Query_Goal_Number(kActorDektora) == 272
+ ) {
Actor_Set_Health(kActorDektora, 100, 100);
if (Actor_Query_Goal_Number(kActorDektora) != 272) {
@@ -252,6 +256,7 @@ bool AIScriptDektora::ShotAtAndHit() {
}
return true;
}
+
if (Actor_Query_Goal_Number(kActorDektora) == 260) {
AI_Movement_Track_Flush(kActorDektora);
Actor_Set_Health(kActorDektora, 0, 100);
@@ -276,11 +281,14 @@ bool AIScriptDektora::ShotAtAndHit() {
}
void AIScriptDektora::Retired(int byActorId) {
- if (!byActorId) {
+ if (byActorId == kActorMcCoy) {
Actor_Modify_Friendliness_To_Other(kActorClovis, 0, -5);
}
- if (byActorId == kActorSteele && Actor_Query_In_Set(kActorSteele, kSetHF06) && Actor_Query_In_Set(kActorMcCoy, kSetHF06)) {
+ if (byActorId == kActorSteele
+ && Actor_Query_In_Set(kActorSteele, kSetHF06)
+ && Actor_Query_In_Set(kActorMcCoy, kSetHF06)
+ ) {
Non_Player_Actor_Combat_Mode_On(kActorSteele, kActorCombatStateUncover, true, kActorMcCoy, 15, kAnimationModeCombatIdle, kAnimationModeCombatWalk, kAnimationModeCombatRun, 0, 0, 100, 25, 300, false);
}
@@ -317,6 +325,83 @@ int AIScriptDektora::GetFriendlinessModifierIfGetsClue(int otherActorId, int clu
bool AIScriptDektora::GoalChanged(int currentGoalNumber, int newGoalNumber) {
switch (newGoalNumber) {
+ case kGoalDektoraStartWalkingAround:
+ AI_Movement_Track_Flush(kActorDektora);
+ AI_Movement_Track_Append(kActorDektora, 39, 10);
+ AI_Movement_Track_Repeat(kActorDektora);
+ break;
+
+ case kGoalDektoraWalkAroundAsReplicant:
+ AI_Movement_Track_Flush(kActorDektora);
+ AI_Movement_Track_Append_With_Facing(kActorDektora, 287, 15, 278);
+
+ if (Game_Flag_Query(kFlagZubenRetired)) {
+ AI_Movement_Track_Append(kActorDektora, 33, 240);
+ } else if (Game_Flag_Query(kFlagZubenSpared)) {
+ AI_Movement_Track_Append(kActorDektora, 33, 120);
+ } else {
+ AI_Movement_Track_Append(kActorDektora, 33, 90);
+ }
+
+ AI_Movement_Track_Append_With_Facing(kActorDektora, 288, 35, 528);
+
+ if (Random_Query(1, 2) == 1
+ && Game_Flag_Query(kFlagAR02DektoraWillBuyScorpions)
+ ) {
+ AI_Movement_Track_Append(kActorDektora, 289, 0);
+ AI_Movement_Track_Append_With_Facing(kActorDektora, 290, 2, 979);
+ AI_Movement_Track_Append(kActorDektora, 289, 0);
+ AI_Movement_Track_Append(kActorDektora, 39, 120);
+ } else {
+ AI_Movement_Track_Append(kActorDektora, 39, 180);
+ }
+
+ AI_Movement_Track_Append(kActorDektora, 282, 0);
+ AI_Movement_Track_Append(kActorDektora, 283, 0);
+ AI_Movement_Track_Append(kActorDektora, 284, 0);
+ AI_Movement_Track_Append(kActorDektora, 285, 0);
+ AI_Movement_Track_Append_With_Facing(kActorDektora, 286, 30, 329);
+ AI_Movement_Track_Repeat(kActorDektora);
+ break;
+
+ case kGoalDektoraWalkAroundAsHuman:
+ AI_Movement_Track_Flush(kActorDektora);
+ AI_Movement_Track_Append_With_Facing(kActorDektora, 287, 15, 278);
+ AI_Movement_Track_Append(kActorDektora, 40, 90);
+
+ if (Game_Flag_Query(kFlagZubenRetired)
+ && Game_Flag_Query(kFlagLucyIsReplicant)
+ ) {
+ AI_Movement_Track_Append(kActorDektora, 33, 180);
+ } else {
+ AI_Movement_Track_Append(kActorDektora, 33, 160);
+ }
+
+ AI_Movement_Track_Append_With_Facing(kActorDektora, 288, 20, 528);
+
+ if (Random_Query(1, 2) == 1) {
+ AI_Movement_Track_Append(kActorDektora, 289, 0);
+ AI_Movement_Track_Append_With_Facing(kActorDektora, 290, 3, 979);
+ AI_Movement_Track_Append(kActorDektora, 289, 0);
+ AI_Movement_Track_Append(kActorDektora, 39, 120);
+ } else {
+ AI_Movement_Track_Append(kActorDektora, 39, 180);
+ }
+
+ AI_Movement_Track_Append(kActorDektora, 282, 0);
+ AI_Movement_Track_Append(kActorDektora, 283, 0);
+ AI_Movement_Track_Append(kActorDektora, 284, 0);
+ AI_Movement_Track_Append(kActorDektora, 285, 0);
+ AI_Movement_Track_Append_With_Facing(kActorDektora, 286, 35, 329);
+ AI_Movement_Track_Repeat(kActorDektora);
+ break;
+
+ case kGoalDektoraStopWalkingAround:
+ AI_Movement_Track_Flush(kActorDektora);
+ AI_Movement_Track_Append(kActorDektora, 39, 240);
+ AI_Movement_Track_Repeat(kActorDektora);
+ break;
+
case 199:
AI_Movement_Track_Flush(kActorDektora);
Actor_Set_Goal_Number(kActorDektora, 200);
@@ -451,79 +536,6 @@ bool AIScriptDektora::GoalChanged(int currentGoalNumber, int newGoalNumber) {
Actor_Set_At_Waypoint(kActorDektora, 33, 0);
break;
- case 100:
- AI_Movement_Track_Flush(kActorDektora);
- AI_Movement_Track_Append(kActorDektora, 39, 10);
- AI_Movement_Track_Repeat(kActorDektora);
- break;
-
- case 101:
- AI_Movement_Track_Flush(kActorDektora);
- AI_Movement_Track_Append_With_Facing(kActorDektora, 287, 15, 278);
-
- if (Game_Flag_Query(40) == 1) {
- AI_Movement_Track_Append(kActorDektora, 33, 240);
- } else if (Game_Flag_Query(41) == 1) {
- AI_Movement_Track_Append(kActorDektora, 33, 120);
- } else {
- AI_Movement_Track_Append(kActorDektora, 33, 90);
- }
-
- AI_Movement_Track_Append_With_Facing(kActorDektora, 288, 35, 528);
-
- if (Random_Query(1, 2) == 1 && Game_Flag_Query(504)) {
- AI_Movement_Track_Append(kActorDektora, 289, 0);
- AI_Movement_Track_Append_With_Facing(kActorDektora, 290, 2, 979);
- AI_Movement_Track_Append(kActorDektora, 289, 0);
- AI_Movement_Track_Append(kActorDektora, 39, 120);
- } else {
- AI_Movement_Track_Append(kActorDektora, 39, 180);
- }
-
- AI_Movement_Track_Append(kActorDektora, 282, 0);
- AI_Movement_Track_Append(kActorDektora, 283, 0);
- AI_Movement_Track_Append(kActorDektora, 284, 0);
- AI_Movement_Track_Append(kActorDektora, 285, 0);
- AI_Movement_Track_Append_With_Facing(kActorDektora, 286, 30, 329);
- AI_Movement_Track_Repeat(kActorDektora);
- break;
-
- case 102:
- AI_Movement_Track_Flush(kActorDektora);
- AI_Movement_Track_Append_With_Facing(kActorDektora, 287, 15, 278);
- AI_Movement_Track_Append(kActorDektora, 40, 90);
-
- if (Game_Flag_Query(40) == 1 && Game_Flag_Query(46) == 1) {
- AI_Movement_Track_Append(kActorDektora, 33, 180);
- } else {
- AI_Movement_Track_Append(kActorDektora, 33, 160);
- }
-
- AI_Movement_Track_Append_With_Facing(kActorDektora, 288, 20, 528);
-
- if (Random_Query(1, 2) == 1) {
- AI_Movement_Track_Append(kActorDektora, 289, 0);
- AI_Movement_Track_Append_With_Facing(kActorDektora, 290, 3, 979);
- AI_Movement_Track_Append(kActorDektora, 289, 0);
- AI_Movement_Track_Append(kActorDektora, 39, 120);
- } else {
- AI_Movement_Track_Append(kActorDektora, 39, 180);
- }
-
- AI_Movement_Track_Append(kActorDektora, 282, 0);
- AI_Movement_Track_Append(kActorDektora, 283, 0);
- AI_Movement_Track_Append(kActorDektora, 284, 0);
- AI_Movement_Track_Append(kActorDektora, 285, 0);
- AI_Movement_Track_Append_With_Facing(kActorDektora, 286, 35, 329);
- AI_Movement_Track_Repeat(kActorDektora);
- break;
-
- case 103:
- AI_Movement_Track_Flush(kActorDektora);
- AI_Movement_Track_Append(kActorDektora, 39, 240);
- AI_Movement_Track_Repeat(kActorDektora);
- break;
-
default:
return false;
@@ -1058,6 +1070,300 @@ bool AIScriptDektora::UpdateAnimation(int *animation, int *frame) {
}
bool AIScriptDektora::ChangeAnimationMode(int mode) {
+ switch (mode) {
+ case kAnimationModeIdle:
+ if (Game_Flag_Query(633)) {
+ _animationState = 32;
+ _animationFrame = 0;
+ break;
+ }
+ switch (_animationState) {
+ case 2:
+ case 3:
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ case 8:
+ case 27:
+ case 28:
+ _flag = true;
+ break;
+ case 9:
+ case 10:
+ case 12:
+ case 13:
+ case 14:
+ case 15:
+ case 16:
+ case 17:
+ _animationState = 11;
+ _animationFrame = 0;
+ break;
+ case 11:
+ case 18:
+ case 19:
+ case 20:
+ case 26:
+ case 29:
+ case 30:
+ break;
+ case 25:
+ _animationState = 25;
+ _animationFrame = 0;
+ break;
+ case 31:
+ _animationState = 31;
+ _animationFrame = 0;
+ break;
+ default:
+ _animationState = 0;
+ _animationFrame = 0;
+ break;
+ }
+ break;
+
+ case kAnimationModeWalk:
+ if (!Game_Flag_Query(633)) {
+ _animationFrame = 0;
+ _animationState = 21;
+ } else {
+ _animationState = 33;
+ _animationFrame = 0;
+ }
+ break;
+
+ case kAnimationModeRun:
+ _animationFrame = 0;
+ _animationState = 22;
+ break;
+
+ case kAnimationModeTalk:
+ if (_animationState < 2
+ || _animationState > 8
+ ) {
+ _animationState = 2;
+ _animationFrame = 0;
+ _flag = false;
+ }
+ break;
+
+ case kAnimationModeCombatIdle:
+ switch (_animationState) {
+ case 9:
+ case 10:
+ case 16:
+ case 17:
+ break;
+ case 25:
+ case 27:
+ case 28:
+ _animationState = 29;
+ _animationFrame = 0;
+ break;
+ case 31:
+ _animationState = 30;
+ _animationFrame = Slice_Animation_Query_Number_Of_Frames(154) - 1;
+ break;
+ default:
+ _animationState = 10;
+ _animationFrame = 0;
+ break;
+ }
+ break;
+
+ case kAnimationModeCombatAttack:
+ if (_animationState == 31) {
+ _animationState = 26;
+ } else if (Random_Query(0, 1) == 1) {
+ _animationState = 16;
+ } else {
+ _animationState = 17;
+ }
+ _animationFrame = 0;
+ break;
+
+ case kAnimationModeCombatWalk:
+ if (!Game_Flag_Query(633)) {
+ _animationFrame = 0;
+ _animationState = 21;
+ } else {
+ _animationState = 33;
+ _animationFrame = 0;
+ }
+ break;
+
+ case kAnimationModeCombatRun:
+ _animationFrame = 0;
+ _animationState = 22;
+ break;
+
+ case 12:
+ if (_animationState < 2
+ || _animationState > 8
+ ) {
+ _animationState = 3;
+ _animationFrame = 0;
+ _flag = false;
+ }
+ break;
+
+ case 13:
+ if (_animationState < 2
+ || _animationState > 8
+ ) {
+ _animationState = 4;
+ _animationFrame = 0;
+ _flag = false;
+ }
+ break;
+
+ case 14:
+ if (_animationState < 2
+ || _animationState > 8
+ ) {
+ _animationState = 5;
+ _animationFrame = 0;
+ _flag = 0;
+ }
+ break;
+
+ case 15:
+ if (_animationState < 2
+ || _animationState > 8
+ ) {
+ _animationState = 6;
+ _animationFrame = 0;
+ _flag = false;
+ }
+ break;
+
+ case 16:
+ if (_animationState < 2
+ || _animationState > 8
+ ) {
+ _animationState = 7;
+ _animationFrame = 0;
+ _flag = false;
+ }
+ break;
+
+ case 17:
+ if (_animationState < 2
+ || _animationState > 8
+ ) {
+ _animationState = 8;
+ _animationFrame = 0;
+ _flag = false;
+ }
+ break;
+
+ case 21:
+ if (Game_Flag_Query(633)) {
+ _animationState = 34;
+ _animationFrame = 0;
+ break;
+ }
+ switch (_animationState) {
+ case 9:
+ case 10:
+ case 11:
+ case 12:
+ case 13:
+ case 16:
+ case 17:
+ if (Random_Query(0, 1) == 1) {
+ _animationState = 14;
+ } else {
+ _animationState = 15;
+ }
+ break;
+ case 14:
+ case 15:
+ if (Random_Query(0, 1) == 1) {
+ _animationState = 18;
+ } else {
+ _animationState = 19;
+ }
+ break;
+ }
+ _animationFrame = 0;
+ break;
+
+ case 23:
+ _animationState = 41;
+ _animationFrame = 0;
+ break;
+
+ case 30:
+ if (_animationState != 27
+ && _animationState != 28
+ ) {
+ _animationState = 27;
+ _animationFrame = 0;
+ _flag = false;
+ }
+ break;
+
+ case 31:
+ if (_animationState != 27
+ && _animationState != 28
+ ) {
+ _animationState = 28;
+ _animationFrame = 0;
+ _flag = false;
+ }
+ break;
+
+ case kAnimationModeWalkUp:
+ _animationFrame = 0;
+ _animationState = 23;
+ break;
+
+ case kAnimationModeWalkDown:
+ _animationFrame = 0;
+ _animationState = 24;
+ break;
+
+ case kAnimationModeDie:
+ _animationState = 20;
+ _animationFrame = 0;
+ break;
+
+ case 53:
+ switch (_animationState) {
+ case 26:
+ case 29:
+ case 30:
+ case 31:
+ break;
+ case 27:
+ case 28:
+ _flag = true;
+ break;
+ default:
+ _animationState = 25;
+ _animationFrame = 0;
+ break;
+ }
+ break;
+
+ case 70:
+ _animationState = 17;
+ _animationFrame = 0;
+ break;
+
+ case 71:
+ _animationState = 16;
+ _animationFrame = 0;
+ break;
+
+ case 79:
+ _animationState = 37;
+ _animationFrame = 0;
+ break;
+ }
+
return true;
}
diff --git a/engines/bladerunner/script/ai/early_q.cpp b/engines/bladerunner/script/ai/early_q.cpp
index 104ebdaf49..40cd1b2722 100644
--- a/engines/bladerunner/script/ai/early_q.cpp
+++ b/engines/bladerunner/script/ai/early_q.cpp
@@ -330,7 +330,7 @@ bool AIScriptEarlyQ::GoalChanged(int currentGoalNumber, int newGoalNumber) {
break;
case 208:
- if (Game_Flag_Query(374) == 1) {
+ if (Game_Flag_Query(kFlagAR02DektoraBoughtScorpions)) {
Actor_Set_Goal_Number(kActorEarlyQ, 210);
} else {
Actor_Set_Goal_Number(kActorEarlyQ, 209);
diff --git a/engines/bladerunner/script/ai/gaff.cpp b/engines/bladerunner/script/ai/gaff.cpp
index 6eaa5b979e..1706062d20 100644
--- a/engines/bladerunner/script/ai/gaff.cpp
+++ b/engines/bladerunner/script/ai/gaff.cpp
@@ -211,7 +211,7 @@ bool AIScriptGaff::GoalChanged(int currentGoalNumber, int newGoalNumber) {
AI_Movement_Track_Repeat(kActorGaff);
return true;
case 10:
- Game_Flag_Reset(kFlagGaffSpinnerCT12);
+ Game_Flag_Reset(kFlagCT12GaffSpinner);
Scene_Loop_Set_Default(2);
Scene_Loop_Start_Special(2, 6, true);
return true;
diff --git a/engines/bladerunner/script/ai/gordo.cpp b/engines/bladerunner/script/ai/gordo.cpp
index 2f48f90f9b..9d1754aeac 100644
--- a/engines/bladerunner/script/ai/gordo.cpp
+++ b/engines/bladerunner/script/ai/gordo.cpp
@@ -45,23 +45,30 @@ void AIScriptGordo::Initialize() {
_frameDelta = 1;
_frameMax = 0;
_state = 0;
- Actor_Set_Goal_Number(kActorGordo, 0);
+ Actor_Set_Goal_Number(kActorGordo, kGoalGordoDefault);
}
bool AIScriptGordo::Update() {
if (Global_Variable_Query(kVariableChapter) == 1) {
- if (Actor_Query_Goal_Number(kActorGordo) == 0 && Actor_Query_Friendliness_To_Other(kActorGordo, kActorMcCoy) < 48 && Actor_Query_Is_In_Current_Set(kActorGordo) == kSetBB02_BB04_BB06_BB51) {
- Actor_Set_Goal_Number(kActorGordo, 90);
+ if (Actor_Query_Goal_Number(kActorGordo) == kGoalGordoDefault
+ && Actor_Query_Friendliness_To_Other(kActorGordo, kActorMcCoy) < 48
+ && Actor_Query_Is_In_Current_Set(kActorGordo)
+ ) {
+ Actor_Set_Goal_Number(kActorGordo, kGoalGordoGetUpCT01);
return true;
}
- if (Actor_Query_Which_Set_In(kActorMcCoy) == kSetCT03_CT04 && Actor_Query_Which_Set_In(kActorGordo) == kSetCT01_CT12) {
- Actor_Set_Goal_Number(kActorGordo, 91);
+ if (Actor_Query_Which_Set_In(kActorMcCoy) == kSetCT03_CT04
+ && Actor_Query_Which_Set_In(kActorGordo) == kSetCT01_CT12
+ ) {
+ Actor_Set_Goal_Number(kActorGordo, kGoalGordoWalkOutFromCT01);
return true;
}
}
- if (Global_Variable_Query(kVariableChapter) == 2 && Actor_Query_Goal_Number(kActorGordo) < 100) {
- Actor_Set_Goal_Number(kActorGordo, 100);
+ if (Global_Variable_Query(kVariableChapter) == 2
+ && Actor_Query_Goal_Number(kActorGordo) < kGoalGordoWalkAround
+ ) {
+ Actor_Set_Goal_Number(kActorGordo, kGoalGordoWalkAround);
}
if (Global_Variable_Query(kVariableChapter) == 3) {
@@ -74,7 +81,9 @@ bool AIScriptGordo::Update() {
}
if (Global_Variable_Query(kVariableChapter) == 4) {
- if (Actor_Query_Goal_Number(kActorGordo) < 300 && Actor_Query_Goal_Number(kActorGordo) != 260) {
+ if (Actor_Query_Goal_Number(kActorGordo) < 300
+ && Actor_Query_Goal_Number(kActorGordo) != 260
+ ) {
Actor_Set_Goal_Number(kActorGordo, 300);
} else if (Actor_Query_Goal_Number(kActorGordo) == 599) {
Actor_Put_In_Set(kActorGordo, kSetFreeSlotI);
@@ -82,7 +91,9 @@ bool AIScriptGordo::Update() {
}
}
- if (Global_Variable_Query(kVariableChapter) == 5 && Actor_Query_Goal_Number(kActorGordo) < 400) {
+ if (Global_Variable_Query(kVariableChapter) == 5
+ && Actor_Query_Goal_Number(kActorGordo) < 400
+ ) {
Actor_Set_Goal_Number(kActorGordo, 400);
}
@@ -102,13 +113,14 @@ void AIScriptGordo::TimerExpired(int timer) {
}
void AIScriptGordo::CompletedMovementTrack() {
- if (Actor_Query_Goal_Number(kActorGordo) == 1
- || Actor_Query_Goal_Number(kActorGordo) == 91
+ if (Actor_Query_Goal_Number(kActorGordo) == kGoalGordoLeaveCT01
+ || Actor_Query_Goal_Number(kActorGordo) == kGoalGordoWalkOutFromCT01
) {
- Actor_Set_Goal_Number(kActorGordo, 2);
+ Actor_Set_Goal_Number(kActorGordo, kGoalGordoLeftCT01);
return;// true;
}
- if (Actor_Query_Goal_Number(kActorGordo) == 3) {
+
+ if (Actor_Query_Goal_Number(kActorGordo) == kGoalGordoWalkThroughCT05) {
if (Player_Query_Current_Set() == kSetCT05) {
Actor_Force_Stop_Walking(kActorMcCoy);
Player_Loses_Control();
@@ -123,24 +135,26 @@ void AIScriptGordo::CompletedMovementTrack() {
Player_Gains_Control();
}
Actor_Clue_Acquire(kActorGordo, kClueMcCoyRetiredZuben, true, -1);
- Actor_Set_Goal_Number(kActorGordo, 4);
+ Actor_Set_Goal_Number(kActorGordo, kGoalGordoLeaveCT05);
return;// true;
}
- if (Actor_Query_Goal_Number(kActorGordo) == 4) {
- Actor_Set_Goal_Number(kActorGordo, 5);
+ if (Actor_Query_Goal_Number(kActorGordo) == kGoalGordoLeaveCT05) {
+ Actor_Set_Goal_Number(kActorGordo, kGoalGordoLeftCT05);
return;// true;
}
- if (Actor_Query_Goal_Number(kActorGordo) == 93) {
+ if (Actor_Query_Goal_Number(kActorGordo) == kGoalGordoWalkToHowieLee) {
Actor_Set_Immunity_To_Obstacles(kActorGordo, false);
Player_Gains_Control();
- Actor_Set_Goal_Number(kActorGordo, 92);
+ Actor_Set_Goal_Number(kActorGordo, kGoalGordoBidFarewellToHowieLee);
return;// true;
}
- if (Actor_Query_Goal_Number(kActorGordo) > 100 && Actor_Query_Goal_Number(kActorGordo) < 200) {
- Actor_Set_Goal_Number(kActorGordo, 100);
+ if (Actor_Query_Goal_Number(kActorGordo) > 100
+ && Actor_Query_Goal_Number(kActorGordo) < 200
+ ) {
+ Actor_Set_Goal_Number(kActorGordo, kGoalGordoWalkAround);
return;// true;
}
@@ -188,8 +202,10 @@ void AIScriptGordo::ReceivedClue(int clueId, int fromActorId) {
void AIScriptGordo::ClickedByPlayer() {
int goal = Actor_Query_Goal_Number(kActorGordo);
- if (goal == 101 || goal == 102) {
- sub_40FD00();
+ if (goal == kGoalGordoGoToDNARow
+ || goal == kGoalGordoGoToChinaTown
+ ) {
+ McCoyTalkWithGordo();
} else if (goal == 260) {
Actor_Face_Actor(kActorMcCoy, kActorGordo, true);
Actor_Says(kActorMcCoy, 8600, 11);
@@ -284,77 +300,80 @@ int AIScriptGordo::GetFriendlinessModifierIfGetsClue(int otherActorId, int clueI
}
bool AIScriptGordo::GoalChanged(int currentGoalNumber, int newGoalNumber) {
+ int rnd;
+
switch (newGoalNumber) {
- case 0:
+ case kGoalGordoDefault:
Actor_Put_In_Set(kActorGordo, kSetCT01_CT12);
Actor_Set_At_XYZ(kActorGordo, -308.44f, -12.5f, 442.78f, 256);
Actor_Change_Animation_Mode(kActorGordo, 53);
break;
- case 3:
+ case kGoalGordoWalkThroughCT05:
AI_Movement_Track_Flush(kActorGordo);
AI_Movement_Track_Append(kActorGordo, 119, 0);
AI_Movement_Track_Append(kActorGordo, 118, 0);
AI_Movement_Track_Repeat(kActorGordo);
break;
- case 4:
+ case kGoalGordoLeaveCT05:
AI_Movement_Track_Flush(kActorGordo);
AI_Movement_Track_Append(kActorGordo, 119, 0);
AI_Movement_Track_Append(kActorGordo, 33, 1);
AI_Movement_Track_Repeat(kActorGordo);
break;
- case 90:
- Game_Flag_Set(kFlagCT01McCoyTalkedToGordo);
+ case kGoalGordoGetUpCT01:
+ Game_Flag_Set(kFlagCT01GordoTalk);
Actor_Set_Goal_Number(kActorGordo, 99);
Actor_Change_Animation_Mode(kActorGordo, 29);
break;
- case 91:
+ case kGoalGordoWalkOutFromCT01:
AI_Movement_Track_Flush(kActorGordo);
AI_Movement_Track_Append(kActorGordo, 43, 0);
AI_Movement_Track_Append(kActorGordo, 33, 1);
AI_Movement_Track_Repeat(kActorGordo);
break;
- case 92:
+ case kGoalGordoBidFarewellToHowieLee:
Actor_Face_Actor(kActorGordo, kActorHowieLee, true);
Actor_Says(kActorGordo, 0, 13);
Actor_Says(kActorGordo, 10, 16);
- Actor_Set_Goal_Number(kActorGordo, 91);
+ Actor_Set_Goal_Number(kActorGordo, kGoalGordoWalkOutFromCT01);
Player_Gains_Control();
break;
- case 93:
+ case kGoalGordoWalkToHowieLee:
Player_Loses_Control();
Actor_Set_Immunity_To_Obstacles(kActorGordo, true);
AI_Movement_Track_Flush(kActorGordo);
AI_Movement_Track_Append(kActorGordo, 100, 0);
AI_Movement_Track_Repeat(kActorGordo);
break;
- case 100: {
- AI_Movement_Track_Flush(kActorGordo);
- _animationState = 0;
- _animationFrame = 0;
- _animationStateNext = 0;
- sub_41117C();
- int rnd = Random_Query(1, 4);
- if (Actor_Clue_Query(kActorMcCoy, kClueGordoInterview1) || Actor_Clue_Query(kActorMcCoy, kClueGordoInterview2)) {
- rnd = Random_Query(4, 5);
- }
- switch (rnd) {
- case 1:
- case 2:
- Actor_Set_Goal_Number(kActorGordo, 101);
- break;
- case 3:
- Actor_Set_Goal_Number(kActorGordo, 102);
- break;
- case 4:
- Actor_Set_Goal_Number(kActorGordo, 103);
- break;
- case 5:
- Actor_Set_Goal_Number(kActorGordo, 104);
- break;
- }
+ case kGoalGordoWalkAround:
+ AI_Movement_Track_Flush(kActorGordo);
+ _animationState = 0;
+ _animationFrame = 0;
+ _animationStateNext = 0;
+ sub_41117C();
+ rnd = Random_Query(1, 4);
+ if (Actor_Clue_Query(kActorMcCoy, kClueGordoInterview1)
+ || Actor_Clue_Query(kActorMcCoy, kClueGordoInterview2)
+ ) {
+ rnd = Random_Query(4, 5);
+ }
+ switch (rnd) {
+ case 1:
+ case 2:
+ Actor_Set_Goal_Number(kActorGordo, kGoalGordoGoToDNARow);
+ break;
+ case 3:
+ Actor_Set_Goal_Number(kActorGordo, kGoalGordoGoToChinaTown);
+ break;
+ case 4:
+ Actor_Set_Goal_Number(kActorGordo, kGoalGordoGoToFreeSlotHAGJ);
+ break;
+ case 5:
+ Actor_Set_Goal_Number(kActorGordo, kGoalGordoGoToFreeSlotAH);
+ break;
}
break;
- case 101:
+ case kGoalGordoGoToDNARow:
AI_Movement_Track_Flush(kActorGordo);
if (Random_Query(1, 2) == 1) {
AI_Movement_Track_Append(kActorGordo, 343, 5);
@@ -378,7 +397,7 @@ bool AIScriptGordo::GoalChanged(int currentGoalNumber, int newGoalNumber) {
}
AI_Movement_Track_Repeat(kActorGordo);
break;
- case 102:
+ case kGoalGordoGoToChinaTown:
if (Random_Query(1, 3) == 1) {
AI_Movement_Track_Append(kActorGordo, 54, 1);
AI_Movement_Track_Append(kActorGordo, 56, 0);
@@ -391,7 +410,7 @@ bool AIScriptGordo::GoalChanged(int currentGoalNumber, int newGoalNumber) {
AI_Movement_Track_Append(kActorGordo, 40, 15);
AI_Movement_Track_Repeat(kActorGordo);
break;
- case 103:
+ case kGoalGordoGoToFreeSlotHAGJ:
AI_Movement_Track_Flush(kActorGordo);
AI_Movement_Track_Append(kActorGordo, 40, Random_Query(15, 45));
if (Game_Flag_Query(kFlagGordoIsReplicant)) {
@@ -403,7 +422,7 @@ bool AIScriptGordo::GoalChanged(int currentGoalNumber, int newGoalNumber) {
AI_Movement_Track_Append(kActorGordo, 42, Random_Query(10, 20));
AI_Movement_Track_Repeat(kActorGordo);
break;
- case 104:
+ case kGoalGordoGoToFreeSlotAH:
AI_Movement_Track_Flush(kActorGordo);
AI_Movement_Track_Append(kActorGordo, 33, Random_Query(15, 45));
if (!Game_Flag_Query(kFlagGordoIsReplicant)) {
@@ -413,7 +432,10 @@ bool AIScriptGordo::GoalChanged(int currentGoalNumber, int newGoalNumber) {
break;
case 200:
if (Global_Variable_Query(40) == 2) {
- if (Game_Flag_Query(593) && Game_Flag_Query(591) && Player_Query_Current_Scene() != kSceneNR02) {
+ if (Game_Flag_Query(593)
+ && Game_Flag_Query(591)
+ && Player_Query_Current_Scene() != kSceneNR02
+ ) {
Actor_Set_Goal_Number(kActorGordo, 201);
} else {
Actor_Set_Goal_Number(kActorGordo, 225);
@@ -571,7 +593,7 @@ bool AIScriptGordo::GoalChanged(int currentGoalNumber, int newGoalNumber) {
Actor_Says(kActorMcCoy, 3080, 15);
Actor_Says(kActorGordo, 200, 15);
Actor_Says(kActorMcCoy, 3085, 15);
- sub_410590();
+ dialogueWithGordo2();
break;
case 243:
AI_Movement_Track_Flush(kActorGordo);
@@ -749,7 +771,7 @@ bool AIScriptGordo::UpdateAnimation(int *animation, int *frame) {
_animationState = 0;
_animationFrame = 0;
Actor_Change_Animation_Mode(kActorGordo, kAnimationModeIdle);
- Actor_Set_Goal_Number(kActorGordo, 93);
+ Actor_Set_Goal_Number(kActorGordo, kGoalGordoWalkToHowieLee);
}
break;
case 4:
@@ -1406,66 +1428,10 @@ void AIScriptGordo::FledCombat() {
// return false;
}
-void AIScriptGordo::sub_40FD00() {
+void AIScriptGordo::McCoyTalkWithGordo() {
Player_Loses_Control();
Actor_Face_Actor(kActorMcCoy, kActorGordo, true);
- if (Game_Flag_Query(543)) {
- if (!Game_Flag_Query(kFlagDR05BombExploded)
- || Actor_Clue_Query(kActorMcCoy, kClueGordoInterview1)
- || Actor_Clue_Query(kActorMcCoy, kClueGordoInterview2)
- ) {
- if (Game_Flag_Query(544)) {
- switch(Random_Query(1, 4)) {
- case 1:
- Actor_Says(kActorMcCoy, 6460, 13);
- break;
- case 2:
- Actor_Says(kActorMcCoy, 6550, 14);
- break;
- case 3:
- Actor_Says(kActorMcCoy, 365, 12);
- break;
- case 4:
- Actor_Says(kActorMcCoy, 525, 12);
- break;
- }
- } else {
- Actor_Says(kActorMcCoy, 6490, 14);
- AI_Movement_Track_Pause(kActorGordo);
- Loop_Actor_Walk_To_Actor(kActorGordo, kActorMcCoy, 60, false, false);
- Actor_Face_Actor(kActorGordo, kActorMcCoy, true);
- Actor_Face_Actor(kActorMcCoy, kActorGordo, true);
- Actor_Says(kActorGordo, 990, 13);
- Actor_Says(kActorGordo, 1000, 15);
- Game_Flag_Set(544);
- AI_Movement_Track_Unpause(kActorGordo);
- }
- } else {
- Actor_Says(kActorMcCoy, 6485, 12);
- AI_Movement_Track_Pause(kActorGordo);
- Loop_Actor_Walk_To_Actor(kActorGordo, kActorMcCoy, 48, false, false);
- Actor_Face_Actor(kActorGordo, kActorMcCoy, true);
- Actor_Face_Actor(kActorMcCoy, kActorGordo, true);
- if (Game_Flag_Query(kFlagGordoIsReplicant)) {
- Actor_Says(kActorGordo, 1010, 12);
- Actor_Says(kActorMcCoy, 6495, 14);
- Actor_Says(kActorGordo, 1020, 13);
- Actor_Says(kActorMcCoy, 6500, 14);
- Actor_Says(kActorGordo, 1030, 15);
- Actor_Clue_Acquire(kActorMcCoy, kClueGordoInterview1, false, kActorGordo);
- } else {
- Actor_Says(kActorGordo, 1040, 12);
- Actor_Says(kActorGordo, 1050, 13);
- Actor_Says(kActorMcCoy, 6505, 14);
- Actor_Says(kActorGordo, 1060, 13);
- Actor_Says(kActorGordo, 1070, 14);
- Actor_Says(kActorMcCoy, 6510, 16);
- Actor_Says(kActorGordo, 1080, 15);
- Actor_Clue_Acquire(kActorMcCoy, kClueGordoInterview2, false, kActorGordo);
- }
- AI_Movement_Track_Unpause(kActorGordo);
- }
- } else {
+ if (!Game_Flag_Query(kFlagGordoTalk1)) {
Actor_Says(kActorMcCoy, 6460, 12);
AI_Movement_Track_Pause(kActorGordo);
Loop_Actor_Walk_To_Actor(kActorGordo, kActorMcCoy, 36, false, false);
@@ -1485,8 +1451,61 @@ void AIScriptGordo::sub_40FD00() {
Actor_Says(kActorGordo, 960, 15);
Actor_Says(kActorGordo, 970, 12);
AI_Movement_Track_Unpause(kActorGordo);
- Game_Flag_Set(543);
+ Game_Flag_Set(kFlagGordoTalk1);
+ } else if ( Game_Flag_Query(kFlagDR05BombExploded)
+ && !Actor_Clue_Query(kActorMcCoy, kClueGordoInterview1)
+ && !Actor_Clue_Query(kActorMcCoy, kClueGordoInterview2)
+ ) {
+ Actor_Says(kActorMcCoy, 6485, 12);
+ AI_Movement_Track_Pause(kActorGordo);
+ Loop_Actor_Walk_To_Actor(kActorGordo, kActorMcCoy, 48, false, false);
+ Actor_Face_Actor(kActorGordo, kActorMcCoy, true);
+ Actor_Face_Actor(kActorMcCoy, kActorGordo, true);
+ if (Game_Flag_Query(kFlagGordoIsReplicant)) {
+ Actor_Says(kActorGordo, 1010, 12);
+ Actor_Says(kActorMcCoy, 6495, 14);
+ Actor_Says(kActorGordo, 1020, 13);
+ Actor_Says(kActorMcCoy, 6500, 14);
+ Actor_Says(kActorGordo, 1030, 15);
+ Actor_Clue_Acquire(kActorMcCoy, kClueGordoInterview1, false, kActorGordo);
+ } else {
+ Actor_Says(kActorGordo, 1040, 12);
+ Actor_Says(kActorGordo, 1050, 13);
+ Actor_Says(kActorMcCoy, 6505, 14);
+ Actor_Says(kActorGordo, 1060, 13);
+ Actor_Says(kActorGordo, 1070, 14);
+ Actor_Says(kActorMcCoy, 6510, 16);
+ Actor_Says(kActorGordo, 1080, 15);
+ Actor_Clue_Acquire(kActorMcCoy, kClueGordoInterview2, false, kActorGordo);
+ }
+ AI_Movement_Track_Unpause(kActorGordo);
+ } else if (!Game_Flag_Query(kFlagGordoTalk2)) {
+ Actor_Says(kActorMcCoy, 6490, 14);
+ AI_Movement_Track_Pause(kActorGordo);
+ Loop_Actor_Walk_To_Actor(kActorGordo, kActorMcCoy, 60, false, false);
+ Actor_Face_Actor(kActorGordo, kActorMcCoy, true);
+ Actor_Face_Actor(kActorMcCoy, kActorGordo, true);
+ Actor_Says(kActorGordo, 990, 13);
+ Actor_Says(kActorGordo, 1000, 15);
+ Game_Flag_Set(kFlagGordoTalk2);
+ AI_Movement_Track_Unpause(kActorGordo);
+ } else {
+ switch(Random_Query(1, 4)) {
+ case 1:
+ Actor_Says(kActorMcCoy, 6460, 13);
+ break;
+ case 2:
+ Actor_Says(kActorMcCoy, 6550, 14);
+ break;
+ case 3:
+ Actor_Says(kActorMcCoy, 365, 12);
+ break;
+ case 4:
+ Actor_Says(kActorMcCoy, 525, 12);
+ break;
+ }
}
+
return Player_Gains_Control();
}
@@ -1506,21 +1525,23 @@ void AIScriptGordo::sub_4103B8() {
Actor_Says(kActorGordo, 350, 13);
Actor_Says(kActorMcCoy, 3225, 18);
Player_Gains_Control();
- sub_41090C();
+ dialogueWithGordo1();
Player_Loses_Control();
Game_Flag_Set(561);
Actor_Face_Heading(kActorGordo, 506, false);
Actor_Change_Animation_Mode(kActorGordo, 23);
}
-void AIScriptGordo::sub_410590() {
+void AIScriptGordo::dialogueWithGordo2() {
Music_Stop(5);
Dialogue_Menu_Clear_List();
DM_Add_To_List_Never_Repeat_Once_Selected(820, -1, 5, 7);
DM_Add_To_List_Never_Repeat_Once_Selected(830, 7, 5, -1);
+
Dialogue_Menu_Appear(320, 240);
int answer = Dialogue_Menu_Query_Input();
Dialogue_Menu_Disappear();
+
if (answer == 820) {
Actor_Says(kActorMcCoy, 3090, 16);
Actor_Says(kActorMcCoy, 3095, 15);
@@ -1535,8 +1556,8 @@ void AIScriptGordo::sub_410590() {
Game_Flag_Set(251);
Game_Flag_Set(592);
Scene_Exits_Enable();
- Game_Flag_Reset(kFlagMcCoyAtNRxx);
- Game_Flag_Set(kFlagMcCoyAtPSxx);
+ Game_Flag_Reset(kFlagMcCoyInNightclubRow);
+ Game_Flag_Set(kFlagMcCoyInPoliceStation);
Set_Enter(kSetPS09, kScenePS09);
} else if (answer == 830) {
Actor_Says(kActorMcCoy, 3100, 16);
@@ -1559,11 +1580,13 @@ void AIScriptGordo::sub_410590() {
}
}
-void AIScriptGordo::sub_41090C() {
+void AIScriptGordo::dialogueWithGordo1() {
Dialogue_Menu_Clear_List();
DM_Add_To_List_Never_Repeat_Once_Selected(760, 2, 5, 6);
DM_Add_To_List_Never_Repeat_Once_Selected(770, 6, 3, 1);
- if (Actor_Clue_Query(kActorMcCoy, kClueDektorasDressingRoom) || Actor_Clue_Query(kActorMcCoy, kClueWomanInAnimoidRow)) {
+ if (Actor_Clue_Query(kActorMcCoy, kClueDektorasDressingRoom)
+ || Actor_Clue_Query(kActorMcCoy, kClueWomanInAnimoidRow)
+ ) {
DM_Add_To_List_Never_Repeat_Once_Selected(780, 5, 5, 5);
}
if (Actor_Clue_Query(kActorMcCoy, kClueLucy)) {
@@ -1573,9 +1596,11 @@ void AIScriptGordo::sub_41090C() {
DM_Add_To_List_Never_Repeat_Once_Selected(800, -1, 4, 8);
}
Dialogue_Menu_Add_DONE_To_List(810);
+
Dialogue_Menu_Appear(320, 240);
int answer = Dialogue_Menu_Query_Input();
Dialogue_Menu_Disappear();
+
switch (answer) {
case 760:
Actor_Says(kActorMcCoy, 3230, kAnimationModeTalk);
@@ -1651,6 +1676,7 @@ void AIScriptGordo::sub_41090C() {
}
void AIScriptGordo::sub_41117C() {
+ // this has no real use as _animationState is always 0
switch (_animationState) {
case 0:
break;
diff --git a/engines/bladerunner/script/ai/holloway.cpp b/engines/bladerunner/script/ai/holloway.cpp
index ed4453ec60..dc52107c1c 100644
--- a/engines/bladerunner/script/ai/holloway.cpp
+++ b/engines/bladerunner/script/ai/holloway.cpp
@@ -183,7 +183,7 @@ bool AIScriptHolloway::GoalChanged(int currentGoalNumber, int newGoalNumber) {
if (Global_Variable_Query(40) != 1) {
Player_Gains_Control();
}
- Game_Flag_Set(334);
+ Game_Flag_Set(kFlagUG03toUG04);
Set_Enter(kSetUG04, kSceneUG04);
break;
diff --git a/engines/bladerunner/script/ai/howie_lee.cpp b/engines/bladerunner/script/ai/howie_lee.cpp
index 2291d5ac12..93f08672db 100644
--- a/engines/bladerunner/script/ai/howie_lee.cpp
+++ b/engines/bladerunner/script/ai/howie_lee.cpp
@@ -55,7 +55,7 @@ bool AIScriptHowieLee::Update() {
Actor_Set_Goal_Number(kActorHowieLee, 1);
}
- if ( Game_Flag_Query(kFlagMcCoyAtCTxx)
+ if ( Game_Flag_Query(kFlagMcCoyInChinaTown)
&& !Actor_Query_In_Set(kActorHowieLee, kSetCT01_CT12)
) {
AI_Movement_Track_Flush(kActorHowieLee);
@@ -64,8 +64,8 @@ bool AIScriptHowieLee::Update() {
}
if ( Actor_Query_Goal_Number(kActorHowieLee) == 1
- && Game_Flag_Query(kFlagBoughtHowieLeeFood)
- && !Game_Flag_Query(kFlagMcCoyAtCTxx)
+ && Game_Flag_Query(kFlagCT01BoughtHowieLeeFood)
+ && !Game_Flag_Query(kFlagMcCoyInChinaTown)
) {
Actor_Set_Goal_Number(kActorHowieLee, 4);
return true;
@@ -124,20 +124,20 @@ void AIScriptHowieLee::EnteredScene(int sceneId) {
if (Actor_Query_Goal_Number(kActorHowieLee) == 4
&& Actor_Query_In_Set(kActorHowieLee, kSetCT03_CT04)
) {
- if ( Game_Flag_Query(kFlagMcCoyKilledHomeless)
- && !Game_Flag_Query(kFlagHomelessBodyInDumpster)
- && !Game_Flag_Query(kFlagHomelessBodyFound)
+ if ( Game_Flag_Query(kFlagCT04HomelessKilledByMcCoy)
+ && !Game_Flag_Query(kFlagCT04HomelessBodyInDumpster)
+ && !Game_Flag_Query(kFlagCT04HomelessBodyFound)
) {
- Game_Flag_Set(kFlagHomelessBodyFound);
+ Game_Flag_Set(kFlagCT04HomelessBodyFound);
// return false;
}
- if (!Game_Flag_Query(kFlagMcCoyKilledHomeless)
- && Game_Flag_Query(kFlagHomelessBodyInDumpster)
- && !Game_Flag_Query(kFlagHomelessBodyFound)
+ if (!Game_Flag_Query(kFlagCT04HomelessKilledByMcCoy)
+ && Game_Flag_Query(kFlagCT04HomelessBodyInDumpster)
+ && !Game_Flag_Query(kFlagCT04HomelessBodyFound)
&& Random_Query(1, 10) == 1
) {
- Game_Flag_Set(kFlagHomelessBodyFound);
+ Game_Flag_Set(kFlagCT04HomelessBodyFound);
// return true;
}
// return false;
diff --git a/engines/bladerunner/script/ai/insect_dealer.cpp b/engines/bladerunner/script/ai/insect_dealer.cpp
index fb0924a066..129a8e3535 100644
--- a/engines/bladerunner/script/ai/insect_dealer.cpp
+++ b/engines/bladerunner/script/ai/insect_dealer.cpp
@@ -111,8 +111,8 @@ bool AIScriptInsectDealer::GoalChanged(int currentGoalNumber, int newGoalNumber)
Actor_Put_In_Set(kActorInsectDealer, kSetFreeSlotH);
Actor_Set_At_Waypoint(kActorInsectDealer, 40, 0);
- if (!Game_Flag_Query(374)) {
- Game_Flag_Set(374);
+ if (!Game_Flag_Query(kFlagAR02DektoraBoughtScorpions)) {
+ Game_Flag_Set(kFlagAR02DektoraBoughtScorpions);
Item_Remove_From_World(kItemScrorpions);
}
}
diff --git a/engines/bladerunner/script/ai/izo.cpp b/engines/bladerunner/script/ai/izo.cpp
index 3f2715ac78..88070113cc 100644
--- a/engines/bladerunner/script/ai/izo.cpp
+++ b/engines/bladerunner/script/ai/izo.cpp
@@ -163,7 +163,7 @@ void AIScriptIzo::ClickedByPlayer() {
Actor_Face_Actor(kActorIzo, kActorMcCoy, true);
Actor_Says(kActorIzo, 700, 17);
Actor_Says(kActorMcCoy, 5465, 14);
- someDialog();
+ dialogueWithIzo();
}
if (Actor_Query_Goal_Number(kActorIzo) == kGoalIzoRC03Walk) {
@@ -245,7 +245,7 @@ void AIScriptIzo::Retired(int byActorId) {
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);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -12.0f, -41.58f, 72.0f, 0, true, false, 0);
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(579);
@@ -1008,7 +1008,7 @@ void AIScriptIzo::FledCombat() {
// return false;
}
-void AIScriptIzo::someDialog() {
+void AIScriptIzo::dialogueWithIzo() {
Dialogue_Menu_Clear_List();
DM_Add_To_List_Never_Repeat_Once_Selected(0, 7, 4, -1); // MOTIVES
diff --git a/engines/bladerunner/script/ai/klein.cpp b/engines/bladerunner/script/ai/klein.cpp
index 955150c581..fc2893d17d 100644
--- a/engines/bladerunner/script/ai/klein.cpp
+++ b/engines/bladerunner/script/ai/klein.cpp
@@ -70,11 +70,11 @@ bool AIScriptKlein::Update() {
}
if ( Player_Query_Current_Scene() == kScenePS07
&& Actor_Query_Friendliness_To_Other(kActorKlein, kActorMcCoy) < 35
- && !Game_Flag_Query(kFlagKleinInsulted)
+ && !Game_Flag_Query(kFlagPS07KleinInsulted)
) {
AI_Countdown_Timer_Reset(kActorKlein, 2);
AI_Countdown_Timer_Start(kActorKlein, 2, 5);
- Game_Flag_Set(kFlagKleinInsulted);
+ Game_Flag_Set(kFlagPS07KleinInsulted);
return true;
}
if (Actor_Query_Goal_Number(kActorKlein) == 7) {
@@ -92,8 +92,8 @@ bool AIScriptKlein::Update() {
void AIScriptKlein::TimerExpired(int timer) {
if (timer == 2) {
- if ( Game_Flag_Query(kFlagKleinInsulted)
- && !Game_Flag_Query(kFlagKleinInsultedTalk)
+ if ( Game_Flag_Query(kFlagPS07KleinInsulted)
+ && !Game_Flag_Query(kFlagPS07KleinInsultedTalk)
&& Actor_Query_Is_In_Current_Set(kActorKlein)
) {
Actor_Face_Actor(kActorKlein, kActorMcCoy, true);
@@ -101,7 +101,7 @@ void AIScriptKlein::TimerExpired(int timer) {
Actor_Says(kActorMcCoy, 4120, kAnimationModeTalk);
Actor_Says(kActorKlein, 20, kAnimationModeTalk);
Actor_Says(kActorMcCoy, 4125, kAnimationModeTalk);
- Game_Flag_Set(kFlagKleinInsultedTalk);
+ Game_Flag_Set(kFlagPS07KleinInsultedTalk);
Actor_Set_Goal_Number(kActorKlein, 4);
} else {
Actor_Says(kActorKlein, 10, kAnimationModeTalk);
diff --git a/engines/bladerunner/script/ai/mccoy.cpp b/engines/bladerunner/script/ai/mccoy.cpp
index 48a8e8b698..0f8843af61 100644
--- a/engines/bladerunner/script/ai/mccoy.cpp
+++ b/engines/bladerunner/script/ai/mccoy.cpp
@@ -750,7 +750,7 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
case 44:
*animation = 30;
if (_animationFrame++ == 127) {
- Game_Flag_Set(325);
+ Game_Flag_Set(kFlagCT04BodyDumped);
}
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(30)) {
*animation = 19;
@@ -807,7 +807,7 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
} else if (_animationFrame == 4) {
Sound_Right_Footstep_Walk(kActorMcCoy);
}
- if (Game_Flag_Query(359)) {
+ if (Game_Flag_Query(kFlagHF05toHF07)) {
sub_4059D0(-0.2f);
}
break;
@@ -823,7 +823,7 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
} else if (_animationFrame == 3) {
Sound_Right_Footstep_Walk(kActorMcCoy);
}
- if (Game_Flag_Query(358)) {
+ if (Game_Flag_Query(kFlagHF07toHF05)) {
sub_405940(0.5f);
}
break;
@@ -839,7 +839,7 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
} else if (_animationFrame == 3) {
Sound_Right_Footstep_Walk(kActorMcCoy);
}
- if (Game_Flag_Query(359)) {
+ if (Game_Flag_Query(kFlagHF05toHF07)) {
sub_4059D0(-0.2f);
}
break;
@@ -855,7 +855,7 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
} else if (_animationFrame == 4) {
Sound_Right_Footstep_Walk(kActorMcCoy);
}
- if (Game_Flag_Query(358)) {
+ if (Game_Flag_Query(kFlagHF07toHF05)) {
sub_405940(0.5f);
}
break;
diff --git a/engines/bladerunner/script/ai/moraji.cpp b/engines/bladerunner/script/ai/moraji.cpp
index 067b5668cd..6e650e4316 100644
--- a/engines/bladerunner/script/ai/moraji.cpp
+++ b/engines/bladerunner/script/ai/moraji.cpp
@@ -38,11 +38,11 @@ void AIScriptMoraji::Initialize() {
_var1 = 1;
_var2 = 0;
- Actor_Set_Goal_Number(kActorMoraji, 0);
+ Actor_Set_Goal_Number(kActorMoraji, kGoalMorajiDefault);
}
bool AIScriptMoraji::Update() {
- if ( Actor_Query_Goal_Number(kActorMoraji) == 0
+ if ( Actor_Query_Goal_Number(kActorMoraji) == kGoalMorajiDefault
&& Player_Query_Current_Scene() == kSceneDR05
&& !Game_Flag_Query(kFlagDR05BombActivated)
) {
@@ -52,21 +52,23 @@ bool AIScriptMoraji::Update() {
return true;
}
- if (Actor_Query_Goal_Number(kActorMoraji) == 19) {
+ if (Actor_Query_Goal_Number(kActorMoraji) == kGoalMorajiScream) {
Actor_Says(kActorMoraji, 80, 13);
_animationState = 9;
_animationFrame = -1;
- Actor_Set_Goal_Number(kActorMoraji, 18);
+ Actor_Set_Goal_Number(kActorMoraji, kGoalMorajiGetUp);
}
+
return false;
}
void AIScriptMoraji::TimerExpired(int timer) {
if (timer == 2) {
AI_Countdown_Timer_Reset(kActorMoraji, 2);
- if (Actor_Query_Goal_Number(kActorMoraji) != 20
- && Actor_Query_Goal_Number(kActorMoraji) != 21
- && Actor_Query_Goal_Number(kActorMoraji) != 99
+
+ if (Actor_Query_Goal_Number(kActorMoraji) != kGoalMorajiJump
+ && Actor_Query_Goal_Number(kActorMoraji) != kGoalMorajiLayDown
+ && Actor_Query_Goal_Number(kActorMoraji) != kGoalMorajiPerished
) {
Game_Flag_Set(kFlagDR05BombWillExplode);
}
@@ -77,7 +79,7 @@ void AIScriptMoraji::TimerExpired(int timer) {
}
void AIScriptMoraji::CompletedMovementTrack() {
- if (Actor_Query_Goal_Number(kActorMoraji) == 11) {
+ if (Actor_Query_Goal_Number(kActorMoraji) == kGoalMorajiRunOut) {
AI_Countdown_Timer_Reset(kActorMoraji, 2);
Game_Flag_Set(kFlagDR05BombWillExplode);
_animationState = 3;
@@ -117,17 +119,16 @@ void AIScriptMoraji::ShotAtAndMissed() {
bool AIScriptMoraji::ShotAtAndHit() {
if (Actor_Query_Goal_Number(kActorMoraji)) {
- if (Actor_Query_Goal_Number(kActorMoraji) == 21) {
- Game_Flag_Set(713);
- Actor_Set_Goal_Number(kActorMoraji, 22);
+ if (Actor_Query_Goal_Number(kActorMoraji) == kGoalMorajiLayDown) {
+ Game_Flag_Set(kFlagDR04McCoyShotMoraji);
+ Actor_Set_Goal_Number(kActorMoraji, kGoalMorajiDie);
Actor_Set_Goal_Number(kActorOfficerGrayford, 101);
-
return true;
} else {
return false;
}
} else {
- Actor_Set_Goal_Number(kActorMoraji, 5);
+ Actor_Set_Goal_Number(kActorMoraji, kGoalMorajiShot);
return true;
}
}
@@ -142,24 +143,27 @@ int AIScriptMoraji::GetFriendlinessModifierIfGetsClue(int otherActorId, int clue
bool AIScriptMoraji::GoalChanged(int currentGoalNumber, int newGoalNumber) {
switch (newGoalNumber) {
- case 0:
+ case kGoalMorajiDefault:
Actor_Put_In_Set(kActorMoraji, kSetDR05);
Actor_Set_At_XYZ(kActorMoraji, 50.0f, 0.30f, 35.0f, 414);
- Actor_Set_Targetable(kActorMoraji, 1);
+ Actor_Set_Targetable(kActorMoraji, true);
return false;
- case 5:
- Actor_Set_Targetable(kActorMoraji, 0);
+
+ case kGoalMorajiShot:
+ Actor_Set_Targetable(kActorMoraji, false);
Sound_Play(4, 100, 0, 0, 50);
_animationState = 10;
_animationFrame = 0;
- Actor_Retired_Here(kActorMoraji, 60, 16, 1, -1);
+ Actor_Retired_Here(kActorMoraji, 60, 16, true, -1);
return true;
- case 10:
- Actor_Set_Targetable(kActorMoraji, 0);
+
+ case kGoalMorajiFreed:
+ Actor_Set_Targetable(kActorMoraji, false);
_animationState = 8;
_animationFrame = 1;
return true;
- case 11:
+
+ case kGoalMorajiRunOut:
_animationState = 3;
_animationFrame = 0;
AI_Movement_Track_Flush(kActorMoraji);
@@ -169,43 +173,47 @@ bool AIScriptMoraji::GoalChanged(int currentGoalNumber, int newGoalNumber) {
AI_Movement_Track_Append_Run(kActorMoraji, 98, 0);
AI_Movement_Track_Repeat(kActorMoraji);
return true;
- case 20:
+
+ case kGoalMorajiJump:
_animationState = 11;
return true;
- case 21:
+
+ case kGoalMorajiLayDown:
Actor_Retired_Here(kActorMoraji, 60, 16, 0, -1);
- Actor_Set_Targetable(kActorMoraji, 1);
+ Actor_Set_Targetable(kActorMoraji, true);
return true;
- case 22:
+
+ case kGoalMorajiDie:
_animationFrame = -1;
_animationState = 13;
return true;
- case 23:
- Actor_Set_Targetable(kActorMoraji, 0);
+
+ case kGoalMorajiDead:
+ Actor_Set_Targetable(kActorMoraji, false);
_animationState = 14;
Actor_Retired_Here(kActorMoraji, 60, 16, 1, -1);
return true;
break;
- case 30:
+
+ case kGoalMorajiChooseFate:
if (Player_Query_Current_Scene() == kSceneDR05) {
- Game_Flag_Set(kFlagDR05BombExplosionView);
+ Game_Flag_Set(kFlagDR05ViewExplosion);
Set_Enter(kSetDR01_DR02_DR04, kSceneDR04);
} else {
if (Actor_Query_In_Set(kActorMoraji, kSetDR05)) {
- Actor_Set_Goal_Number(kActorMoraji, 99);
+ Actor_Set_Goal_Number(kActorMoraji, kGoalMorajiPerished);
} else {
- Actor_Set_Goal_Number(kActorMoraji, 20);
+ Actor_Set_Goal_Number(kActorMoraji, kGoalMorajiJump);
}
- Game_Flag_Set(kFlagMorajiExploded);
+ Game_Flag_Set(kFlagDR05JustExploded);
}
return true;
- case 99:
+
+ case kGoalMorajiPerished:
AI_Movement_Track_Flush(kActorMoraji);
AI_Movement_Track_Append(kActorMoraji, 41, 0);
AI_Movement_Track_Repeat(kActorMoraji);
return true;
- default:
- break;
}
return false;
@@ -219,7 +227,7 @@ bool AIScriptMoraji::UpdateAnimation(int *animation, int *frame) {
_var2--;
} else {
_animationFrame += _var1;
- if (!Random_Query(0, 10)) {
+ if (Random_Query(0, 10) == 0) {
_var1 = -_var1;
}
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) {
@@ -291,7 +299,7 @@ bool AIScriptMoraji::UpdateAnimation(int *animation, int *frame) {
_animationFrame = 0;
_animationState = 0;
*animation = 733;
- Actor_Set_Goal_Number(kActorMoraji, 19);
+ Actor_Set_Goal_Number(kActorMoraji, kGoalMorajiScream);
}
if (_animationFrame == 6) {
Ambient_Sounds_Play_Sound(488, 69, 0, 0, 20);
@@ -305,7 +313,7 @@ bool AIScriptMoraji::UpdateAnimation(int *animation, int *frame) {
_animationFrame = 0;
_animationState = 3;
*animation = 732;
- Actor_Set_Goal_Number(kActorMoraji, 11);
+ Actor_Set_Goal_Number(kActorMoraji, kGoalMorajiRunOut);
}
break;
@@ -320,7 +328,7 @@ bool AIScriptMoraji::UpdateAnimation(int *animation, int *frame) {
*animation = 739;
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(739)) {
- Actor_Set_Goal_Number(kActorMoraji, 21);
+ Actor_Set_Goal_Number(kActorMoraji, kGoalMorajiLayDown);
_animationFrame = 0;
_animationState = 12;
*animation = 740;
@@ -351,7 +359,7 @@ bool AIScriptMoraji::UpdateAnimation(int *animation, int *frame) {
_animationFrame++;
if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(741) - 1) {
_animationFrame = Slice_Animation_Query_Number_Of_Frames(*animation) - 1;
- Actor_Set_Goal_Number(kActorMoraji, 23);
+ Actor_Set_Goal_Number(kActorMoraji, kGoalMorajiDead);
}
break;
@@ -370,67 +378,67 @@ bool AIScriptMoraji::UpdateAnimation(int *animation, int *frame) {
bool AIScriptMoraji::ChangeAnimationMode(int mode) {
switch (mode) {
- case 0:
- if (_animationState != 12 && Actor_Query_Goal_Number(kActorMoraji) != 11) {
+ case kAnimationModeIdle:
+ if (_animationState != 12
+ && Actor_Query_Goal_Number(kActorMoraji) != 11
+ ) {
_animationState = 0;
_animationFrame = 0;
}
- return 1;
+ break;
- case 1:
+ case kAnimationModeWalk:
_animationState = 2;
_animationFrame = 0;
- return 1;
+ break;
- case 2:
- if (_animationState) {
- if (_animationState != 3 || _animationState > 3) {
- _animationState = 3;
- _animationFrame = 0;
- }
- } else {
+ case kAnimationModeRun:
+ if (_animationState == 0) {
_animationState = 1;
_animationStateNext = 3;
_animationNext = 732;
+ } else if (_animationState != 3) {
+ _animationState = 3;
+ _animationFrame = 0;
}
break;
case 3:
if (_animationState != 12) {
- if (_animationState) {
- _animationState = 5;
- _animationFrame = 0;
- } else {
+ if (_animationState == 0) {
_animationState = 1;
_animationStateNext = 5;
_animationNext = 734;
+ } else {
+ _animationState = 5;
+ _animationFrame = 0;
}
}
break;
case 12:
- if (_animationState) {
- _animationState = 6;
- _animationFrame = 0;
- } else {
+ if (_animationState == 0) {
_animationState = 1;
_animationStateNext = 6;
_animationNext = 735;
+ } else {
+ _animationState = 6;
+ _animationFrame = 0;
}
break;
case 13:
- if (_animationState) {
- _animationState = 7;
- _animationFrame = 0;
- } else {
+ if (_animationState == 0) {
_animationState = 1;
_animationStateNext = 7;
_animationNext = 736;
+ } else {
+ _animationState = 7;
+ _animationFrame = 0;
}
break;
- case 48:
+ case kAnimationModeDie:
_animationState = 13;
_animationFrame = -1;
break;
diff --git a/engines/bladerunner/script/ai/mutant1.cpp b/engines/bladerunner/script/ai/mutant1.cpp
index 8a531ed3cf..fa9b736671 100644
--- a/engines/bladerunner/script/ai/mutant1.cpp
+++ b/engines/bladerunner/script/ai/mutant1.cpp
@@ -178,7 +178,7 @@ bool AIScriptMutant1::GoalChanged(int currentGoalNumber, int newGoalNumber) {
AI_Movement_Track_Append(kActorMutant1, 39, 0);
AI_Movement_Track_Repeat(kActorMutant1);
- if (Game_Flag_Query(kFlagMcCoyKilledHomeless)) {
+ if (Game_Flag_Query(kFlagCT04HomelessKilledByMcCoy)) {
Actor_Set_Combat_Aggressiveness(kActorMutant1, 70);
Actor_Set_Friendliness_To_Other(kActorMutant1, kActorMcCoy, 20);
}
@@ -352,7 +352,7 @@ bool AIScriptMutant1::GoalChanged(int currentGoalNumber, int newGoalNumber) {
Actor_Set_Intelligence(kActorMutant1, 40);
Actor_Set_Health(kActorMutant1, 10 * Query_Difficulty_Level() + 30, 10 * Query_Difficulty_Level() + 30);
- if (Game_Flag_Query(kFlagMcCoyKilledHomeless)) {
+ if (Game_Flag_Query(kFlagCT04HomelessKilledByMcCoy)) {
Actor_Set_Combat_Aggressiveness(kActorMutant1, 70);
Actor_Set_Friendliness_To_Other(kActorMutant1, kActorMcCoy, 20);
} else {
diff --git a/engines/bladerunner/script/ai/mutant2.cpp b/engines/bladerunner/script/ai/mutant2.cpp
index 16b2ca8592..3e837b6388 100644
--- a/engines/bladerunner/script/ai/mutant2.cpp
+++ b/engines/bladerunner/script/ai/mutant2.cpp
@@ -162,7 +162,7 @@ bool AIScriptMutant2::GoalChanged(int currentGoalNumber, int newGoalNumber) {
AI_Movement_Track_Append(kActorMutant2, 39, 0);
AI_Movement_Track_Repeat(kActorMutant2);
- if (Game_Flag_Query(kFlagMcCoyKilledHomeless)) {
+ if (Game_Flag_Query(kFlagCT04HomelessKilledByMcCoy)) {
Actor_Set_Combat_Aggressiveness(kActorMutant2, 60);
Actor_Set_Friendliness_To_Other(kActorMutant2, kActorMcCoy, 30);
}
@@ -334,7 +334,7 @@ bool AIScriptMutant2::GoalChanged(int currentGoalNumber, int newGoalNumber) {
Actor_Set_Intelligence(kActorMutant2, 20);
Actor_Set_Health(71, 10 * Query_Difficulty_Level() + 50, 10 * Query_Difficulty_Level() + 50);
- if (Game_Flag_Query(kFlagMcCoyKilledHomeless)) {
+ if (Game_Flag_Query(kFlagCT04HomelessKilledByMcCoy)) {
Actor_Set_Combat_Aggressiveness(kActorMutant2, 60);
Actor_Set_Friendliness_To_Other(kActorMutant2, kActorMcCoy, 30);
} else {
diff --git a/engines/bladerunner/script/ai/mutant3.cpp b/engines/bladerunner/script/ai/mutant3.cpp
index 0a6875e560..848dd6cc62 100644
--- a/engines/bladerunner/script/ai/mutant3.cpp
+++ b/engines/bladerunner/script/ai/mutant3.cpp
@@ -175,7 +175,7 @@ bool AIScriptMutant3::GoalChanged(int currentGoalNumber, int newGoalNumber) {
AI_Movement_Track_Append(kActorMutant3, 39, 0);
AI_Movement_Track_Repeat(kActorMutant3);
- if (Game_Flag_Query(kFlagMcCoyKilledHomeless)) {
+ if (Game_Flag_Query(kFlagCT04HomelessKilledByMcCoy)) {
Actor_Set_Combat_Aggressiveness(kActorMutant3, 80);
Actor_Set_Friendliness_To_Other(kActorMutant3, kActorMcCoy, 20);
}
@@ -345,7 +345,7 @@ bool AIScriptMutant3::GoalChanged(int currentGoalNumber, int newGoalNumber) {
Actor_Set_Intelligence(kActorMutant3, 40);
Actor_Set_Health(kActorMutant3, 10 * Query_Difficulty_Level() + 50, 10 * Query_Difficulty_Level() + 50);
- if (Game_Flag_Query(kFlagMcCoyKilledHomeless)) {
+ if (Game_Flag_Query(kFlagCT04HomelessKilledByMcCoy)) {
Actor_Set_Combat_Aggressiveness(kActorMutant3, 80);
Actor_Set_Friendliness_To_Other(kActorMutant3, kActorMcCoy, 20);
} else {
diff --git a/engines/bladerunner/script/ai/officer_grayford.cpp b/engines/bladerunner/script/ai/officer_grayford.cpp
index 2ed286e5a9..d55b611d75 100644
--- a/engines/bladerunner/script/ai/officer_grayford.cpp
+++ b/engines/bladerunner/script/ai/officer_grayford.cpp
@@ -52,7 +52,7 @@ bool AIScriptOfficerGrayford::Update() {
} else if (Global_Variable_Query(kVariableChapter) == 5 && Actor_Query_Goal_Number(kActorOfficerGrayford) < 400) {
AI_Movement_Track_Flush(kActorOfficerGrayford);
Actor_Set_Goal_Number(kActorOfficerGrayford, 400);
- } else if (!Game_Flag_Query(kFlagMcCoyAtDRxx)
+ } else if (!Game_Flag_Query(kFlagMcCoyInDNARow)
&& Actor_Query_Goal_Number(kActorOfficerGrayford) > 102
&& Actor_Query_Goal_Number(kActorOfficerGrayford) < 110) {
Actor_Set_Goal_Number(kActorOfficerGrayford, 110);
@@ -471,7 +471,7 @@ bool AIScriptOfficerGrayford::GoalChanged(int currentGoalNumber, int newGoalNumb
Actor_Face_Actor(kActorOfficerGrayford, kActorMcCoy, true);
Actor_Face_Actor(kActorMcCoy, kActorOfficerGrayford, true);
- if (Game_Flag_Query(713)) {
+ if (Game_Flag_Query(kFlagDR04McCoyShotMoraji)) {
Actor_Set_Goal_Number(kActorMcCoy, 500);
} else {
Actor_Says(kActorMcCoy, 960, 15);
diff --git a/engines/bladerunner/script/ai/officer_leary.cpp b/engines/bladerunner/script/ai/officer_leary.cpp
index 19aa6b5332..0348806508 100644
--- a/engines/bladerunner/script/ai/officer_leary.cpp
+++ b/engines/bladerunner/script/ai/officer_leary.cpp
@@ -60,9 +60,9 @@ bool AIScriptOfficerLeary::Update() {
return false;
}
- if (!Game_Flag_Query(kFlagMcCoyAtRCxx)
- && Game_Flag_Query(kFlagChopstickWrapperTaken)
- && Game_Flag_Query(kFlagChromeDebrisTaken)
+ if (!Game_Flag_Query(kFlagMcCoyInRunciters)
+ && Game_Flag_Query(kFlagRC51ChopstickWrapperTaken)
+ && Game_Flag_Query(kFlagRC01ChromeDebrisTaken)
&& Player_Query_Current_Scene() != kSceneRC01
&& Global_Variable_Query(kVariableChapter) < 3
) {
@@ -321,7 +321,7 @@ bool AIScriptOfficerLeary::GoalChanged(int currentGoalNumber, int newGoalNumber)
Actor_Clue_Acquire(kActorOfficerLeary, kClueCrowdInterviewB, false, -1);
}
}
- if (Game_Flag_Query(kFlagMcCoyAtRCxx)) {
+ if (Game_Flag_Query(kFlagMcCoyInRunciters)) {
if (Actor_Clue_Query(kActorOfficerLeary, kClueCrowdInterviewA)
&& Actor_Clue_Query(kActorOfficerLeary, kClueCrowdInterviewB)
) {
@@ -906,7 +906,7 @@ bool AIScriptOfficerLeary::UpdateAnimation(int *animation, int *frame) {
return true;
case 0:
if ( Game_Flag_Query(kFlagOfficerLearyTakingNotes)
- && !Game_Flag_Query(KFlagMcCoyAndOfficerLearyTalking)) {
+ && !Game_Flag_Query(kFlagRC01McCoyAndOfficerLearyTalking)) {
_animationState = 31;
_animationFrame = 0;
*animation = 604;
diff --git a/engines/bladerunner/script/ai/photographer.cpp b/engines/bladerunner/script/ai/photographer.cpp
index 2b082e8678..65460036ca 100644
--- a/engines/bladerunner/script/ai/photographer.cpp
+++ b/engines/bladerunner/script/ai/photographer.cpp
@@ -43,11 +43,11 @@ void AIScriptPhotographer::Initialize() {
bool AIScriptPhotographer::Update() {
if ( Game_Flag_Query(kFlagTB02ElevatorToTB05)
- && !Game_Flag_Query(kFlagPhotographerToTB06)
+ && !Game_Flag_Query(kFlagTB06Photographer)
) {
Actor_Put_In_Set(kActorPhotographer, kSetFreeSlotC);
Actor_Set_At_Waypoint(kActorPhotographer, 35, 0);
- Game_Flag_Set(kFlagPhotographerToTB06);
+ Game_Flag_Set(kFlagTB06Photographer);
Actor_Set_Goal_Number(kActorPhotographer, 100);
return true;
diff --git a/engines/bladerunner/script/ai/runciter.cpp b/engines/bladerunner/script/ai/runciter.cpp
index e4625f1159..8087489d49 100644
--- a/engines/bladerunner/script/ai/runciter.cpp
+++ b/engines/bladerunner/script/ai/runciter.cpp
@@ -55,7 +55,7 @@ bool AIScriptRunciter::Update() {
if (Actor_Query_Goal_Number(kActorRunciter) == kGoalRunciterDefault
&& Game_Flag_Query(kFlagRC01PoliceDone)
) {
- Actor_Set_Goal_Number(kActorRunciter, kGoalRunciterHide);
+ Actor_Set_Goal_Number(kActorRunciter, kGoalRunciterGoToFreeSlotGH);
}
if (Global_Variable_Query(kVariableChapter) == 4
&& Actor_Query_Goal_Number(kActorRunciter) < 300
@@ -180,7 +180,7 @@ bool AIScriptRunciter::GoalChanged(int currentGoalNumber, int newGoalNumber) {
Actor_Set_At_Waypoint(kActorRunciter, 92, 567);
return false;
}
- if (newGoalNumber == kGoalRunciterWalkAround) {
+ if (newGoalNumber == kGoalRunciterWalkAroundRC02) {
AI_Movement_Track_Flush(kActorRunciter);
if (Random_Query(0, 1) == 1) {
if (Random_Query(0, 1) == 0) {
@@ -198,7 +198,7 @@ bool AIScriptRunciter::GoalChanged(int currentGoalNumber, int newGoalNumber) {
AI_Movement_Track_Repeat(kActorRunciter);
return true;
}
- if (newGoalNumber == kGoalRunciterHide) {
+ if (newGoalNumber == kGoalRunciterGoToFreeSlotGH) {
AI_Movement_Track_Flush(kActorRunciter);
AI_Movement_Track_Append(kActorRunciter, 39, 120);
AI_Movement_Track_Append(kActorRunciter, 40, 0);
diff --git a/engines/bladerunner/script/ai/sadik.cpp b/engines/bladerunner/script/ai/sadik.cpp
index 0684de914c..353a926eec 100644
--- a/engines/bladerunner/script/ai/sadik.cpp
+++ b/engines/bladerunner/script/ai/sadik.cpp
@@ -57,7 +57,7 @@ bool AIScriptSadik::Update() {
Actor_Set_Goal_Number(kActorSadik, 101);
Actor_Set_Targetable(kActorSadik, true);
Game_Flag_Set(391);
- Game_Flag_Set(406);
+ Game_Flag_Set(kFlagUnused406);
return true;
}
diff --git a/engines/bladerunner/script/ai/steele.cpp b/engines/bladerunner/script/ai/steele.cpp
index c5c5b0cb3c..637d3b0983 100644
--- a/engines/bladerunner/script/ai/steele.cpp
+++ b/engines/bladerunner/script/ai/steele.cpp
@@ -56,21 +56,21 @@ bool AIScriptSteele::Update() {
switch (Global_Variable_Query(kVariableChapter)) {
case 1:
- if (Game_Flag_Query(kFlagMcCoyAtRCxx)
+ if (Game_Flag_Query(kFlagMcCoyInRunciters)
&& Game_Flag_Query(183)
) {
Actor_Set_Goal_Number(kActorSteele, 3);
return true;
}
- if (Game_Flag_Query(kFlagMcCoyAtCTxx)
+ if (Game_Flag_Query(kFlagMcCoyInChinaTown)
&& Game_Flag_Query(184)
) {
Actor_Set_Goal_Number(kActorSteele, 6);
return true;
}
- if (Game_Flag_Query(kFlagMcCoyAtPSxx)
+ if (Game_Flag_Query(kFlagMcCoyInPoliceStation)
&& Game_Flag_Query(185)
) {
Actor_Set_Goal_Number(kActorSteele, 10);
@@ -78,7 +78,7 @@ bool AIScriptSteele::Update() {
}
if ( Actor_Query_Goal_Number(kActorSteele) == 0
- && !Game_Flag_Query(kFlagMcCoyAtRCxx)
+ && !Game_Flag_Query(kFlagMcCoyInRunciters)
&& Player_Query_Current_Scene() != kSceneRC01
) {
Actor_Set_Goal_Number(kActorSteele, 1);
@@ -399,11 +399,11 @@ void AIScriptSteele::ClickedByPlayer() {
void AIScriptSteele::EnteredScene(int sceneId) {
if (Actor_Query_Goal_Number(kActorSteele) == 2) {
- if (!Game_Flag_Query(kFlagChopstickWrapperTaken)
+ if (!Game_Flag_Query(kFlagRC51ChopstickWrapperTaken)
&& Random_Query(1, 3) == 1
) {
Actor_Clue_Acquire(kActorSteele, kClueChopstickWrapper, true, -1);
- Game_Flag_Set(kFlagChopstickWrapperTaken);
+ Game_Flag_Set(kFlagRC51ChopstickWrapperTaken);
if (Game_Flag_Query(kFlagRC51Discovered)) {
Item_Remove_From_World(kItemChopstickWrapper);
@@ -413,11 +413,11 @@ void AIScriptSteele::EnteredScene(int sceneId) {
return; //true;
}
- if (!Game_Flag_Query(kFlagCandyTaken)
+ if (!Game_Flag_Query(kFlagRC51CandyTaken)
&& Random_Query(1, 3) == 1
) {
Actor_Clue_Acquire(kActorSteele, kClueCandy, true, -1);
- Game_Flag_Set(kFlagCandyTaken);
+ Game_Flag_Set(kFlagRC51CandyTaken);
if (Game_Flag_Query(kFlagRC51Discovered)) {
Item_Remove_From_World(kItemCandy);
@@ -425,11 +425,11 @@ void AIScriptSteele::EnteredScene(int sceneId) {
return; //true;
}
- if (!Game_Flag_Query(kFlagToyDogTaken)
+ if (!Game_Flag_Query(kFlagRC51ToyDogTaken)
&& Random_Query(1, 20) == 1
) {
Actor_Clue_Acquire(kActorSteele, kClueToyDog, true, -1);
- Game_Flag_Set(kFlagToyDogTaken);
+ Game_Flag_Set(kFlagRC51ToyDogTaken);
if (Game_Flag_Query(kFlagRC51Discovered)) {
Item_Remove_From_World(kItemToyDog);
@@ -440,11 +440,11 @@ void AIScriptSteele::EnteredScene(int sceneId) {
if ( Actor_Query_Goal_Number(kActorSteele) == 5
&& Actor_Query_In_Set(kActorSteele, kSetCT03_CT04)
- && Game_Flag_Query(kFlagMcCoyKilledHomeless)
- && !Game_Flag_Query(kFlagHomelessBodyInDumpster)
- && !Game_Flag_Query(kFlagHomelessBodyFound)
+ && Game_Flag_Query(kFlagCT04HomelessKilledByMcCoy)
+ && !Game_Flag_Query(kFlagCT04HomelessBodyInDumpster)
+ && !Game_Flag_Query(kFlagCT04HomelessBodyFound)
) {
- Game_Flag_Set(kFlagHomelessBodyFound);
+ Game_Flag_Set(kFlagCT04HomelessBodyFound);
return; //true;
}
@@ -931,8 +931,8 @@ bool AIScriptSteele::GoalChanged(int currentGoalNumber, int newGoalNumber) {
case 233:
Game_Flag_Set(kFlagHF01toHF03);
- Game_Flag_Reset(kFlagMcCoyAtNRxx);
- Game_Flag_Set(kFlagMcCoyAtHFxx);
+ Game_Flag_Reset(kFlagMcCoyInNightclubRow);
+ Game_Flag_Set(kFlagMcCoyInHysteriaHall);
Actor_Put_In_Set(kActorSteele, kSetHF03);
Actor_Set_At_XYZ(kActorSteele, 291.0f, 47.76f, -892.0f, 453);
Set_Enter(kSetHF03, kSceneHF03);
@@ -1265,25 +1265,25 @@ bool AIScriptSteele::GoalChanged(int currentGoalNumber, int newGoalNumber) {
return true;
case 290:
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -281.0f, 31.93f, -1061.0f, 0, 0, 1, 0);
- Actor_Face_Heading(kActorMcCoy, 45, 0);
- Loop_Actor_Travel_Stairs(kActorMcCoy, 3, 0, kAnimationModeIdle);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -281.0f, 31.93f, -1061.0f, 0, false, true, 0);
+ Actor_Face_Heading(kActorMcCoy, 45, false);
+ Loop_Actor_Travel_Stairs(kActorMcCoy, 3, false, kAnimationModeIdle);
Global_Variable_Set(1, 4);
Scene_Exits_Enable();
Actor_Set_Health(kActorMcCoy, 50, 50);
Game_Flag_Set(523);
- Game_Flag_Set(343);
+ Game_Flag_Set(kFlagNR01toUG06);
Game_Flag_Set(680);
- Chapter_Enter(4, 79, 91);
+ Chapter_Enter(4, kSetUG06, kSceneUG06);
return true;
case 291:
Game_Flag_Set(722);
- Global_Variable_Set(1, 4);
+ Global_Variable_Set(kVariableChapter, 4);
Scene_Exits_Enable();
Game_Flag_Set(523);
Game_Flag_Set(680);
- Chapter_Enter(4, 79, 91);
+ Chapter_Enter(4, kSetUG06, kSceneUG06);
return true;
case 300:
diff --git a/engines/bladerunner/script/ai/transient.cpp b/engines/bladerunner/script/ai/transient.cpp
index b5f42bdc72..62d3c02090 100644
--- a/engines/bladerunner/script/ai/transient.cpp
+++ b/engines/bladerunner/script/ai/transient.cpp
@@ -56,16 +56,16 @@ bool AIScriptTransient::Update() {
}
if ( Global_Variable_Query(kVariableChapter) == 3
- && Game_Flag_Query(kFlagMcCoyKilledHomeless)
- && Game_Flag_Query(kFlagHomelessBodyInDumpster)
- && !Game_Flag_Query(kFlagHomelessBodyFound)
- && !Game_Flag_Query(kFlagDumpsterEmptied)
+ && Game_Flag_Query(kFlagCT04HomelessKilledByMcCoy)
+ && Game_Flag_Query(kFlagCT04HomelessBodyInDumpster)
+ && !Game_Flag_Query(kFlagCT04HomelessBodyFound)
+ && !Game_Flag_Query(kFlagCT04HomelessBodyThrownAway)
) {
- Game_Flag_Set(kFlagDumpsterEmptied);
+ Game_Flag_Set(kFlagCT04HomelessBodyThrownAway);
}
if (Global_Variable_Query(kVariableChapter) < 4
- && Game_Flag_Query(kFlagHomelessBodyFound)
+ && Game_Flag_Query(kFlagCT04HomelessBodyFound)
&& Actor_Query_Goal_Number(kActorTransient) != 6
&& Actor_Query_Goal_Number(kActorTransient) != 599
) {
@@ -163,7 +163,7 @@ bool AIScriptTransient::ShotAtAndHit() {
Actor_Set_Goal_Number(kActorTransient, 599);
}
- Game_Flag_Set(kFlagMcCoyKilledHomeless);
+ Game_Flag_Set(kFlagCT04HomelessKilledByMcCoy);
return false;
}
diff --git a/engines/bladerunner/script/ai/zuben.cpp b/engines/bladerunner/script/ai/zuben.cpp
index 47e74f7158..af1d64cfd8 100644
--- a/engines/bladerunner/script/ai/zuben.cpp
+++ b/engines/bladerunner/script/ai/zuben.cpp
@@ -53,15 +53,17 @@ bool AIScriptZuben::Update() {
Actor_Put_In_Set(kActorZuben, kSetFreeSlotI);
Actor_Set_At_Waypoint(kActorZuben, 41, 0);
}
+
if ( Actor_Query_Goal_Number(kActorZuben) == kGoalZubenDefault
&& Player_Query_Current_Scene() == kSceneCT01
- && !Game_Flag_Query(kFlagZubenCheckOnMcCoy)
+ && !Game_Flag_Query(kFlagCT01ZubenMcCoyCheck)
) {
AI_Countdown_Timer_Reset(kActorZuben, 2);
AI_Countdown_Timer_Start(kActorZuben, 2, 30);
- Game_Flag_Set(kFlagZubenCheckOnMcCoy);
+ Game_Flag_Set(kFlagCT01ZubenMcCoyCheck);
return true;
}
+
if (Actor_Query_Goal_Number(kActorZuben) == kGoalZubenDefault
&& Actor_Query_Friendliness_To_Other(kActorZuben, kActorMcCoy) < 48
&& Actor_Query_Is_In_Current_Set(kActorZuben)
@@ -72,9 +74,10 @@ bool AIScriptZuben::Update() {
Actor_Clue_Acquire(kActorZuben, kClueMcCoysDescription, true, -1);
}
Game_Flag_Set(kFlagCT01ZubenLeft);
- Actor_Set_Goal_Number(kActorZuben, kGoalZubenCT01Leave);
+ Actor_Set_Goal_Number(kActorZuben, kGoalZubenCT01WalkToCT02);
return true;
}
+
if ( Global_Variable_Query(kVariableChapter) >= 4
&& !Game_Flag_Query(kFlagZubenRetired)
&& Actor_Query_Goal_Number(kActorZuben) < 200
@@ -83,6 +86,7 @@ bool AIScriptZuben::Update() {
Actor_Set_Goal_Number(kActorZuben, 200);
return true;
}
+
if ( Global_Variable_Query(kVariableChapter) == 5
&& !Game_Flag_Query(kFlagZubenRetired)
&& Actor_Query_Goal_Number(kActorZuben) < 400
@@ -91,17 +95,19 @@ bool AIScriptZuben::Update() {
Actor_Set_Goal_Number(kActorZuben, 400);
return true;
}
+
if (Actor_Query_Goal_Number(kActorZuben) == kGoalZubenCT06AttackMcCoy
&& Player_Query_Current_Scene() == kSceneCT07
) {
AI_Countdown_Timer_Reset(kActorZuben, 0);
- Game_Flag_Set(kFlagWarehouseOpen);
+ Game_Flag_Set(kFlagCT05WarehouseOpen);
Actor_Set_Targetable(kActorZuben, true);
- if (Actor_Query_Goal_Number(kActorGordo) == 0) {
- Actor_Set_Goal_Number(kActorGordo, 1);
+ if (Actor_Query_Goal_Number(kActorGordo) == kGoalGordoDefault) {
+ Actor_Set_Goal_Number(kActorGordo, kGoalGordoLeaveCT01);
}
return true;
}
+
if ( Actor_Query_Goal_Number(kActorZuben) == kGoalZubenCT02PotDodgeCheck
&& !Game_Flag_Query(kFlagCT02ZubenFled)
) {
@@ -119,12 +125,12 @@ void AIScriptZuben::TimerExpired(int timer) {
) {
Actor_Modify_Friendliness_To_Other(kActorZuben, kActorMcCoy, -1);
}
- Game_Flag_Reset(kFlagZubenCheckOnMcCoy);
+ Game_Flag_Reset(kFlagCT01ZubenMcCoyCheck);
// return true;
} else if (timer == 1) {
- if (Actor_Query_Goal_Number(kActorZuben) == kGoalZubenCT02Flee) { // Zuben fleeing, after 10s
+ if (Actor_Query_Goal_Number(kActorZuben) == kGoalZubenCT02RunToFreeSlotG) { // Zuben fleeing, after 10s
Music_Stop(10);
- Actor_Set_Goal_Number(kActorZuben, kGoalZubenCT06Hide);
+ Actor_Set_Goal_Number(kActorZuben, kGoalZubenCT06HideAtFreeSlotA);
AI_Countdown_Timer_Reset(kActorZuben, 1);
// return true;
}
@@ -140,16 +146,16 @@ void AIScriptZuben::TimerExpired(int timer) {
}
void AIScriptZuben::CompletedMovementTrack() {
- if (Actor_Query_Goal_Number(kActorZuben) == kGoalZubenCT02Flee
+ if (Actor_Query_Goal_Number(kActorZuben) == kGoalZubenCT02RunToFreeSlotG
&& Game_Flag_Query(kFlagCT02McCoyFell)
) {
Set_Enter(kSetCT03_CT04, kSceneCT03);
}
if (Actor_Query_Goal_Number(kActorZuben) == 3) { // not set anywhere
- Actor_Set_Goal_Number(kActorZuben, kGoalZubenCT07Leave);
+ Actor_Set_Goal_Number(kActorZuben, kGoalZubenCT07RunToFreeSlotA);
//return true;
- } else if (Actor_Query_Goal_Number(kActorZuben) == kGoalZubenCT06Hide
+ } else if (Actor_Query_Goal_Number(kActorZuben) == kGoalZubenCT06HideAtFreeSlotA
&& Game_Flag_Query(kFlagCT02McCoyFell)
) {
AI_Countdown_Timer_Reset(kActorZuben, 0);
@@ -164,7 +170,7 @@ void AIScriptZuben::CompletedMovementTrack() {
Actor_Set_Goal_Number(kActorZuben, kGoalZubenCT02OpenDoor);
//return true;
} else {
- if (Actor_Query_Goal_Number(kActorZuben) == kGoalZubenCT07Leave) {
+ if (Actor_Query_Goal_Number(kActorZuben) == kGoalZubenCT07RunToFreeSlotA) {
Music_Stop(2);
Sound_Play(574, 40, 100, 100, 50);
Delay(2000);
@@ -264,7 +270,7 @@ void AIScriptZuben::ShotAtAndMissed() {
bool AIScriptZuben::ShotAtAndHit() {
Game_Flag_Set(kFlagMcCoyShotAtZuben);
- if ( Actor_Query_Goal_Number(kActorZuben) == kGoalZubenCT07Leave
+ if ( Actor_Query_Goal_Number(kActorZuben) == kGoalZubenCT07RunToFreeSlotA
&& !Actor_Clue_Query(kActorZuben, kClueMcCoyShotZubenInTheBack)
) {
Actor_Clue_Acquire(kActorZuben, kClueMcCoyShotZubenInTheBack, true, -1);
@@ -306,14 +312,15 @@ int AIScriptZuben::GetFriendlinessModifierIfGetsClue(int otherActorId, int clueI
bool AIScriptZuben::GoalChanged(int currentGoalNumber, int newGoalNumber) {
switch (newGoalNumber) {
- case kGoalZubenCT01Leave:
+ case kGoalZubenCT01WalkToCT02:
AI_Movement_Track_Flush(kActorZuben);
AI_Movement_Track_Append(kActorZuben, 86, 0);
AI_Movement_Track_Append(kActorZuben, 106, 0);
AI_Movement_Track_Append_With_Facing(kActorZuben, 45, 0, 481);
AI_Movement_Track_Repeat(kActorZuben);
return false;
- case kGoalZubenCT02Flee:
+
+ case kGoalZubenCT02RunToFreeSlotG:
AI_Movement_Track_Flush(kActorZuben);
AI_Movement_Track_Append_Run(kActorZuben, 84, 0);
AI_Movement_Track_Append_Run(kActorZuben, 85, 0);
@@ -324,6 +331,7 @@ bool AIScriptZuben::GoalChanged(int currentGoalNumber, int newGoalNumber) {
AI_Countdown_Timer_Start(kActorZuben, 0, 70);
AI_Movement_Track_Repeat(kActorZuben);
return false;
+
case kGoalZubenCT07Spared:
AI_Movement_Track_Flush(kActorZuben);
Actor_Face_Actor(kActorZuben, kActorMcCoy, true);
@@ -343,14 +351,16 @@ bool AIScriptZuben::GoalChanged(int currentGoalNumber, int newGoalNumber) {
Actor_Clue_Acquire(kActorZuben, kClueMcCoyIsABladeRunner, true, -1);
}
Actor_Clue_Acquire(kActorZuben, kClueMcCoyLetZubenEscape, true, -1);
- Actor_Set_Goal_Number(kActorZuben, kGoalZubenCT07Leave);
+ Actor_Set_Goal_Number(kActorZuben, kGoalZubenCT07RunToFreeSlotA);
return false;
- case kGoalZubenCT07Leave:
+
+ case kGoalZubenCT07RunToFreeSlotA:
AI_Movement_Track_Flush(kActorZuben);
AI_Movement_Track_Append_Run(kActorZuben, 94, 0);
AI_Movement_Track_Append_Run(kActorZuben, 33, 0);
AI_Movement_Track_Repeat(kActorZuben);
return false;
+
case kGoalZubenDie:
Game_Flag_Set(kFlagZubenRetired);
Game_Flag_Set(kFlagCT01ZubenGone);
@@ -364,20 +374,24 @@ bool AIScriptZuben::GoalChanged(int currentGoalNumber, int newGoalNumber) {
}
Actor_Set_Goal_Number(kActorZuben, kGoalZubenDead);
return false;
+
case kGoalZubenCT02PushPot:
_animationFrame = 0;
_animationState = 26;
return false;
+
case kGoalZubenCT02RunToDoor:
AI_Movement_Track_Flush(kActorZuben);
AI_Movement_Track_Append_Run(kActorZuben, 46, 0);
AI_Movement_Track_Repeat(kActorZuben);
return false;
+
case kGoalZubenCT02OpenDoor:
Actor_Face_Heading(kActorZuben, kActorMcCoy, false);
_animationFrame = 0;
_animationState = 27;
return false;
+
case kGoalZubenCT06JumpDown:
AI_Countdown_Timer_Reset(kActorZuben, 0);
Actor_Put_In_Set(kActorZuben, kSetCT06);
@@ -385,6 +399,7 @@ bool AIScriptZuben::GoalChanged(int currentGoalNumber, int newGoalNumber) {
_animationFrame = 0;
_animationState = 28;
return false;
+
case kGoalZubenCT06AttackMcCoy:
Player_Loses_Control();
if (!Player_Query_Combat_Mode()) {
@@ -394,7 +409,8 @@ bool AIScriptZuben::GoalChanged(int currentGoalNumber, int newGoalNumber) {
Game_Flag_Set(kFlagNotUsed142);
Set_Enter(kSetCT07, kSceneCT07);
return false;
- case kGoalZubenCT06Hide:
+
+ case kGoalZubenCT06HideAtFreeSlotA:
Actor_Set_Targetable(kActorZuben, true);
AI_Movement_Track_Flush(kActorZuben);
AI_Movement_Track_Append_Run(kActorZuben, 51, 0);
@@ -402,6 +418,7 @@ bool AIScriptZuben::GoalChanged(int currentGoalNumber, int newGoalNumber) {
AI_Movement_Track_Append(kActorZuben, 33, 1); // Hide Zuben
AI_Movement_Track_Repeat(kActorZuben);
return false;
+
case kGoalZubenCT02PotDodgeCheck:
if (Actor_Query_Goal_Number(kActorMcCoy) != kGoalMcCoyDodge) {
Player_Loses_Control();
@@ -411,29 +428,34 @@ bool AIScriptZuben::GoalChanged(int currentGoalNumber, int newGoalNumber) {
}
Actor_Set_Goal_Number(kActorZuben, kGoalZubenCT02RunToDoor);
return false;
+
case kGoalZubenMA01AttackMcCoy:
- Game_Flag_Set(kFlagWarehouseOpen);
+ Game_Flag_Set(kFlagCT05WarehouseOpen);
Actor_Set_Targetable(kActorZuben, true);
AI_Movement_Track_Flush(kActorZuben);
AI_Movement_Track_Append_Run(kActorZuben, 125, 0);
AI_Movement_Track_Repeat(kActorZuben);
return false;
- case 22:
+
+ case 22: // is never set
AI_Movement_Track_Flush(kActorZuben);
AI_Movement_Track_Append_Run(kActorZuben, 125, 0);
AI_Movement_Track_Append_Run(kActorZuben, 33, 0);
AI_Movement_Track_Repeat(kActorZuben);
return false;
+
case 99:
AI_Movement_Track_Flush(kActorZuben);
Scene_Exits_Enable();
Music_Stop(2);
return false;
+
case 100:
AI_Movement_Track_Flush(kActorZuben);
AI_Movement_Track_Append_Run(kActorZuben, 33, 3);
AI_Movement_Track_Repeat(kActorZuben);
return false;
+
case 105:
{
int rnd1 = Random_Query(1, 3);
@@ -508,11 +530,13 @@ bool AIScriptZuben::GoalChanged(int currentGoalNumber, int newGoalNumber) {
case 106:
Actor_Set_Goal_Number(kActorZuben, 105);
return true;
+
case 200:
AI_Movement_Track_Flush(kActorZuben);
AI_Movement_Track_Append_Run(kActorZuben, 33, 3);
AI_Movement_Track_Repeat(kActorZuben);
return false;
+
case 205:
switch (Random_Query(1, 8)) {
case 1:
@@ -591,9 +615,11 @@ bool AIScriptZuben::GoalChanged(int currentGoalNumber, int newGoalNumber) {
break;
}
return false;
+
case 206:
Actor_Set_Goal_Number(kActorZuben, 205);
return true;
+
case 400:
AI_Movement_Track_Flush(kActorZuben);
Actor_Put_In_Set(kActorZuben, kSetFreeSlotA);
@@ -950,7 +976,7 @@ bool AIScriptZuben::UpdateAnimation(int *animation, int *frame) {
Actor_Set_Frame_Rate_FPS(kActorZuben, -2);
_animationState = 0;
_animationFrame = 0;
- Actor_Set_Goal_Number(kActorZuben, kGoalZubenCT02Flee);
+ Actor_Set_Goal_Number(kActorZuben, kGoalZubenCT02RunToFreeSlotG);
}
break;
case 28:
@@ -1164,6 +1190,7 @@ void AIScriptZuben::dialogue() {
Actor_Says(kActorMcCoy, 7310, 16);
Actor_Says(kActorZuben, 190, 15);
break;
+
case 1500:
Actor_Says(kActorMcCoy, 7295, 11);
Actor_Says(kActorZuben, 200, 12);
@@ -1188,6 +1215,7 @@ void AIScriptZuben::dialogue() {
Actor_Clue_Acquire(kActorMcCoy, kClueZubenTalksAboutLucy2, false, kActorZuben);
}
break;
+
case 1510:
Actor_Says(kActorMcCoy, 7300, 13);
Actor_Says(kActorZuben, 280, 12);
@@ -1202,6 +1230,7 @@ void AIScriptZuben::dialogue() {
Actor_Says(kActorZuben, 330, 12);
Actor_Clue_Acquire(kActorMcCoy, kClueZubensMotive, false, kActorZuben);
break;
+
case 1520:
Actor_Says(kActorZuben, 160, 13);
Actor_Says(kActorMcCoy, 7305, 15);
diff --git a/engines/bladerunner/script/ai_script.h b/engines/bladerunner/script/ai_script.h
index c9e945a29b..9252db3709 100644
--- a/engines/bladerunner/script/ai_script.h
+++ b/engines/bladerunner/script/ai_script.h
@@ -137,10 +137,10 @@ DECLARE_SCRIPT(Gordo)
int _frameMax;
int _state;
- void sub_40FD00();
+ void McCoyTalkWithGordo();
void sub_4103B8();
- void sub_410590();
- void sub_41090C();
+ void dialogueWithGordo2();
+ void dialogueWithGordo1();
void sub_41117C();
END_SCRIPT
@@ -185,7 +185,7 @@ DECLARE_SCRIPT(Izo)
int _var4;
bool _flag;
- void someDialog();
+ void dialogueWithIzo();
void modifyWaypoints();
END_SCRIPT
diff --git a/engines/bladerunner/script/esper_script.cpp b/engines/bladerunner/script/esper_script.cpp
index e12e40f797..0699a990d9 100644
--- a/engines/bladerunner/script/esper_script.cpp
+++ b/engines/bladerunner/script/esper_script.cpp
@@ -109,62 +109,72 @@ void ESPERScript::SCRIPT_ESPER_DLL_Initialize() {
void ESPERScript::SCRIPT_ESPER_DLL_Photo_Selected(int photo) {
switch (photo) {
- case 9:
- Actor_Says(kActorAnsweringMachine, 270, 3);
- ESPER_Define_Special_Region(22, 1208, 330, 1218, 340, 1050, 160, 1279, 550, 956, 203, 1278, 497, "KP06ESP1");
- ESPER_Define_Special_Region(23, 854, 371, 858, 375, 790, 320, 940, 560, 722, 220, 1000, 505, "KP06ESP2");
- ESPER_Define_Special_Region(24, 615, 325, 648, 365, 440, 220, 820, 959, 326, 140, 948, 474, "KP06ESP3");
- ESPER_Define_Special_Region(25, 373, 417, 382, 426, 310, 370, 480, 560, 228, 323, 493, 509, "KP06ESP4");
- break;
- case 8:
- Actor_Says(kActorAnsweringMachine, 230, 3);
- ESPER_Define_Special_Region(18, 166, 623, 177, 632, 38, 528, 320, 770, 26, 530, 313, 771, "TB06ESP1");
- ESPER_Define_Special_Region(19, 156, 356, 164, 360, 60, 280, 250, 460, 14, 251, 257, 459, "TB06ESP2");
- ESPER_Define_Special_Region(20, 395, 158, 410, 185, 270, 70, 760, 640, 125, 0, 560, 307, "TB06ESP3");
- ESPER_Define_Special_Region(21, 343, 269, 352, 276, 290, 200, 410, 340, 157, 118, 565, 405, "TB06ESP4");
+ case 0:
+ Actor_Says(kActorAnsweringMachine, 220, 3);
+ ESPER_Define_Special_Region(0, 490, 511, 496, 517, 400, 440, 580, 580, 380, 260, 900, 710, "RC02ESP1");
+ ESPER_Define_Special_Region(1, 473, 342, 479, 349, 400, 300, 580, 580, 350, 250, 900, 710, "RC02ESP2");
+ ESPER_Define_Special_Region(2, 444, 215, 461, 223, 380, 120, 570, 340, 354, 160, 577, 354, "RC02ESP3");
break;
- case 7:
- Actor_Says(kActorAnsweringMachine, 250, 3);
- ESPER_Define_Special_Region(16, 1171, 457, 1184, 466, 1060, 370, 1279, 730, 910, 300, 1279, 678, "HC02ESP3");
- ESPER_Define_Special_Region(17, 328, 398, 340, 413, 250, 350, 460, 640, 100, 236, 530, 612, "HC02ESP4");
+
+ case 1:
+ Actor_Says(kActorAnsweringMachine, 220, 3);
+ ESPER_Define_Special_Region(3, 560, 210, 580, 220, 450, 130, 680, 540, 0, 0, 1279, 959, "RC02ESP4");
+ ESPER_Define_Special_Region(4, 584, 482, 595, 493, 460, 400, 660, 540, 0, 0, 1279, 959, "RC02ESP5");
+ ESPER_Define_Special_Region(5, 669, 322, 675, 329, 620, 230, 740, 390, 0, 0, 1279, 959, "RC02ESP6");
+ ESPER_Define_Special_Region(6, 698, 236, 748, 274, 600, 160, 850, 420, 160, 0, 1279, 750, "RC02ESP7");
break;
- case 6:
- Actor_Says(kActorAnsweringMachine, 250, 3);
- ESPER_Define_Special_Region(14, 879, 221, 882, 225, 640, 0, 1000, 512, 265, 146, 1014, 813, "HC02ESP5");
- ESPER_Define_Special_Region(15, 660, 550, 678, 572, 560, 480, 850, 910, 265, 146, 1014, 813, "HC02ESP2");
+
+ case 2:
+ Actor_Says(kActorAnsweringMachine, 260, 3);
+ ESPER_Define_Special_Region(7, 102, 809, 108, 861, 20, 720, 200, 930, 191, 95, 1085, 870, "NR06ESP1");
+ ESPER_Define_Special_Region(8, 661, 437, 664, 443, 530, 320, 720, 600, 330, 200, 945, 750, "NR06ESP2");
break;
- case 5:
- Actor_Says(kActorAnsweringMachine, 240, 3);
- ESPER_Define_Special_Region(13, 720, 485, 728, 491, 640, 390, 780, 630, 257, 94, 1013, 804, "HC01ESP3");
+
+ case 3:
+ Actor_Says(kActorAnsweringMachine, 260, 3);
+ ESPER_Define_Special_Region(9, 479, 381, 482, 385, 430, 320, 520, 470, 265, 200, 815, 720, "NR07ESP2");
+ ESPER_Define_Special_Region(10, 893, 298, 901, 306, 770, 230, 980, 500, 340, 216, 942, 747, "NR07ESP1");
break;
+
case 4:
Actor_Says(kActorAnsweringMachine, 240, 3);
ESPER_Define_Special_Region(11, 420, 436, 434, 450, 350, 380, 520, 680, 257, 94, 1013, 804, "HC01ESP1");
ESPER_Define_Special_Region(12, 407, 489, 410, 509, 370, 450, 500, 560, 257, 94, 1013, 804, "HC01ESP2");
break;
- case 3:
- Actor_Says(kActorAnsweringMachine, 260, 3);
- ESPER_Define_Special_Region(10, 893, 298, 901, 306, 770, 230, 980, 500, 340, 216, 942, 747, "NR07ESP1");
- ESPER_Define_Special_Region(9, 479, 381, 482, 385, 430, 320, 520, 470, 265, 200, 815, 720, "NR07ESP2");
+
+ case 5:
+ Actor_Says(kActorAnsweringMachine, 240, 3);
+ ESPER_Define_Special_Region(13, 720, 485, 728, 491, 640, 390, 780, 630, 257, 94, 1013, 804, "HC01ESP3");
break;
- case 2:
- Actor_Says(kActorAnsweringMachine, 260, 3);
- ESPER_Define_Special_Region(7, 102, 809, 108, 861, 20, 720, 200, 930, 191, 95, 1085, 870, "NR06ESP1");
- ESPER_Define_Special_Region(8, 661, 437, 664, 443, 530, 320, 720, 600, 330, 200, 945, 750, "NR06ESP2");
+
+ case 6:
+ Actor_Says(kActorAnsweringMachine, 250, 3);
+ ESPER_Define_Special_Region(14, 879, 221, 882, 225, 640, 0, 1000, 512, 265, 146, 1014, 813, "HC02ESP5");
+ ESPER_Define_Special_Region(15, 660, 550, 678, 572, 560, 480, 850, 910, 265, 146, 1014, 813, "HC02ESP2");
break;
- case 1:
- Actor_Says(kActorAnsweringMachine, 220, 3);
- ESPER_Define_Special_Region(3, 560, 210, 580, 220, 450, 130, 680, 540, 0, 0, 1279, 959, "RC02ESP4");
- ESPER_Define_Special_Region(4, 584, 482, 595, 493, 460, 400, 660, 540, 0, 0, 1279, 959, "RC02ESP5");
- ESPER_Define_Special_Region(5, 669, 322, 675, 329, 620, 230, 740, 390, 0, 0, 1279, 959, "RC02ESP6");
- ESPER_Define_Special_Region(6, 698, 236, 748, 274, 600, 160, 850, 420, 160, 0, 1279, 750, "RC02ESP7");
+
+ case 7:
+ Actor_Says(kActorAnsweringMachine, 250, 3);
+ ESPER_Define_Special_Region(16, 1171, 457, 1184, 466, 1060, 370, 1279, 730, 910, 300, 1279, 678, "HC02ESP3");
+ ESPER_Define_Special_Region(17, 328, 398, 340, 413, 250, 350, 460, 640, 100, 236, 530, 612, "HC02ESP4");
break;
- case 0:
- Actor_Says(kActorAnsweringMachine, 220, 3);
- ESPER_Define_Special_Region(0, 490, 511, 496, 517, 400, 440, 580, 580, 380, 260, 900, 710, "RC02ESP1");
- ESPER_Define_Special_Region(1, 473, 342, 479, 349, 400, 300, 580, 580, 350, 250, 900, 710, "RC02ESP2");
- ESPER_Define_Special_Region(2, 444, 215, 461, 223, 380, 120, 570, 340, 354, 160, 577, 354, "RC02ESP3");
+
+ case 8:
+ Actor_Says(kActorAnsweringMachine, 230, 3);
+ ESPER_Define_Special_Region(18, 166, 623, 177, 632, 38, 528, 320, 770, 26, 530, 313, 771, "TB06ESP1");
+ ESPER_Define_Special_Region(19, 156, 356, 164, 360, 60, 280, 250, 460, 14, 251, 257, 459, "TB06ESP2");
+ ESPER_Define_Special_Region(20, 395, 158, 410, 185, 270, 70, 760, 640, 125, 0, 560, 307, "TB06ESP3");
+ ESPER_Define_Special_Region(21, 343, 269, 352, 276, 290, 200, 410, 340, 157, 118, 565, 405, "TB06ESP4");
break;
+
+ case 9:
+ Actor_Says(kActorAnsweringMachine, 270, 3);
+ ESPER_Define_Special_Region(22, 1208, 330, 1218, 340, 1050, 160, 1279, 550, 956, 203, 1278, 497, "KP06ESP1");
+ ESPER_Define_Special_Region(23, 854, 371, 858, 375, 790, 320, 940, 560, 722, 220, 1000, 505, "KP06ESP2");
+ ESPER_Define_Special_Region(24, 615, 325, 648, 365, 440, 220, 820, 959, 326, 140, 948, 474, "KP06ESP3");
+ ESPER_Define_Special_Region(25, 373, 417, 382, 426, 310, 370, 480, 560, 228, 323, 493, 509, "KP06ESP4");
+ break;
+
default:
return;
}
@@ -172,123 +182,101 @@ void ESPERScript::SCRIPT_ESPER_DLL_Photo_Selected(int photo) {
bool ESPERScript::SCRIPT_ESPER_DLL_Special_Region_Selected(int photo, int region) {
switch (photo) {
- case 9:
- switch (region) {
- case 22:
- Actor_Says(kActorMcCoy, 8705, 3);
- if (!Actor_Clue_Query(kActorMcCoy, kClueMoonbusReflection)) {
- Actor_Says(kActorMcCoy, 6945, 3);
- Sound_Play(417, 50, 0, 0, 50);
- Actor_Clue_Acquire(kActorMcCoy, kClueMoonbusReflection, true, -1);
- }
- break;
- case 23:
- Actor_Voice_Over(4240, kActorVoiceOver);
- if (!Actor_Clue_Query(kActorMcCoy, kClueMcCoyAtMoonbus)) {
+ case 0:
+ if (region == 0) {
+ Actor_Voice_Over(4050, kActorVoiceOver);
+ if (!Actor_Clue_Query(kActorMcCoy, kClueDragonflyAnklet)) {
Actor_Says(kActorMcCoy, 6945, 3);
Sound_Play(417, 50, 0, 0, 50);
- Actor_Clue_Acquire(kActorMcCoy, kClueMcCoyAtMoonbus, true, -1);
+ Actor_Clue_Acquire(kActorMcCoy, kClueDragonflyAnklet, true, -1);
}
- break;
- case 24:
- Actor_Voice_Over(4220, kActorVoiceOver);
- if (!Actor_Clue_Query(kActorMcCoy, kClueClovisAtMoonbus)) {
+ } else if (region == 1) {
+ Actor_Voice_Over(4040, kActorVoiceOver);
+ if (!Actor_Clue_Query(kActorMcCoy, kClueLucy)) {
Actor_Says(kActorMcCoy, 6945, 3);
Sound_Play(417, 50, 0, 0, 50);
- Actor_Clue_Acquire(kActorMcCoy, kClueClovisAtMoonbus, true, -1);
+ Actor_Clue_Acquire(kActorMcCoy, kClueLucy, true, -1);
}
- break;
- case 25:
- if (!Actor_Clue_Query(kActorMcCoy, kClueSadikAtMoonbus)) {
+ } else if (region == 2) {
+ Actor_Voice_Over(4060, kActorVoiceOver);
+ if (!Actor_Clue_Query(kActorMcCoy, kClueSushiMenu)) {
Actor_Says(kActorMcCoy, 6945, 3);
Sound_Play(417, 50, 0, 0, 50);
- Actor_Clue_Acquire(kActorMcCoy, kClueSadikAtMoonbus, true, -1);
+ Actor_Clue_Acquire(kActorMcCoy, kClueSushiMenu, true, -1);
}
- break;
}
- return false;
- case 8:
- switch (region) {
- case 18:
- Actor_Says(kActorMcCoy, 8775, 3);
- if (!Actor_Clue_Query(kActorMcCoy, kClueKingstonKitchenBox2)) {
+ return true;
+
+ case 1:
+ if (region == 3) {
+ Actor_Voice_Over(4080, kActorVoiceOver);
+ if (!Actor_Clue_Query(kActorMcCoy, kClueAnimalMurderSuspect)) {
Actor_Says(kActorMcCoy, 6945, 3);
Sound_Play(417, 50, 0, 0, 50);
- Actor_Clue_Acquire(kActorMcCoy, kClueKingstonKitchenBox2, true, -1);
+ Actor_Clue_Acquire(kActorMcCoy, kClueAnimalMurderSuspect, true, -1);
}
- break;
- case 19:
- Actor_Voice_Over(4160, kActorVoiceOver);
- if (!Actor_Clue_Query(kActorMcCoy, kClueDogCollar2)) {
+ } else if (region == 4) {
+ Actor_Voice_Over(4110, kActorVoiceOver);
+ if (!Actor_Clue_Query(kActorMcCoy, kClueMilitaryBoots)) {
Actor_Says(kActorMcCoy, 6945, 3);
Sound_Play(417, 50, 0, 0, 50);
- Actor_Clue_Acquire(kActorMcCoy, kClueDogCollar2, true, -1);
+ Actor_Clue_Acquire(kActorMcCoy, kClueMilitaryBoots, true, -1);
}
- break;
- case 20:
- Actor_Voice_Over(2140, kActorVoiceOver);
- Actor_Voice_Over(2150, kActorVoiceOver);
- Actor_Voice_Over(2160, kActorVoiceOver);
- if (!Actor_Clue_Query(kActorMcCoy, kClueBombingSuspect)) {
+ } else if (region == 5) {
+ Actor_Voice_Over(4120, kActorVoiceOver);
+ if (!Actor_Clue_Query(kActorMcCoy, kCluePartialLicenseNumber)) {
Actor_Says(kActorMcCoy, 6945, 3);
Sound_Play(417, 50, 0, 0, 50);
- Actor_Clue_Acquire(kActorMcCoy, kClueBombingSuspect, true, -1);
+ Actor_Clue_Acquire(kActorMcCoy, kCluePartialLicenseNumber, true, -1);
}
- break;
- case 21:
- Actor_Says(kActorMcCoy, 8890, 3);
- if (!Actor_Clue_Query(kActorMcCoy, kCluePlasticExplosive)) {
+ } else if (region == 6) {
+ Actor_Voice_Over(4070, kActorVoiceOver);
+ if (!Actor_Clue_Query(kActorMcCoy, kClueCarColorAndMake)) {
Actor_Says(kActorMcCoy, 6945, 3);
Sound_Play(417, 50, 0, 0, 50);
- Actor_Clue_Acquire(kActorMcCoy, kCluePlasticExplosive, true, -1);
+ Actor_Clue_Acquire(kActorMcCoy, kClueCarColorAndMake, true, -1);
}
- break;
}
- return false;
- case 7:
- if (region == 16) {
- Actor_Voice_Over(4080, kActorVoiceOver);
- if (!Actor_Clue_Query(kActorMcCoy, kClueIzo)) {
+ return true;
+
+ case 2:
+ if (region == 8) {
+ Actor_Voice_Over(4260, kActorVoiceOver);
+ if (!Actor_Clue_Query(kActorMcCoy, kClueEarlyQAndLucy)) {
Actor_Says(kActorMcCoy, 6945, 3);
Sound_Play(417, 50, 0, 0, 50);
- Actor_Clue_Acquire(kActorMcCoy, kClueIzo, true, -1);
+ Actor_Clue_Acquire(kActorMcCoy, kClueEarlyQAndLucy, true, -1);
}
- } else if (region == 17) {
- Actor_Voice_Over(4210, kActorVoiceOver);
- if (!Actor_Clue_Query(kActorMcCoy, kClueGuzza)) {
+ } else if (region == 7) {
+ Actor_Voice_Over(4190, kActorVoiceOver);
+ if (!Actor_Clue_Query(kActorMcCoy, kClueScorpionbox)) {
Actor_Says(kActorMcCoy, 6945, 3);
Sound_Play(417, 50, 0, 0, 50);
- Actor_Clue_Acquire(kActorMcCoy, kClueGuzza, true, -1);
+ Actor_Clue_Acquire(kActorMcCoy, kClueScorpionbox, true, -1);
}
}
- return false;
- case 6:
- if (region == 14) {
- Actor_Says(kActorMcCoy, 6975, 3);
- if (!Actor_Clue_Query(kActorMcCoy, kClueChinaBarSecurityCamera)) {
- Actor_Says(kActorMcCoy, 6945, 3);
- Sound_Play(417, 50, 0, 0, 50);
- Actor_Clue_Acquire(kActorMcCoy, kClueChinaBarSecurityCamera, true, -1);
- }
- } else if (region == 15) {
- Actor_Voice_Over(4220, kActorVoiceOver);
- if (!Actor_Clue_Query(kActorMcCoy, kClueIzosFriend)) {
+ return true;
+
+ case 3:
+ if (region == 9) {
+ Actor_Voice_Over(4230, kActorVoiceOver);
+ if (!Actor_Clue_Query(kActorMcCoy, kClueClovisflowers)) {
Actor_Says(kActorMcCoy, 6945, 3);
Sound_Play(417, 50, 0, 0, 50);
- Actor_Clue_Acquire(kActorMcCoy, kClueIzosFriend, true, -1);
+ Actor_Clue_Acquire(kActorMcCoy, kClueClovisflowers, true, -1);
}
- }
- return false;
- case 5:
- if (region == 13) {
- Actor_Says(kActorMcCoy, 8830, 3);
- if (!Actor_Clue_Query(kActorMcCoy, kClueStrangeScale2)) {
+ return true;
+ } if (region == 10) {
+ Actor_Voice_Over(4040, kActorVoiceOver);
+ if (!Actor_Clue_Query(kActorMcCoy, kClueLucyWithDektora)) {
Actor_Says(kActorMcCoy, 6945, 3);
Sound_Play(417, 50, 0, 0, 50);
- Actor_Clue_Acquire(kActorMcCoy, kClueStrangeScale2, true, -1);
+ Actor_Clue_Acquire(kActorMcCoy, kClueLucyWithDektora, true, -1);
}
+ return true;
}
return false;
+
case 4:
if (region == 11) {
Actor_Voice_Over(4090, kActorVoiceOver);
@@ -306,97 +294,134 @@ bool ESPERScript::SCRIPT_ESPER_DLL_Special_Region_Selected(int photo, int region
}
}
return false;
- case 3:
- if (region == 9) {
- Actor_Voice_Over(4230, kActorVoiceOver);
- if (!Actor_Clue_Query(kActorMcCoy, kClueClovisflowers)) {
+
+ case 5:
+ if (region == 13) {
+ Actor_Says(kActorMcCoy, 8830, 3);
+ if (!Actor_Clue_Query(kActorMcCoy, kClueStrangeScale2)) {
Actor_Says(kActorMcCoy, 6945, 3);
Sound_Play(417, 50, 0, 0, 50);
- Actor_Clue_Acquire(kActorMcCoy, kClueClovisflowers, true, -1);
+ Actor_Clue_Acquire(kActorMcCoy, kClueStrangeScale2, true, -1);
}
- return true;
- } else if (region == 10) {
- Actor_Voice_Over(4040, kActorVoiceOver);
- if (!Actor_Clue_Query(kActorMcCoy, kClueLucyWithDektora)) {
+ }
+ return false;
+
+ case 6:
+ if (region == 14) {
+ Actor_Says(kActorMcCoy, 6975, 3);
+ if (!Actor_Clue_Query(kActorMcCoy, kClueChinaBarSecurityCamera)) {
Actor_Says(kActorMcCoy, 6945, 3);
Sound_Play(417, 50, 0, 0, 50);
- Actor_Clue_Acquire(kActorMcCoy, kClueLucyWithDektora, true, -1);
+ Actor_Clue_Acquire(kActorMcCoy, kClueChinaBarSecurityCamera, true, -1);
+ }
+ } else if (region == 15) {
+ Actor_Voice_Over(4220, kActorVoiceOver);
+ if (!Actor_Clue_Query(kActorMcCoy, kClueIzosFriend)) {
+ Actor_Says(kActorMcCoy, 6945, 3);
+ Sound_Play(417, 50, 0, 0, 50);
+ Actor_Clue_Acquire(kActorMcCoy, kClueIzosFriend, true, -1);
}
- return true;
}
return false;
- case 2:
- if (region == 8) {
- Actor_Voice_Over(4260, kActorVoiceOver);
- if (!Actor_Clue_Query(kActorMcCoy, kClueEarlyQAndLucy)) {
+
+ case 7:
+ if (region == 16) {
+ Actor_Voice_Over(4080, kActorVoiceOver);
+ if (!Actor_Clue_Query(kActorMcCoy, kClueIzo)) {
Actor_Says(kActorMcCoy, 6945, 3);
Sound_Play(417, 50, 0, 0, 50);
- Actor_Clue_Acquire(kActorMcCoy, kClueEarlyQAndLucy, true, -1);
+ Actor_Clue_Acquire(kActorMcCoy, kClueIzo, true, -1);
}
- } else if (region == 7) {
- Actor_Voice_Over(4190, kActorVoiceOver);
- if (!Actor_Clue_Query(kActorMcCoy, kClueScorpionbox)) {
+ } else if (region == 17) {
+ Actor_Voice_Over(4210, kActorVoiceOver);
+ if (!Actor_Clue_Query(kActorMcCoy, kClueGuzza)) {
Actor_Says(kActorMcCoy, 6945, 3);
Sound_Play(417, 50, 0, 0, 50);
- Actor_Clue_Acquire(kActorMcCoy, kClueScorpionbox, true, -1);
+ Actor_Clue_Acquire(kActorMcCoy, kClueGuzza, true, -1);
}
}
- return true;
- case 1:
- if (region == 3) {
- Actor_Voice_Over(4080, kActorVoiceOver);
- if (!Actor_Clue_Query(kActorMcCoy, kClueAnimalMurderSuspect)) {
+ return false;
+
+ case 8:
+ switch (region) {
+ case 18:
+ Actor_Says(kActorMcCoy, 8775, 3);
+ if (!Actor_Clue_Query(kActorMcCoy, kClueKingstonKitchenBox2)) {
Actor_Says(kActorMcCoy, 6945, 3);
Sound_Play(417, 50, 0, 0, 50);
- Actor_Clue_Acquire(kActorMcCoy, kClueAnimalMurderSuspect, true, -1);
+ Actor_Clue_Acquire(kActorMcCoy, kClueKingstonKitchenBox2, true, -1);
}
- } else if (region == 4) {
- Actor_Voice_Over(4110, kActorVoiceOver);
- if (!Actor_Clue_Query(kActorMcCoy, kClueMilitaryBoots)) {
+ break;
+
+ case 19:
+ Actor_Voice_Over(4160, kActorVoiceOver);
+ if (!Actor_Clue_Query(kActorMcCoy, kClueDogCollar2)) {
Actor_Says(kActorMcCoy, 6945, 3);
Sound_Play(417, 50, 0, 0, 50);
- Actor_Clue_Acquire(kActorMcCoy, kClueMilitaryBoots, true, -1);
+ Actor_Clue_Acquire(kActorMcCoy, kClueDogCollar2, true, -1);
}
- } else if (region == 5) {
- Actor_Voice_Over(4120, kActorVoiceOver);
- if (!Actor_Clue_Query(kActorMcCoy, kCluePartialLicenseNumber)) {
+ break;
+
+ case 20:
+ Actor_Voice_Over(2140, kActorVoiceOver);
+ Actor_Voice_Over(2150, kActorVoiceOver);
+ Actor_Voice_Over(2160, kActorVoiceOver);
+ if (!Actor_Clue_Query(kActorMcCoy, kClueBombingSuspect)) {
Actor_Says(kActorMcCoy, 6945, 3);
Sound_Play(417, 50, 0, 0, 50);
- Actor_Clue_Acquire(kActorMcCoy, kCluePartialLicenseNumber, true, -1);
+ Actor_Clue_Acquire(kActorMcCoy, kClueBombingSuspect, true, -1);
}
- } else if (region == 6) {
- Actor_Voice_Over(4070, kActorVoiceOver);
- if (!Actor_Clue_Query(kActorMcCoy, kClueCarColorAndMake)) {
+ break;
+
+ case 21:
+ Actor_Says(kActorMcCoy, 8890, 3);
+ if (!Actor_Clue_Query(kActorMcCoy, kCluePlasticExplosive)) {
Actor_Says(kActorMcCoy, 6945, 3);
Sound_Play(417, 50, 0, 0, 50);
- Actor_Clue_Acquire(kActorMcCoy, kClueCarColorAndMake, true, -1);
+ Actor_Clue_Acquire(kActorMcCoy, kCluePlasticExplosive, true, -1);
}
+ break;
}
- return true;
- case 0:
- if (region == 0) {
- Actor_Voice_Over(4050, kActorVoiceOver);
- if (!Actor_Clue_Query(kActorMcCoy, kClueDragonflyAnklet)) {
+ return false;
+
+ case 9:
+ switch (region) {
+ case 22:
+ Actor_Says(kActorMcCoy, 8705, 3);
+ if (!Actor_Clue_Query(kActorMcCoy, kClueMoonbusReflection)) {
Actor_Says(kActorMcCoy, 6945, 3);
Sound_Play(417, 50, 0, 0, 50);
- Actor_Clue_Acquire(kActorMcCoy, kClueDragonflyAnklet, true, -1);
+ Actor_Clue_Acquire(kActorMcCoy, kClueMoonbusReflection, true, -1);
}
- } else if (region == 1) {
- Actor_Voice_Over(4040, kActorVoiceOver);
- if (!Actor_Clue_Query(kActorMcCoy, kClueLucy)) {
+ break;
+
+ case 23:
+ Actor_Voice_Over(4240, kActorVoiceOver);
+ if (!Actor_Clue_Query(kActorMcCoy, kClueMcCoyAtMoonbus)) {
Actor_Says(kActorMcCoy, 6945, 3);
Sound_Play(417, 50, 0, 0, 50);
- Actor_Clue_Acquire(kActorMcCoy, kClueLucy, true, -1);
+ Actor_Clue_Acquire(kActorMcCoy, kClueMcCoyAtMoonbus, true, -1);
}
- } else if (region == 2) {
- Actor_Voice_Over(4060, kActorVoiceOver);
- if (!Actor_Clue_Query(kActorMcCoy, kClueSushiMenu)) {
+ break;
+
+ case 24:
+ Actor_Voice_Over(4220, kActorVoiceOver);
+ if (!Actor_Clue_Query(kActorMcCoy, kClueClovisAtMoonbus)) {
Actor_Says(kActorMcCoy, 6945, 3);
Sound_Play(417, 50, 0, 0, 50);
- Actor_Clue_Acquire(kActorMcCoy, kClueSushiMenu, true, -1);
+ Actor_Clue_Acquire(kActorMcCoy, kClueClovisAtMoonbus, true, -1);
}
+ break;
+
+ case 25:
+ if (!Actor_Clue_Query(kActorMcCoy, kClueSadikAtMoonbus)) {
+ Actor_Says(kActorMcCoy, 6945, 3);
+ Sound_Play(417, 50, 0, 0, 50);
+ Actor_Clue_Acquire(kActorMcCoy, kClueSadikAtMoonbus, true, -1);
+ }
+ break;
}
- return true;
+ return false;
}
return false;
}
diff --git a/engines/bladerunner/script/init_script.cpp b/engines/bladerunner/script/init_script.cpp
index 278ce1bfb1..aa3f0070e9 100644
--- a/engines/bladerunner/script/init_script.cpp
+++ b/engines/bladerunner/script/init_script.cpp
@@ -110,7 +110,7 @@ void InitScript::Init_Game_Flags() {
Global_Variable_Set(40, 3);
}
- Game_Flag_Set(kFlagMcCoyAtRCxx);
+ Game_Flag_Set(kFlagMcCoyInRunciters);
Game_Flag_Set(kFlagSpinnerAtRC01);
}
diff --git a/engines/bladerunner/script/scene/ar01.cpp b/engines/bladerunner/script/scene/ar01.cpp
index ed4a96b086..9cd104c850 100644
--- a/engines/bladerunner/script/scene/ar01.cpp
+++ b/engines/bladerunner/script/scene/ar01.cpp
@@ -143,7 +143,7 @@ bool SceneScriptAR01::ClickedOnActor(int actorId) {
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(kFlagFishDealerTalk)) {
+ if (!Game_Flag_Query(kFlagAR01FishDealerTalk)) {
Actor_Says(kActorMcCoy, 0, 18);
Actor_Says(kActorFishDealer, 0, 14);
Actor_Says(kActorFishDealer, 10, 14);
@@ -159,7 +159,7 @@ bool SceneScriptAR01::ClickedOnActor(int actorId) {
Actor_Says(kActorFishDealer, 80, 14);
Actor_Says(kActorFishDealer, 90, 14);
Actor_Says(kActorMcCoy, 25, 13);
- Game_Flag_Set(kFlagFishDealerTalk);
+ Game_Flag_Set(kFlagAR01FishDealerTalk);
Actor_Set_Goal_Number(kActorFishDealer, 1);
} else {
if ( Actor_Clue_Query(kActorMcCoy, kClueStrangeScale1)
@@ -202,8 +202,8 @@ bool SceneScriptAR01::ClickedOnExit(int exitId) {
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);
- Game_Flag_Set(kFlagMcCoyAtHCxx);
+ Game_Flag_Reset(kFlagMcCoyInAnimoidRow);
+ Game_Flag_Set(kFlagMcCoyInHawkersCircle);
Set_Enter(kSetHC01_HC02_HC03_HC04, kSceneHC01);
Actor_Set_Goal_Number(kActorFishDealer, 3);
}
@@ -251,83 +251,83 @@ bool SceneScriptAR01::ClickedOnExit(int exitId) {
Actor_Voice_Over(4350, kActorVoiceOver);
Game_Flag_Set(kFlagDNARowAvailableTalk);
}
- Game_Flag_Reset(kFlagMcCoyAtCTxx);
- Game_Flag_Reset(kFlagMcCoyAtRCxx);
- Game_Flag_Reset(kFlagMcCoyAtMAxx);
- Game_Flag_Reset(kFlagMcCoyAtPSxx);
- Game_Flag_Reset(kFlagMcCoyAtBBxx);
- Game_Flag_Reset(kFlagMcCoyAtHFxx);
- Game_Flag_Reset(kFlagMcCoyAtARxx);
+ Game_Flag_Reset(kFlagMcCoyInChinaTown);
+ Game_Flag_Reset(kFlagMcCoyInRunciters);
+ Game_Flag_Reset(kFlagMcCoyInMcCoyApartment);
+ Game_Flag_Reset(kFlagMcCoyInPoliceStation);
+ Game_Flag_Reset(kFlagMcCoyInBradburyBuilding);
+ Game_Flag_Reset(kFlagMcCoyInHysteriaHall);
+ Game_Flag_Reset(kFlagMcCoyInAnimoidRow);
int spinnerDest = Spinner_Interface_Choose_Dest(kAR01LoopDoorAnim, false);
Actor_Face_Heading(kActorMcCoy, 545, false);
switch (spinnerDest) {
case kSpinnerDestinationPoliceStation:
- Game_Flag_Set(kFlagMcCoyAtPSxx);
+ Game_Flag_Set(kFlagMcCoyInPoliceStation);
Game_Flag_Reset(kFlagSpinnerAtAR01);
Game_Flag_Set(kFlagSpinnerAtPS01);
Set_Enter(kSetPS01, kScenePS01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kAR01LoopOutshoot, true);
break;
case kSpinnerDestinationMcCoysApartment:
- Game_Flag_Set(kFlagMcCoyAtMAxx);
+ Game_Flag_Set(kFlagMcCoyInMcCoyApartment);
Game_Flag_Reset(kFlagSpinnerAtAR01);
Game_Flag_Set(kFlagSpinnerAtMA01);
Set_Enter(kSetMA01, kSceneMA01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kAR01LoopOutshoot, true);
break;
case kSpinnerDestinationRuncitersAnimals:
- Game_Flag_Set(kFlagMcCoyAtRCxx);
+ Game_Flag_Set(kFlagMcCoyInRunciters);
Game_Flag_Reset(kFlagSpinnerAtAR01);
Game_Flag_Set(kFlagSpinnerAtRC01);
Set_Enter(kSetRC01, kSceneRC01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kAR01LoopOutshoot, true);
break;
case kSpinnerDestinationChinatown:
- Game_Flag_Set(kFlagMcCoyAtCTxx);
+ Game_Flag_Set(kFlagMcCoyInChinaTown);
Game_Flag_Reset(kFlagSpinnerAtAR01);
Game_Flag_Set(kFlagSpinnerAtCT01);
Set_Enter(kSetCT01_CT12, kSceneCT01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kAR01LoopOutshoot, true);
break;
case kSpinnerDestinationTyrellBuilding:
- Game_Flag_Set(kFlagMcCoyAtTBxx);
+ Game_Flag_Set(kFlagMcCoyInTyrellBuilding);
Game_Flag_Reset(kFlagSpinnerAtAR01);
Game_Flag_Set(kFlagSpinnerAtTB02);
Set_Enter(kSetTB02_TB03, kSceneTB02);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kAR01LoopOutshoot, true);
break;
case kSpinnerDestinationDNARow:
- Game_Flag_Set(kFlagMcCoyAtDRxx);
+ Game_Flag_Set(kFlagMcCoyInDNARow);
Game_Flag_Reset(kFlagSpinnerAtAR01);
Game_Flag_Set(kFlagSpinnerAtDR01);
Set_Enter(kSetDR01_DR02_DR04, kSceneDR01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kAR01LoopOutshoot, true);
break;
case kSpinnerDestinationBradburyBuilding:
- Game_Flag_Set(kFlagMcCoyAtBBxx);
+ Game_Flag_Set(kFlagMcCoyInBradburyBuilding);
Game_Flag_Reset(kFlagSpinnerAtAR01);
Game_Flag_Set(kFlagSpinnerAtBB01);
Set_Enter(kSetBB01, kSceneBB01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kAR01LoopOutshoot, true);
break;
case kSpinnerDestinationNightclubRow:
- Game_Flag_Set(kFlagMcCoyAtNRxx);
+ Game_Flag_Set(kFlagMcCoyInNightclubRow);
Game_Flag_Reset(kFlagSpinnerAtAR01);
Game_Flag_Set(kFlagSpinnerAtNR01);
Set_Enter(kSetNR01, kSceneNR01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kAR01LoopOutshoot, true);
break;
case kSpinnerDestinationHysteriaHall:
- Game_Flag_Set(kFlagMcCoyAtHFxx);
+ Game_Flag_Set(kFlagMcCoyInHysteriaHall);
Game_Flag_Reset(kFlagSpinnerAtAR01);
Game_Flag_Set(kFlagSpinnerAtHF01);
Set_Enter(kSetHF01, kSceneHF01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kAR01LoopOutshoot, true);
break;
default:
- Game_Flag_Set(kFlagMcCoyAtARxx);
+ Game_Flag_Set(kFlagMcCoyInAnimoidRow);
Actor_Set_Invisible(kActorMcCoy, false);
break;
}
@@ -389,7 +389,7 @@ void SceneScriptAR01::PlayerWalkedOut() {
Actor_Set_Invisible(kActorMcCoy, false);
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- if (!Game_Flag_Query(kFlagMcCoyAtHCxx)) {
+ if (!Game_Flag_Query(kFlagMcCoyInHawkersCircle)) {
Music_Stop(2);
}
if (!Game_Flag_Query(kFlagAR01toHC01)
diff --git a/engines/bladerunner/script/scene/ar02.cpp b/engines/bladerunner/script/scene/ar02.cpp
index a53aee8016..935064f7a2 100644
--- a/engines/bladerunner/script/scene/ar02.cpp
+++ b/engines/bladerunner/script/scene/ar02.cpp
@@ -79,11 +79,11 @@ void SceneScriptAR02::InitializeScene() {
void SceneScriptAR02::SceneLoaded() {
Obstacle_Object("DF_BOOTH", true);
- if (!Game_Flag_Query(374)) {
+ if (!Game_Flag_Query(kFlagAR02DektoraBoughtScorpions)) {
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)
+ && !Game_Flag_Query(kFlagAR02DektoraBoughtScorpions)
) {
Game_Flag_Set(kFlagNotUsed0);
Item_Remove_From_World(kItemScrorpions);
@@ -104,10 +104,10 @@ bool SceneScriptAR02::ClickedOnActor(int actorId) {
Actor_Face_Actor(kActorMcCoy, kActorInsectDealer, true);
Actor_Face_Actor(kActorInsectDealer, kActorMcCoy, true);
if (Global_Variable_Query(kVariableChapter) == 2) {
- if ( Game_Flag_Query(kFlagInsectDealerInterviewed)
- && !Game_Flag_Query(kFlagInsectDealerTalk)
+ if ( Game_Flag_Query(kFlagAR02InsectDealerInterviewed)
+ && !Game_Flag_Query(kFlagAR02InsectDealerTalk)
) {
- Game_Flag_Set(kFlagInsectDealerTalk);
+ Game_Flag_Set(kFlagAR02InsectDealerTalk);
Player_Loses_Control();
ADQ_Flush();
ADQ_Add(kActorInsectDealer, 210, 14);
@@ -121,7 +121,7 @@ bool SceneScriptAR02::ClickedOnActor(int actorId) {
Actor_Says(kActorInsectDealer, 250, 14);
Player_Gains_Control();
dialogueWithInsectDealer2();
- } else if (Game_Flag_Query(kFlagInsectDealerInterviewed)) {
+ } else if (Game_Flag_Query(kFlagAR02InsectDealerInterviewed)) {
Actor_Says(kActorMcCoy, 75, 18);
Actor_Says(kActorInsectDealer, 60, 12);
Actor_Says(kActorInsectDealer, 70, 14);
@@ -138,7 +138,7 @@ bool SceneScriptAR02::ClickedOnActor(int actorId) {
Actor_Says(kActorMcCoy, 210, 15);
Actor_Says(kActorInsectDealer, 310, 12);
Actor_Says(kActorMcCoy, 215, 13);
- if (Game_Flag_Query(374)) {
+ if (Game_Flag_Query(kFlagAR02DektoraBoughtScorpions)) {
Actor_Says(kActorMcCoy, 220, 14);
Actor_Says(kActorInsectDealer, 320, 12);
Actor_Says(kActorMcCoy, 225, 13);
@@ -167,10 +167,10 @@ bool SceneScriptAR02::ClickedOnActor(int actorId) {
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(kFlagHassanTalk)) {
+ if (!Game_Flag_Query(kFlagAR02HassanTalk)) {
Actor_Says(kActorHasan, 0, 14);
Actor_Says(kActorMcCoy, 140, 18);
- Game_Flag_Set(kFlagHassanTalk);
+ Game_Flag_Set(kFlagAR02HassanTalk);
return true;
}
dialogueWithHassan();
@@ -183,22 +183,22 @@ bool SceneScriptAR02::ClickedOnItem(int itemId, bool a2) {
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(kFlagScorpionsChecked)) {
+ if (!Game_Flag_Query(kFlagAR02ScorpionsChecked)) {
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(kFlagScorpionsChecked);
- } else if ( Game_Flag_Query(kFlagScorpionsChecked)
- && !Game_Flag_Query(kFlagStungByScorpion)
+ Game_Flag_Set(kFlagAR02ScorpionsChecked);
+ } else if ( Game_Flag_Query(kFlagAR02ScorpionsChecked)
+ && !Game_Flag_Query(kFlagAR02StungByScorpion)
) {
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(kFlagStungByScorpion);
+ Game_Flag_Set(kFlagAR02StungByScorpion);
} else {
Actor_Says(kActorMcCoy, 8527, 14);
}
@@ -222,8 +222,8 @@ bool SceneScriptAR02::ClickedOnExit(int exitId) {
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);
Game_Flag_Set(kFlagAR02toRC03);
- Game_Flag_Reset(kFlagMcCoyAtARxx);
- Game_Flag_Set(kFlagMcCoyAtRCxx);
+ Game_Flag_Reset(kFlagMcCoyInAnimoidRow);
+ Game_Flag_Set(kFlagMcCoyInRunciters);
Music_Stop(3);
Set_Enter(kSetRC03, kSceneRC03);
}
@@ -302,7 +302,7 @@ void SceneScriptAR02::dialogueWithInsectDealer1() {
Actor_Says(kActorInsectDealer, 170, 14);
Actor_Says(kActorMcCoy, 100, 16);
Actor_Says(kActorInsectDealer, 180, 13);
- Game_Flag_Set(kFlagInsectDealerInterviewed);
+ Game_Flag_Set(kFlagAR02InsectDealerInterviewed);
Actor_Clue_Acquire(kActorMcCoy, kCluePeruvianLadyInterview, true, kActorInsectDealer);
break;
diff --git a/engines/bladerunner/script/scene/bb01.cpp b/engines/bladerunner/script/scene/bb01.cpp
index 6aa24e283d..47734a4d23 100644
--- a/engines/bladerunner/script/scene/bb01.cpp
+++ b/engines/bladerunner/script/scene/bb01.cpp
@@ -32,25 +32,28 @@ void SceneScriptBB01::InitializeScene() {
} else {
Setup_Scene_Information(43.0f, 0.0f, 1058.0f, 0);
}
- Scene_Exit_Add_2D_Exit(0, 0, 0, 72, 299, 3);
+
+ Scene_Exit_Add_2D_Exit(0, 0, 0, 72, 299, 3);
Scene_Exit_Add_2D_Exit(1, 151, 218, 322, 290, 3);
if (Game_Flag_Query(kFlagSpinnerAtBB01)) {
Scene_Exit_Add_2D_Exit(2, 0, 311, 312, 479, 2);
}
- Ambient_Sounds_Add_Looping_Sound(54, 50, 0, 1);
+
+ Ambient_Sounds_Add_Looping_Sound( 54, 50, 0, 1);
Ambient_Sounds_Add_Looping_Sound(105, 25, -100, 0);
- Ambient_Sounds_Add_Sound(82, 5, 60, 40, 60, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(83, 5, 60, 40, 65, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(84, 5, 60, 40, 60, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(67, 5, 80, 20, 25, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(66, 5, 80, 20, 25, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 82, 5, 60, 40, 60, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 83, 5, 60, 40, 65, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 84, 5, 60, 40, 60, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 67, 5, 80, 20, 25, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 66, 5, 80, 20, 25, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(378, 5, 120, 25, 33, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(379, 5, 120, 25, 33, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(380, 5, 120, 25, 33, -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);
+
if (Game_Flag_Query(kFlagSpinnerAtBB01)
&& !Game_Flag_Query(kFlagDR02toBB01)
&& !Game_Flag_Query(kFlagBB02toBB01)
@@ -95,12 +98,13 @@ bool SceneScriptBB01::ClickedOnExit(int exitId) {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -140.0f, 9.0f, 818.0f, 0, true, false, 0);
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -233.0f, 9.0f, 846.0f, 0, true, false, 0)) {
Game_Flag_Set(kFlagBB01toDR02);
- Game_Flag_Reset(kFlagMcCoyAtBBxx);
- Game_Flag_Set(kFlagMcCoyAtDRxx);
+ Game_Flag_Reset(kFlagMcCoyInBradburyBuilding);
+ Game_Flag_Set(kFlagMcCoyInDNARow);
Set_Enter(kSetDR01_DR02_DR04, kSceneDR02);
}
return true;
}
+
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -125.39f, 9.0f, 372.45f, 0, true, false, 0)) {
Game_Flag_Set(kFlagBB01toBB02);
@@ -108,80 +112,81 @@ bool SceneScriptBB01::ClickedOnExit(int exitId) {
}
return true;
}
+
if (exitId == 2) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 43.0f, 0.0f, 1062.0f, 0, false, false, 0)) {
- Game_Flag_Reset(kFlagMcCoyAtCTxx);
- Game_Flag_Reset(kFlagMcCoyAtRCxx);
- Game_Flag_Reset(kFlagMcCoyAtMAxx);
- Game_Flag_Reset(kFlagMcCoyAtPSxx);
- Game_Flag_Reset(kFlagMcCoyAtBBxx);
+ Game_Flag_Reset(kFlagMcCoyInChinaTown);
+ Game_Flag_Reset(kFlagMcCoyInRunciters);
+ Game_Flag_Reset(kFlagMcCoyInMcCoyApartment);
+ Game_Flag_Reset(kFlagMcCoyInPoliceStation);
+ Game_Flag_Reset(kFlagMcCoyInBradburyBuilding);
int spinnerDest = Spinner_Interface_Choose_Dest(3, false);
switch (spinnerDest) {
case kSpinnerDestinationPoliceStation:
- Game_Flag_Set(kFlagMcCoyAtPSxx);
+ Game_Flag_Set(kFlagMcCoyInPoliceStation);
Game_Flag_Reset(kFlagSpinnerAtBB01);
Game_Flag_Set(kFlagSpinnerAtPS01);
Set_Enter(kSetPS01, kScenePS01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 4, true);
break;
case kSpinnerDestinationMcCoysApartment:
- Game_Flag_Set(kFlagMcCoyAtMAxx);
+ Game_Flag_Set(kFlagMcCoyInMcCoyApartment);
Game_Flag_Reset(kFlagSpinnerAtBB01);
Game_Flag_Set(kFlagSpinnerAtMA01);
Set_Enter(kSetMA01, kSceneMA01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 4, true);
break;
case kSpinnerDestinationRuncitersAnimals:
- Game_Flag_Set(kFlagMcCoyAtRCxx);
+ Game_Flag_Set(kFlagMcCoyInRunciters);
Game_Flag_Reset(kFlagSpinnerAtBB01);
Game_Flag_Set(kFlagSpinnerAtRC01);
Set_Enter(kSetRC01, kSceneRC01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 4, true);
break;
case kSpinnerDestinationChinatown:
- Game_Flag_Set(kFlagMcCoyAtCTxx);
+ Game_Flag_Set(kFlagMcCoyInChinaTown);
Game_Flag_Reset(kFlagSpinnerAtBB01);
Game_Flag_Set(kFlagSpinnerAtCT01);
Set_Enter(kSetCT01_CT12, kSceneCT01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 4, true);
break;
case kSpinnerDestinationAnimoidRow:
- Game_Flag_Set(kFlagMcCoyAtARxx);
+ Game_Flag_Set(kFlagMcCoyInAnimoidRow);
Game_Flag_Reset(kFlagSpinnerAtBB01);
Game_Flag_Set(kFlagSpinnerAtAR01);
Set_Enter(kSetAR01_AR02, kSceneAR01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 4, true);
break;
case kSpinnerDestinationTyrellBuilding:
- Game_Flag_Set(kFlagMcCoyAtTBxx);
+ Game_Flag_Set(kFlagMcCoyInTyrellBuilding);
Game_Flag_Reset(kFlagSpinnerAtBB01);
Game_Flag_Set(kFlagSpinnerAtTB02);
Set_Enter(kSetTB02_TB03, kSceneTB02);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 4, true);
break;
case kSpinnerDestinationDNARow:
- Game_Flag_Set(kFlagMcCoyAtDRxx);
+ Game_Flag_Set(kFlagMcCoyInDNARow);
Game_Flag_Reset(kFlagSpinnerAtBB01);
Game_Flag_Set(kFlagSpinnerAtDR01);
Set_Enter(kSetDR01_DR02_DR04, kSceneDR01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 4, true);
break;
case kSpinnerDestinationNightclubRow:
- Game_Flag_Set(kFlagMcCoyAtNRxx);
+ Game_Flag_Set(kFlagMcCoyInNightclubRow);
Game_Flag_Reset(kFlagSpinnerAtBB01);
Game_Flag_Set(kFlagSpinnerAtNR01);
Set_Enter(kSetNR01, kSceneNR01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 4, true);
break;
case kSpinnerDestinationHysteriaHall:
- Game_Flag_Set(kFlagMcCoyAtHFxx);
+ Game_Flag_Set(kFlagMcCoyInHysteriaHall);
Game_Flag_Reset(kFlagSpinnerAtBB01);
Game_Flag_Set(kFlagSpinnerAtHF01);
Set_Enter(kSetHF01, kSceneHF01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 4, true);
break;
default:
- Game_Flag_Set(kFlagMcCoyAtBBxx);
+ Game_Flag_Set(kFlagMcCoyInBradburyBuilding);
Scene_Loop_Start_Special(kSceneLoopModeOnce, 3, true);
break;
}
@@ -199,10 +204,14 @@ void SceneScriptBB01::SceneFrameAdvanced(int frame) {
if (frame == 193) {
Sound_Play(118, 40, 0, 0, 50);
}
- if (frame == 241 || frame == 363) {
+ if (frame == 241
+ || frame == 363
+ ) {
Sound_Play(116, 100, -50, -50, 50);
}
- if (frame == 286 || frame == 407) {
+ if (frame == 286
+ || frame == 407
+ ) {
Sound_Play(119, 100, -50, -50, 50);
}
if (frame == 433) {
diff --git a/engines/bladerunner/script/scene/bb02.cpp b/engines/bladerunner/script/scene/bb02.cpp
index 2eb92516eb..8ebecee27f 100644
--- a/engines/bladerunner/script/scene/bb02.cpp
+++ b/engines/bladerunner/script/scene/bb02.cpp
@@ -24,44 +24,54 @@
namespace BladeRunner {
+enum kBB02Loops {
+ kBB02LoopElevatorComingDown = 0,
+ kBB02LoopMainElevatorDown = 1,
+ kBB02LoopElevatorGoingUp = 3,
+ kBB02LoopMainElevatorUp = 4
+};
+
void SceneScriptBB02::InitializeScene() {
if (Game_Flag_Query(kFlagBB03toBB02)) {
Setup_Scene_Information(179.0f, -415.06f, 274.0f, 904);
- } else if (Game_Flag_Query(333)) {
+ } else if (Game_Flag_Query(kFlagBB04toBB02)) {
Setup_Scene_Information(-12.0f, -415.06f, -27.0f, 264);
- Scene_Loop_Start_Special(0, 0, 0);
+ Scene_Loop_Start_Special(kSceneLoopModeLoseControl, kBB02LoopElevatorComingDown, false);
} else {
Setup_Scene_Information(98.0f, -415.06f, -593.0f, 530);
Game_Flag_Reset(kFlagBB01toBB02);
}
+
Scene_Exit_Add_2D_Exit(0, 313, 137, 353, 173, 0);
Scene_Exit_Add_2D_Exit(1, 207, 291, 275, 443, 3);
Scene_Exit_Add_2D_Exit(2, 303, 422, 639, 479, 2);
- Ambient_Sounds_Add_Looping_Sound(54, 20, 0, 1);
+
+ Ambient_Sounds_Add_Looping_Sound( 54, 20, 0, 1);
Ambient_Sounds_Add_Looping_Sound(103, 40, 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);
Ambient_Sounds_Add_Sound(445, 2, 180, 14, 16, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(446, 2, 180, 14, 16, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(82, 5, 60, 20, 40, 0, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(83, 5, 60, 20, 45, 0, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(84, 5, 60, 20, 40, 0, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(90, 5, 50, 17, 17, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(91, 5, 50, 17, 17, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 82, 5, 60, 20, 40, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 83, 5, 60, 20, 45, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 84, 5, 60, 20, 40, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 90, 5, 50, 17, 17, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 91, 5, 50, 17, 17, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(375, 5, 180, 25, 25, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(376, 5, 180, 25, 25, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(377, 5, 180, 25, 25, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(72, 5, 80, 14, 16, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(73, 5, 80, 14, 16, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(74, 5, 80, 14, 16, -100, 100, -101, -101, 0, 0);
- if (!Game_Flag_Query(494)) {
- Game_Flag_Set(493);
- Game_Flag_Set(494);
+ Ambient_Sounds_Add_Sound( 72, 5, 80, 14, 16, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 73, 5, 80, 14, 16, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 74, 5, 80, 14, 16, -100, 100, -101, -101, 0, 0);
+
+ if (!Game_Flag_Query(kFlagBB02Entered)) {
+ Game_Flag_Set(kFlagBB02ElevatorDown);
+ Game_Flag_Set(kFlagBB02Entered);
}
- if (Game_Flag_Query(493)) {
- Scene_Loop_Set_Default(1);
+ if (Game_Flag_Query(kFlagBB02ElevatorDown)) {
+ Scene_Loop_Set_Default(kBB02LoopMainElevatorDown);
} else {
- Scene_Loop_Set_Default(4);
+ Scene_Loop_Set_Default(kBB02LoopMainElevatorUp);
}
}
@@ -96,24 +106,26 @@ bool SceneScriptBB02::ClickedOnExit(int exitId) {
}
return true;
}
+
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -12.0f, -415.06f, -27.0f, 0, 1, false, 0)) {
Player_Loses_Control();
- if (!Game_Flag_Query(493)) {
- Scene_Loop_Start_Special(kSceneLoopModeOnce, 0, true);
+ if (!Game_Flag_Query(kFlagBB02ElevatorDown)) {
+ Scene_Loop_Start_Special(kSceneLoopModeOnce, kBB02LoopElevatorComingDown, true);
}
- Game_Flag_Set(332);
- Game_Flag_Reset(493);
+ Game_Flag_Set(kFlagBB02toBB04);
+ Game_Flag_Reset(kFlagBB02ElevatorDown);
Set_Enter(kSetBB02_BB04_BB06_BB51, kSceneBB04);
- Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 3, false);
+ Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kBB02LoopElevatorGoingUp, false);
}
return true;
}
+
if (exitId == 2) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 86.0f, -415.06f, 174.0f, 0, 1, false, 0)) {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, 179.0f, -415.06f, 274.0f, 0, 0, false, 0);
Game_Flag_Set(kFlagBB02toBB03);
- Game_Flag_Reset(493);
+ Game_Flag_Reset(kFlagBB02ElevatorDown);
Set_Enter(kSetBB03, kSceneBB03);
}
return true;
@@ -141,10 +153,10 @@ void SceneScriptBB02::PlayerWalkedIn() {
if (Game_Flag_Query(kFlagBB03toBB02)) {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, 86.0f, -415.06f, 174.0f, 0, 0, false, 0);
Game_Flag_Reset(kFlagBB03toBB02);
- } else if (Game_Flag_Query(333)) {
+ } else if (Game_Flag_Query(kFlagBB04toBB02)) {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, 35.0f, -415.06f, -27.0f, 0, 0, false, 0);
Player_Gains_Control();
- Game_Flag_Reset(333);
+ Game_Flag_Reset(kFlagBB04toBB02);
}
}
diff --git a/engines/bladerunner/script/scene/bb03.cpp b/engines/bladerunner/script/scene/bb03.cpp
index 9ecbb953be..b21fcd387c 100644
--- a/engines/bladerunner/script/scene/bb03.cpp
+++ b/engines/bladerunner/script/scene/bb03.cpp
@@ -33,32 +33,34 @@ void SceneScriptBB03::InitializeScene() {
if (Game_Flag_Query(kFlagBB05toBB03)) {
Setup_Scene_Information(204.0f, 60.16f, -164.0f, 740);
}
- Scene_Exit_Add_2D_Exit(0, 589, 0, 639, 479, 1);
+
+ Scene_Exit_Add_2D_Exit(0, 589, 0, 639, 479, 1);
Scene_Exit_Add_2D_Exit(1, 167, 372, 439, 479, 2);
Scene_Exit_Add_2D_Exit(2, 451, 115, 547, 320, 1);
- Ambient_Sounds_Add_Looping_Sound(54, 20, 0, 1);
- Ambient_Sounds_Add_Looping_Sound(103, 40, 0, 1);
+
+ Ambient_Sounds_Add_Looping_Sound( 54, 20, 0, 1);
+ Ambient_Sounds_Add_Looping_Sound(103, 40, 0, 1);
Ambient_Sounds_Add_Looping_Sound(105, 34, 100, 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);
Ambient_Sounds_Add_Sound(445, 2, 180, 14, 16, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(446, 2, 180, 14, 16, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(303, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(304, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(305, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(306, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(307, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(308, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(309, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(310, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(90, 5, 50, 17, 17, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(91, 5, 50, 17, 17, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(303, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(304, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(305, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(306, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(307, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(308, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(309, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(310, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 90, 5, 50, 17, 17, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 91, 5, 50, 17, 17, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(375, 5, 180, 25, 25, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(376, 5, 180, 25, 25, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(377, 5, 180, 25, 25, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(72, 5, 80, 20, 20, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(73, 5, 80, 20, 20, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(74, 5, 80, 20, 20, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 72, 5, 80, 20, 20, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 73, 5, 80, 20, 20, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 74, 5, 80, 20, 20, -100, 100, -101, -101, 0, 0);
}
void SceneScriptBB03::SceneLoaded() {
@@ -84,8 +86,8 @@ bool SceneScriptBB03::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptBB03::ClickedOnExit(int exitId) {
if (exitId == 0) {
- 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);
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 176.0f, 60.16f, -64.0f, 0, true, false, 0)) {
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, 176.0f, 60.16f, 0.0f, 0, false, false, 0);
Game_Flag_Set(kFlagBB03toBB04);
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
@@ -93,8 +95,9 @@ bool SceneScriptBB03::ClickedOnExit(int exitId) {
}
return true;
}
+
if (exitId == 1) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 20.0f, 60.16f, 0.0f, 0, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 20.0f, 60.16f, 0.0f, 0, true, false, 0)) {
Game_Flag_Set(kFlagBB03toBB02);
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
@@ -102,19 +105,20 @@ bool SceneScriptBB03::ClickedOnExit(int exitId) {
}
return true;
}
+
if (exitId == 2) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 204.0f, 60.16f, -164.0f, 0, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 204.0f, 60.16f, -164.0f, 0, true, false, 0)) {
if (Global_Variable_Query(kVariableChapter) < 4) {
if (Actor_Query_Goal_Number(kActorSebastian) == 200) {
- Actor_Says(kActorSebastian, 70, 3);
+ Actor_Says(kActorSebastian, 70, kAnimationModeTalk);
Actor_Says(kActorMcCoy, 7010, 13);
- Actor_Says(kActorSebastian, 80, 3);
+ Actor_Says(kActorSebastian, 80, kAnimationModeTalk);
Actor_Says(kActorMcCoy, 7015, 12);
- Actor_Says(kActorSebastian, 90, 3);
+ Actor_Says(kActorSebastian, 90, kAnimationModeTalk);
Actor_Says(kActorMcCoy, 7020, 14);
- Actor_Says(kActorSebastian, 100, 3);
+ Actor_Says(kActorSebastian, 100, kAnimationModeTalk);
Actor_Says(kActorMcCoy, 7025, 15);
- Actor_Says(kActorSebastian, 110, 3);
+ Actor_Says(kActorSebastian, 110, kAnimationModeTalk);
Actor_Set_Targetable(kActorBryant, false);
Actor_Set_Targetable(kActorGeneralDoll, false);
}
@@ -123,7 +127,7 @@ bool SceneScriptBB03::ClickedOnExit(int exitId) {
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Set_Enter(kSetBB05, kSceneBB05);
} else {
- Actor_Says(kActorMcCoy, 8522, 3);
+ Actor_Says(kActorMcCoy, 8522, kAnimationModeTalk);
}
}
return true;
diff --git a/engines/bladerunner/script/scene/bb04.cpp b/engines/bladerunner/script/scene/bb04.cpp
index 1bf12cb7f2..ab935ad55c 100644
--- a/engines/bladerunner/script/scene/bb04.cpp
+++ b/engines/bladerunner/script/scene/bb04.cpp
@@ -31,31 +31,33 @@ void SceneScriptBB04::InitializeScene() {
} else {
Setup_Scene_Information(-15.0f, -25.17f, 45.0f, 691);
}
+
Scene_Exit_Add_2D_Exit(0, 218, 102, 360, 254, 1);
- Scene_Exit_Add_2D_Exit(1, 0, 334, 639, 479, 2);
- Ambient_Sounds_Add_Looping_Sound(54, 20, 0, 1);
- Ambient_Sounds_Add_Looping_Sound(103, 40, 0, 1);
+ Scene_Exit_Add_2D_Exit(1, 0, 334, 639, 479, 2);
+
+ Ambient_Sounds_Add_Looping_Sound( 54, 20, 0, 1);
+ Ambient_Sounds_Add_Looping_Sound(103, 40, 0, 1);
Ambient_Sounds_Add_Looping_Sound(105, 44, -100, 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);
Ambient_Sounds_Add_Sound(445, 2, 180, 14, 16, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(446, 2, 180, 14, 16, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(303, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(304, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(305, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(306, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(307, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(308, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(309, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(310, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(90, 5, 50, 17, 17, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(91, 5, 50, 17, 17, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(303, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(304, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(305, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(306, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(307, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(308, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(309, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(310, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 90, 5, 50, 17, 17, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 91, 5, 50, 17, 17, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(375, 5, 180, 25, 25, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(376, 5, 180, 25, 25, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(377, 5, 180, 25, 25, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(72, 5, 80, 20, 20, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(73, 5, 80, 20, 20, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(74, 5, 80, 20, 20, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 72, 5, 80, 20, 20, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 73, 5, 80, 20, 20, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 74, 5, 80, 20, 20, -100, 100, -101, -101, 0, 0);
}
void SceneScriptBB04::SceneLoaded() {
@@ -80,19 +82,20 @@ bool SceneScriptBB04::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptBB04::ClickedOnExit(int exitId) {
if (exitId == 0) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -92.0f, -26.6f, 45.0f, 0, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -92.0f, -26.6f, 45.0f, 0, true, false, 0)) {
Player_Loses_Control();
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -15.0f, -25.17f, 45.0f, 0, 0, false, 0);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -15.0f, -25.17f, 45.0f, 0, false, false, 0);
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(333);
+ Game_Flag_Set(kFlagBB04toBB02);
Game_Flag_Set(493);
Set_Enter(kSetBB02_BB04_BB06_BB51, kSceneBB02);
}
return true;
}
+
if (exitId == 1) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -107.0f, -26.6f, 397.0f, 0, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -107.0f, -26.6f, 397.0f, 0, true, false, 0)) {
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagBB04toBB03);
@@ -114,10 +117,10 @@ void SceneScriptBB04::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
}
void SceneScriptBB04::PlayerWalkedIn() {
- if (Game_Flag_Query(332)) {
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -92.0f, -26.6f, 45.0f, 0, 0, false, 0);
+ if (Game_Flag_Query(kFlagBB02toBB04)) {
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -92.0f, -26.6f, 45.0f, 0, false, false, 0);
Player_Gains_Control();
- Game_Flag_Reset(332);
+ Game_Flag_Reset(kFlagBB02toBB04);
}
}
diff --git a/engines/bladerunner/script/scene/bb05.cpp b/engines/bladerunner/script/scene/bb05.cpp
index 95e3975b11..cf788291a2 100644
--- a/engines/bladerunner/script/scene/bb05.cpp
+++ b/engines/bladerunner/script/scene/bb05.cpp
@@ -26,39 +26,42 @@ namespace BladeRunner {
void SceneScriptBB05::InitializeScene() {
if (Game_Flag_Query(kFlagBB06toBB05)) {
- Setup_Scene_Information(95.0f, -60.31f, 331.0f, 0);
+ Setup_Scene_Information( 95.0f, -60.31f, 331.0f, 0);
} else if (Game_Flag_Query(kFlagBB12toBB05)) {
- Setup_Scene_Information(87.0f, -60.34f, -96.0f, 0);
+ Setup_Scene_Information( 87.0f, -60.34f, -96.0f, 0);
} else if (Game_Flag_Query(kFlagBB07toBB05)) {
- Setup_Scene_Information(271.0f, -60.31f, 203.0f, 0);
+ Setup_Scene_Information( 271.0f, -60.31f, 203.0f, 0);
} else {
Setup_Scene_Information(-212.0f, -60.31f, 131.0f, 0);
}
- Scene_Exit_Add_2D_Exit(0, 92, 125, 187, 317, 3);
- Scene_Exit_Add_2D_Exit(1, 0, 0, 30, 479, 3);
- Scene_Exit_Add_2D_Exit(2, 589, 0, 639, 479, 1);
+
+ Scene_Exit_Add_2D_Exit(0, 92, 125, 187, 317, 3);
+ Scene_Exit_Add_2D_Exit(1, 0, 0, 30, 479, 3);
+ Scene_Exit_Add_2D_Exit(2, 589, 0, 639, 479, 1);
Scene_Exit_Add_2D_Exit(3, 481, 113, 573, 307, 0);
- Ambient_Sounds_Add_Looping_Sound(54, 12, 0, 1);
+
+ Ambient_Sounds_Add_Looping_Sound( 54, 12, 0, 1);
Ambient_Sounds_Add_Looping_Sound(103, 28, 0, 1);
Ambient_Sounds_Add_Looping_Sound(105, 14, 0, 1);
- Ambient_Sounds_Add_Sound(303, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(304, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(305, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(306, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(307, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(308, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(309, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(310, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(90, 5, 50, 17, 17, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(91, 5, 50, 17, 17, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(303, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(304, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(305, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(306, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(307, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(308, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(309, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(310, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 90, 5, 50, 17, 17, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 91, 5, 50, 17, 17, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(375, 5, 180, 25, 25, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(376, 5, 180, 25, 25, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(377, 5, 180, 25, 25, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(72, 5, 80, 14, 14, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(73, 5, 80, 14, 14, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(74, 5, 80, 14, 14, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 72, 5, 80, 14, 14, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 73, 5, 80, 14, 14, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 74, 5, 80, 14, 14, -100, 100, -101, -101, 0, 0);
+
if (!Game_Flag_Query(495)) {
- Overlay_Play("BB05OVER", 0, 0, 0, 0);
+ Overlay_Play("BB05OVER", 0, false, false, 0);
Game_Flag_Set(495);
}
}
@@ -97,7 +100,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)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -212.0f, -60.31f, 131.0f, 0, true, false, 0)) {
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagBB05toBB03);
@@ -105,8 +108,9 @@ bool SceneScriptBB05::ClickedOnExit(int exitId) {
}
return true;
}
+
if (exitId == 1) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 95.0f, -60.31f, 331.0f, 0, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 95.0f, -60.31f, 331.0f, 0, true, false, 0)) {
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagBB05toBB06);
@@ -114,8 +118,9 @@ bool SceneScriptBB05::ClickedOnExit(int exitId) {
}
return true;
}
+
if (exitId == 2) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 271.0f, -60.31f, 203.0f, 0, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 271.0f, -60.31f, 203.0f, 0, true, false, 0)) {
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagBB05toBB07);
@@ -123,8 +128,9 @@ bool SceneScriptBB05::ClickedOnExit(int exitId) {
}
return true;
}
+
if (exitId == 3) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 151.0f, -60.34f, -108.0f, 0, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 151.0f, -60.34f, -108.0f, 0, true, false, 0)) {
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagBB05toBB12);
@@ -147,18 +153,19 @@ void SceneScriptBB05::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
void SceneScriptBB05::PlayerWalkedIn() {
if (Game_Flag_Query(kFlagBB06toBB05)) {
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, 95.0f, -60.31f, 303.0f, 0, 0, false, 0);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, 95.0f, -60.31f, 303.0f, 0, false, false, 0);
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);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, 231.0f, -60.31f, 203.0f, 0, false, false, 0);
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);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, 111.0f, -60.31f, -24.0f, 0, false, false, 0);
Game_Flag_Reset(kFlagBB12toBB05);
} else {
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -76.0f, -60.31f, 131.0f, 0, 0, false, 0);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -76.0f, -60.31f, 131.0f, 0, false, false, 0);
Game_Flag_Reset(kFlagBB03toBB05);
}
+
if (Actor_Query_Goal_Number(kActorSebastian) == 200) {
Actor_Face_Actor(kActorSebastian, kActorMcCoy, true);
Actor_Face_Actor(kActorMcCoy, kActorSebastian, true);
@@ -182,12 +189,12 @@ void SceneScriptBB05::PlayerWalkedIn() {
} else {
Actor_Put_In_Set(kActorGeneralDoll, kSetBB05);
Actor_Set_At_Waypoint(kActorGeneralDoll, 134, 0);
- Loop_Actor_Walk_To_Waypoint(kActorGeneralDoll, 135, 0, 0, false);
- Actor_Says(kActorGeneralDoll, 0, 3);
+ Loop_Actor_Walk_To_Waypoint(kActorGeneralDoll, 135, 0, false, false);
+ Actor_Says(kActorGeneralDoll, 0, kAnimationModeTalk);
Actor_Face_Actor(kActorMcCoy, kActorGeneralDoll, true);
Actor_Face_Actor(kActorSebastian, kActorGeneralDoll, true);
Actor_Says(kActorSebastian, 220, 13);
- Loop_Actor_Walk_To_Waypoint(kActorGeneralDoll, 134, 0, 0, false);
+ Loop_Actor_Walk_To_Waypoint(kActorGeneralDoll, 134, 0, false, false);
Actor_Face_Actor(kActorSebastian, kActorMcCoy, true);
Actor_Face_Actor(kActorMcCoy, kActorSebastian, true);
Actor_Says(kActorSebastian, 230, 15);
diff --git a/engines/bladerunner/script/scene/bb06.cpp b/engines/bladerunner/script/scene/bb06.cpp
index 7821b735e2..51fc0db2c0 100644
--- a/engines/bladerunner/script/scene/bb06.cpp
+++ b/engines/bladerunner/script/scene/bb06.cpp
@@ -25,49 +25,54 @@
namespace BladeRunner {
void SceneScriptBB06::InitializeScene() {
- if (Game_Flag_Query(394)) {
- Setup_Scene_Information(76.0f, 0.0f, 79.0f, 622);
- } else if (Game_Flag_Query(395)) {
- Setup_Scene_Information(55.0f, 0.0f, -96.0f, 761);
- } else if (Game_Flag_Query(362)) {
+ if (Game_Flag_Query(kFlagBB51toBB06a)) {
+ Setup_Scene_Information( 76.0f, 0.0f, 79.0f, 622);
+ } else if (Game_Flag_Query(kFlagBB51toBB06b)) {
+ Setup_Scene_Information( 55.0f, 0.0f, -96.0f, 761);
+ } else if (Game_Flag_Query(kFlagBB07toBB06)) {
Setup_Scene_Information(-115.0f, 0.0f, -103.0f, 375);
- Game_Flag_Reset(362);
+ Game_Flag_Reset(kFlagBB07toBB06);
} else {
Setup_Scene_Information(-37.0f, 0.0f, 178.0f, 0);
}
- Scene_Exit_Add_2D_Exit(0, 0, 43, 14, 478, 3);
- Scene_Exit_Add_2D_Exit(1, 425, 0, 639, 361, 0);
+
+ Scene_Exit_Add_2D_Exit(0, 0, 43, 14, 478, 3);
+ Scene_Exit_Add_2D_Exit(1, 425, 0, 639, 361, 0);
Scene_Exit_Add_2D_Exit(3, 195, 164, 239, 280, 3);
+
Ambient_Sounds_Add_Looping_Sound(103, 28, 0, 1);
- Ambient_Sounds_Add_Sound(303, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(304, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(303, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(304, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
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);
Ambient_Sounds_Add_Sound(445, 2, 180, 14, 16, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(446, 2, 180, 14, 16, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(305, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(306, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(307, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(308, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(309, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(310, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- if (Game_Flag_Query(394) || Game_Flag_Query(395)) {
- Scene_Loop_Start_Special(0, 0, 0);
+ Ambient_Sounds_Add_Sound(305, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(306, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(307, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(308, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(309, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(310, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+
+ if (Game_Flag_Query(kFlagBB51toBB06a)
+ || Game_Flag_Query(kFlagBB51toBB06b)
+ ) {
+ Scene_Loop_Start_Special(kSceneLoopModeLoseControl, 0, false);
Scene_Loop_Set_Default(1);
- Game_Flag_Reset(394);
- Game_Flag_Reset(395);
+ Game_Flag_Reset(kFlagBB51toBB06a);
+ Game_Flag_Reset(kFlagBB51toBB06b);
} else {
Scene_Loop_Set_Default(1);
}
if (Game_Flag_Query(410)) {
- Overlay_Play("BB06OVER", 1, 1, 0, 0);
+ Overlay_Play("BB06OVER", 1, true, false, 0);
}
}
void SceneScriptBB06::SceneLoaded() {
Obstacle_Object("V2CHESSTBL01", true);
Clickable_Object("BOX31");
- Item_Add_To_World(77, 931, 2, -127.0f, 68.42f, 57.0f, 0, 8, 8, true, true, false, true);
+ Item_Add_To_World(77, 931, kSetBB02_BB04_BB06_BB51, -127.0f, 68.42f, 57.0f, 0, 8, 8, true, true, false, true);
}
bool SceneScriptBB06::MouseClick(int x, int y) {
@@ -96,7 +101,7 @@ bool SceneScriptBB06::ClickedOnActor(int actorId) {
bool SceneScriptBB06::ClickedOnItem(int itemId, bool a2) {
if (itemId == 77) {
if (Player_Query_Combat_Mode()) {
- Overlay_Play("BB06OVER", 1, 1, 1, 0);
+ Overlay_Play("BB06OVER", 1, true, true, 0);
Game_Flag_Set(410);
Item_Remove_From_World(77);
return true;
@@ -107,7 +112,7 @@ 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)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -37.0f, 0.0f, 178.0f, 0, true, false, 0)) {
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(kFlagBB06toBB05);
@@ -115,20 +120,22 @@ bool SceneScriptBB06::ClickedOnExit(int exitId) {
}
return true;
}
+
if (exitId == 1) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 101.0f, 0.0f, -25.0f, 0, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 101.0f, 0.0f, -25.0f, 0, true, false, 0)) {
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(393);
+ Game_Flag_Set(kFlagBB06toBB51);
Set_Enter(kSetBB02_BB04_BB06_BB51, kSceneBB51);
}
return true;
}
+
if (exitId == 3) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -115.0f, 0.0f, -103.0f, 0, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -115.0f, 0.0f, -103.0f, 0, true, false, 0)) {
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(363);
+ Game_Flag_Set(kFlagBB06toBB07);
Set_Enter(kSetBB06_BB07, kSceneBB07);
}
return true;
diff --git a/engines/bladerunner/script/scene/bb07.cpp b/engines/bladerunner/script/scene/bb07.cpp
index ba1d7bcd28..37bf9b5be6 100644
--- a/engines/bladerunner/script/scene/bb07.cpp
+++ b/engines/bladerunner/script/scene/bb07.cpp
@@ -25,33 +25,36 @@
namespace BladeRunner {
void SceneScriptBB07::InitializeScene() {
- if (Game_Flag_Query(365)) {
+ if (Game_Flag_Query(kFlagBB12toBB07)) {
Setup_Scene_Information(-655.0f, 252.59f, -1136.0f, 323);
- } else if (Game_Flag_Query(363)) {
+ } else if (Game_Flag_Query(kFlagBB06toBB07)) {
Setup_Scene_Information(-551.0f, 252.59f, -1004.0f, 29);
- Game_Flag_Reset(363);
+ Game_Flag_Reset(kFlagBB06toBB07);
} else {
Setup_Scene_Information(-652.0f, 252.59f, -1018.0f, 268);
}
- Scene_Exit_Add_2D_Exit(0, 0, 16, 51, 426, 3);
+
+ Scene_Exit_Add_2D_Exit(0, 0, 16, 51, 426, 3);
Scene_Exit_Add_2D_Exit(1, 124, 101, 172, 305, 3);
Scene_Exit_Add_2D_Exit(2, 282, 408, 476, 479, 2);
Scene_2D_Region_Add(0, 308, 283, 354, 308);
+
Ambient_Sounds_Add_Looping_Sound(332, 44, 0, 1);
Ambient_Sounds_Add_Looping_Sound(331, 24, 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);
Ambient_Sounds_Add_Sound(445, 2, 180, 14, 16, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(446, 2, 180, 14, 16, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(303, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(304, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(305, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(306, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(307, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(308, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(309, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(310, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
- Overlay_Play("BB07OVER", 0, 1, 0, 0);
+ Ambient_Sounds_Add_Sound(303, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(304, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(305, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(306, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(307, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(308, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(309, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(310, 5, 50, 17, 27, -100, 100, -101, -101, 0, 0);
+
+ Overlay_Play("BB07OVER", 0, true, false, 0);
}
void SceneScriptBB07::SceneLoaded() {
@@ -120,7 +123,7 @@ bool SceneScriptBB07::ClickedOnExit(int exitId) {
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Overlay_Remove("BB07OVER");
- Game_Flag_Set(364);
+ Game_Flag_Set(kFlagBB07toBB12);
Set_Enter(kSetBB12, kSceneBB12);
}
return true;
@@ -130,7 +133,7 @@ bool SceneScriptBB07::ClickedOnExit(int exitId) {
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Overlay_Remove("BB07OVER");
- Game_Flag_Set(362);
+ Game_Flag_Set(kFlagBB07toBB06);
Set_Enter(kSetBB06_BB07, kSceneBB06);
}
return true;
@@ -169,9 +172,9 @@ void SceneScriptBB07::PlayerWalkedIn() {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -594.0f, 252.59f, -1018.0f, 6, 0, false, 0);
Game_Flag_Reset(kFlagBB05toBB07);
}
- if (Game_Flag_Query(365)) {
+ if (Game_Flag_Query(kFlagBB12toBB07)) {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -602.0f, 252.59f, -1124.0f, 6, 0, false, 0);
- Game_Flag_Reset(365);
+ Game_Flag_Reset(kFlagBB12toBB07);
}
}
diff --git a/engines/bladerunner/script/scene/bb12.cpp b/engines/bladerunner/script/scene/bb12.cpp
index 8d9f3eeec1..7f7f1d9a41 100644
--- a/engines/bladerunner/script/scene/bb12.cpp
+++ b/engines/bladerunner/script/scene/bb12.cpp
@@ -25,7 +25,7 @@
namespace BladeRunner {
void SceneScriptBB12::InitializeScene() {
- if (Game_Flag_Query(364)) {
+ if (Game_Flag_Query(kFlagBB07toBB12)) {
Setup_Scene_Information(138.0f, 0.0f, 104.0f, 760);
} else if (Game_Flag_Query(506)) {
Setup_Scene_Information(-129.0f, 0.0f, 64.0f, 307);
@@ -92,7 +92,7 @@ bool SceneScriptBB12::ClickedOnExit(int exitId) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 138.0f, 0.0f, 104.0f, 0, 1, false, 0)) {
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(365);
+ Game_Flag_Set(kFlagBB12toBB07);
Set_Enter(kSetBB07, kSceneBB07);
}
return true;
@@ -126,9 +126,9 @@ void SceneScriptBB12::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
}
void SceneScriptBB12::PlayerWalkedIn() {
- if (Game_Flag_Query(364)) {
+ if (Game_Flag_Query(kFlagBB07toBB12)) {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, 114.0f, 0.0f, 104.0f, 0, 0, false, 0);
- Game_Flag_Reset(364);
+ Game_Flag_Reset(kFlagBB07toBB12);
} else if (Game_Flag_Query(506)) {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -101.0f, 0.0f, 64.0f, 0, 0, false, 0);
Game_Flag_Reset(506);
diff --git a/engines/bladerunner/script/scene/bb51.cpp b/engines/bladerunner/script/scene/bb51.cpp
index ae93dfae70..a28f66961b 100644
--- a/engines/bladerunner/script/scene/bb51.cpp
+++ b/engines/bladerunner/script/scene/bb51.cpp
@@ -26,7 +26,7 @@ namespace BladeRunner {
void SceneScriptBB51::InitializeScene() {
Setup_Scene_Information(101.0f, 0.0f, -25.0f, 152);
- Game_Flag_Reset(393);
+ Game_Flag_Reset(kFlagBB06toBB51);
Scene_Exit_Add_2D_Exit(0, 615, 0, 639, 479, 1);
Scene_Exit_Add_2D_Exit(1, 0, 323, 241, 479, 2);
Ambient_Sounds_Add_Looping_Sound(103, 28, 0, 1);
@@ -81,19 +81,19 @@ 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)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 76.0f, 0.0f, 79.0f, 0, true, false, 0)) {
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(394);
+ Game_Flag_Set(kFlagBB51toBB06a);
Set_Enter(kSetBB02_BB04_BB06_BB51, kSceneBB06);
}
return true;
}
if (exitId == 1) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 55.0f, 0.0f, -96.0f, 0, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 55.0f, 0.0f, -96.0f, 0, true, false, 0)) {
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(395);
+ Game_Flag_Set(kFlagBB51toBB06b);
Set_Enter(kSetBB02_BB04_BB06_BB51, kSceneBB06);
}
return true;
diff --git a/engines/bladerunner/script/scene/ct01.cpp b/engines/bladerunner/script/scene/ct01.cpp
index df8986430a..f43450f6da 100644
--- a/engines/bladerunner/script/scene/ct01.cpp
+++ b/engines/bladerunner/script/scene/ct01.cpp
@@ -72,7 +72,7 @@ void SceneScriptCT01::InitializeScene() {
if (Actor_Clue_Query(kActorMcCoy, kClueZubenRunsAway)) {
Scene_Exit_Add_2D_Exit(kCT01ExitCT03, 571, 233, 639, 367, 1);
}
- if (Game_Flag_Query(kFlagWarehouseOpen)) {
+ if (Game_Flag_Query(kFlagCT05WarehouseOpen)) {
Scene_Exit_Add_2D_Exit(kCT01ExitCT12, 506, 400, 639, 479, 2);
}
if (Game_Flag_Query(kFlagSpinnerAtCT01)) {
@@ -188,19 +188,17 @@ bool SceneScriptCT01::ClickedOnActor(int actorId) {
}
if (actorId == kActorGordo) {
- if (Actor_Query_Goal_Number(kActorGordo) == 0) {
+ if (Actor_Query_Goal_Number(kActorGordo) == kGoalGordoDefault) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -338.1f, -6.5f, 419.65f, 6, true, false, 0)) {
Actor_Face_Actor(kActorMcCoy, kActorGordo, true);
- if (!Game_Flag_Query(kFlagCT01McCoyTalkedToGordo)) {
+ if (!Game_Flag_Query(kFlagCT01GordoTalk)) {
Actor_Says(kActorMcCoy, 335, 18);
Actor_Says(kActorGordo, 20, 30);
- Game_Flag_Set(kFlagCT01McCoyTalkedToGordo);
+ Game_Flag_Set(kFlagCT01GordoTalk);
Actor_Clue_Acquire(kActorGordo, kClueMcCoysDescription, true, kActorMcCoy);
Actor_Clue_Acquire(kActorMcCoy, kClueMcCoyIsABladeRunner, true, kActorMcCoy);
Actor_Modify_Friendliness_To_Other(kActorGordo, kActorMcCoy, -1);
- } else if (Actor_Query_Goal_Number(kActorGordo) != 0) {
- Actor_Says(kActorMcCoy, 365, 14);
- } else {
+ } else if (Actor_Query_Goal_Number(kActorGordo) == kGoalGordoDefault) {
Actor_Says(kActorMcCoy, 340, 13);
Actor_Says(kActorMcCoy, 345, 11);
Actor_Says(kActorGordo, 30, 30);
@@ -208,6 +206,8 @@ bool SceneScriptCT01::ClickedOnActor(int actorId) {
Actor_Says(kActorGordo, 40, 30);
Actor_Modify_Friendliness_To_Other(kActorGordo, kActorMcCoy, -5);
Player_Loses_Control();
+ } else {
+ Actor_Says(kActorMcCoy, 365, 14);
}
if (Actor_Query_Is_In_Current_Set(kActorZuben)) {
Actor_Modify_Friendliness_To_Other(kActorZuben, kActorMcCoy, -2);
@@ -257,19 +257,19 @@ bool SceneScriptCT01::ClickedOnExit(int exitId) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -314.0f, -6.5f, 326.0f, 0, true, false, 0)) {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -330.0f, -6.5f, 221.0f, 0, false, true, 0);
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -530.0f, -6.5f, 241.0f, 0, false, true, 0);
- Game_Flag_Reset(kFlagMcCoyAtCTxx);
- Game_Flag_Reset(kFlagMcCoyAtRCxx);
- Game_Flag_Reset(kFlagMcCoyAtMAxx);
- Game_Flag_Reset(kFlagMcCoyAtPSxx);
- Game_Flag_Reset(kFlagMcCoyAtARxx);
- Game_Flag_Reset(kFlagMcCoyAtTBxx);
- Game_Flag_Reset(kFlagMcCoyAtDRxx);
- Game_Flag_Reset(kFlagMcCoyAtBBxx);
+ Game_Flag_Reset(kFlagMcCoyInChinaTown);
+ Game_Flag_Reset(kFlagMcCoyInRunciters);
+ Game_Flag_Reset(kFlagMcCoyInMcCoyApartment);
+ Game_Flag_Reset(kFlagMcCoyInPoliceStation);
+ Game_Flag_Reset(kFlagMcCoyInAnimoidRow);
+ Game_Flag_Reset(kFlagMcCoyInTyrellBuilding);
+ Game_Flag_Reset(kFlagMcCoyInDNARow);
+ Game_Flag_Reset(kFlagMcCoyInBradburyBuilding);
int spinnerDest = Spinner_Interface_Choose_Dest(-1, false);
switch (spinnerDest) {
case kSpinnerDestinationPoliceStation:
- Game_Flag_Set(kFlagMcCoyAtPSxx);
+ Game_Flag_Set(kFlagMcCoyInPoliceStation);
Game_Flag_Reset(kFlagArrivedFromSpinner1);
Game_Flag_Reset(kFlagSpinnerAtCT01);
Game_Flag_Set(kFlagSpinnerAtPS01);
@@ -277,7 +277,7 @@ bool SceneScriptCT01::ClickedOnExit(int exitId) {
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kCT01LoopOutshot, true);
break;
case kSpinnerDestinationMcCoysApartment:
- Game_Flag_Set(kFlagMcCoyAtMAxx);
+ Game_Flag_Set(kFlagMcCoyInMcCoyApartment);
Game_Flag_Reset(kFlagArrivedFromSpinner1);
Game_Flag_Reset(kFlagSpinnerAtCT01);
Game_Flag_Set(kFlagSpinnerAtMA01);
@@ -285,7 +285,7 @@ bool SceneScriptCT01::ClickedOnExit(int exitId) {
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kCT01LoopOutshot, true);
break;
case kSpinnerDestinationRuncitersAnimals:
- Game_Flag_Set(kFlagMcCoyAtRCxx);
+ Game_Flag_Set(kFlagMcCoyInRunciters);
Game_Flag_Reset(kFlagArrivedFromSpinner1);
Game_Flag_Reset(kFlagSpinnerAtCT01);
Game_Flag_Set(kFlagSpinnerAtRC01);
@@ -293,7 +293,7 @@ bool SceneScriptCT01::ClickedOnExit(int exitId) {
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kCT01LoopOutshot, true);
break;
case kSpinnerDestinationAnimoidRow:
- Game_Flag_Set(kFlagMcCoyAtARxx);
+ Game_Flag_Set(kFlagMcCoyInAnimoidRow);
Game_Flag_Reset(kFlagArrivedFromSpinner1);
Game_Flag_Reset(kFlagSpinnerAtCT01);
Game_Flag_Set(kFlagSpinnerAtAR01);
@@ -301,7 +301,7 @@ bool SceneScriptCT01::ClickedOnExit(int exitId) {
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kCT01LoopOutshot, true);
break;
case kSpinnerDestinationTyrellBuilding:
- Game_Flag_Set(kFlagMcCoyAtTBxx);
+ Game_Flag_Set(kFlagMcCoyInTyrellBuilding);
Game_Flag_Reset(kFlagSpinnerAtCT01);
Game_Flag_Reset(kFlagArrivedFromSpinner1);
Game_Flag_Set(kFlagSpinnerAtTB02);
@@ -309,7 +309,7 @@ bool SceneScriptCT01::ClickedOnExit(int exitId) {
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kCT01LoopOutshot, true);
break;
case kSpinnerDestinationDNARow:
- Game_Flag_Set(kFlagMcCoyAtDRxx);
+ Game_Flag_Set(kFlagMcCoyInDNARow);
Game_Flag_Reset(kFlagArrivedFromSpinner1);
Game_Flag_Reset(kFlagSpinnerAtCT01);
Game_Flag_Set(kFlagSpinnerAtDR01);
@@ -317,7 +317,7 @@ bool SceneScriptCT01::ClickedOnExit(int exitId) {
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kCT01LoopOutshot, true);
break;
case kSpinnerDestinationBradburyBuilding:
- Game_Flag_Set(kFlagMcCoyAtBBxx);
+ Game_Flag_Set(kFlagMcCoyInBradburyBuilding);
Game_Flag_Reset(kFlagArrivedFromSpinner1);
Game_Flag_Reset(kFlagSpinnerAtCT01);
Game_Flag_Set(kFlagSpinnerAtBB01);
@@ -325,7 +325,7 @@ bool SceneScriptCT01::ClickedOnExit(int exitId) {
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kCT01LoopOutshot, true);
break;
case kSpinnerDestinationNightclubRow:
- Game_Flag_Set(kFlagMcCoyAtNRxx);
+ Game_Flag_Set(kFlagMcCoyInNightclubRow);
Game_Flag_Reset(kFlagArrivedFromSpinner1);
Game_Flag_Reset(kFlagSpinnerAtCT01);
Game_Flag_Set(kFlagSpinnerAtNR01);
@@ -333,7 +333,7 @@ bool SceneScriptCT01::ClickedOnExit(int exitId) {
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kCT01LoopOutshot, true);
break;
case kSpinnerDestinationHysteriaHall:
- Game_Flag_Set(kFlagMcCoyAtHFxx);
+ Game_Flag_Set(kFlagMcCoyInHysteriaHall);
Game_Flag_Reset(kFlagArrivedFromSpinner1);
Game_Flag_Reset(kFlagSpinnerAtCT01);
Game_Flag_Set(kFlagSpinnerAtHF01);
@@ -341,7 +341,7 @@ bool SceneScriptCT01::ClickedOnExit(int exitId) {
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kCT01LoopOutshot, true);
break;
default:
- Game_Flag_Set(kFlagMcCoyAtCTxx);
+ Game_Flag_Set(kFlagMcCoyInChinaTown);
Player_Loses_Control();
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -530.0f, -6.5f, 241.0f, 0, false, true, 0);
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -330.0f, -6.5f, 221.0f, 0, false, true, 0);
@@ -433,7 +433,7 @@ void SceneScriptCT01::PlayerWalkedOut() {
Ambient_Sounds_Remove_All_Looping_Sounds(1);
}
Music_Stop(5);
- if (!Game_Flag_Query(kFlagMcCoyAtCTxx) && Global_Variable_Query(kVariableChapter) == 1) {
+ if (!Game_Flag_Query(kFlagMcCoyInChinaTown) && Global_Variable_Query(kVariableChapter) == 1) {
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Outtake_Play(kOuttakeTowards3, true, -1);
@@ -544,7 +544,7 @@ void SceneScriptCT01::dialogueWithHowieLee() {
if (Query_Difficulty_Level() != 0) {
Global_Variable_Decrement(kVariableChinyen, 10);
}
- Game_Flag_Set(kFlagBoughtHowieLeeFood);
+ Game_Flag_Set(kFlagCT01BoughtHowieLeeFood);
} else {
Actor_Says(kActorHowieLee, 130, 15);
}
diff --git a/engines/bladerunner/script/scene/ct02.cpp b/engines/bladerunner/script/scene/ct02.cpp
index da1fcac014..0e62302d1d 100644
--- a/engines/bladerunner/script/scene/ct02.cpp
+++ b/engines/bladerunner/script/scene/ct02.cpp
@@ -194,7 +194,7 @@ void SceneScriptCT02::dialogueWithZuben() {
}
bool SceneScriptCT02::ClickedOnActor(int actorId) {
- if (actorId == kActorZuben && Actor_Query_Goal_Number(kActorZuben) == kGoalZubenCT01Leave) {
+ if (actorId == kActorZuben && Actor_Query_Goal_Number(kActorZuben) == kGoalZubenCT01WalkToCT02) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -255.02f, -145.11f, 212.42f, 0, true, false, 0)) {
Actor_Face_Actor(kActorMcCoy, kActorZuben, true);
Actor_Face_Actor(kActorZuben, kActorMcCoy, true);
diff --git a/engines/bladerunner/script/scene/ct03.cpp b/engines/bladerunner/script/scene/ct03.cpp
index 506ff1cfdd..62a8022425 100644
--- a/engines/bladerunner/script/scene/ct03.cpp
+++ b/engines/bladerunner/script/scene/ct03.cpp
@@ -116,8 +116,8 @@ void SceneScriptCT03::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
}
void SceneScriptCT03::PlayerWalkedIn() {
- if (Actor_Query_Goal_Number(kActorZuben) == kGoalZubenCT02Flee) {
- Actor_Set_Goal_Number(kActorZuben, kGoalZubenCT06Hide);
+ if (Actor_Query_Goal_Number(kActorZuben) == kGoalZubenCT02RunToFreeSlotG) {
+ Actor_Set_Goal_Number(kActorZuben, kGoalZubenCT06HideAtFreeSlotA);
}
}
diff --git a/engines/bladerunner/script/scene/ct04.cpp b/engines/bladerunner/script/scene/ct04.cpp
index 24c1d3485e..613fd05829 100644
--- a/engines/bladerunner/script/scene/ct04.cpp
+++ b/engines/bladerunner/script/scene/ct04.cpp
@@ -73,18 +73,18 @@ bool SceneScriptCT04::MouseClick(int x, int y) {
bool SceneScriptCT04::ClickedOn3DObject(const char *objectName, bool a2) {
if (objectName) { // this can be only "DUMPSTER"
- if (!Game_Flag_Query(kFlagHomelessTalkedTo)
- && !Game_Flag_Query(kFlagMcCoyKilledHomeless)
+ if (!Game_Flag_Query(kFlagCT04HomelessTalk)
+ && !Game_Flag_Query(kFlagCT04HomelessKilledByMcCoy)
&& Actor_Query_Goal_Number(kActorTransient) == kGoalTransientDefault
) {
- Game_Flag_Set(kFlagHomelessTalkedTo);
+ Game_Flag_Set(kFlagCT04HomelessTalk);
Actor_Set_Goal_Number(kActorTransient, kGoalTransientCT04Leave);
}
- if ( Game_Flag_Query(kFlagMcCoyKilledHomeless)
- && !Game_Flag_Query(kFlagHomelessBodyInDumpster)
- && !Game_Flag_Query(kFlagHomelessBodyFound)
- && !Game_Flag_Query(kFlagDumpsterEmptied)
+ if ( Game_Flag_Query(kFlagCT04HomelessKilledByMcCoy)
+ && !Game_Flag_Query(kFlagCT04HomelessBodyInDumpster)
+ && !Game_Flag_Query(kFlagCT04HomelessBodyFound)
+ && !Game_Flag_Query(kFlagCT04HomelessBodyThrownAway)
&& Global_Variable_Query(kVariableChapter) == 1
) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -147.41f, -621.3f, 724.57f, 0, true, false, 0)) {
@@ -96,34 +96,34 @@ bool SceneScriptCT04::ClickedOn3DObject(const char *objectName, bool a2) {
Actor_Voice_Over(320, kActorVoiceOver);
Actor_Voice_Over(330, kActorVoiceOver);
Actor_Voice_Over(340, kActorVoiceOver);
- Game_Flag_Set(kFlagHomelessBodyInDumpster);
- Game_Flag_Set(kFlagHomelessBodyInDumpsterNotChecked);
+ Game_Flag_Set(kFlagCT04HomelessBodyInDumpster);
+ Game_Flag_Set(kFlagCT04HomelessBodyInDumpsterNotChecked);
}
return false;
}
- if (Game_Flag_Query(kFlagHomelessBodyInDumpster)) {
- if (Game_Flag_Query(kFlagDumpsterEmptied)) {
+ if (Game_Flag_Query(kFlagCT04HomelessBodyInDumpster)) {
+ if (Game_Flag_Query(kFlagCT04HomelessBodyThrownAway)) {
Actor_Voice_Over(270, kActorVoiceOver);
Actor_Voice_Over(280, kActorVoiceOver);
- } else if (Game_Flag_Query(kFlagHomelessBodyFound)) {
+ } else if (Game_Flag_Query(kFlagCT04HomelessBodyFound)) {
Actor_Voice_Over(250, kActorVoiceOver);
Actor_Voice_Over(260, kActorVoiceOver);
} else {
Actor_Voice_Over(230, kActorVoiceOver);
Actor_Voice_Over(240, kActorVoiceOver);
- Game_Flag_Reset(kFlagHomelessBodyInDumpsterNotChecked);
+ Game_Flag_Reset(kFlagCT04HomelessBodyInDumpsterNotChecked);
}
return true;
}
- if (!Game_Flag_Query(kFlagLicensePlaceFound)) {
+ if (!Game_Flag_Query(kFlagCT04LicensePlaceFound)) {
if (!Loop_Actor_Walk_To_Waypoint(kActorMcCoy, 75, 0, true, false)) {
Actor_Face_Heading(kActorMcCoy, 707, false);
Actor_Change_Animation_Mode(kActorMcCoy, 38);
Actor_Clue_Acquire(kActorMcCoy, kClueLicensePlate, true, -1);
Item_Pickup_Spin_Effect(952, 392, 225);
- Game_Flag_Set(kFlagLicensePlaceFound);
+ Game_Flag_Set(kFlagCT04LicensePlaceFound);
return true;
}
}
@@ -173,7 +173,7 @@ void SceneScriptCT04::dialogueWithHomeless() {
bool SceneScriptCT04::ClickedOnActor(int actorId) {
if (actorId == kActorTransient) {
- if (Game_Flag_Query(kFlagMcCoyKilledHomeless)) {
+ if (Game_Flag_Query(kFlagCT04HomelessKilledByMcCoy)) {
if (!Loop_Actor_Walk_To_Actor(kActorMcCoy, kActorTransient, 36, true, false)) {
Actor_Voice_Over(290, kActorVoiceOver);
Actor_Voice_Over(300, kActorVoiceOver);
@@ -183,7 +183,7 @@ bool SceneScriptCT04::ClickedOnActor(int actorId) {
Actor_Set_Targetable(kActorTransient, false);
if (!Loop_Actor_Walk_To_Actor(kActorMcCoy, kActorTransient, 36, true, false)) {
Actor_Face_Actor(kActorMcCoy, kActorTransient, true);
- if (!Game_Flag_Query(kFlagHomelessTalkedTo)) {
+ if (!Game_Flag_Query(kFlagCT04HomelessTalk)) {
if (Game_Flag_Query(kFlagZubenRetired)) {
Actor_Says(kActorMcCoy, 435, kAnimationModeTalk);
Actor_Set_Goal_Number(kActorTransient, kGoalTransientCT04Leave);
@@ -194,7 +194,7 @@ bool SceneScriptCT04::ClickedOnActor(int actorId) {
dialogueWithHomeless();
Actor_Set_Goal_Number(kActorTransient, kGoalTransientCT04Leave);
}
- Game_Flag_Set(kFlagHomelessTalkedTo);
+ Game_Flag_Set(kFlagCT04HomelessTalk);
} else {
Actor_Face_Actor(kActorMcCoy, kActorTransient, true);
Actor_Says(kActorMcCoy, 435, kAnimationModeTalk);
@@ -240,8 +240,8 @@ bool SceneScriptCT04::ClickedOn2DRegion(int region) {
}
void SceneScriptCT04::SceneFrameAdvanced(int frame) {
- if (Game_Flag_Query(325)) {
- Game_Flag_Reset(325);
+ if (Game_Flag_Query(kFlagCT04BodyDumped)) {
+ Game_Flag_Reset(kFlagCT04BodyDumped);
Sound_Play(180, 100, 80, 80, 50);
}
}
diff --git a/engines/bladerunner/script/scene/ct05.cpp b/engines/bladerunner/script/scene/ct05.cpp
index a30e4f99bb..a398d45559 100644
--- a/engines/bladerunner/script/scene/ct05.cpp
+++ b/engines/bladerunner/script/scene/ct05.cpp
@@ -33,7 +33,7 @@ void SceneScriptCT05::InitializeScene() {
} else {
Setup_Scene_Information(-375.0f, -109.91f, 750.0f, 600);
}
- if (Game_Flag_Query(kFlagWarehouseOpen)) {
+ if (Game_Flag_Query(kFlagCT05WarehouseOpen)) {
Scene_Exit_Add_2D_Exit(0, 228, 205, 293, 300, 0);
}
Scene_Exit_Add_2D_Exit(1, 320, 458, 639, 479, 2);
@@ -44,7 +44,7 @@ void SceneScriptCT05::InitializeScene() {
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)) {
+ if (Game_Flag_Query(kFlagCT05WarehouseOpen)) {
Scene_Loop_Set_Default(2);
} else {
Scene_Loop_Set_Default(0);
@@ -217,6 +217,7 @@ void SceneScriptCT05::PlayerWalkedIn() {
}
Player_Gains_Control();
}
+
if (Game_Flag_Query(kFlagCT06toCT05)) {
Footstep_Sound_Override_On(2);
Loop_Actor_Travel_Stairs(kActorMcCoy, 7, false, kAnimationModeIdle);
@@ -224,10 +225,10 @@ void SceneScriptCT05::PlayerWalkedIn() {
Loop_Actor_Travel_Stairs(kActorMcCoy, 10, false, kAnimationModeIdle);
Game_Flag_Reset(kFlagCT06toCT05);
Footstep_Sound_Override_Off();
- if (Actor_Query_Goal_Number(kActorGordo) == 2
- && Game_Flag_Query(kFlagZubenPhoto)
+ if (Actor_Query_Goal_Number(kActorGordo) == kGoalGordoLeftCT01
+ && Game_Flag_Query(kFlagCT06ZubenPhoto)
) {
- Actor_Set_Goal_Number(kActorGordo, 3);
+ Actor_Set_Goal_Number(kActorGordo, kGoalGordoWalkThroughCT05);
}
}
}
diff --git a/engines/bladerunner/script/scene/ct06.cpp b/engines/bladerunner/script/scene/ct06.cpp
index a5856b3717..1c5ace1941 100644
--- a/engines/bladerunner/script/scene/ct06.cpp
+++ b/engines/bladerunner/script/scene/ct06.cpp
@@ -51,7 +51,7 @@ void SceneScriptCT06::InitializeScene() {
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);
- if (Actor_Query_Goal_Number(kActorZuben) == kGoalZubenCT06Hide) {
+ if (Actor_Query_Goal_Number(kActorZuben) == kGoalZubenCT06HideAtFreeSlotA) {
Ambient_Sounds_Add_Sound(196, 1, 5, 25, 25, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(197, 1, 5, 25, 25, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(198, 1, 5, 25, 25, -100, 100, -101, -101, 0, 0);
@@ -67,7 +67,7 @@ void SceneScriptCT06::SceneLoaded() {
Unobstacle_Object("INSULPIP01", true);
Unobstacle_Object("CB BOX04", true);
Unclickable_Object("DOOR");
- if (Actor_Query_Goal_Number(kActorZuben) == kGoalZubenCT06Hide) {
+ if (Actor_Query_Goal_Number(kActorZuben) == kGoalZubenCT06HideAtFreeSlotA) {
Preload(3);
Preload(4);
Preload(389);
@@ -90,7 +90,7 @@ bool SceneScriptCT06::ClickedOnActor(int actorId) {
if (actorId == kActorZuben) {
Loop_Actor_Walk_To_Actor(kActorMcCoy, kActorZuben, 24, true, false);
Actor_Face_Actor(kActorMcCoy, kActorZuben, true);
- if (!Game_Flag_Query(kFlagZubenPhoto)) {
+ if (!Game_Flag_Query(kFlagCT06ZubenPhoto)) {
Actor_Clue_Acquire(kActorMcCoy, kClueZuben, true, -1);
Item_Pickup_Spin_Effect(984, 340, 369);
Actor_Voice_Over(350, kActorVoiceOver);
@@ -102,7 +102,7 @@ bool SceneScriptCT06::ClickedOnActor(int actorId) {
Actor_Voice_Over(400, kActorVoiceOver);
Actor_Voice_Over(410, kActorVoiceOver);
}
- Game_Flag_Set(kFlagZubenPhoto);
+ Game_Flag_Set(kFlagCT06ZubenPhoto);
return true;
}
Actor_Says(kActorMcCoy, 8570, 13);
@@ -127,7 +127,7 @@ bool SceneScriptCT06::ClickedOnExit(int exitId) {
return true;
}
if (exitId == 1) {
- if (Actor_Query_Goal_Number(kActorZuben) == kGoalZubenCT06Hide) {
+ if (Actor_Query_Goal_Number(kActorZuben) == kGoalZubenCT06HideAtFreeSlotA) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 203.91f, -58.02f, 0.47f, 0, 1, false, 0)) {
Ambient_Sounds_Remove_Sound(196, true);
Ambient_Sounds_Remove_Sound(197, true);
diff --git a/engines/bladerunner/script/scene/ct11.cpp b/engines/bladerunner/script/scene/ct11.cpp
index 46fc21dc3e..758162811d 100644
--- a/engines/bladerunner/script/scene/ct11.cpp
+++ b/engines/bladerunner/script/scene/ct11.cpp
@@ -25,26 +25,29 @@
namespace BladeRunner {
void SceneScriptCT11::InitializeScene() {
- if (Game_Flag_Query(91)) {
+ if (Game_Flag_Query(kFlagCT12toCT11)) {
Setup_Scene_Information(-378.0f, 9.68f, -55.0f, 440);
- } else if (Game_Flag_Query(558)) {
- Setup_Scene_Information(315.0f, 0.0f, 628.0f, 0);
+ } else if (Game_Flag_Query(kFlagDR01toCT11)) {
+ Setup_Scene_Information( 315.0f, 0.0f, 628.0f, 0);
} else {
- Setup_Scene_Information(152.0f, 9.68f, -8.0f, 0);
+ Setup_Scene_Information( 152.0f, 9.68f, -8.0f, 0);
}
+
Scene_Exit_Add_2D_Exit(0, 257, 240, 364, 330, 1);
Scene_Exit_Add_2D_Exit(1, 97, 0, 155, 324, 0);
Scene_Exit_Add_2D_Exit(2, 0, 0, 20, 479, 3);
+
Ambient_Sounds_Add_Looping_Sound(54, 50, 0, 1);
- Ambient_Sounds_Add_Sound(67, 5, 80, 16, 25, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(66, 5, 80, 16, 25, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 67, 5, 80, 16, 25, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 66, 5, 80, 16, 25, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(378, 5, 80, 50, 100, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(379, 5, 80, 50, 100, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(380, 5, 80, 50, 100, -100, 100, -101, -101, 0, 0);
- if (Global_Variable_Query(kVariableChapter) <= 3) {
- Scene_Loop_Set_Default(0);
- } else {
+
+ if (Global_Variable_Query(kVariableChapter) > 3) {
Scene_Loop_Set_Default(2);
+ } else {
+ Scene_Loop_Set_Default(0);
}
}
@@ -99,25 +102,27 @@ 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)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 121.0f, 9.68f, -42.0f, 0, true, false, 0)) {
Game_Flag_Set(kFlagCT11toCT09);
Set_Enter(kSetCT09, kSceneCT09);
}
return true;
}
+
if (exitId == 1) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -300.0f, 9.68f, 66.0f, 0, 1, false, 0)) {
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -400.0f, 9.68f, -70.0f, 0, 1, false, 0);
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -300.0f, 9.68f, 66.0f, 0, true, false, 0)) {
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -400.0f, 9.68f, -70.0f, 0, true, false, 0);
Game_Flag_Set(kFlagCT11toCT12);
Set_Enter(kSetCT01_CT12, kSceneCT12);
}
return true;
}
+
if (exitId == 2) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 290.0f, 0.0f, 635.0f, 0, 1, false, 0)) {
- Game_Flag_Set(531);
- Game_Flag_Reset(kFlagMcCoyAtCTxx);
- Game_Flag_Set(kFlagMcCoyAtDRxx);
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 290.0f, 0.0f, 635.0f, 0, true, false, 0)) {
+ Game_Flag_Set(kFlagCT11toDR01);
+ Game_Flag_Reset(kFlagMcCoyInChinaTown);
+ Game_Flag_Set(kFlagMcCoyInDNARow);
Set_Enter(kSetDR01_DR02_DR04, kSceneDR01);
}
return true;
@@ -127,7 +132,7 @@ bool SceneScriptCT11::ClickedOnExit(int exitId) {
bool SceneScriptCT11::ClickedOn2DRegion(int region) {
if (region == 0 && Game_Flag_Query(725)) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 686.0f, 0.0f, 658.0f, 12, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 686.0f, 0.0f, 658.0f, 12, true, false, 0)) {
Actor_Face_Heading(kActorMcCoy, 47, false);
Item_Remove_From_World(115);
Actor_Clue_Acquire(kActorMcCoy, kClueLichenDogWrapper, false, -1);
@@ -141,37 +146,40 @@ bool SceneScriptCT11::ClickedOn2DRegion(int region) {
}
return true;
}
+
if (region == 1) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 686.0f, 0.0f, 658.0f, 12, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 686.0f, 0.0f, 658.0f, 12, true, false, 0)) {
Actor_Face_Heading(kActorMcCoy, 47, false);
- int temp = 0;
+ int cluesFound = 0;
if (Actor_Clue_Query(kActorMcCoy, kClueCrowdInterviewB)) {
- temp = 1;
+ ++cluesFound;
}
if (Actor_Clue_Query(kActorMcCoy, kCluePaintTransfer)) {
- ++temp;
+ ++cluesFound;
}
if (Actor_Clue_Query(kActorMcCoy, kClueLabPaintTransfer)) {
- ++temp;
+ ++cluesFound;
}
if (Actor_Clue_Query(kActorMcCoy, kClueLicensePlate)) {
- temp += 2;
+ cluesFound += 2;
}
if (Actor_Clue_Query(kActorMcCoy, kClueCarColorAndMake)) {
- temp += 2;
+ cluesFound += 2;
}
if (Actor_Clue_Query(kActorMcCoy, kCluePartialLicenseNumber)) {
- temp += 2;
+ cluesFound += 2;
}
- if (temp <= 2 || Actor_Clue_Query(kActorMcCoy, kClueCar)) {
- Actor_Says(kActorMcCoy, 8525, 12);
- } else {
+ if ( cluesFound > 2
+ && !Actor_Clue_Query(kActorMcCoy, kClueCar)
+ ) {
Actor_Voice_Over(510, kActorVoiceOver);
Actor_Voice_Over(520, kActorVoiceOver);
Actor_Voice_Over(530, kActorVoiceOver);
Actor_Voice_Over(540, kActorVoiceOver);
Actor_Clue_Acquire(kActorMcCoy, kClueCar, false, -1);
Scene_2D_Region_Remove(1);
+ } else {
+ Actor_Says(kActorMcCoy, 8525, 12);
}
}
return true;
@@ -186,16 +194,16 @@ void SceneScriptCT11::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
}
void SceneScriptCT11::PlayerWalkedIn() {
- if (Game_Flag_Query(91)) {
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -358.0f, 9.68f, 32.0f, 0, 0, false, 0);
- Game_Flag_Reset(91);
- } else if (Game_Flag_Query(558)) {
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, 329.0f, 0.0f, 617.0f, 0, 0, false, 0);
- Game_Flag_Reset(558);
+ if (Game_Flag_Query(kFlagCT12toCT11)) {
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -358.0f, 9.68f, 32.0f, 0, false, false, 0);
+ Game_Flag_Reset(kFlagCT12toCT11);
+ } else if (Game_Flag_Query(kFlagDR01toCT11)) {
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, 329.0f, 0.0f, 617.0f, 0, false, false, 0);
+ Game_Flag_Reset(kFlagDR01toCT11);
} else {
Player_Loses_Control();
Actor_Set_Immunity_To_Obstacles(kActorMcCoy, true);
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, 125.0f, 9.68f, 74.0f, 0, 0, false, 0);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, 125.0f, 9.68f, 74.0f, 0, false, false, 0);
Actor_Set_Immunity_To_Obstacles(kActorMcCoy, false);
Player_Gains_Control();
Game_Flag_Reset(kFlagCT09toCT11);
diff --git a/engines/bladerunner/script/scene/ct12.cpp b/engines/bladerunner/script/scene/ct12.cpp
index fa722f740c..c90473d3d0 100644
--- a/engines/bladerunner/script/scene/ct12.cpp
+++ b/engines/bladerunner/script/scene/ct12.cpp
@@ -64,7 +64,7 @@ void SceneScriptCT12::InitializeScene() {
) {
Actor_Put_In_Set(kActorGaff, kSetCT01_CT12);
Actor_Set_At_XYZ(kActorGaff, -534.0f, -6.5f, 952.0f, 367);
- Game_Flag_Set(kFlagGaffSpinnerCT12);
+ Game_Flag_Set(kFlagCT12GaffSpinner);
}
if (Game_Flag_Query(kFlagCT01toCT12)
&& Game_Flag_Query(kFlagSpinnerAtCT01)
@@ -87,12 +87,12 @@ void SceneScriptCT12::InitializeScene() {
Scene_Loop_Set_Default(2);
Game_Flag_Reset(kFlagCT01toCT12);
} else if (Game_Flag_Query(kFlagCT05toCT12)
- && Game_Flag_Query(kFlagGaffSpinnerCT12)
+ && Game_Flag_Query(kFlagCT12GaffSpinner)
) {
Game_Flag_Reset(kFlagCT05toCT12);
Scene_Loop_Set_Default(4);
} else if ( Game_Flag_Query(kFlagCT05toCT12)
- && !Game_Flag_Query(kFlagGaffSpinnerCT12)
+ && !Game_Flag_Query(kFlagCT12GaffSpinner)
) {
Game_Flag_Reset(kFlagCT05toCT12);
Scene_Loop_Set_Default(2);
@@ -288,8 +288,8 @@ void SceneScriptCT12::PlayerWalkedIn() {
void SceneScriptCT12::PlayerWalkedOut() {
Game_Flag_Reset(kFlagGenericWalkerWaiting);
if (Game_Flag_Query(kFlagCT12ToUG09)) {
- Game_Flag_Reset(kFlagMcCoyAtCTxx);
- Game_Flag_Set(kFlagMcCoyAtUGxx);
+ Game_Flag_Reset(kFlagMcCoyInChinaTown);
+ Game_Flag_Set(kFlagMcCoyInUnderground);
}
}
diff --git a/engines/bladerunner/script/scene/dr01.cpp b/engines/bladerunner/script/scene/dr01.cpp
index b2b308ce15..e1cdbb5027 100644
--- a/engines/bladerunner/script/scene/dr01.cpp
+++ b/engines/bladerunner/script/scene/dr01.cpp
@@ -24,54 +24,71 @@
namespace BladeRunner {
+enum kDR01Loops {
+ kDR01LoopInshotWithCrowd = 0,
+ kDR01LoopWithCrowd = 1,
+ kDR01LoopDoorAnimWithCrowd = 3,
+ kDR01LoopOutshotWithCrowd = 4,
+ kDR01LoopInshotNoCrowd = 5,
+ kDR01LoopNoCrowd = 6,
+ kDR01LoopDoorAnimNoCrowd = 8,
+ kDR01LoopOutshotNoCrowd = 9,
+ kDR01LoopNoCrowdNoSpinner = 10
+};
+
void SceneScriptDR01::InitializeScene() {
if (Game_Flag_Query(kFlagDR02toDR01)) {
- Setup_Scene_Information(-835.0f, -0.04f, -118.0f, 664);
+ Setup_Scene_Information( -835.0f, -0.04f, -118.0f, 664);
} else if (Game_Flag_Query(kFlagDR04toDR01)) {
- Setup_Scene_Information(-711.0f, -0.04f, 70.0f, 307);
- } else if (Game_Flag_Query(531)) {
+ Setup_Scene_Information( -711.0f, -0.04f, 70.0f, 307);
+ } else if (Game_Flag_Query(kFlagCT11toDR01)) {
Setup_Scene_Information(-1765.28f, -0.04f, -23.82f, 269);
} else {
- Setup_Scene_Information(-386.0f, -0.04f, -82.0f, 792);
+ Setup_Scene_Information( -386.0f, -0.04f, -82.0f, 792);
}
+
Scene_Exit_Add_2D_Exit(0, 240, 60, 450, 250, 0);
- Scene_Exit_Add_2D_Exit(1, 0, 0, 30, 479, 3);
- if (Game_Flag_Query(kFlagSpinnerAtDR01) && Global_Variable_Query(kVariableChapter) < 4) {
+ Scene_Exit_Add_2D_Exit(1, 0, 0, 30, 479, 3);
+ if (Game_Flag_Query(kFlagSpinnerAtDR01)
+ && Global_Variable_Query(kVariableChapter) < 4
+ ) {
Scene_Exit_Add_2D_Exit(2, 610, 0, 639, 479, 1);
}
if (Global_Variable_Query(kVariableChapter) >= 3) {
Scene_Exit_Add_2D_Exit(3, 0, 45, 142, 201, 0);
}
+
Ambient_Sounds_Remove_All_Non_Looping_Sounds(0);
- Ambient_Sounds_Add_Looping_Sound(54, 50, 0, 1);
+ Ambient_Sounds_Add_Looping_Sound( 54, 50, 0, 1);
Ambient_Sounds_Add_Looping_Sound(219, 12, 85, 1);
- Ambient_Sounds_Add_Looping_Sound(98, 14, 85, 1);
- Ambient_Sounds_Add_Speech_Sound(60, 0, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1);
+ Ambient_Sounds_Add_Looping_Sound( 98, 14, 85, 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, 5, 80, 16, 25, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(66, 5, 80, 16, 25, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 67, 5, 80, 16, 25, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 66, 5, 80, 16, 25, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(378, 5, 80, 50, 100, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(379, 5, 80, 50, 100, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(380, 5, 80, 50, 100, -100, 100, -101, -101, 0, 0);
+
if (Game_Flag_Query(kFlagDR05BombExploded)
&& Game_Flag_Query(kFlagDR04toDR01)
) {
- Scene_Loop_Start_Special(0, 3, 0);
+ Scene_Loop_Start_Special(0, 3, false);
Scene_Loop_Set_Default(4);
} else if (!Game_Flag_Query(kFlagDR05BombExploded)
&& Game_Flag_Query(kFlagDR04toDR01)
) {
- Scene_Loop_Start_Special(0, 2, 0);
+ Scene_Loop_Start_Special(0, 2, false);
Scene_Loop_Set_Default(4);
} else if (Game_Flag_Query(kFlagDR02toDR01)) {
- Scene_Loop_Start_Special(0, 1, 0);
+ Scene_Loop_Start_Special(0, 1, false);
Scene_Loop_Set_Default(4);
- } else if (Game_Flag_Query(531)) {
+ } else if (Game_Flag_Query(kFlagCT11toDR01)) {
Scene_Loop_Set_Default(4);
} else {
- Scene_Loop_Start_Special(0, 0, 0);
+ Scene_Loop_Start_Special(0, 0, false);
Scene_Loop_Set_Default(4);
}
}
@@ -110,7 +127,7 @@ bool SceneScriptDR01::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptDR01::ClickedOnExit(int exitId) {
if (exitId == 0) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -835.0f, -0.04f, -118.0f, 0, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -835.0f, -0.04f, -118.0f, 0, true, false, 0)) {
Async_Actor_Walk_To_XYZ(kActorMcCoy, -911.0f, -0.04f, -118.0f, 0, false);
Ambient_Sounds_Adjust_Looping_Sound(112, 10, -100, 1);
Game_Flag_Set(kFlagDR01toDR02);
@@ -118,83 +135,85 @@ bool SceneScriptDR01::ClickedOnExit(int exitId) {
}
return true;
}
+
if (exitId == 1) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -711.0f, -0.04f, 70.0f, 0, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -711.0f, -0.04f, 70.0f, 0, true, false, 0)) {
Async_Actor_Walk_To_XYZ(kActorMcCoy, -796.0f, -0.04f, 166.0f, 0, false);
Game_Flag_Set(kFlagDR01toDR04);
Set_Enter(kSetDR01_DR02_DR04, kSceneDR04);
}
return true;
}
+
if (exitId == 2) {
- if (Loop_Actor_Walk_To_XYZ(kActorMcCoy, -372.0f, -0.04f, -82.0f, 0, 1, false, 0)) {
- Game_Flag_Reset(kFlagMcCoyAtCTxx);
- Game_Flag_Reset(kFlagMcCoyAtRCxx);
- Game_Flag_Reset(kFlagMcCoyAtMAxx);
- Game_Flag_Reset(kFlagMcCoyAtPSxx);
- Game_Flag_Reset(kFlagMcCoyAtARxx);
- Game_Flag_Reset(kFlagMcCoyAtTBxx);
- Game_Flag_Reset(kFlagMcCoyAtDRxx);
- Game_Flag_Reset(kFlagMcCoyAtBBxx);
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -372.0f, -0.04f, -82.0f, 0, true, false, 0)) {
+ Game_Flag_Reset(kFlagMcCoyInChinaTown);
+ Game_Flag_Reset(kFlagMcCoyInRunciters);
+ Game_Flag_Reset(kFlagMcCoyInMcCoyApartment);
+ Game_Flag_Reset(kFlagMcCoyInPoliceStation);
+ Game_Flag_Reset(kFlagMcCoyInAnimoidRow);
+ Game_Flag_Reset(kFlagMcCoyInTyrellBuilding);
+ Game_Flag_Reset(kFlagMcCoyInDNARow);
+ Game_Flag_Reset(kFlagMcCoyInBradburyBuilding);
int spinnerDest = Spinner_Interface_Choose_Dest(-1, false);
switch (spinnerDest) {
case kSpinnerDestinationPoliceStation:
- Game_Flag_Set(kFlagMcCoyAtPSxx);
+ Game_Flag_Set(kFlagMcCoyInPoliceStation);
Game_Flag_Reset(kFlagSpinnerAtDR01);
Game_Flag_Set(kFlagSpinnerAtPS01);
Set_Enter(kSetPS01, kScenePS01);
break;
case kSpinnerDestinationMcCoysApartment:
- Game_Flag_Set(kFlagMcCoyAtMAxx);
+ Game_Flag_Set(kFlagMcCoyInMcCoyApartment);
Game_Flag_Reset(kFlagSpinnerAtDR01);
Game_Flag_Set(kFlagSpinnerAtMA01);
Set_Enter(kSetMA01, kSceneMA01);
break;
case kSpinnerDestinationRuncitersAnimals:
- Game_Flag_Set(kFlagMcCoyAtRCxx);
+ Game_Flag_Set(kFlagMcCoyInRunciters);
Game_Flag_Reset(kFlagSpinnerAtDR01);
Game_Flag_Set(kFlagSpinnerAtRC01);
Set_Enter(kSetRC01, kSceneRC01);
break;
case kSpinnerDestinationChinatown:
- Game_Flag_Set(kFlagMcCoyAtCTxx);
+ Game_Flag_Set(kFlagMcCoyInChinaTown);
Game_Flag_Reset(kFlagSpinnerAtDR01);
Game_Flag_Set(kFlagSpinnerAtCT01);
Set_Enter(kSetCT01_CT12, kSceneCT01);
break;
case kSpinnerDestinationAnimoidRow:
- Game_Flag_Set(kFlagMcCoyAtARxx);
+ Game_Flag_Set(kFlagMcCoyInAnimoidRow);
Game_Flag_Reset(kFlagSpinnerAtDR01);
Game_Flag_Set(kFlagSpinnerAtAR01);
Set_Enter(kSetAR01_AR02, kSceneAR01);
break;
case kSpinnerDestinationTyrellBuilding:
- Game_Flag_Set(kFlagMcCoyAtTBxx);
+ Game_Flag_Set(kFlagMcCoyInTyrellBuilding);
Game_Flag_Reset(kFlagSpinnerAtDR01);
Game_Flag_Set(kFlagSpinnerAtTB02);
Set_Enter(kSetTB02_TB03, kSceneTB02);
break;
case kSpinnerDestinationBradburyBuilding:
- Game_Flag_Set(kFlagMcCoyAtBBxx);
+ Game_Flag_Set(kFlagMcCoyInBradburyBuilding);
Game_Flag_Reset(kFlagSpinnerAtDR01);
Game_Flag_Set(kFlagSpinnerAtBB01);
Set_Enter(kSetBB01, kSceneBB01);
break;
case kSpinnerDestinationNightclubRow:
- Game_Flag_Set(kFlagMcCoyAtNRxx);
+ Game_Flag_Set(kFlagMcCoyInNightclubRow);
Game_Flag_Reset(kFlagSpinnerAtDR01);
Game_Flag_Set(kFlagSpinnerAtNR01);
Set_Enter(kSetNR01, kSceneNR01);
break;
case kSpinnerDestinationHysteriaHall:
- Game_Flag_Set(kFlagMcCoyAtHFxx);
+ Game_Flag_Set(kFlagMcCoyInHysteriaHall);
Game_Flag_Reset(kFlagSpinnerAtDR01);
Game_Flag_Set(kFlagSpinnerAtHF01);
Set_Enter(kSetHF01, kSceneHF01);
break;
default:
Player_Loses_Control();
- Game_Flag_Set(kFlagMcCoyAtDRxx);
+ Game_Flag_Set(kFlagMcCoyInDNARow);
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -447.39f, 0.16f, -92.38f, 0, false, true, 0);
Player_Gains_Control();
break;
@@ -211,9 +230,9 @@ bool SceneScriptDR01::ClickedOnExit(int exitId) {
v7 = Loop_Actor_Walk_To_XYZ(kActorMcCoy, -1236.4f, -0.04f, -13.91f, 0, 1, false, 0);
}
if (!v7) {
- Game_Flag_Set(558);
- Game_Flag_Set(kFlagMcCoyAtCTxx);
- Game_Flag_Reset(kFlagMcCoyAtDRxx);
+ Game_Flag_Set(kFlagDR01toCT11);
+ Game_Flag_Set(kFlagMcCoyInChinaTown);
+ Game_Flag_Reset(kFlagMcCoyInDNARow);
Set_Enter(kSetCT11, kSceneCT11);
}
return true;
@@ -240,7 +259,7 @@ void SceneScriptDR01::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
}
void SceneScriptDR01::PlayerWalkedIn() {
- if (Game_Flag_Query(531)) {
+ if (Game_Flag_Query(kFlagCT11toDR01)) {
Async_Actor_Walk_To_XYZ(kActorMcCoy, -757.15f, -0.04f, 24.64f, 0, false);
} else if (!Game_Flag_Query(kFlagDR02toDR01)
&& !Game_Flag_Query(kFlagDR04toDR01)
@@ -251,13 +270,13 @@ void SceneScriptDR01::PlayerWalkedIn() {
}
Game_Flag_Reset(kFlagDR02toDR01);
Game_Flag_Reset(kFlagDR04toDR01);
- Game_Flag_Reset(531);
+ Game_Flag_Reset(kFlagCT11toDR01);
}
void SceneScriptDR01::PlayerWalkedOut() {
if (!Game_Flag_Query(kFlagDR01toDR04)
&& !Game_Flag_Query(kFlagDR01toDR02)
- && !Game_Flag_Query(558)
+ && !Game_Flag_Query(kFlagDR01toCT11)
) {
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
diff --git a/engines/bladerunner/script/scene/dr02.cpp b/engines/bladerunner/script/scene/dr02.cpp
index 45867c15e8..731ed16c70 100644
--- a/engines/bladerunner/script/scene/dr02.cpp
+++ b/engines/bladerunner/script/scene/dr02.cpp
@@ -26,19 +26,21 @@ namespace BladeRunner {
void SceneScriptDR02::InitializeScene() {
if (Game_Flag_Query(kFlagDR03toDR02)) {
- Setup_Scene_Information(-1162.0f, 7.18f, -322.0f, 552);
+ Setup_Scene_Information(-1162.0f, 7.18f, -322.0f, 552);
} else if (Game_Flag_Query(kFlagDR01toDR02)) {
- Setup_Scene_Information(-835.0f, -0.04f, -118.0f, 193);
+ Setup_Scene_Information( -835.0f, -0.04f, -118.0f, 193);
} else if (Game_Flag_Query(kFlagBB01toDR02)) {
- Setup_Scene_Information(-1258.0f, 7.18f, -314.0f, 400);
+ Setup_Scene_Information(-1258.0f, 7.18f, -314.0f, 400);
} else {
- Setup_Scene_Information(168.78f, 0.16f, -775.72f, 193);
+ Setup_Scene_Information( 168.78f, 0.16f, -775.72f, 193);
}
- Scene_Exit_Add_2D_Exit(0, 605, 0, 639, 479, 1);
+
+ Scene_Exit_Add_2D_Exit(0, 605, 0, 639, 479, 1);
Scene_Exit_Add_2D_Exit(1, 222, 176, 279, 314, 0);
- if (Game_Flag_Query(326)) {
+ if (Game_Flag_Query(kFlagBB01Available)) {
Scene_Exit_Add_2D_Exit(2, 95, 0, 148, 292, 0);
}
+
Ambient_Sounds_Remove_All_Non_Looping_Sounds(0);
Ambient_Sounds_Remove_All_Looping_Sounds(0);
Ambient_Sounds_Add_Looping_Sound(54, 50, 0, 1);
@@ -47,8 +49,9 @@ void SceneScriptDR02::InitializeScene() {
Ambient_Sounds_Add_Sound(378, 2, 50, 33, 100, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(379, 2, 50, 33, 100, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(380, 2, 50, 33, 100, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(67, 5, 100, 16, 25, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(66, 5, 100, 16, 25, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 67, 5, 100, 16, 25, -100, 100, -101, -101, 0, 0);
+
+ Ambient_Sounds_Add_Sound( 66, 5, 100, 16, 25, -100, 100, -101, -101, 0, 0);
if (Game_Flag_Query(kFlagDR01toDR02)) {
Scene_Loop_Start_Special(kSceneLoopModeLoseControl, 0, false);
Scene_Loop_Set_Default(1);
@@ -126,6 +129,7 @@ bool SceneScriptDR02::ClickedOnExit(int exitId) {
Ambient_Sounds_Adjust_Looping_Sound(98, 14, -101, 1);
return true;
}
+
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -1162.0f, 7.18f, -322.0f, 0, true, false, 0)) {
if (Global_Variable_Query(kVariableChapter) > 2) {
@@ -137,11 +141,12 @@ bool SceneScriptDR02::ClickedOnExit(int exitId) {
}
return true;
}
+
if (exitId == 2) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -1258.0f, 7.18f, -314.0f, 0, true, false, 0)) {
Game_Flag_Set(kFlagDR02toBB01);
- Game_Flag_Reset(kFlagMcCoyAtDRxx);
- Game_Flag_Set(kFlagMcCoyAtBBxx);
+ Game_Flag_Reset(kFlagMcCoyInDNARow);
+ Game_Flag_Set(kFlagMcCoyInBradburyBuilding);
Set_Enter(kSetBB01, kSceneBB01);
}
return true;
diff --git a/engines/bladerunner/script/scene/dr03.cpp b/engines/bladerunner/script/scene/dr03.cpp
index f012c68ea5..008cf45840 100644
--- a/engines/bladerunner/script/scene/dr03.cpp
+++ b/engines/bladerunner/script/scene/dr03.cpp
@@ -29,8 +29,11 @@ void SceneScriptDR03::InitializeScene() {
Game_Flag_Reset(kFlagDR02toDR03);
Setup_Scene_Information(330.31f, 4.27f, -910.91f, 297);
}
+
Setup_Scene_Information(330.31f, 4.27f, -910.91f, 297);
+
Scene_Exit_Add_2D_Exit(0, 377, 122, 445, 266, 0);
+
if (Global_Variable_Query(kVariableChapter) == 3) {
Actor_Put_In_Set(kActorChew, kSetDR03);
Actor_Set_At_XYZ(kActorChew, 431.21f, 4.27f, -776.26f, 0);
@@ -38,10 +41,11 @@ void SceneScriptDR03::InitializeScene() {
Actor_Put_In_Set(kActorChew, kSetDR03);
Actor_Set_At_XYZ(kActorChew, 360.77f, 4.4f, -806.67f, 126);
}
+
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Ambient_Sounds_Add_Looping_Sound(110, 7, 0, 1);
- Ambient_Sounds_Add_Looping_Sound(109, 50, 0, 1);
- Ambient_Sounds_Add_Looping_Sound(95, 20, 70, 1);
+ Ambient_Sounds_Add_Looping_Sound(110, 7, 0, 1);
+ Ambient_Sounds_Add_Looping_Sound(109, 50, 0, 1);
+ Ambient_Sounds_Add_Looping_Sound( 95, 20, 70, 1);
}
void SceneScriptDR03::SceneLoaded() {
@@ -62,6 +66,7 @@ bool SceneScriptDR03::ClickedOnActor(int actorId) {
if (actorId == kActorChew) {
Actor_Face_Actor(kActorMcCoy, kActorChew, true);
Actor_Face_Actor(kActorChew, kActorMcCoy, true);
+
if (!Game_Flag_Query(kFlagDR03ChewTalk1)) {
Actor_Says(kActorMcCoy, 755, 18);
Actor_Says(kActorChew, 10, 14);
@@ -72,52 +77,62 @@ bool SceneScriptDR03::ClickedOnActor(int actorId) {
Game_Flag_Set(kFlagDR03ChewTalk1);
return true;
}
- if (Actor_Clue_Query(kActorMcCoy, kClueChewInterview)) {
- if (Game_Flag_Query(kFlagMorajiExploded)
- && Game_Flag_Query(kFlagDR03ChewTalk1)) {
- Actor_Says(kActorMcCoy, 815, 18);
- Actor_Says(kActorChew, 60, 14);
- Actor_Says(kActorChew, 70, 14);
- Actor_Says(kActorChew, 80, 14);
- Actor_Says(kActorMcCoy, 820, 18);
- Actor_Says(kActorChew, 90, 14);
- Actor_Says(kActorMcCoy, 825, 18);
- Actor_Says(kActorChew, 100, 14);
- Game_Flag_Reset(kFlagMorajiExploded);
- Game_Flag_Set(505);
- return true;
- }
- if ((Actor_Clue_Query(kActorMcCoy, kClueDNATyrell) || Actor_Clue_Query(kActorMcCoy, kClueAnsweringMachineMessage) || Actor_Clue_Query(kActorMcCoy, kClueEnvelope) || Actor_Clue_Query(kActorMcCoy, kClueChewInterview))
- && Game_Flag_Query(505)) {
- sub_401B18();
- } else {
- Actor_Says(kActorMcCoy, 810, 18);
- Actor_Says(kActorChew, 40, 14);
- Actor_Says(kActorChew, 50, 14);
+
+ if (!Actor_Clue_Query(kActorMcCoy, kClueChewInterview)) {
+ Actor_Says(kActorMcCoy, 770, 12);
+ Actor_Says(kActorChew, 110, 12);
+ Actor_Says(kActorChew, 120, 13);
+ Actor_Says(kActorMcCoy, 835, 13);
+ Actor_Says(kActorChew, 130, 14);
+ Actor_Says(kActorMcCoy, 840, 16);
+ Actor_Says(kActorChew, 140, 15);
+ if (!Game_Flag_Query(kFlagDR03ChewTalkExplosion)) {
+ Actor_Says(kActorChew, 150, 13);
+ Actor_Says(kActorMcCoy, 845, 17);
+ Actor_Says(kActorChew, 170, 18);
+ Actor_Says(kActorChew, 180, 16);
+ Actor_Says(kActorMcCoy, 850, 15);
+ Actor_Says(kActorChew, 190, 14);
+ Actor_Says(kActorChew, 200, 13);
+ Actor_Says(kActorMcCoy, 855, 18);
+ Actor_Says(kActorChew, 210, 12);
}
+ Actor_Clue_Acquire(kActorMcCoy, kClueChewInterview, true, kActorChew);
return true;
}
- Actor_Says(kActorMcCoy, 770, 12);
- Actor_Says(kActorChew, 110, 12);
- Actor_Says(kActorChew, 120, 13);
- Actor_Says(kActorMcCoy, 835, 13);
- Actor_Says(kActorChew, 130, 14);
- Actor_Says(kActorMcCoy, 840, 16);
- Actor_Says(kActorChew, 140, 15);
- if (!Game_Flag_Query(505)) {
- Actor_Says(kActorChew, 150, 13);
- Actor_Says(kActorMcCoy, 845, 17);
- Actor_Says(kActorChew, 170, 18);
- Actor_Says(kActorChew, 180, 16);
- Actor_Says(kActorMcCoy, 850, 15);
- Actor_Says(kActorChew, 190, 14);
- Actor_Says(kActorChew, 200, 13);
- Actor_Says(kActorMcCoy, 855, 18);
- Actor_Says(kActorChew, 210, 12);
+
+ if (Game_Flag_Query(kFlagDR05JustExploded)
+ && Game_Flag_Query(kFlagDR03ChewTalk1)
+ ) {
+ Actor_Says(kActorMcCoy, 815, 18);
+ Actor_Says(kActorChew, 60, 14);
+ Actor_Says(kActorChew, 70, 14);
+ Actor_Says(kActorChew, 80, 14);
+ Actor_Says(kActorMcCoy, 820, 18);
+ Actor_Says(kActorChew, 90, 14);
+ Actor_Says(kActorMcCoy, 825, 18);
+ Actor_Says(kActorChew, 100, 14);
+ Game_Flag_Reset(kFlagDR05JustExploded);
+ Game_Flag_Set(kFlagDR03ChewTalkExplosion);
+ return true;
+ }
+
+ if ((Actor_Clue_Query(kActorMcCoy, kClueDNATyrell)
+ || Actor_Clue_Query(kActorMcCoy, kClueAnsweringMachineMessage)
+ || Actor_Clue_Query(kActorMcCoy, kClueEnvelope)
+ || Actor_Clue_Query(kActorMcCoy, kClueChewInterview)
+ )
+ && Game_Flag_Query(kFlagDR03ChewTalkExplosion)
+ ) {
+ dialogueWithChew();
+ } else {
+ Actor_Says(kActorMcCoy, 810, 18);
+ Actor_Says(kActorChew, 40, 14);
+ Actor_Says(kActorChew, 50, 14);
}
- Actor_Clue_Acquire(kActorMcCoy, kClueChewInterview, true, kActorChew);
return true;
}
+
return false;
}
@@ -141,7 +156,21 @@ bool SceneScriptDR03::ClickedOn2DRegion(int region) {
}
void SceneScriptDR03::SceneFrameAdvanced(int frame) {
- if (frame == 1 || frame == 4 || frame == 8 || frame == 10 || frame == 19 || frame == 21 || frame == 22 || frame == 23 || frame == 30 || frame == 31 || frame == 32 || frame == 33 || frame == 46 || frame == 49) {
+ if (frame == 1
+ || frame == 4
+ || frame == 8
+ || frame == 10
+ || frame == 19
+ || frame == 21
+ || frame == 22
+ || frame == 23
+ || frame == 30
+ || frame == 31
+ || frame == 32
+ || frame == 33
+ || frame == 46
+ || frame == 49
+ ) {
if (Random_Query(0, 1)) {
Sound_Play(97, Random_Query(20, 33), 80, 80, 50);
} else {
@@ -174,31 +203,36 @@ void SceneScriptDR03::PlayerWalkedOut() {
void SceneScriptDR03::DialogueQueueFlushed(int a1) {
}
-void SceneScriptDR03::sub_401B18() {
+void SceneScriptDR03::dialogueWithChew() {
Dialogue_Menu_Clear_List();
- if (Actor_Clue_Query(kActorMcCoy, kClueChewInterview) || Actor_Clue_Query(kActorMcCoy, kClueAnsweringMachineMessage) || Actor_Clue_Query(kActorMcCoy, kClueMorajiInterview)) {
- DM_Add_To_List_Never_Repeat_Once_Selected(650, 5, 5, 5);
+ if (Actor_Clue_Query(kActorMcCoy, kClueChewInterview)
+ || Actor_Clue_Query(kActorMcCoy, kClueAnsweringMachineMessage)
+ || Actor_Clue_Query(kActorMcCoy, kClueMorajiInterview)
+ ) {
+ DM_Add_To_List_Never_Repeat_Once_Selected(650, 5, 5, 5); // TWINS
}
if (Actor_Clue_Query(kActorMcCoy, kClueChewInterview)) {
- DM_Add_To_List_Never_Repeat_Once_Selected(660, 5, 5, 5);
+ DM_Add_To_List_Never_Repeat_Once_Selected(660, 5, 5, 5); // MORAJI
}
if (Actor_Clue_Query(kActorMcCoy, kClueTyrellInterview)) {
- DM_Add_To_List_Never_Repeat_Once_Selected(670, 6, 5, 2);
+ DM_Add_To_List_Never_Repeat_Once_Selected(670, 6, 5, 2); // TYRELL
}
- if (Game_Flag_Query(505)) {
+ if (Game_Flag_Query(kFlagDR03ChewTalkExplosion)) {
if (Actor_Clue_Query(kActorMcCoy, kClueAnsweringMachineMessage)) {
- DM_Add_To_List_Never_Repeat_Once_Selected(680, 8, 8, 8);
+ DM_Add_To_List_Never_Repeat_Once_Selected(680, 8, 8, 8); // SEBASTIAN
}
if (Actor_Clue_Query(kActorMcCoy, kClueEnvelope)) {
- DM_Add_To_List_Never_Repeat_Once_Selected(1270, 2, 5, 7);
+ DM_Add_To_List_Never_Repeat_Once_Selected(1270, 2, 5, 7); // LANCE'S ENVELOPE
}
}
- Dialogue_Menu_Add_DONE_To_List(690);
+ Dialogue_Menu_Add_DONE_To_List(690); // DONE
+
Dialogue_Menu_Appear(320, 240);
int answer = Dialogue_Menu_Query_Input();
Dialogue_Menu_Disappear();
+
switch (answer) {
- case 640:
+ case 640: // EISENDULLER
Actor_Says(kActorMcCoy, 770, 12);
Actor_Says(kActorChew, 110, 12);
Actor_Says(kActorChew, 120, 13);
@@ -206,7 +240,7 @@ void SceneScriptDR03::sub_401B18() {
Actor_Says(kActorChew, 130, 14);
Actor_Says(kActorMcCoy, 840, 16);
Actor_Says(kActorChew, 140, 15);
- if (!Game_Flag_Query(505)) {
+ if (!Game_Flag_Query(kFlagDR03ChewTalkExplosion)) {
Actor_Says(kActorChew, 150, 13);
Actor_Says(kActorMcCoy, 845, 17);
Actor_Says(kActorChew, 170, 18);
@@ -219,7 +253,8 @@ void SceneScriptDR03::sub_401B18() {
}
Actor_Clue_Acquire(kActorMcCoy, kClueChewInterview, true, kActorChew);
break;
- case 650:
+
+ case 650: // TWINS
Actor_Says(kActorMcCoy, 775, 11);
Actor_Says(kActorChew, 220, 14);
Actor_Says(kActorMcCoy, 860, 11);
@@ -228,9 +263,10 @@ void SceneScriptDR03::sub_401B18() {
Actor_Says(kActorChew, 240, 14);
Actor_Says(kActorChew, 250, 14);
break;
- case 660:
+
+ case 660: // MORAJI
Actor_Says(kActorMcCoy, 780, 13);
- if (Game_Flag_Query(505)) {
+ if (Game_Flag_Query(kFlagDR03ChewTalkExplosion)) {
Actor_Says(kActorChew, 260, 14);
Actor_Says(kActorChew, 270, 13);
Actor_Says(kActorChew, 280, 12);
@@ -240,34 +276,41 @@ void SceneScriptDR03::sub_401B18() {
Actor_Says(kActorChew, 280, 12);
Actor_Says(kActorMcCoy, 870, 18);
Actor_Says(kActorChew, 290, 15);
- if (!Game_Flag_Query(kFlagMorajiExploded)) {
+ if (!Game_Flag_Query(kFlagDR05JustExploded)) {
Actor_Says(kActorChew, 300, 12);
}
}
Actor_Clue_Acquire(kActorMcCoy, kClueChewInterview, true, kActorChew);
break;
- case 670:
+
+ case 670: // TYRELL
Actor_Says(kActorMcCoy, 765, 12);
Actor_Says(kActorMcCoy, 790, 13);
Actor_Says(kActorChew, 310, 12);
Actor_Says(kActorChew, 320, 3);
break;
- case 680:
+
+ case 680: // SEBASTIAN
Actor_Says(kActorMcCoy, 795, 3);
- if (Game_Flag_Query(505) == 1) {
+ if (Game_Flag_Query(kFlagDR03ChewTalkExplosion)) {
Actor_Says(kActorChew, 330, 12);
Actor_Says(kActorChew, 340, 15);
Actor_Says(kActorMcCoy, 875, 16);
Actor_Says(kActorChew, 350, 12);
Actor_Says(kActorChew, 360, 15);
- Game_Flag_Set(326);
+ Game_Flag_Set(kFlagBB01Available);
} else {
Actor_Says(kActorChew, 320, 13);
Actor_Says(kActorChew, 150, 14);
- Game_Flag_Set(326);
+ Game_Flag_Set(kFlagBB01Available);
}
break;
- case 1270:
+
+ case 690: // DONE
+ Actor_Says(kActorMcCoy, 805, 3);
+ break;
+
+ case 1270: // LANCE'S ENVELOPE
Actor_Says(kActorMcCoy, 800, 16);
Actor_Says(kActorChew, 370, 3);
Actor_Says(kActorMcCoy, 880, 15);
@@ -280,9 +323,6 @@ void SceneScriptDR03::sub_401B18() {
Actor_Says(kActorChew, 420, 13);
Actor_Says(kActorChew, 430, 12);
break;
- case 690:
- Actor_Says(kActorMcCoy, 805, 3);
- break;
}
}
diff --git a/engines/bladerunner/script/scene/dr04.cpp b/engines/bladerunner/script/scene/dr04.cpp
index 0f3addc3b7..3b033d0c9f 100644
--- a/engines/bladerunner/script/scene/dr04.cpp
+++ b/engines/bladerunner/script/scene/dr04.cpp
@@ -24,44 +24,55 @@
namespace BladeRunner {
+enum kDR04Loops {
+ kDR04LoopPanFromDR01PostExplosion = 0,
+ kDR04LoopMainPostExplosion = 1,
+ kDR04LoopPanFromDR01PreExplosion = 3,
+ kDR04LoopMainPreExplosion = 4,
+ kDR04LoopDR04Explosion = 6
+};
+
void SceneScriptDR04::InitializeScene() {
- if (Game_Flag_Query(kFlagDR05BombExplosionView)) {
- Setup_Scene_Information(0.0f, 0.0f, 0.0f, 0);
+ if (Game_Flag_Query(kFlagDR05ViewExplosion)) {
+ Setup_Scene_Information( 0.0f, 0.0f, 0.0f, 0);
} else if (Game_Flag_Query(kFlagDR01toDR04)) {
- Setup_Scene_Information(-711.0f, -0.04f, 70.0f, 472);
+ Setup_Scene_Information( -711.0f, -0.04f, 70.0f, 472);
} else if (Game_Flag_Query(kFlagDR05toDR04)) {
- Setup_Scene_Information(-1067.0f, 7.18f, 421.0f, 125);
+ Setup_Scene_Information(-1067.0f, 7.18f, 421.0f, 125);
} else if (Game_Flag_Query(kFlagDR06toDR04)) {
Setup_Scene_Information(-897.75f, 134.45f, 569.75f, 512);
} else {
- Setup_Scene_Information(-810.0f, -0.04f, 242.0f, 125);
+ Setup_Scene_Information( -810.0f, -0.04f, 242.0f, 125);
}
- Scene_Exit_Add_2D_Exit(0, 589, 0, 639, 479, 1);
+
+ Scene_Exit_Add_2D_Exit(0, 589, 0, 639, 479, 1);
Scene_Exit_Add_2D_Exit(1, 443, 264, 488, 353, 0);
Scene_Exit_Add_2D_Exit(2, 222, 110, 269, 207, 0);
+
Ambient_Sounds_Remove_All_Non_Looping_Sounds(0);
- Ambient_Sounds_Add_Looping_Sound(54, 50, 1, 1);
- Ambient_Sounds_Add_Looping_Sound(288, 55, -100, 1);
+ Ambient_Sounds_Add_Looping_Sound( 54, 50, 1, 1);
+ Ambient_Sounds_Add_Looping_Sound(288, 55, -100, 1);
Ambient_Sounds_Add_Looping_Sound(217, 28, -100, 100);
- 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(67, 40, 180, 16, 25, 0, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(66, 40, 180, 16, 25, 0, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(378, 5, 80, 50, 100, 0, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(379, 5, 80, 50, 100, 0, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(380, 5, 80, 50, 100, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 67, 40, 180, 16, 25, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 66, 40, 180, 16, 25, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(378, 5, 80, 50, 100, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(379, 5, 80, 50, 100, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(380, 5, 80, 50, 100, 0, 0, -101, -101, 0, 0);
+
if (Game_Flag_Query(kFlagDR05BombExploded)) {
- Scene_Loop_Set_Default(1);
+ Scene_Loop_Set_Default(kDR04LoopMainPostExplosion);
} else {
- Scene_Loop_Set_Default(4);
+ Scene_Loop_Set_Default(kDR04LoopMainPreExplosion);
}
if (Game_Flag_Query(kFlagDR01toDR04)) {
if (Game_Flag_Query(kFlagDR05BombExploded)) {
- Scene_Loop_Start_Special(0, 0, 0);
+ Scene_Loop_Start_Special(kSceneLoopModeLoseControl, kDR04LoopPanFromDR01PostExplosion, false);
} else {
- Scene_Loop_Start_Special(0, 3, 0);
+ Scene_Loop_Start_Special(kSceneLoopModeLoseControl, kDR04LoopPanFromDR01PreExplosion, false);
}
}
}
@@ -95,26 +106,26 @@ bool SceneScriptDR04::ClickedOnActor(int actorId) {
if ( actorId == kActorMoraji
&& !Player_Query_Combat_Mode()
) {
- if (Actor_Query_Goal_Number(kActorMoraji) == 21) {
+ if (Actor_Query_Goal_Number(kActorMoraji) == kGoalMorajiLayDown) {
if (!Loop_Actor_Walk_To_Waypoint(kActorMcCoy, 109, 0, true, true)) {
Actor_Face_Actor(kActorMcCoy, kActorMoraji, true);
Actor_Says(kActorMcCoy, 945, 13);
- Actor_Says(kActorMoraji, 0, 3);
- Actor_Says(kActorMoraji, 10, 3);
+ Actor_Says(kActorMoraji, 0, kAnimationModeTalk);
+ Actor_Says(kActorMoraji, 10, kAnimationModeTalk);
Actor_Says(kActorMcCoy, 950, 13);
- Actor_Says(kActorMoraji, 20, 3);
- Actor_Says(kActorMoraji, 30, 3);
+ Actor_Says(kActorMoraji, 20, kAnimationModeTalk);
+ Actor_Says(kActorMoraji, 30, kAnimationModeTalk);
Actor_Says(kActorMcCoy, 955, 13);
- Actor_Says_With_Pause(kActorMoraji, 40, 0.0f, 3);
- Actor_Says(kActorMoraji, 50, 3);
+ Actor_Says_With_Pause(kActorMoraji, 40, 0.0f, kAnimationModeTalk);
+ Actor_Says(kActorMoraji, 50, kAnimationModeTalk);
Actor_Clue_Acquire(kActorMcCoy, kClueMorajiInterview, true, kActorMoraji);
- Actor_Set_Goal_Number(kActorMoraji, 22);
+ Actor_Set_Goal_Number(kActorMoraji, kGoalMorajiDie);
Actor_Set_Goal_Number(kActorOfficerGrayford, 101);
return true;
}
}
- if (Actor_Query_Goal_Number(kActorMoraji) == 23) {
+ if (Actor_Query_Goal_Number(kActorMoraji) == kGoalMorajiDead) {
if (!Loop_Actor_Walk_To_Actor(kActorMcCoy, kActorMoraji, 36, true, false)) {
Actor_Set_Goal_Number(kActorOfficerGrayford, 106);
return true;
@@ -129,37 +140,40 @@ bool SceneScriptDR04::ClickedOnItem(int itemId, bool a2) {
}
bool SceneScriptDR04::ClickedOnExit(int exitId) {
- if (Actor_Query_Goal_Number(kActorMoraji) == 21) {
+ if (Actor_Query_Goal_Number(kActorMoraji) == kGoalMorajiLayDown) {
Actor_Force_Stop_Walking(kActorMcCoy);
- Actor_Set_Goal_Number(kActorMoraji, 22);
+ Actor_Set_Goal_Number(kActorMoraji, kGoalMorajiDie);
Actor_Set_Goal_Number(kActorOfficerGrayford, 101);
return true;
}
+
if (exitId == 0) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -761.0f, -0.04f, 97.0f, 0, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -761.0f, -0.04f, 97.0f, 0, true, false, 0)) {
Async_Actor_Walk_To_XYZ(kActorMcCoy, -683.0f, -0.04f, 43.0f, 0, false);
Game_Flag_Set(kFlagDR04toDR01);
Set_Enter(kSetDR01_DR02_DR04, kSceneDR01);
}
return true;
}
+
if (exitId == 1) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -1067.0f, 7.18f, 421.0f, 0, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -1067.0f, 7.18f, 421.0f, 0, true, false, 0)) {
Game_Flag_Set(kFlagNotUsed232);
Game_Flag_Set(kFlagDR04toDR05);
Set_Enter(kSetDR05, kSceneDR05);
}
return true;
}
+
if (exitId == 2) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -851.0f, 6.98f, 560.0f, 0, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -851.0f, 6.98f, 560.0f, 0, true, false, 0)) {
Footstep_Sound_Override_On(3);
Actor_Set_Immunity_To_Obstacles(kActorMcCoy, true);
Actor_Face_Heading(kActorMcCoy, 512, false);
- Loop_Actor_Travel_Stairs(kActorMcCoy, 7, 1, kAnimationModeIdle);
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -899.0f, 71.64f, 647.0f, 0, 0, false, 0);
+ Loop_Actor_Travel_Stairs(kActorMcCoy, 7, true, kAnimationModeIdle);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -899.0f, 71.64f, 647.0f, 0, false, false, 0);
Actor_Face_Heading(kActorMcCoy, 0, false);
- Loop_Actor_Travel_Stairs(kActorMcCoy, 7, 1, kAnimationModeIdle);
+ Loop_Actor_Travel_Stairs(kActorMcCoy, 7, true, kAnimationModeIdle);
Actor_Set_Immunity_To_Obstacles(kActorMcCoy, false);
Footstep_Sound_Override_Off();
Game_Flag_Set(kFlagDR04toDR06);
@@ -174,58 +188,61 @@ bool SceneScriptDR04::ClickedOn2DRegion(int region) {
return false;
}
-bool SceneScriptDR04::sub_401160() {
+bool SceneScriptDR04::farEnoughFromExplosion() {
float x, y, z;
Actor_Query_XYZ(kActorMcCoy, &x, &y, &z);
return (x + 1089.94f) * (x + 1089.94f) + (z - 443.49f) * (z - 443.49f) >= (360.0f * 360.0f);
}
void SceneScriptDR04::SceneFrameAdvanced(int frame) {
- if (Game_Flag_Query(kFlagDR05BombExplosionView)) {
- Game_Flag_Reset(kFlagDR05BombExplosionView);
+ if (Game_Flag_Query(kFlagDR05ViewExplosion)) {
+ Game_Flag_Reset(kFlagDR05ViewExplosion);
Game_Flag_Reset(kFlagDR05BombWillExplode);
- Scene_Loop_Set_Default(1);
- Scene_Loop_Start_Special(kSceneLoopModeOnce, 6, true);
+ Scene_Loop_Set_Default(kDR04LoopMainPostExplosion);
+ Scene_Loop_Start_Special(kSceneLoopModeOnce, kDR04LoopDR04Explosion, true);
Music_Stop(4);
- Actor_Set_Goal_Number(kActorMoraji, 99);
+ Actor_Set_Goal_Number(kActorMoraji, kGoalMorajiPerished);
} else {
if (Game_Flag_Query(kFlagDR05BombWillExplode)) {
Game_Flag_Reset(kFlagDR05BombWillExplode);
Game_Flag_Set(kFlagDR05BombExploded);
- Scene_Loop_Set_Default(1);
- Scene_Loop_Start_Special(kSceneLoopModeOnce, 6, true);
- Item_Remove_From_World(78);
+ Scene_Loop_Set_Default(kDR04LoopMainPostExplosion);
+ Scene_Loop_Start_Special(kSceneLoopModeOnce, kDR04LoopDR04Explosion, true);
+ Item_Remove_From_World(kItemBomb);
}
+
switch (frame) {
case 193:
Sound_Play(301, 100, 0, 100, 50);
- Actor_Set_Goal_Number(kActorMoraji, 30);
+ Actor_Set_Goal_Number(kActorMoraji, kGoalMorajiChooseFate);
Player_Loses_Control();
Actor_Force_Stop_Walking(kActorMcCoy);
- if (sub_401160()) {
+ if (farEnoughFromExplosion()) {
if (Player_Query_Combat_Mode()) {
- Actor_Change_Animation_Mode(kActorMcCoy, 22);
+ Actor_Change_Animation_Mode(kActorMcCoy, kAnimationModeCombatHit);
} else {
- Actor_Change_Animation_Mode(kActorMcCoy, 21);
+ Actor_Change_Animation_Mode(kActorMcCoy, kAnimationModeHit);
}
} else {
Sound_Play_Speech_Line(kActorMcCoy, 9905, 100, 0, 99);
- Actor_Change_Animation_Mode(kActorMcCoy, 48);
- Actor_Retired_Here(kActorMcCoy, 6, 6, 1, -1);
+ Actor_Change_Animation_Mode(kActorMcCoy, kAnimationModeDie);
+ Actor_Retired_Here(kActorMcCoy, 6, 6, true, -1);
}
Player_Gains_Control();
break;
+
case 235:
- if (Actor_Query_Goal_Number(kActorMoraji) != 20
- && Actor_Query_Goal_Number(kActorMoraji) != 21
- && Actor_Query_Goal_Number(kActorMoraji) != 99
+ if (Actor_Query_Goal_Number(kActorMoraji) != kGoalMorajiJump
+ && Actor_Query_Goal_Number(kActorMoraji) != kGoalMorajiLayDown
+ && Actor_Query_Goal_Number(kActorMoraji) != kGoalMorajiPerished
) {
Actor_Set_Goal_Number(kActorOfficerGrayford, 101);
}
Scene_Exits_Enable();
break;
+
case 237:
- Overlay_Play("DR04OVER", 0, 1, 1, 0);
+ Overlay_Play("DR04OVER", 0, true, true, 0);
break;
}
}
@@ -235,7 +252,7 @@ void SceneScriptDR04::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
}
void SceneScriptDR04::PlayerWalkedIn() {
- if (Game_Flag_Query(kFlagDR05BombExplosionView)) {
+ if (Game_Flag_Query(kFlagDR05ViewExplosion)) {
Player_Loses_Control();
Delay(4000);
Actor_Retired_Here(kActorMcCoy, 6, 6, 1, -1);
@@ -250,11 +267,11 @@ void SceneScriptDR04::PlayerWalkedIn() {
Footstep_Sound_Override_On(3);
Actor_Set_Immunity_To_Obstacles(kActorMcCoy, true);
Actor_Face_Heading(kActorMcCoy, 512, false);
- Loop_Actor_Travel_Stairs(kActorMcCoy, 7, 0, kAnimationModeIdle);
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -851.0f, 71.64f, 647.0f, 0, 0, false, 0);
+ Loop_Actor_Travel_Stairs(kActorMcCoy, 7, false, kAnimationModeIdle);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -851.0f, 71.64f, 647.0f, 0, false, false, 0);
Actor_Face_Heading(kActorMcCoy, 0, false);
- Loop_Actor_Travel_Stairs(kActorMcCoy, 7, 0, kAnimationModeIdle);
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -774.85f, 7.18f, 386.67f, 0, 0, false, 0);
+ Loop_Actor_Travel_Stairs(kActorMcCoy, 7, false, kAnimationModeIdle);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -774.85f, 7.18f, 386.67f, 0, false, false, 0);
Actor_Set_Immunity_To_Obstacles(kActorMcCoy, false);
Footstep_Sound_Override_Off();
}
diff --git a/engines/bladerunner/script/scene/dr05.cpp b/engines/bladerunner/script/scene/dr05.cpp
index 0204cf5b26..9f00bc2c66 100644
--- a/engines/bladerunner/script/scene/dr05.cpp
+++ b/engines/bladerunner/script/scene/dr05.cpp
@@ -24,18 +24,27 @@
namespace BladeRunner {
+enum kDR05Loops {
+ kDR05LoopMain = 0,
+ kDR05LoopMainDestroyed = 2
+};
+
void SceneScriptDR05::InitializeScene() {
Setup_Scene_Information(-22.0f, 0.3f, 221.0f, 0);
+
Game_Flag_Reset(kFlagDR04toDR05);
+
Scene_Exit_Add_2D_Exit(0, 0, 38, 80, 467, 3);
+
Ambient_Sounds_Add_Looping_Sound(383, 25, 0, 1);
+
if (!Game_Flag_Query(kFlagDR05BombExploded)) {
- Overlay_Play("DR05OVER", 0, 1, 0, 0);
+ Overlay_Play("DR05OVER", 0, true, false, 0);
}
if (Game_Flag_Query(kFlagDR05BombExploded)) {
- Scene_Loop_Set_Default(2);
+ Scene_Loop_Set_Default(kDR05LoopMainDestroyed);
} else {
- Scene_Loop_Set_Default(0);
+ Scene_Loop_Set_Default(kDR05LoopMain);
}
}
@@ -44,10 +53,11 @@ void SceneScriptDR05::SceneLoaded() {
Unobstacle_Object("BOX06", true);
Unobstacle_Object("BOX183", true);
Clickable_Object("T2 DOORWAY");
+
if (!Game_Flag_Query(kFlagDR05BombExploded)) {
- Item_Add_To_World(78, 932, 35, -1.57f, 31.33f, 75.21f, 540, 16, 16, true, true, false, true);
- if (Actor_Query_Goal_Number(kActorMoraji) == 0) {
- Item_Add_To_World(122, 931, 35, 37.35f, 1.59f, 46.72f, 0, 20, 20, true, true, false, true);
+ Item_Add_To_World(kItemBomb, 932, kSetDR05, -1.57f, 31.33f, 75.21f, 540, 16, 16, true, true, false, true);
+ if (Actor_Query_Goal_Number(kActorMoraji) == kGoalMorajiDefault) {
+ Item_Add_To_World(kItemChain, 931, kSetDR05, 37.35f, 1.59f, 46.72f, 0, 20, 20, true, true, false, true);
}
}
}
@@ -58,19 +68,20 @@ bool SceneScriptDR05::MouseClick(int x, int y) {
bool SceneScriptDR05::ClickedOn3DObject(const char *objectName, bool a2) {
if (Object_Query_Click("T2 DOORWAY", objectName)) {
- if (Game_Flag_Query(kFlagNotUsed276)
- || Actor_Query_Goal_Number(kActorMoraji) != 0
+ if (!Game_Flag_Query(kFlagNotUsed276)
+ && Actor_Query_Goal_Number(kActorMoraji) == kGoalMorajiDefault
) {
+ Actor_Face_Object(kActorMcCoy, "T2 DOORWAY", true);
+ Actor_Says(kActorMcCoy, 1020, 14);
+ Actor_Says(kActorMoraji, 90, 13);
+ } else {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 57.61f, 0.3f, 69.27f, 0, true, false, 0)) {
Actor_Face_Object(kActorMcCoy, "T2 DOORWAY", true);
Actor_Says(kActorMcCoy, 8522, 13);
Actor_Says(kActorMcCoy, 8521, 14);
}
- } else {
- Actor_Face_Object(kActorMcCoy, "T2 DOORWAY", true);
- Actor_Says(kActorMcCoy, 1020, 14);
- Actor_Says(kActorMoraji, 90, 13);
}
+
return true;
}
return false;
@@ -81,30 +92,31 @@ bool SceneScriptDR05::ClickedOnActor(int actorId) {
}
bool SceneScriptDR05::ClickedOnItem(int itemId, bool a2) {
- if (itemId == 78) {
+ if (itemId == kItemBomb) {
if (Player_Query_Combat_Mode()) {
Game_Flag_Set(kFlagDR05BombWillExplode);
- Actor_Set_Goal_Number(kActorMoraji, 30);
+ Actor_Set_Goal_Number(kActorMoraji, kGoalMorajiChooseFate);
} else if (!Game_Flag_Query(kFlagDR05BombExploded)
- && !Loop_Actor_Walk_To_Item(kActorMcCoy, 78, 24, 1, true)
- && Actor_Query_Goal_Number(kActorMoraji) != 11
+ && !Loop_Actor_Walk_To_Item(kActorMcCoy, kItemBomb, 24, true, true)
+ && Actor_Query_Goal_Number(kActorMoraji) != kGoalMorajiRunOut
) {
if (!Actor_Query_Goal_Number(kActorMoraji)) {
Actor_Says_With_Pause(kActorMcCoy, 1015, 0.1f, 12);
Actor_Says(kActorMoraji, 70, 13);
}
- Actor_Set_Goal_Number(kActorMoraji, 30);
+ Actor_Set_Goal_Number(kActorMoraji, kGoalMorajiChooseFate);
}
//return true; //bug?
}
- if (itemId == 122
+
+ if (itemId == kItemChain
&& Player_Query_Combat_Mode()
- && Actor_Query_Goal_Number(kActorMoraji) == 0
+ && Actor_Query_Goal_Number(kActorMoraji) == kGoalOfficerLearyDefault
) {
- Overlay_Play("DR05OVER", 1, 0, 1, 0);
- Item_Remove_From_World(122);
+ Overlay_Play("DR05OVER", 1, false, true, 0);
+ Item_Remove_From_World(kItemChain);
Game_Flag_Set(kFlagDR05ChainShot);
- Actor_Set_Goal_Number(kActorMoraji, 10);
+ Actor_Set_Goal_Number(kActorMoraji, kGoalMorajiFreed);
Music_Play(18, 71, 0, 0, -1, 0, 2);
return true;
}
@@ -131,11 +143,12 @@ void SceneScriptDR05::SceneFrameAdvanced(int frame) {
if (frame == 49) {
Sound_Play(148, Random_Query(50, 50), 80, 80, 50);
}
+
if (Game_Flag_Query(kFlagDR05BombWillExplode)) {
- Item_Remove_From_World(78);
+ Item_Remove_From_World(kItemBomb);
Game_Flag_Reset(kFlagDR05BombWillExplode);
Game_Flag_Set(kFlagDR05BombExploded);
- Actor_Set_Goal_Number(kActorMoraji, 30);
+ Actor_Set_Goal_Number(kActorMoraji, kGoalMorajiChooseFate);
}
}
@@ -147,11 +160,11 @@ void SceneScriptDR05::PlayerWalkedIn() {
&& !Game_Flag_Query(kFlagDR05ChainShot)
&& Game_Flag_Query(kFlagDR05BombExploded)
) {
- Item_Remove_From_World(122);
+ Item_Remove_From_World(kItemChain);
}
if (Game_Flag_Query(kFlagDR05BombExploded)) {
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -10.0f, 0.3f, 133.0f, 0, 0, false, 0);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -10.0f, 0.3f, 133.0f, 0, false, false, 0);
if (!Game_Flag_Query(kFlagDR05ExplodedEntered)) {
Game_Flag_Set(kFlagDR05ExplodedEntered);
if (Game_Flag_Query(kFlagSadikIsReplicant)) {
@@ -170,18 +183,18 @@ void SceneScriptDR05::PlayerWalkedIn() {
}
}
} else {
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -10.0f, 0.3f, 133.0f, 0, 0, true, 0);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -10.0f, 0.3f, 133.0f, 0, false, true, 0);
}
if (!Game_Flag_Query(kFlagDR05MorajiTalk)
- && !Actor_Query_Goal_Number(kActorMoraji)
+ && Actor_Query_Goal_Number(kActorMoraji) == kGoalMorajiDefault
) {
Actor_Face_Actor(kActorMcCoy, kActorMoraji, true);
Actor_Says(kActorMcCoy, 1010, 13);
- Actor_Face_Item(kActorMcCoy, 78, true);
+ Actor_Face_Item(kActorMcCoy, kItemBomb, true);
Player_Set_Combat_Mode(true);
Actor_Says(kActorMoraji, 60, 12);
- Actor_Change_Animation_Mode(kActorMcCoy, 0);
+ Actor_Change_Animation_Mode(kActorMcCoy, kAnimationModeIdle);
Game_Flag_Set(kFlagDR05MorajiTalk);
//return true;
}
@@ -191,8 +204,12 @@ void SceneScriptDR05::PlayerWalkedIn() {
void SceneScriptDR05::PlayerWalkedOut() {
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);
+
+ if (Actor_Query_Goal_Number(kActorMoraji) == kGoalMorajiFreed
+ || Actor_Query_Goal_Number(kActorMoraji) == kGoalMorajiGetUp
+ || Actor_Query_Goal_Number(kActorMoraji) == kGoalMorajiScream
+ ) {
+ Actor_Set_Goal_Number(kActorMoraji, kGoalMorajiRunOut);
//return true;
}
//return false;
diff --git a/engines/bladerunner/script/scene/dr06.cpp b/engines/bladerunner/script/scene/dr06.cpp
index c28ec2db4f..441d7bdf4a 100644
--- a/engines/bladerunner/script/scene/dr06.cpp
+++ b/engines/bladerunner/script/scene/dr06.cpp
@@ -26,27 +26,30 @@ namespace BladeRunner {
void SceneScriptDR06::InitializeScene() {
if (Game_Flag_Query(kFlagDR04toDR06)) {
- Setup_Scene_Information(-733.57f, 136.6f, -968.64f, 0);
+ Setup_Scene_Information(-733.57f, 136.6f, -968.64f, 0);
} else {
Setup_Scene_Information(-707.57f, 136.6f, -1132.64f, 472);
}
+
Scene_Exit_Add_2D_Exit(0, 601, 11, 639, 479, 1);
if (Global_Variable_Query(kVariableChapter) > 3
&& Game_Flag_Query(715)
) {
Scene_Exit_Add_2D_Exit(1, 0, 272, 46, 477, 2);
}
+
Ambient_Sounds_Add_Looping_Sound(383, 25, 0, 1);
Ambient_Sounds_Add_Sound(73, 5, 60, 20, 20, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(74, 5, 60, 20, 20, -100, 100, -101, -101, 0, 0);
+
if (Game_Flag_Query(kFlagDR06JesterActive)) {
- Overlay_Play("DR06over", 1, 1, 0, 0);
+ Overlay_Play("DR06over", 1, true, false, 0);
Ambient_Sounds_Add_Looping_Sound(300, 47, -75, 0);
} else {
- Overlay_Play("DR06over", 0, 1, 0, 0);
+ Overlay_Play("DR06over", 0, true, false, 0);
}
- if (Game_Flag_Query(548)) {
- Overlay_Play("DR06ovr2", 0, 1, 0, 0);
+ if (Game_Flag_Query(kFlagDR06MannequinHeadOpen)) {
+ Overlay_Play("DR06ovr2", 0, true, false, 0);
}
}
@@ -72,11 +75,11 @@ bool SceneScriptDR06::ClickedOn3DObject(const char *objectName, bool a2) {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -743.0f, 136.6f, -1091.0f, 0, true, false, 0);
Actor_Face_Object(kActorMcCoy, "BOX16", true);
if (!Game_Flag_Query(kFlagDR06JesterActive)) {
- Overlay_Play("DR06over", 1, 1, 1, 0);
+ Overlay_Play("DR06over", 1, true, true, 0);
Ambient_Sounds_Add_Looping_Sound(300, 47, -75, 0);
Game_Flag_Set(kFlagDR06JesterActive);
} else {
- Overlay_Play("DR06over", 0, 1, 1, 0);
+ Overlay_Play("DR06over", 0, true, true, 0);
Ambient_Sounds_Remove_Looping_Sound(300, false);
Game_Flag_Reset(kFlagDR06JesterActive);
}
@@ -144,13 +147,13 @@ bool SceneScriptDR06::ClickedOn3DObject(const char *objectName, bool a2) {
if (Object_Query_Click("X2_TORSO04HIRES", objectName)) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -700.0f, 136.6f, -1133.0f, 4, true, false, 0)) {
Actor_Face_Object(kActorMcCoy, "x2_TORSO04HIRES", true);
- if (Global_Variable_Query(39) > 12) {
+ if (Global_Variable_Query(kVariableDR06MannequinHeadOpened) > 12) {
return true;
}
- if (!Game_Flag_Query(548)) {
+ if (!Game_Flag_Query(kFlagDR06MannequinHeadOpen)) {
Overlay_Play("DR06ovr2", 0, 1, 0, 0);
- Game_Flag_Set(548);
+ Game_Flag_Set(kFlagDR06MannequinHeadOpen);
Sound_Play(160, 100, 0, 0, 50);
if (!Actor_Clue_Query(kActorMcCoy, kClueEnvelope)) {
Actor_Voice_Over(850, kActorVoiceOver);
@@ -160,17 +163,17 @@ bool SceneScriptDR06::ClickedOn3DObject(const char *objectName, bool a2) {
Actor_Voice_Over(880, kActorVoiceOver);
Actor_Clue_Acquire(kActorMcCoy, kClueEnvelope, true, kActorLance);
if (Query_Difficulty_Level() != 0) {
- Global_Variable_Increment(2, 200);
+ Global_Variable_Increment(kVariableChinyen, 200);
}
}
} else {
Overlay_Remove("DR06ovr2");
- Game_Flag_Reset(548);
+ Game_Flag_Reset(kFlagDR06MannequinHeadOpen);
Sound_Play(161, 100, 0, 0, 50);
}
- Global_Variable_Increment(39, 1);
- if (Global_Variable_Query(39) > 12) {
+ Global_Variable_Increment(kVariableDR06MannequinHeadOpened, 1);
+ if (Global_Variable_Query(kVariableDR06MannequinHeadOpened) > 12) {
Sound_Play(204, 100, 0, 0, 50);
Unclickable_Object("X2_TORSO04HIRES");
}
diff --git a/engines/bladerunner/script/scene/hc01.cpp b/engines/bladerunner/script/scene/hc01.cpp
index 8318130397..19345ebb39 100644
--- a/engines/bladerunner/script/scene/hc01.cpp
+++ b/engines/bladerunner/script/scene/hc01.cpp
@@ -99,8 +99,8 @@ bool SceneScriptHC01::ClickedOnActor(int actorId) {
)
) {
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(kFlagIzoTalk1)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 624.43f, 0.14f, 83.0f, 0, true, false, 0)) {
+ if (!Game_Flag_Query(kFlagHC01IzoTalk1)) {
Actor_Face_Actor(kActorIzo, kActorMcCoy, true);
Actor_Says_With_Pause(kActorIzo, 10, 0.2f, 13);
Actor_Face_Actor(kActorMcCoy, kActorIzo, true);
@@ -114,7 +114,7 @@ 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(kFlagIzoTalk1);
+ Game_Flag_Set(kFlagHC01IzoTalk1);
} else {
Actor_Face_Actor(kActorMcCoy, kActorIzo, true);
Actor_Face_Actor(kActorIzo, kActorMcCoy, true);
@@ -134,7 +134,7 @@ bool SceneScriptHC01::ClickedOnItem(int itemId, bool a2) {
Item_Pickup_Spin_Effect(984, 377, 397);
Delay(1500);
Item_Pickup_Spin_Effect(984, 330, 384);
- if (Game_Flag_Query(374)) {
+ if (Game_Flag_Query(kFlagAR02DektoraBoughtScorpions)) {
Actor_Clue_Acquire(kActorMcCoy, kCluePhotoOfMcCoy1, true, kActorIzo);
} else {
Actor_Clue_Acquire(kActorMcCoy, kCluePhotoOfMcCoy2, true, kActorIzo);
@@ -151,8 +151,8 @@ bool SceneScriptHC01::ClickedOnExit(int exitId) {
Music_Adjust(12, 0, 2);
Game_Flag_Set(kFlagHC01toAR01);
Set_Enter(kSetAR01_AR02, kSceneAR01);
- Game_Flag_Reset(kFlagMcCoyAtHCxx);
- Game_Flag_Set(kFlagMcCoyAtARxx);
+ Game_Flag_Reset(kFlagMcCoyInHawkersCircle);
+ Game_Flag_Set(kFlagMcCoyInAnimoidRow);
}
return true;
}
@@ -197,7 +197,7 @@ void SceneScriptHC01::SceneFrameAdvanced(int frame) {
}
if (frame == 80) {
Ambient_Sounds_Play_Sound(316, 40, 100, 100, 0);
- Item_Add_To_World(kItemHC03Lock, 931, kSetHC01_HC02_HC03_HC04, 582.0f, 27.0f, -41.0f, 0, 8, 8, true, true, false, true);
+ Item_Add_To_World(kItemGreenPawnLock, 931, kSetHC01_HC02_HC03_HC04, 582.0f, 27.0f, -41.0f, 0, 8, 8, true, true, false, true);
}
}
@@ -227,12 +227,12 @@ void SceneScriptHC01::DialogueQueueFlushed(int a1) {
}
void SceneScriptHC01::dialogueWithIzo() {
- if (!Game_Flag_Query(kFlagIzoTalk2)) {
+ if (!Game_Flag_Query(kFlagHC01IzoTalk2)) {
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(kFlagIzoTalk2);
+ Game_Flag_Set(kFlagHC01IzoTalk2);
}
Dialogue_Menu_Clear_List();
diff --git a/engines/bladerunner/script/scene/hc02.cpp b/engines/bladerunner/script/scene/hc02.cpp
index 76cf09c6e0..fa64162076 100644
--- a/engines/bladerunner/script/scene/hc02.cpp
+++ b/engines/bladerunner/script/scene/hc02.cpp
@@ -89,7 +89,7 @@ bool SceneScriptHC02::ClickedOnActor(int actorId) {
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(kFlagHawkersBarkeepIntroduction)) {
+ if (!Game_Flag_Query(kFlagHC02HawkersBarkeepIntroduction)) {
Actor_Says(kActorMcCoy, 1225, 13);
Actor_Says_With_Pause(kActorHawkersBarkeep, 0, 0.0f, 13);
Actor_Says(kActorHawkersBarkeep, 10, 16);
@@ -99,7 +99,7 @@ bool SceneScriptHC02::ClickedOnActor(int actorId) {
Actor_Change_Animation_Mode(kActorMcCoy, 75);
Delay(1500);
Global_Variable_Increment(kVariableMcCoyDrinks, 1);
- Game_Flag_Set(kFlagHawkersBarkeepIntroduction);
+ Game_Flag_Set(kFlagHC02HawkersBarkeepIntroduction);
} else if ( Actor_Clue_Query(kActorMcCoy, kClueChinaBarSecurityCamera)
&& !Actor_Clue_Query(kActorMcCoy, kClueChinaBarSecurityDisc)
) {
@@ -110,8 +110,8 @@ bool SceneScriptHC02::ClickedOnActor(int actorId) {
Item_Pickup_Spin_Effect(975, 229, 215);
} else if ( Actor_Clue_Query(kActorMcCoy, kClueHomelessManInterview1)
&& !Actor_Clue_Query(kActorMcCoy, kClueFlaskOfAbsinthe)
- && (Global_Variable_Query(kVariableChinyen) > 20
- || Query_Difficulty_Level() == 0
+ && (Global_Variable_Query(kVariableChinyen) > 20
+ || Query_Difficulty_Level() == 0
)
) {
Actor_Clue_Acquire(kActorMcCoy, kClueFlaskOfAbsinthe, true, kActorHawkersBarkeep);
@@ -132,12 +132,12 @@ bool SceneScriptHC02::ClickedOnActor(int actorId) {
Actor_Says(kActorMcCoy, 1245, 13);
} else {
if ( Actor_Clue_Query(kActorMcCoy, kClueMaggieBracelet)
- && !Game_Flag_Query(kFlagHawkersBarkeepBraceletTalk)
+ && !Game_Flag_Query(kFlagHC02HawkersBarkeepBraceletTalk)
) {
Actor_Says(kActorHawkersBarkeep, 80, 16);
Actor_Says(kActorMcCoy, 1265, 13);
Actor_Says(kActorHawkersBarkeep, 90, 13);
- Game_Flag_Set(kFlagHawkersBarkeepBraceletTalk);
+ Game_Flag_Set(kFlagHC02HawkersBarkeepBraceletTalk);
}
if (Global_Variable_Query(kVariableChinyen) > 5
|| Query_Difficulty_Level() == 0
diff --git a/engines/bladerunner/script/scene/hc03.cpp b/engines/bladerunner/script/scene/hc03.cpp
index 07016f6c5f..c0d08c5a69 100644
--- a/engines/bladerunner/script/scene/hc03.cpp
+++ b/engines/bladerunner/script/scene/hc03.cpp
@@ -46,7 +46,7 @@ void SceneScriptHC03::InitializeScene() {
if (Game_Flag_Query(kFlagHC03CageOpen)
|| Global_Variable_Query(kVariableChapter) > 3
) {
- Item_Remove_From_World(kItemHC03Lock);
+ Item_Remove_From_World(kItemGreenPawnLock);
Game_Flag_Set(kFlagHC03CageOpen);
Scene_Exit_Add_2D_Exit(1, 400, 275, 515, 375, 2);
}
@@ -115,12 +115,12 @@ bool SceneScriptHC03::ClickedOnActor(int actorId) {
}
bool SceneScriptHC03::ClickedOnItem(int itemId, bool combatMode) {
- if (itemId == kItemHC03Lock) {
+ if (itemId == kItemGreenPawnLock) {
if (combatMode) {
Scene_Loop_Set_Default(kHC03LoopMainCageOpen);
Scene_Loop_Start_Special(kSceneLoopModeOnce, kHC03LoopCageDoorOpening, true);
Game_Flag_Set(kFlagHC03CageOpen);
- Item_Remove_From_World(kItemHC03Lock);
+ Item_Remove_From_World(kItemGreenPawnLock);
Unobstacle_Object("GPscisGate", true);
} else {
Actor_Says(kActorMcCoy, 8522, 12);
@@ -135,7 +135,7 @@ bool SceneScriptHC03::ClickedOnItem(int itemId, bool combatMode) {
Item_Pickup_Spin_Effect(984, 78, 435);
Delay(1500);
Item_Pickup_Spin_Effect(984, 58, 435);
- if (Game_Flag_Query(374)) {
+ if (Game_Flag_Query(kFlagAR02DektoraBoughtScorpions)) {
Actor_Clue_Acquire(kActorMcCoy, kCluePhotoOfMcCoy1, true, kActorIzo);
} else {
Actor_Clue_Acquire(kActorMcCoy, kCluePhotoOfMcCoy2, true, kActorIzo);
@@ -163,8 +163,8 @@ bool SceneScriptHC03::ClickedOnExit(int exitId) {
Game_Flag_Set(kFlagHC03TrapDoorOpen);
} else {
Game_Flag_Set(kFlagHC03toUG02);
- Game_Flag_Reset(kFlagMcCoyAtHCxx);
- Game_Flag_Set(kFlagMcCoyAtUGxx);
+ Game_Flag_Reset(kFlagMcCoyInHawkersCircle);
+ Game_Flag_Set(kFlagMcCoyInUnderground);
Game_Flag_Set(kFlagHC03TrapDoorOpen);
Music_Stop(2);
Set_Enter(kSetUG02, kSceneUG02);
diff --git a/engines/bladerunner/script/scene/hc04.cpp b/engines/bladerunner/script/scene/hc04.cpp
index 35965ea472..224aa11540 100644
--- a/engines/bladerunner/script/scene/hc04.cpp
+++ b/engines/bladerunner/script/scene/hc04.cpp
@@ -87,11 +87,11 @@ bool SceneScriptHC04::ClickedOnActor(int actorId) {
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)) {
+ if (!Game_Flag_Query(kFlagHC04IsabellaTalk)) {
Actor_Says(kActorIsabella, 0, kAnimationModeTalk);
Actor_Says(kActorMcCoy, 1280, kAnimationModeTalk);
Actor_Says(kActorIsabella, 20, kAnimationModeTalk);
- Game_Flag_Set(kFlagIsabellaIntroduced);
+ Game_Flag_Set(kFlagHC04IsabellaTalk);
return true;
} else {
dialogueWithIsabella();
@@ -111,8 +111,8 @@ bool SceneScriptHC04::ClickedOnExit(int exitId) {
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);
- Game_Flag_Set(kFlagMcCoyAtRCxx);
+ Game_Flag_Reset(kFlagMcCoyInHawkersCircle);
+ Game_Flag_Set(kFlagMcCoyInRunciters);
Set_Enter(kSetRC03, kSceneRC03);
}
return true;
diff --git a/engines/bladerunner/script/scene/hf01.cpp b/engines/bladerunner/script/scene/hf01.cpp
index 25f663c9c4..5bb9dce1fc 100644
--- a/engines/bladerunner/script/scene/hf01.cpp
+++ b/engines/bladerunner/script/scene/hf01.cpp
@@ -191,79 +191,79 @@ bool SceneScriptHF01::ClickedOnExit(int exitId) {
}
if (exitId == 3) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 100.0f, 0.0f, -260.0f, 0, true, false, 0)) {
- Game_Flag_Reset(kFlagMcCoyAtCTxx);
- Game_Flag_Reset(kFlagMcCoyAtRCxx);
- Game_Flag_Reset(kFlagMcCoyAtMAxx);
- Game_Flag_Reset(kFlagMcCoyAtPSxx);
- Game_Flag_Reset(kFlagMcCoyAtBBxx);
- Game_Flag_Reset(kFlagMcCoyAtHFxx);
+ Game_Flag_Reset(kFlagMcCoyInChinaTown);
+ Game_Flag_Reset(kFlagMcCoyInRunciters);
+ Game_Flag_Reset(kFlagMcCoyInMcCoyApartment);
+ Game_Flag_Reset(kFlagMcCoyInPoliceStation);
+ Game_Flag_Reset(kFlagMcCoyInBradburyBuilding);
+ Game_Flag_Reset(kFlagMcCoyInHysteriaHall);
int spinnerDest = Spinner_Interface_Choose_Dest(3, false);
switch (spinnerDest) {
case kSpinnerDestinationPoliceStation:
- Game_Flag_Set(kFlagMcCoyAtPSxx);
+ Game_Flag_Set(kFlagMcCoyInPoliceStation);
Game_Flag_Reset(kFlagSpinnerAtHF01);
Game_Flag_Set(kFlagSpinnerAtPS01);
Set_Enter(kSetPS01, kScenePS01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 4, true);
break;
case kSpinnerDestinationMcCoysApartment:
- Game_Flag_Set(kFlagMcCoyAtMAxx);
+ Game_Flag_Set(kFlagMcCoyInMcCoyApartment);
Game_Flag_Reset(kFlagSpinnerAtHF01);
Game_Flag_Set(kFlagSpinnerAtMA01);
Set_Enter(kSetMA01, kSceneMA01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 4, true);
break;
case kSpinnerDestinationRuncitersAnimals:
- Game_Flag_Set(kFlagMcCoyAtRCxx);
+ Game_Flag_Set(kFlagMcCoyInRunciters);
Game_Flag_Reset(kFlagSpinnerAtHF01);
Game_Flag_Set(kFlagSpinnerAtRC01);
Set_Enter(kSetRC01, kSceneRC01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 4, true);
break;
case kSpinnerDestinationChinatown:
- Game_Flag_Set(kFlagMcCoyAtCTxx);
+ Game_Flag_Set(kFlagMcCoyInChinaTown);
Game_Flag_Reset(kFlagSpinnerAtHF01);
Game_Flag_Set(kFlagSpinnerAtCT01);
Set_Enter(kSetCT01_CT12, kSceneCT01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 4, true);
break;
case kSpinnerDestinationAnimoidRow:
- Game_Flag_Set(kFlagMcCoyAtTBxx);
+ Game_Flag_Set(kFlagMcCoyInTyrellBuilding);
Game_Flag_Reset(kFlagSpinnerAtHF01);
Game_Flag_Set(kFlagSpinnerAtTB02);
Set_Enter(kSetTB02_TB03, kSceneTB02);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 4, true);
break;
case kSpinnerDestinationTyrellBuilding:
- Game_Flag_Set(kFlagMcCoyAtARxx);
+ Game_Flag_Set(kFlagMcCoyInAnimoidRow);
Game_Flag_Reset(kFlagSpinnerAtHF01);
Game_Flag_Set(kFlagSpinnerAtAR01);
Set_Enter(kSetAR01_AR02, kSceneAR01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 4, true);
break;
case kSpinnerDestinationDNARow:
- Game_Flag_Set(kFlagMcCoyAtDRxx);
+ Game_Flag_Set(kFlagMcCoyInDNARow);
Game_Flag_Reset(kFlagSpinnerAtHF01);
Game_Flag_Set(kFlagSpinnerAtDR01);
Set_Enter(kSetDR01_DR02_DR04, kSceneDR01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 4, true);
break;
case kSpinnerDestinationBradburyBuilding:
- Game_Flag_Set(kFlagMcCoyAtBBxx);
+ Game_Flag_Set(kFlagMcCoyInBradburyBuilding);
Game_Flag_Reset(kFlagSpinnerAtHF01);
Game_Flag_Set(kFlagSpinnerAtBB01);
Set_Enter(kSetBB01, kSceneBB01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 4, true);
break;
case kSpinnerDestinationNightclubRow:
- Game_Flag_Set(kFlagMcCoyAtNRxx);
+ Game_Flag_Set(kFlagMcCoyInNightclubRow);
Game_Flag_Reset(kFlagSpinnerAtHF01);
Game_Flag_Set(kFlagSpinnerAtNR01);
Set_Enter(kSetNR01, kSceneNR01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 4, true);
break;
default:
- Game_Flag_Set(kFlagMcCoyAtHFxx);
+ Game_Flag_Set(kFlagMcCoyInHysteriaHall);
Loop_Actor_Walk_To_XYZ(kActorMcCoy, 100.0f, 0.0f, -300.0f, 0, true, false, 0);
break;
}
diff --git a/engines/bladerunner/script/scene/hf05.cpp b/engines/bladerunner/script/scene/hf05.cpp
index 9815c91f80..4838c27089 100644
--- a/engines/bladerunner/script/scene/hf05.cpp
+++ b/engines/bladerunner/script/scene/hf05.cpp
@@ -27,7 +27,7 @@ namespace BladeRunner {
void SceneScriptHF05::InitializeScene() {
if (Game_Flag_Query(530)) {
Setup_Scene_Information(257.0f, 40.63f, 402.0f, 1000);
- } else if (Game_Flag_Query(358)) {
+ } else if (Game_Flag_Query(kFlagHF07toHF05)) {
Setup_Scene_Information(330.0f, 40.63f, -107.0f, 603);
} else {
Setup_Scene_Information(483.0f, 40.63f, -189.0f, 600);
@@ -162,13 +162,13 @@ bool SceneScriptHF05::ClickedOnExit(int exitId) {
if (!Game_Flag_Query(684)) {
int affectionTowardsActor = getAffectionTowardsActor();
if (Game_Flag_Query(663)
- && Game_Flag_Query(368)
- && affectionTowardsActor != -1
+ && Game_Flag_Query(368)
+ && affectionTowardsActor != -1
) {
Actor_Face_Actor(kActorMcCoy, affectionTowardsActor, true);
Actor_Says(kActorMcCoy, 1810, 16);
}
- Game_Flag_Set(359);
+ Game_Flag_Set(kFlagHF05toHF07);
Set_Enter(kSetHF07, kSceneHF07);
}
}
@@ -255,7 +255,7 @@ void SceneScriptHF05::PlayerWalkedIn() {
Async_Actor_Walk_To_Waypoint(affectionTowardsActor, 437, 36, 0);
} else if (Game_Flag_Query(530)) {
Actor_Set_At_XYZ(affectionTowardsActor, 288.0f, 40.63f, 410.0f, 909);
- } else if (Game_Flag_Query(358)) {
+ } else if (Game_Flag_Query(kFlagHF07toHF05)) {
Actor_Set_At_XYZ(affectionTowardsActor, 298.0f, 40.63f, -107.0f, 512);
} else {
Actor_Set_At_XYZ(affectionTowardsActor, 284.0f, 40.63f, 286.0f, 0);
@@ -281,7 +281,7 @@ void SceneScriptHF05::PlayerWalkedIn() {
}
} else if (Game_Flag_Query(kFlagHF01toHF05)) {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, 399.0f, 40.63f, -85.0f, 0, 0, false, 0);
- } else if (Game_Flag_Query(358)) {
+ } else if (Game_Flag_Query(kFlagHF07toHF05)) {
Actor_Set_At_XYZ(kActorMcCoy, 346.0f, 4.63f, -151.0f, 603);
Loop_Actor_Travel_Stairs(kActorMcCoy, 4, 1, kAnimationModeIdle);
}
@@ -298,7 +298,7 @@ void SceneScriptHF05::PlayerWalkedIn() {
}
Game_Flag_Reset(kFlagHF01toHF05);
Game_Flag_Reset(530);
- Game_Flag_Reset(358);
+ Game_Flag_Reset(kFlagHF07toHF05);
//return false;
}
diff --git a/engines/bladerunner/script/scene/hf07.cpp b/engines/bladerunner/script/scene/hf07.cpp
index 14da5c20de..1eb88677b1 100644
--- a/engines/bladerunner/script/scene/hf07.cpp
+++ b/engines/bladerunner/script/scene/hf07.cpp
@@ -25,7 +25,7 @@
namespace BladeRunner {
void SceneScriptHF07::InitializeScene() {
- if (Game_Flag_Query(361) ) {
+ if (Game_Flag_Query(kFlagUG06toHF07) ) {
Setup_Scene_Information(-84.0f, 58.43f, -105.0f, 524);
} else {
Setup_Scene_Information(298.0f, 58.43f, -71.0f, 700);
@@ -74,7 +74,7 @@ bool SceneScriptHF07::ClickedOnExit(int exitId) {
Async_Actor_Walk_To_XYZ(kActorLucy, 235.0f, 58.43f, -100.0f, 0, false);
}
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 318.0f, 71.43f, -102.0f, 0, 1, false, 0)) {
- Game_Flag_Set(358);
+ Game_Flag_Set(kFlagHF07toHF05);
if (!Game_Flag_Query(662)) {
Actor_Face_Heading(kActorMcCoy, 0, false);
Footstep_Sound_Override_On(3);
@@ -96,7 +96,7 @@ bool SceneScriptHF07::ClickedOnExit(int exitId) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -84.0f, 58.43f, -105.0f, 0, true, false, 0)) {
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(360);
+ Game_Flag_Set(kFlagHF07toUG06);
Set_Enter(kSetUG05, kSceneUG05);
}
return true;
@@ -119,20 +119,20 @@ void SceneScriptHF07::PlayerWalkedIn() {
int actorId = getAffectionTowardsActor();
if (Game_Flag_Query(662) && actorId != -1) {
Actor_Put_In_Set(actorId, kSetHF07);
- if (Game_Flag_Query(361)) {
+ if (Game_Flag_Query(kFlagUG06toHF07)) {
Actor_Set_At_XYZ(actorId, -73.0f, 58.43f, -7.0f, 224);
} else {
Actor_Set_At_XYZ(actorId, 235.0f, 58.43f, -100.0f, 512);
}
}
- } else if (Game_Flag_Query(359)) {
+ } else if (Game_Flag_Query(kFlagHF05toHF07)) {
Actor_Set_At_XYZ(kActorMcCoy, 267.72f, 329.43f, -86.75f, 940);
Footstep_Sound_Override_On(3);
Loop_Actor_Travel_Stairs(kActorMcCoy, 30, false, kAnimationModeIdle);
Footstep_Sound_Override_Off();
}
- Game_Flag_Reset(359);
- Game_Flag_Reset(361);
+ Game_Flag_Reset(kFlagHF05toHF07);
+ Game_Flag_Reset(kFlagUG06toHF07);
}
void SceneScriptHF07::PlayerWalkedOut() {
diff --git a/engines/bladerunner/script/scene/ma01.cpp b/engines/bladerunner/script/scene/ma01.cpp
index c4594810c7..566edeb0c2 100644
--- a/engines/bladerunner/script/scene/ma01.cpp
+++ b/engines/bladerunner/script/scene/ma01.cpp
@@ -118,74 +118,74 @@ bool SceneScriptMA01::ClickedOnExit(int exitId) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 381.0f, 0.0f, 54.0f, 0, 1, false, 0)) {
Player_Loses_Control();
Actor_Face_Heading(kActorMcCoy, 736, false);
- Game_Flag_Reset(kFlagMcCoyAtCTxx);
- Game_Flag_Reset(kFlagMcCoyAtRCxx);
- Game_Flag_Reset(kFlagMcCoyAtMAxx);
- Game_Flag_Reset(kFlagMcCoyAtARxx);
- Game_Flag_Reset(kFlagMcCoyAtTBxx);
- Game_Flag_Reset(kFlagMcCoyAtDRxx);
- Game_Flag_Reset(kFlagMcCoyAtBBxx);
- Game_Flag_Reset(kFlagMcCoyAtPSxx);
+ Game_Flag_Reset(kFlagMcCoyInChinaTown);
+ Game_Flag_Reset(kFlagMcCoyInRunciters);
+ Game_Flag_Reset(kFlagMcCoyInMcCoyApartment);
+ Game_Flag_Reset(kFlagMcCoyInAnimoidRow);
+ Game_Flag_Reset(kFlagMcCoyInTyrellBuilding);
+ Game_Flag_Reset(kFlagMcCoyInDNARow);
+ Game_Flag_Reset(kFlagMcCoyInBradburyBuilding);
+ Game_Flag_Reset(kFlagMcCoyInPoliceStation);
int spinnerDest = Spinner_Interface_Choose_Dest(kMA01LoopOutDoorAnim, false);
switch (spinnerDest) {
case kSpinnerDestinationPoliceStation:
- Game_Flag_Set(kFlagMcCoyAtPSxx);
+ Game_Flag_Set(kFlagMcCoyInPoliceStation);
Game_Flag_Reset(kFlagSpinnerAtMA01);
Game_Flag_Set(kFlagSpinnerAtPS01);
Set_Enter(kSetPS01, kScenePS01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kMA01LoopOutshotRoof, true);
break;
case kSpinnerDestinationRuncitersAnimals:
- Game_Flag_Set(kFlagMcCoyAtRCxx);
+ Game_Flag_Set(kFlagMcCoyInRunciters);
Game_Flag_Reset(kFlagSpinnerAtMA01);
Game_Flag_Set(kFlagSpinnerAtRC01);
Set_Enter(kSetRC01, kSceneRC01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kMA01LoopOutshotRoof, true);
break;
case kSpinnerDestinationChinatown:
- Game_Flag_Set(kFlagMcCoyAtCTxx);
+ Game_Flag_Set(kFlagMcCoyInChinaTown);
Game_Flag_Reset(kFlagSpinnerAtMA01);
Game_Flag_Set(kFlagSpinnerAtCT01);
Set_Enter(kSetCT01_CT12, kSceneCT01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kMA01LoopOutshotRoof, true);
break;
case kSpinnerDestinationTyrellBuilding:
- Game_Flag_Set(kFlagMcCoyAtTBxx);
+ Game_Flag_Set(kFlagMcCoyInTyrellBuilding);
Game_Flag_Reset(kFlagSpinnerAtMA01);
Game_Flag_Set(kFlagSpinnerAtTB02);
Set_Enter(kSetTB02_TB03, kSceneTB02);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kMA01LoopOutshotRoof, true);
break;
case kSpinnerDestinationAnimoidRow:
- Game_Flag_Set(kFlagMcCoyAtARxx);
+ Game_Flag_Set(kFlagMcCoyInAnimoidRow);
Game_Flag_Reset(kFlagSpinnerAtMA01);
Game_Flag_Set(kFlagSpinnerAtAR01);
Set_Enter(kSetAR01_AR02, kSceneAR01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kMA01LoopOutshotRoof, true);
break;
case kSpinnerDestinationDNARow:
- Game_Flag_Set(kFlagMcCoyAtDRxx);
+ Game_Flag_Set(kFlagMcCoyInDNARow);
Game_Flag_Reset(kFlagSpinnerAtMA01);
Game_Flag_Set(kFlagSpinnerAtDR01);
Set_Enter(kSetDR01_DR02_DR04, kSceneDR01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kMA01LoopOutshotRoof, true);
break;
case kSpinnerDestinationBradburyBuilding:
- Game_Flag_Set(kFlagMcCoyAtBBxx);
+ Game_Flag_Set(kFlagMcCoyInBradburyBuilding);
Game_Flag_Reset(kFlagSpinnerAtMA01);
Game_Flag_Set(kFlagSpinnerAtBB01);
Set_Enter(kSetBB01, kSceneBB01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kMA01LoopOutshotRoof, true);
break;
case kSpinnerDestinationNightclubRow:
- Game_Flag_Set(kFlagMcCoyAtNRxx);
+ Game_Flag_Set(kFlagMcCoyInNightclubRow);
Game_Flag_Reset(kFlagSpinnerAtMA01);
Game_Flag_Set(kFlagSpinnerAtNR01);
Set_Enter(kSetNR01, kSceneNR01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kMA01LoopOutshotRoof, true);
break;
case kSpinnerDestinationHysteriaHall:
- Game_Flag_Set(kFlagMcCoyAtHFxx);
+ Game_Flag_Set(kFlagMcCoyInHysteriaHall);
Game_Flag_Reset(kFlagSpinnerAtMA01);
Game_Flag_Set(kFlagSpinnerAtHF01);
Set_Enter(kSetHF01, kSceneHF01);
@@ -194,7 +194,7 @@ bool SceneScriptMA01::ClickedOnExit(int exitId) {
default:
Actor_Set_Invisible(kActorMcCoy, false);
Actor_Face_Heading(kActorMcCoy, 736, false);
- Game_Flag_Set(kFlagMcCoyAtMAxx);
+ Game_Flag_Set(kFlagMcCoyInMcCoyApartment);
break;
}
}
diff --git a/engines/bladerunner/script/scene/ma02.cpp b/engines/bladerunner/script/scene/ma02.cpp
index edaae510f8..5fa1e669c5 100644
--- a/engines/bladerunner/script/scene/ma02.cpp
+++ b/engines/bladerunner/script/scene/ma02.cpp
@@ -246,10 +246,14 @@ void SceneScriptMA02::selectNextTvNews() {
if (Global_Variable_Query(kVariableChapter) >= 3) {
arr[i++] = 2;
}
- if (Global_Variable_Query(kVariableChapter) >= 2 && Global_Variable_Query(kVariableChapter) <= 4) {
+ if (Global_Variable_Query(kVariableChapter) >= 2
+ && Global_Variable_Query(kVariableChapter) <= 4
+ ) {
arr[i++] = 3;
}
- if (Game_Flag_Query(kFlagHomelessBodyFound) && Game_Flag_Query(kFlagHomelessBodyInDumpster)) {
+ if (Game_Flag_Query(kFlagCT04HomelessBodyFound)
+ && Game_Flag_Query(kFlagCT04HomelessBodyInDumpster)
+ ) {
arr[i++] = 4;
}
Global_Variable_Set(kVariableNextTvNews, arr[Random_Query(0, i - 1)]);
diff --git a/engines/bladerunner/script/scene/ma04.cpp b/engines/bladerunner/script/scene/ma04.cpp
index 0484e69db1..6ebdae5bb1 100644
--- a/engines/bladerunner/script/scene/ma04.cpp
+++ b/engines/bladerunner/script/scene/ma04.cpp
@@ -50,7 +50,7 @@ void SceneScriptMA04::InitializeScene() {
}
} else if (Game_Flag_Query(kFlagMA02ToMA04)) {
Setup_Scene_Information(-7099.0f, 954.0f, 1866.0f, 502);
- } else if (Game_Flag_Query(kFlagMcCoySleeping)) {
+ } else if (Game_Flag_Query(kFlagMA04McCoySleeping)) {
Setup_Scene_Information(-7107.0f, 954.0f, 1742.0f, 502);
Scene_Loop_Start_Special(kSceneLoopModeLoseControl, kMA04LoopWakeup, false);
} else {
@@ -189,7 +189,7 @@ bool SceneScriptMA04::ClickedOn2DRegion(int region) {
Music_Play(2, 52, 0, 3, -1, 0, 0);
return false;
}
- if (Actor_Clue_Query(kActorClovis, kClueMcCoyRetiredZuben) && !Game_Flag_Query(kFlagPhoneMessageFromClovis)) {
+ if (Actor_Clue_Query(kActorClovis, kClueMcCoyRetiredZuben) && !Game_Flag_Query(kFlagMA04PhoneMessageFromClovis)) {
Sound_Play(123, 100, 0, 0, 50);
Overlay_Remove("MA04OVER");
Delay(500);
@@ -202,10 +202,10 @@ bool SceneScriptMA04::ClickedOn2DRegion(int region) {
}
Actor_Says(kActorMcCoy, 2445, 13);
Sound_Play(123, 100, 0, 0, 50);
- Game_Flag_Set(kFlagPhoneMessageFromClovis);
+ Game_Flag_Set(kFlagMA04PhoneMessageFromClovis);
return true;
}
- if (Actor_Clue_Query(kActorLucy, kClueMcCoyLetZubenEscape) && !Game_Flag_Query(kFlagPhoneMessageFromLucy)) {
+ if (Actor_Clue_Query(kActorLucy, kClueMcCoyLetZubenEscape) && !Game_Flag_Query(kFlagMA04PhoneMessageFromLucy)) {
Sound_Play(123, 100, 0, 0, 50);
Overlay_Remove("MA04OVER");
Delay(500);
@@ -218,7 +218,7 @@ bool SceneScriptMA04::ClickedOn2DRegion(int region) {
}
Actor_Says(kActorMcCoy, 2445, 13);
Sound_Play(123, 100, 0, 0, 50);
- Game_Flag_Set(kFlagPhoneMessageFromLucy);
+ Game_Flag_Set(kFlagMA04PhoneMessageFromLucy);
return true;
}
Actor_Says(kActorMcCoy, 2670, 13);
@@ -240,7 +240,7 @@ void SceneScriptMA04::SceneFrameAdvanced(int frame) {
} else {
Set_Fade_Density(0.0f);
}
- if (frame == 121 && (Game_Flag_Query(kFlagZubenRetired) || Game_Flag_Query(kFlagZubenSpared)) && !Game_Flag_Query(kFlagGuzzaTalkZubenRetired)) {
+ if (frame == 121 && (Game_Flag_Query(kFlagZubenRetired) || Game_Flag_Query(kFlagZubenSpared)) && !Game_Flag_Query(kFlagPS04GuzzaTalkZubenRetired)) {
Sound_Play(403, 50, 0, 0, 50);
}
}
@@ -249,20 +249,20 @@ void SceneScriptMA04::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
}
void SceneScriptMA04::PlayerWalkedIn() {
- if (Game_Flag_Query(kFlagMcCoySleeping)) {
+ if (Game_Flag_Query(kFlagMA04McCoySleeping)) {
Player_Gains_Control();
}
if (isPhoneMessageWaiting() || isPhoneRinging()) {
Overlay_Play("MA04OVER", 0, 1, 0, 0);
}
- if (Game_Flag_Query(kFlagMcCoySleeping)) {
+ if (Game_Flag_Query(kFlagMA04McCoySleeping)) {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -7139.0f, 954.0f, 1746.0f, 0, true, false, 0);
} else if (Game_Flag_Query(kFlagMA02ToMA04)) {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -7143.0f, 954.0f, 1868.0f, 0, true, false, 0);
}
Game_Flag_Reset(kFlagMA02ToMA04);
Game_Flag_Reset(kFlagMA05toMA04);
- Game_Flag_Reset(kFlagMcCoySleeping);
+ Game_Flag_Reset(kFlagMA04McCoySleeping);
if (Game_Flag_Query(kFlagChapter1Ended)) {
if (Global_Variable_Query(kVariableChapter) == 2 && !Actor_Clue_Query(kActorMcCoy, kCluePhoneCallGuzza)) {
Sound_Play(403, 100, 0, 0, 50);
@@ -286,8 +286,8 @@ void SceneScriptMA04::PlayerWalkedIn() {
Actor_Clue_Acquire(kActorMcCoy, kCluePhoneCallGuzza, false, kActorGuzza);
Spinner_Set_Selectable_Destination_Flag(kSpinnerDestinationTyrellBuilding, true);
Game_Flag_Set(kFlagRC01PoliceDone);
- if (!Game_Flag_Query(kFlagChromeDebrisTaken)) {
- Game_Flag_Set(kFlagChromeDebrisTaken);
+ if (!Game_Flag_Query(kFlagRC01ChromeDebrisTaken)) {
+ Game_Flag_Set(kFlagRC01ChromeDebrisTaken);
Item_Remove_From_World(kItemChromeDebris);
}
Actor_Set_Goal_Number(kActorOfficerLeary, 99);
@@ -338,8 +338,8 @@ bool SceneScriptMA04::isPhoneRinging() {
}
bool SceneScriptMA04::isPhoneMessageWaiting() {
- return (Actor_Clue_Query(kActorClovis, kClueMcCoyRetiredZuben) && !Game_Flag_Query(kFlagPhoneMessageFromClovis))
- || (Actor_Clue_Query(kActorLucy, kClueMcCoyLetZubenEscape) && !Game_Flag_Query(kFlagPhoneMessageFromLucy));
+ return (Actor_Clue_Query(kActorClovis, kClueMcCoyRetiredZuben) && !Game_Flag_Query(kFlagMA04PhoneMessageFromClovis))
+ || (Actor_Clue_Query(kActorLucy, kClueMcCoyLetZubenEscape) && !Game_Flag_Query(kFlagMA04PhoneMessageFromLucy));
}
void SceneScriptMA04::phoneCallWithDektora() {
@@ -562,7 +562,7 @@ void SceneScriptMA04::sleep() {
Overlay_Remove("MA04OVER");
}
Player_Loses_Control();
- Game_Flag_Set(kFlagMcCoySleeping);
+ Game_Flag_Set(kFlagMA04McCoySleeping);
if ((Game_Flag_Query(kFlagZubenRetired) || Game_Flag_Query(kFlagZubenSpared)) && Global_Variable_Query(kVariableChapter) == 1) {
if (Actor_Query_Goal_Number(kActorZuben) == kGoalZubenDead) {
Actor_Put_In_Set(kActorZuben, kSetFreeSlotA);
diff --git a/engines/bladerunner/script/scene/ma07.cpp b/engines/bladerunner/script/scene/ma07.cpp
index b7b91d9c54..70169189cf 100644
--- a/engines/bladerunner/script/scene/ma07.cpp
+++ b/engines/bladerunner/script/scene/ma07.cpp
@@ -25,22 +25,24 @@
namespace BladeRunner {
void SceneScriptMA07::InitializeScene() {
- if (Game_Flag_Query(356)) {
- Setup_Scene_Information(6.75f, -172.43f, 356.0f, 997);
- Game_Flag_Reset(356);
+ if (Game_Flag_Query(kFlagUG19toMA07)) {
+ Setup_Scene_Information( 6.75f, -172.43f, 356.0f, 997);
+ Game_Flag_Reset(kFlagUG19toMA07);
Game_Flag_Set(665);
- } else if (Game_Flag_Query(673)) {
- Setup_Scene_Information(-312.0f, -162.8f, 180.0f, 0);
+ } else if (Game_Flag_Query(kFlagPS14toMA07)) {
+ Setup_Scene_Information(-312.0f, -162.8f, 180.0f, 0);
} else {
- Setup_Scene_Information(104.0f, -162.16f, 56.0f, 519);
+ Setup_Scene_Information( 104.0f, -162.16f, 56.0f, 519);
}
+
Ambient_Sounds_Add_Looping_Sound(381, 100, 1, 1);
- Ambient_Sounds_Add_Sound(374, 100, 300, 16, 25, 0, 0, -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(374, 100, 300, 16, 25, 0, 0, -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);
+
if (Global_Variable_Query(kVariableChapter) > 1) {
Scene_Exit_Add_2D_Exit(1, 0, 200, 50, 479, 3);
}
@@ -72,8 +74,10 @@ bool SceneScriptMA07::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptMA07::ClickedOnExit(int exitId) {
if (exitId == 0) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 104.0f, -162.0f, 56.0f, 12, 1, false, 0)) {
- if (Global_Variable_Query(kVariableChapter) == 4 && Game_Flag_Query(671)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 104.0f, -162.0f, 56.0f, 12, true, false, 0)) {
+ if (Global_Variable_Query(kVariableChapter) == 4
+ && Game_Flag_Query(671)
+ ) {
Actor_Set_Goal_Number(kActorMcCoy, 400);
} else {
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
@@ -84,22 +88,24 @@ bool SceneScriptMA07::ClickedOnExit(int exitId) {
}
return true;
}
+
if (exitId == 1) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -400.0f, -162.8f, 185.08f, 0, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -400.0f, -162.8f, 185.08f, 0, true, false, 0)) {
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(672);
- Game_Flag_Reset(kFlagMcCoyAtMAxx);
- Game_Flag_Set(kFlagMcCoyAtPSxx);
+ Game_Flag_Set(kFlagMA07toPS14);
+ Game_Flag_Reset(kFlagMcCoyInMcCoyApartment);
+ Game_Flag_Set(kFlagMcCoyInPoliceStation);
Set_Enter(kSetPS14, kScenePS14);
}
return true;
}
+
if (exitId == 2) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 8.0f, -172.43f, 356.0f, 0, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 8.0f, -172.43f, 356.0f, 0, true, false, 0)) {
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(357);
+ Game_Flag_Set(kFlagMA07toUG19);
Set_Enter(kSetUG19, kSceneUG19);
}
return true;
@@ -121,9 +127,9 @@ void SceneScriptMA07::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
}
void SceneScriptMA07::PlayerWalkedIn() {
- if (Game_Flag_Query(673)) {
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -268.0f, -162.8f, 188.0f, 0, 0, false, 0);
- Game_Flag_Reset(673);
+ if (Game_Flag_Query(kFlagPS14toMA07)) {
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -268.0f, -162.8f, 188.0f, 0, false, false, 0);
+ Game_Flag_Reset(kFlagPS14toMA07);
}
if (Actor_Query_Goal_Number(kActorRachael) == 300) {
Actor_Set_Goal_Number(kActorRachael, 305);
@@ -131,7 +137,10 @@ void SceneScriptMA07::PlayerWalkedIn() {
if (Game_Flag_Query(kFlagMA06toMA07)) {
Game_Flag_Reset(kFlagMA06toMA07);
}
- if (!Game_Flag_Query(648) && Game_Flag_Query(671) && Global_Variable_Query(kVariableChapter) == 4) {
+ if (!Game_Flag_Query(648)
+ && Game_Flag_Query(671)
+ && Global_Variable_Query(kVariableChapter) == 4
+ ) {
Scene_Exits_Disable();
Actor_Set_Goal_Number(kActorGaff, 300);
}
diff --git a/engines/bladerunner/script/scene/nr01.cpp b/engines/bladerunner/script/scene/nr01.cpp
index 9708d186c5..8823c12884 100644
--- a/engines/bladerunner/script/scene/nr01.cpp
+++ b/engines/bladerunner/script/scene/nr01.cpp
@@ -28,20 +28,21 @@ void SceneScriptNR01::InitializeScene() {
if (Game_Flag_Query(617)) {
Setup_Scene_Information(-153.86f, 23.88f, -570.21f, 402);
} else if (Game_Flag_Query(632)) {
- Setup_Scene_Information(-416.0f, 31.93f, -841.0f, 200);
+ Setup_Scene_Information( -416.0f, 31.93f, -841.0f, 200);
Actor_Set_Invisible(kActorMcCoy, true);
Preload(167);
} else if (Game_Flag_Query(534)) {
- Setup_Scene_Information(-416.0f, 31.93f, -841.0f, 200);
- } else if (Game_Flag_Query(342)) {
- Setup_Scene_Information(-270.0f, 4.93f, -1096.0f, 500);
+ Setup_Scene_Information( -416.0f, 31.93f, -841.0f, 200);
+ } else if (Game_Flag_Query(kFlagUG06toNR01)) {
+ Setup_Scene_Information( -270.0f, 4.93f, -1096.0f, 500);
} else if (Game_Flag_Query(533)) {
- Setup_Scene_Information(312.0f, 31.66f, -901.0f, 700);
+ Setup_Scene_Information( 312.0f, 31.66f, -901.0f, 700);
} else if (Game_Flag_Query(545)) {
- Setup_Scene_Information(-170.0f, 24.0f, -574.0f, 768);
+ Setup_Scene_Information( -170.0f, 24.0f, -574.0f, 768);
} else {
- Setup_Scene_Information(76.0f, 23.88f, -109.0f, 966);
+ Setup_Scene_Information( 76.0f, 23.88f, -109.0f, 966);
}
+
Scene_Exit_Add_2D_Exit(0, 31, 270, 97, 373, 3);
if (Global_Variable_Query(kVariableChapter) > 3) {
Scene_Exit_Add_2D_Exit(1, 201, 320, 276, 357, 2);
@@ -50,32 +51,40 @@ void SceneScriptNR01::InitializeScene() {
if (Game_Flag_Query(kFlagSpinnerAtNR01)) {
Scene_Exit_Add_2D_Exit(3, 320, 445, 639, 479, 2);
}
+
Ambient_Sounds_Add_Looping_Sound(54, 50, 0, 1);
Ambient_Sounds_Add_Looping_Sound(362, 22, 55, 1);
- Ambient_Sounds_Add_Sound(361, 10, 10, 20, 20, -70, -70, -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);
- 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(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(68, 10, 80, 16, 25, 0, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(69, 10, 80, 16, 25, 0, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(375, 10, 80, 33, 33, 0, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(376, 10, 80, 33, 33, 0, 0, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(377, 10, 80, 33, 33, 0, 0, -101, -101, 0, 0);
- if (Game_Flag_Query(643) && Actor_Query_Goal_Number(kActorSteele) == 230) {
+ Ambient_Sounds_Add_Sound(361, 10, 10, 20, 20, -70, -70, -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);
+ 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(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( 68, 10, 80, 16, 25, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 69, 10, 80, 16, 25, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(375, 10, 80, 33, 33, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(376, 10, 80, 33, 33, 0, 0, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(377, 10, 80, 33, 33, 0, 0, -101, -101, 0, 0);
+
+ if (Game_Flag_Query(643)
+ && Actor_Query_Goal_Number(kActorSteele) == 230
+ ) {
Game_Flag_Reset(kFlagSpinnerAtNR01);
Game_Flag_Reset(kFlagSpinnerAtHF01);
}
- if (Game_Flag_Query(kFlagSpinnerAtNR01) && !Game_Flag_Query(kFlagArrivedFromSpinner1)) {
+ if ( Game_Flag_Query(kFlagSpinnerAtNR01)
+ && !Game_Flag_Query(kFlagArrivedFromSpinner1)
+ ) {
Scene_Loop_Start_Special(0, 0, 0);
Scene_Loop_Set_Default(1);
Game_Flag_Set(kFlagArrivedFromSpinner1);
- } else if (Game_Flag_Query(kFlagSpinnerAtNR01) && Game_Flag_Query(kFlagArrivedFromSpinner1)) {
+ } else if (Game_Flag_Query(kFlagSpinnerAtNR01)
+ && Game_Flag_Query(kFlagArrivedFromSpinner1)
+ ) {
Scene_Loop_Set_Default(1);
} else {
Scene_Loop_Set_Default(4);
@@ -127,7 +136,7 @@ bool SceneScriptNR01::ClickedOnExit(int exitId) {
Loop_Actor_Travel_Stairs(kActorMcCoy, 3, 0, kAnimationModeIdle);
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(343);
+ Game_Flag_Set(kFlagNR01toUG06);
Set_Enter(kSetUG06, kSceneUG06);
}
return true;
@@ -143,17 +152,17 @@ bool SceneScriptNR01::ClickedOnExit(int exitId) {
}
if (exitId == 3) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 108.0f, 23.88f, -93.0f, 0, true, false, 0)) {
- Game_Flag_Reset(kFlagMcCoyAtCTxx);
- Game_Flag_Reset(kFlagMcCoyAtRCxx);
- Game_Flag_Reset(kFlagMcCoyAtMAxx);
- Game_Flag_Reset(kFlagMcCoyAtPSxx);
- Game_Flag_Reset(kFlagMcCoyAtBBxx);
- Game_Flag_Reset(kFlagMcCoyAtHFxx);
- Game_Flag_Reset(kFlagMcCoyAtTBxx);
- Game_Flag_Reset(kFlagMcCoyAtNRxx);
+ Game_Flag_Reset(kFlagMcCoyInChinaTown);
+ Game_Flag_Reset(kFlagMcCoyInRunciters);
+ Game_Flag_Reset(kFlagMcCoyInMcCoyApartment);
+ Game_Flag_Reset(kFlagMcCoyInPoliceStation);
+ Game_Flag_Reset(kFlagMcCoyInBradburyBuilding);
+ Game_Flag_Reset(kFlagMcCoyInHysteriaHall);
+ Game_Flag_Reset(kFlagMcCoyInTyrellBuilding);
+ Game_Flag_Reset(kFlagMcCoyInNightclubRow);
switch (Spinner_Interface_Choose_Dest(-1, true)) {
case kSpinnerDestinationPoliceStation:
- Game_Flag_Set(kFlagMcCoyAtPSxx);
+ Game_Flag_Set(kFlagMcCoyInPoliceStation);
Game_Flag_Reset(kFlagSpinnerAtNR01);
Game_Flag_Reset(kFlagArrivedFromSpinner1);
Game_Flag_Set(kFlagSpinnerAtPS01);
@@ -161,7 +170,7 @@ bool SceneScriptNR01::ClickedOnExit(int exitId) {
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 3, true);
break;
case kSpinnerDestinationMcCoysApartment:
- Game_Flag_Set(kFlagMcCoyAtMAxx);
+ Game_Flag_Set(kFlagMcCoyInMcCoyApartment);
Game_Flag_Reset(kFlagSpinnerAtNR01);
Game_Flag_Reset(kFlagArrivedFromSpinner1);
Game_Flag_Set(kFlagSpinnerAtMA01);
@@ -169,7 +178,7 @@ bool SceneScriptNR01::ClickedOnExit(int exitId) {
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 3, true);
break;
case kSpinnerDestinationRuncitersAnimals:
- Game_Flag_Set(kFlagMcCoyAtRCxx);
+ Game_Flag_Set(kFlagMcCoyInRunciters);
Game_Flag_Reset(kFlagSpinnerAtNR01);
Game_Flag_Reset(kFlagArrivedFromSpinner1);
Game_Flag_Set(kFlagSpinnerAtRC01);
@@ -177,7 +186,7 @@ bool SceneScriptNR01::ClickedOnExit(int exitId) {
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 3, true);
break;
case kSpinnerDestinationChinatown:
- Game_Flag_Set(kFlagMcCoyAtCTxx);
+ Game_Flag_Set(kFlagMcCoyInChinaTown);
Game_Flag_Reset(kFlagSpinnerAtNR01);
Game_Flag_Reset(kFlagArrivedFromSpinner1);
Game_Flag_Set(kFlagSpinnerAtCT01);
@@ -185,7 +194,7 @@ bool SceneScriptNR01::ClickedOnExit(int exitId) {
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 3, true);
break;
case kSpinnerDestinationAnimoidRow:
- Game_Flag_Set(kFlagMcCoyAtARxx);
+ Game_Flag_Set(kFlagMcCoyInAnimoidRow);
Game_Flag_Reset(kFlagSpinnerAtNR01);
Game_Flag_Reset(kFlagArrivedFromSpinner1);
Game_Flag_Set(kFlagSpinnerAtAR01);
@@ -193,7 +202,7 @@ bool SceneScriptNR01::ClickedOnExit(int exitId) {
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 3, true);
break;
case kSpinnerDestinationTyrellBuilding:
- Game_Flag_Set(kFlagMcCoyAtTBxx);
+ Game_Flag_Set(kFlagMcCoyInTyrellBuilding);
Game_Flag_Reset(kFlagSpinnerAtNR01);
Game_Flag_Reset(kFlagArrivedFromSpinner1);
Game_Flag_Set(kFlagSpinnerAtTB02);
@@ -201,7 +210,7 @@ bool SceneScriptNR01::ClickedOnExit(int exitId) {
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 3, true);
break;
case kSpinnerDestinationDNARow:
- Game_Flag_Set(kFlagMcCoyAtDRxx);
+ Game_Flag_Set(kFlagMcCoyInDNARow);
Game_Flag_Reset(kFlagSpinnerAtNR01);
Game_Flag_Reset(kFlagArrivedFromSpinner1);
Game_Flag_Set(kFlagSpinnerAtDR01);
@@ -209,7 +218,7 @@ bool SceneScriptNR01::ClickedOnExit(int exitId) {
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 3, true);
break;
case kSpinnerDestinationBradburyBuilding:
- Game_Flag_Set(kFlagMcCoyAtBBxx);
+ Game_Flag_Set(kFlagMcCoyInBradburyBuilding);
Game_Flag_Reset(kFlagSpinnerAtNR01);
Game_Flag_Reset(kFlagArrivedFromSpinner1);
Game_Flag_Set(kFlagSpinnerAtBB01);
@@ -217,7 +226,7 @@ bool SceneScriptNR01::ClickedOnExit(int exitId) {
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 3, true);
break;
case kSpinnerDestinationHysteriaHall:
- Game_Flag_Set(kFlagMcCoyAtHFxx);
+ Game_Flag_Set(kFlagMcCoyInHysteriaHall);
Game_Flag_Reset(kFlagSpinnerAtNR01);
Game_Flag_Set(kFlagSpinnerAtHF01);
Set_Enter(kSetHF01, kSceneHF01);
@@ -225,7 +234,7 @@ bool SceneScriptNR01::ClickedOnExit(int exitId) {
break;
default:
Player_Loses_Control();
- Game_Flag_Set(kFlagMcCoyAtNRxx);
+ Game_Flag_Set(kFlagMcCoyInNightclubRow);
Game_Flag_Set(kFlagArrivedFromSpinner1);
Player_Gains_Control();
break;
@@ -308,16 +317,16 @@ void SceneScriptNR01::PlayerWalkedIn() {
return;
}
if (Game_Flag_Query(534)) {
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -380.0f, 31.73f, -841.0f, 0, 0, false, 0);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -380.0f, 31.73f, -841.0f, 0, false, false, 0);
Game_Flag_Reset(534);
} else {
- if (Game_Flag_Query(342)) {
- Loop_Actor_Travel_Stairs(kActorMcCoy, 3, 1, kAnimationModeIdle);
- Game_Flag_Reset(342);
+ if (Game_Flag_Query(kFlagUG06toNR01)) {
+ Loop_Actor_Travel_Stairs(kActorMcCoy, 3, true, kAnimationModeIdle);
+ Game_Flag_Reset(kFlagUG06toNR01);
if (Actor_Query_Goal_Number(kActorSteele) == 230) {
Actor_Face_Actor(kActorSteele, kActorMcCoy, true);
Actor_Says(kActorSteele, 1440, 13);
- Loop_Actor_Walk_To_Actor(kActorMcCoy, kActorSteele, 48, 0, true);
+ Loop_Actor_Walk_To_Actor(kActorMcCoy, kActorSteele, 48, false, true);
Actor_Says(kActorMcCoy, 3145, 13);
if (Global_Variable_Query(40) != 3) {
Actor_Says(kActorSteele, 1450, 12);
@@ -418,7 +427,12 @@ void SceneScriptNR01::PlayerWalkedIn() {
void SceneScriptNR01::PlayerWalkedOut() {
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)) {
+ if (!Game_Flag_Query(kFlagNR01toUG06)
+ && !Game_Flag_Query(532)
+ && !Game_Flag_Query(535)
+ && !Game_Flag_Query(632)
+ && !Game_Flag_Query(722)
+ ) {
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Outtake_Play(kOuttakeAway1, true, -1);
@@ -428,7 +442,11 @@ void SceneScriptNR01::PlayerWalkedOut() {
}
void SceneScriptNR01::DialogueQueueFlushed(int a1) {
- if (Actor_Query_Goal_Number(kActorSteele) == 251 && Actor_Query_Goal_Number(kActorGordo) != 299 && Actor_Query_Goal_Number(kActorGordo) != 254 && Actor_Query_Goal_Number(kActorGordo) != 255) {
+ if (Actor_Query_Goal_Number(kActorSteele) == 251
+ && Actor_Query_Goal_Number(kActorGordo) != 299
+ && Actor_Query_Goal_Number(kActorGordo) != 254
+ && Actor_Query_Goal_Number(kActorGordo) != 255
+ ) {
Actor_Set_Goal_Number(kActorSteele, 252);
}
}
diff --git a/engines/bladerunner/script/scene/nr04.cpp b/engines/bladerunner/script/scene/nr04.cpp
index d6332fe099..05250e82fe 100644
--- a/engines/bladerunner/script/scene/nr04.cpp
+++ b/engines/bladerunner/script/scene/nr04.cpp
@@ -152,7 +152,7 @@ bool SceneScriptNR04::ClickedOn2DRegion(int region) {
if (Game_Flag_Query(606) == 1) {
return true;
}
- if (Game_Flag_Query(374)) {
+ if (Game_Flag_Query(kFlagAR02DektoraBoughtScorpions)) {
Player_Loses_Control();
Actor_Voice_Over(4180, kActorVoiceOver);
Actor_Change_Animation_Mode(kActorMcCoy, 48);
@@ -260,7 +260,7 @@ void SceneScriptNR04::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
void SceneScriptNR04::PlayerWalkedIn() {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, 53.0f, 0.0f, -26.0f, 0, 0, false, 0);
- if (Game_Flag_Query(374)) {
+ if (Game_Flag_Query(kFlagAR02DektoraBoughtScorpions)) {
Overlay_Play("nr04over", 0, 1, 0, 0);
Delay(4000);
Overlay_Remove("nr04over");
diff --git a/engines/bladerunner/script/scene/ps01.cpp b/engines/bladerunner/script/scene/ps01.cpp
index 34c7583381..bafa4a5570 100644
--- a/engines/bladerunner/script/scene/ps01.cpp
+++ b/engines/bladerunner/script/scene/ps01.cpp
@@ -87,74 +87,74 @@ bool SceneScriptPS01::ClickedOnExit(int exitId) {
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 1877.9f, 16592.0f, -2975.0f, 0, true, false, 0)) {
Actor_Set_At_XYZ(kActorMcCoy, 1872.0f, 16592.0f, -2975.0f, 870);
- Game_Flag_Reset(kFlagMcCoyAtCTxx);
- Game_Flag_Reset(kFlagMcCoyAtRCxx);
- Game_Flag_Reset(kFlagMcCoyAtMAxx);
- Game_Flag_Reset(kFlagMcCoyAtPSxx);
- Game_Flag_Reset(kFlagMcCoyAtARxx);
- Game_Flag_Reset(kFlagMcCoyAtTBxx);
- Game_Flag_Reset(kFlagMcCoyAtDRxx);
- Game_Flag_Reset(kFlagMcCoyAtBBxx);
+ Game_Flag_Reset(kFlagMcCoyInChinaTown);
+ Game_Flag_Reset(kFlagMcCoyInRunciters);
+ Game_Flag_Reset(kFlagMcCoyInMcCoyApartment);
+ Game_Flag_Reset(kFlagMcCoyInPoliceStation);
+ Game_Flag_Reset(kFlagMcCoyInAnimoidRow);
+ Game_Flag_Reset(kFlagMcCoyInTyrellBuilding);
+ Game_Flag_Reset(kFlagMcCoyInDNARow);
+ Game_Flag_Reset(kFlagMcCoyInBradburyBuilding);
int spinnerDest = Spinner_Interface_Choose_Dest(3, true);
switch (spinnerDest) {
case kSpinnerDestinationMcCoysApartment:
- Game_Flag_Set(kFlagMcCoyAtMAxx);
+ Game_Flag_Set(kFlagMcCoyInMcCoyApartment);
Game_Flag_Reset(kFlagSpinnerAtPS01);
Game_Flag_Set(kFlagSpinnerAtMA01);
Set_Enter(kSetMA01, kSceneMA01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 4, true);
break;
case kSpinnerDestinationRuncitersAnimals:
- Game_Flag_Set(kFlagMcCoyAtRCxx);
+ Game_Flag_Set(kFlagMcCoyInRunciters);
Game_Flag_Reset(kFlagSpinnerAtPS01);
Game_Flag_Set(kFlagSpinnerAtRC01);
Set_Enter(kSetRC01, kSceneRC01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 4, true);
break;
case kSpinnerDestinationChinatown:
- Game_Flag_Set(kFlagMcCoyAtCTxx);
+ Game_Flag_Set(kFlagMcCoyInChinaTown);
Game_Flag_Reset(kFlagSpinnerAtPS01);
Game_Flag_Set(kFlagSpinnerAtCT01);
Set_Enter(kSetCT01_CT12, kSceneCT01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 4, true);
break;
case kSpinnerDestinationAnimoidRow:
- Game_Flag_Set(kFlagMcCoyAtARxx);
+ Game_Flag_Set(kFlagMcCoyInAnimoidRow);
Game_Flag_Reset(kFlagSpinnerAtPS01);
Game_Flag_Set(kFlagSpinnerAtAR01);
Set_Enter(kSetAR01_AR02, kSceneAR01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 4, true);
break;
case kSpinnerDestinationTyrellBuilding:
- Game_Flag_Set(kFlagMcCoyAtTBxx);
+ Game_Flag_Set(kFlagMcCoyInTyrellBuilding);
Game_Flag_Reset(kFlagSpinnerAtPS01);
Game_Flag_Set(kFlagSpinnerAtTB02);
Set_Enter(kSetTB02_TB03, kSceneTB02);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 4, true);
break;
case kSpinnerDestinationDNARow:
- Game_Flag_Set(kFlagMcCoyAtDRxx);
+ Game_Flag_Set(kFlagMcCoyInDNARow);
Game_Flag_Reset(kFlagSpinnerAtPS01);
Game_Flag_Set(kFlagSpinnerAtDR01);
Set_Enter(kSetDR01_DR02_DR04, kSceneDR01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 4, true);
break;
case kSpinnerDestinationBradburyBuilding:
- Game_Flag_Set(kFlagMcCoyAtBBxx);
+ Game_Flag_Set(kFlagMcCoyInBradburyBuilding);
Game_Flag_Reset(kFlagSpinnerAtPS01);
Game_Flag_Set(kFlagSpinnerAtBB01);
Set_Enter(kSetBB01, kSceneBB01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 4, true);
break;
case kSpinnerDestinationNightclubRow:
- Game_Flag_Set(kFlagMcCoyAtNRxx);
+ Game_Flag_Set(kFlagMcCoyInNightclubRow);
Game_Flag_Reset(kFlagSpinnerAtPS01);
Game_Flag_Set(kFlagSpinnerAtNR01);
Set_Enter(kSetNR01, kSceneNR01);
Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 4, true);
break;
case kSpinnerDestinationHysteriaHall:
- Game_Flag_Set(kFlagMcCoyAtHFxx);
+ Game_Flag_Set(kFlagMcCoyInHysteriaHall);
Game_Flag_Reset(kFlagSpinnerAtPS01);
Game_Flag_Set(kFlagSpinnerAtHF01);
Set_Enter(kSetHF01, kSceneHF01);
@@ -162,7 +162,7 @@ bool SceneScriptPS01::ClickedOnExit(int exitId) {
break;
default:
Actor_Face_Heading(kActorMcCoy, 870, false);
- Game_Flag_Set(kFlagMcCoyAtPSxx);
+ Game_Flag_Set(kFlagMcCoyInPoliceStation);
Game_Flag_Set(kFlagArrivedFromSpinner2);
Player_Loses_Control();
Scene_Loop_Start_Special(2, 3, 1);
diff --git a/engines/bladerunner/script/scene/ps04.cpp b/engines/bladerunner/script/scene/ps04.cpp
index 510d596d83..bab6ce5784 100644
--- a/engines/bladerunner/script/scene/ps04.cpp
+++ b/engines/bladerunner/script/scene/ps04.cpp
@@ -152,7 +152,7 @@ void SceneScriptPS04::dialogueWithGuzza() {
DM_Add_To_List_Never_Repeat_Once_Selected(150, 7, 6, 5); // HOLDEN'S BADGE
}
}
- if (Game_Flag_Query(kFlagMcCoyKilledHomeless)) {
+ if (Game_Flag_Query(kFlagCT04HomelessKilledByMcCoy)) {
DM_Add_To_List_Never_Repeat_Once_Selected(140, 3, -1, -1); // CONFESS TO SHOOTING
}
DM_Add_To_List(130, 1, 1, 1); // REPORT IN
@@ -192,7 +192,7 @@ void SceneScriptPS04::dialogueWithGuzza() {
case 130: // REPORT IN
if ( Game_Flag_Query(kFlagZubenRetired)
- && !Game_Flag_Query(kFlagGuzzaTalkZubenRetired)
+ && !Game_Flag_Query(kFlagPS04GuzzaTalkZubenRetired)
) {
Actor_Says(kActorMcCoy, 3920, 13);
Actor_Says(kActorGuzza, 140, 30);
@@ -220,13 +220,13 @@ void SceneScriptPS04::dialogueWithGuzza() {
Actor_Says(kActorGuzza, 250, 34);
Actor_Says(kActorGuzza, 260, 33);
Actor_Says(kActorGuzza, 270, 32);
- Game_Flag_Set(kFlagGuzzaTalkZubenRetired);
+ Game_Flag_Set(kFlagPS04GuzzaTalkZubenRetired);
if (Query_Difficulty_Level() != 0) {
Global_Variable_Increment(kVariableChinyen, 200);
}
Game_Flag_Set(kFlagZubenBountyPaid);
} else if ( Game_Flag_Query(kFlagZubenSpared)
- && !Game_Flag_Query(kFlagGuzzaTalkZubenEscaped)
+ && !Game_Flag_Query(kFlagPS04GuzzaTalkZubenEscaped)
) {
Actor_Says(kActorMcCoy, 3955, 13);
Actor_Says(kActorGuzza, 280, 30);
@@ -236,14 +236,14 @@ void SceneScriptPS04::dialogueWithGuzza() {
Actor_Says(kActorMcCoy, 3965, 13);
Actor_Says(kActorGuzza, 310, 33);
Actor_Says(kActorGuzza, 320, 34);
- Game_Flag_Set(kFlagGuzzaTalkZubenEscaped);
+ Game_Flag_Set(kFlagPS04GuzzaTalkZubenEscaped);
} else if (
( Actor_Clue_Query(kActorMcCoy, kClueChopstickWrapper)
|| Actor_Clue_Query(kActorMcCoy, kClueSushiMenu)
)
&& Actor_Clue_Query(kActorMcCoy, kClueRunciterInterviewA)
&& Actor_Query_Friendliness_To_Other(kActorGuzza, kActorMcCoy) < 50
- && !Game_Flag_Query(kFlagGuzzaTalk1)
+ && !Game_Flag_Query(kFlagPS04GuzzaTalk1)
) {
Actor_Says(kActorMcCoy, 3970, 18);
Actor_Says(kActorGuzza, 330, 30);
@@ -258,18 +258,18 @@ void SceneScriptPS04::dialogueWithGuzza() {
Actor_Says(kActorMcCoy, 3985, 18);
Actor_Says(kActorGuzza, 400, 34);
Actor_Says(kActorGuzza, 410, 31);
- Game_Flag_Set(kFlagGuzzaTalk1);
+ Game_Flag_Set(kFlagPS04GuzzaTalk1);
} else if (
( Actor_Clue_Query(kActorMcCoy, kClueChopstickWrapper)
|| Actor_Clue_Query(kActorMcCoy, kClueSushiMenu)
)
&& Actor_Clue_Query(kActorMcCoy, kClueRunciterInterviewA)
- && !Game_Flag_Query(kFlagGuzzaTalk2)
+ && !Game_Flag_Query(kFlagPS04GuzzaTalk2)
) {
Actor_Says(kActorMcCoy, 3920, 13);
Actor_Says(kActorGuzza, 570, 32);
Actor_Says(kActorMcCoy, 4070, 13);
- Game_Flag_Set(kFlagGuzzaTalk2);
+ Game_Flag_Set(kFlagPS04GuzzaTalk2);
} else if (Actor_Query_Friendliness_To_Other(kActorGuzza, kActorMcCoy) >= 50) {
Actor_Says(kActorMcCoy, 4020, 13);
Actor_Says(kActorGuzza, 580, 34);
diff --git a/engines/bladerunner/script/scene/ps05.cpp b/engines/bladerunner/script/scene/ps05.cpp
index 91fda95aa2..e3261c44f3 100644
--- a/engines/bladerunner/script/scene/ps05.cpp
+++ b/engines/bladerunner/script/scene/ps05.cpp
@@ -174,7 +174,7 @@ void SceneScriptPS05::selectNextTvNews() {
if (Global_Variable_Query(kVariableChapter) >= 2 && Global_Variable_Query(kVariableChapter) <= 4) {
arr[i++] = 3;
}
- if (Game_Flag_Query(kFlagHomelessBodyFound) && Game_Flag_Query(kFlagHomelessBodyInDumpster)) {
+ if (Game_Flag_Query(kFlagCT04HomelessBodyFound) && Game_Flag_Query(kFlagCT04HomelessBodyInDumpster)) {
arr[i++] = 4;
}
Global_Variable_Set(kVariableNextTvNews, arr[Random_Query(0, i - 1)]);
diff --git a/engines/bladerunner/script/scene/ps07.cpp b/engines/bladerunner/script/scene/ps07.cpp
index 4d15adbc54..86c8eaa5dc 100644
--- a/engines/bladerunner/script/scene/ps07.cpp
+++ b/engines/bladerunner/script/scene/ps07.cpp
@@ -69,11 +69,11 @@ bool SceneScriptPS07::ClickedOnActor(int actorId) {
Actor_Face_Actor(kActorMcCoy, kActorKlein, true);
Actor_Set_Goal_Number(kActorKlein, 3);
- if (!Game_Flag_Query(kFlagKleinTalkClues)) {
+ if (!Game_Flag_Query(kFlagPS07KleinTalkClues)) {
Actor_Says(kActorMcCoy, 4115, 13);
}
- if (!Game_Flag_Query(kFlagKleinTalkClues)
+ if (!Game_Flag_Query(kFlagPS07KleinTalkClues)
&& (Game_Flag_Query(kFlagMcCoyHasShellCasings)
|| Game_Flag_Query(kFlagMcCoyHasOfficersStatement)
|| Game_Flag_Query(kFlagMcCoyHasPaintTransfer)
@@ -82,17 +82,17 @@ bool SceneScriptPS07::ClickedOnActor(int actorId) {
) {
Actor_Face_Actor(kActorKlein, kActorMcCoy, true);
Actor_Says(kActorKlein, 30, 12);
- Game_Flag_Set(kFlagKleinTalkClues);
+ Game_Flag_Set(kFlagPS07KleinTalkClues);
} else {
- if (Game_Flag_Query(kFlagKleinTalkClues)) {
+ if (Game_Flag_Query(kFlagPS07KleinTalkClues)) {
Actor_Says(kActorMcCoy, 4130, 18);
}
}
if ( Game_Flag_Query(kFlagMcCoyHasShellCasings)
- && !Game_Flag_Query(kFlagKleinTalkShellCasings)
+ && !Game_Flag_Query(kFlagPS07KleinTalkShellCasings)
) {
- Game_Flag_Set(kFlagKleinTalkShellCasings);
+ Game_Flag_Set(kFlagPS07KleinTalkShellCasings);
Actor_Clue_Acquire(kActorMcCoy, kClueLabShellCasings, false, kActorKlein);
Actor_Says(kActorKlein, 50, 16);
Actor_Says(kActorMcCoy, 4135, 13);
@@ -106,9 +106,9 @@ bool SceneScriptPS07::ClickedOnActor(int actorId) {
}
if ( Game_Flag_Query(kFlagMcCoyHasOfficersStatement)
- && !Game_Flag_Query(kFlagKleinTalkOfficersStatement)
+ && !Game_Flag_Query(kFlagPS07KleinTalkOfficersStatement)
) {
- Game_Flag_Set(kFlagKleinTalkOfficersStatement);
+ Game_Flag_Set(kFlagPS07KleinTalkOfficersStatement);
Actor_Clue_Acquire(kActorMcCoy, kClueLabCorpses, false, kActorKlein);
Actor_Says(kActorKlein, 100, 13);
Actor_Says(kActorMcCoy, 4145, 13);
@@ -129,9 +129,9 @@ bool SceneScriptPS07::ClickedOnActor(int actorId) {
}
if ( Game_Flag_Query(kFlagMcCoyHasPaintTransfer)
- && !Game_Flag_Query(kFlagKleinTalkPaintTransfer)
+ && !Game_Flag_Query(kFlagPS07KleinTalkPaintTransfer)
) {
- Game_Flag_Set(kFlagKleinTalkPaintTransfer);
+ Game_Flag_Set(kFlagPS07KleinTalkPaintTransfer);
Actor_Clue_Acquire(kActorMcCoy, kClueLabPaintTransfer, false, kActorKlein);
Actor_Says(kActorKlein, 170, 14);
Actor_Says(kActorMcCoy, 4180, 13);
@@ -146,9 +146,9 @@ bool SceneScriptPS07::ClickedOnActor(int actorId) {
}
if ( Game_Flag_Query(kFlagMcCoyHasChromeDebris)
- && !Game_Flag_Query(kFlagKleinTalkChromeDebris)
+ && !Game_Flag_Query(kFlagPS07KleinTalkChromeDebris)
) {
- Game_Flag_Set(kFlagKleinTalkChromeDebris);
+ Game_Flag_Set(kFlagPS07KleinTalkChromeDebris);
Actor_Says(kActorKlein, 220, 12);
Actor_Says(kActorMcCoy, 4190, 13);
Actor_Says(kActorKlein, 230, 14);
@@ -194,7 +194,7 @@ void SceneScriptPS07::PlayerWalkedIn() {
}
void SceneScriptPS07::PlayerWalkedOut() {
- if (!Game_Flag_Query(kFlagKleinInsulted) && Global_Variable_Query(kVariableChapter) == 1) {
+ if (!Game_Flag_Query(kFlagPS07KleinInsulted) && Global_Variable_Query(kVariableChapter) == 1) {
Actor_Set_Goal_Number(kActorKlein, 0);
}
}
diff --git a/engines/bladerunner/script/scene/ps14.cpp b/engines/bladerunner/script/scene/ps14.cpp
index 2d1bb42816..44b57cbc5e 100644
--- a/engines/bladerunner/script/scene/ps14.cpp
+++ b/engines/bladerunner/script/scene/ps14.cpp
@@ -29,17 +29,19 @@ void SceneScriptPS14::InitializeScene() {
Setup_Scene_Information(-1119.61f, 508.14f, -1208.22f, 315);
Game_Flag_Reset(kFlagPS03toPS14);
} else {
- Setup_Scene_Information(-785.45f, 508.14f, -1652.0f, 315);
+ Setup_Scene_Information( -785.45f, 508.14f, -1652.0f, 315);
}
- Scene_Exit_Add_2D_Exit(0, 610, 0, 639, 479, 1);
- Scene_Exit_Add_2D_Exit(1, 46, 51, 125, 192, 0);
+
+ Scene_Exit_Add_2D_Exit(0, 610, 0, 639, 479, 1);
+ Scene_Exit_Add_2D_Exit(1, 46, 51, 125, 192, 0);
+
Ambient_Sounds_Add_Looping_Sound(381, 100, 1, 1);
- Ambient_Sounds_Add_Sound(374, 100, 300, 16, 25, 0, 0, -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(374, 100, 300, 16, 25, 0, 0, -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);
}
void SceneScriptPS14::SceneLoaded() {
@@ -69,8 +71,10 @@ bool SceneScriptPS14::ClickedOnExit(int exitId) {
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -2101.0f, 508.14f, -1361.0f, 0, 1, false, 0)) {
Actor_Face_Heading(kActorMcCoy, 819, false);
- Loop_Actor_Travel_Stairs(kActorMcCoy, 3, 1, kAnimationModeIdle);
- if (Global_Variable_Query(kVariableChapter) == 4 && Game_Flag_Query(671)) {
+ Loop_Actor_Travel_Stairs(kActorMcCoy, 3, true, kAnimationModeIdle);
+ if (Global_Variable_Query(kVariableChapter) == 4
+ && Game_Flag_Query(671)
+ ) {
if (Actor_Clue_Query(kActorMcCoy, kClueBriefcase)) {
Game_Flag_Set(666);
Actor_Set_Goal_Number(kActorMcCoy, 400);
@@ -88,11 +92,12 @@ bool SceneScriptPS14::ClickedOnExit(int exitId) {
}
return true;
}
+
if (exitId == 0) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -785.45f, 508.14f, -1652.0f, 0, 1, false, 0)) {
- Game_Flag_Set(673);
- Game_Flag_Reset(kFlagMcCoyAtPSxx);
- Game_Flag_Set(kFlagMcCoyAtMAxx);
+ Game_Flag_Set(kFlagPS14toMA07);
+ Game_Flag_Reset(kFlagMcCoyInPoliceStation);
+ Game_Flag_Set(kFlagMcCoyInMcCoyApartment);
Set_Enter(kSetMA07, kSceneMA07);
}
return true;
@@ -111,9 +116,9 @@ void SceneScriptPS14::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
}
void SceneScriptPS14::PlayerWalkedIn() {
- if (Game_Flag_Query(672)) {
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -801.45f, 508.14f, -1596.68f, 0, 0, false, 0);
- Game_Flag_Reset(672);
+ if (Game_Flag_Query(kFlagMA07toPS14)) {
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -801.45f, 508.14f, -1596.68f, 0, false, false, 0);
+ Game_Flag_Reset(kFlagMA07toPS14);
}
//return false;
}
diff --git a/engines/bladerunner/script/scene/rc01.cpp b/engines/bladerunner/script/scene/rc01.cpp
index 03df5b061a..9467f16401 100644
--- a/engines/bladerunner/script/scene/rc01.cpp
+++ b/engines/bladerunner/script/scene/rc01.cpp
@@ -227,7 +227,7 @@ void SceneScriptRC01::SceneLoaded() {
Preload(589);
}
- if (!Game_Flag_Query(kFlagChromeDebrisTaken)) {
+ if (!Game_Flag_Query(kFlagRC01ChromeDebrisTaken)) {
Item_Add_To_World(kItemChromeDebris, 938, kSetRC01, -148.60f, -0.30f, 225.15f, 256, 24, 24, false, true, false, true);
}
@@ -314,15 +314,15 @@ bool SceneScriptRC01::ClickedOnActor(int actorId) {
if (Actor_Query_Goal_Number(kActorOfficerLeary) == kGoalOfficerLearyRC01WalkToCrowd) {
Actor_Set_Goal_Number(kActorOfficerLeary, kGoalOfficerLearyDefault);
}
- if (Game_Flag_Query(kFlagGotOfficersStatement)) {
+ if (Game_Flag_Query(kFlagRC01GotOfficersStatement)) {
Actor_Says(kActorMcCoy, 4535, 13);
- Game_Flag_Set(KFlagMcCoyAndOfficerLearyTalking);
+ Game_Flag_Set(kFlagRC01McCoyAndOfficerLearyTalking);
if (Actor_Clue_Query(kActorOfficerLeary, kClueCrowdInterviewA) && !Actor_Clue_Query(kActorMcCoy, kClueCrowdInterviewA)) {
Actor_Face_Object(kActorOfficerLeary, "70_1", true);
Actor_Says(kActorOfficerLeary, 100, 15);
Actor_Face_Actor(kActorOfficerLeary, kActorMcCoy, true);
Actor_Clue_Acquire(kActorMcCoy, kClueCrowdInterviewA, true, kActorOfficerLeary);
- Game_Flag_Reset(KFlagMcCoyAndOfficerLearyTalking);
+ Game_Flag_Reset(kFlagRC01McCoyAndOfficerLearyTalking);
} else if (Actor_Clue_Query(kActorOfficerLeary, kClueCrowdInterviewB) && !Actor_Clue_Query(kActorMcCoy, kClueCrowdInterviewB)) {
Actor_Face_Object(kActorOfficerLeary, "70_5", true);
Actor_Says(kActorOfficerLeary, 120, 19);
@@ -330,24 +330,24 @@ bool SceneScriptRC01::ClickedOnActor(int actorId) {
Actor_Says(kActorOfficerLeary, 130, 14);
I_Sez("JM: Did it have a huge, ugly piece of chrome on it?");
Actor_Clue_Acquire(kActorMcCoy, kClueCrowdInterviewB, true, kActorOfficerLeary);
- Game_Flag_Reset(KFlagMcCoyAndOfficerLearyTalking);
+ Game_Flag_Reset(kFlagRC01McCoyAndOfficerLearyTalking);
} else {
Actor_Says(kActorOfficerLeary, 90, 16);
I_Sez("JM: This officer has a talent for vivid metaphors.");
- if (!Game_Flag_Query(KFlagMcCoyAndOfficerLearyArtMetaphor)) {
+ if (!Game_Flag_Query(kFlagRC01McCoyAndOfficerLearyArtMetaphor)) {
I_Sez("DL: What is that supposed to mean? I didn't write this line...");
Actor_Says(kActorMcCoy, 4540, 16);
- Game_Flag_Set(KFlagMcCoyAndOfficerLearyArtMetaphor);
+ Game_Flag_Set(kFlagRC01McCoyAndOfficerLearyArtMetaphor);
}
- Game_Flag_Reset(KFlagMcCoyAndOfficerLearyTalking);
+ Game_Flag_Reset(kFlagRC01McCoyAndOfficerLearyTalking);
}
} else {
I_Sez("MG: Hey, leave that officer alone. Can't you see he's busy?");
I_Sez("JM: (...mmm, donuts...)");
- Game_Flag_Set(kFlagGotOfficersStatement);
+ Game_Flag_Set(kFlagRC01GotOfficersStatement);
Actor_Clue_Acquire(kActorMcCoy, kClueOfficersStatement, true, kActorOfficerLeary);
Actor_Says(kActorMcCoy, 4515, 13);
- Game_Flag_Set(KFlagMcCoyAndOfficerLearyTalking);
+ Game_Flag_Set(kFlagRC01McCoyAndOfficerLearyTalking);
Actor_Says(kActorOfficerLeary, 40, 13);
if (!Game_Flag_Query(kFlagRC02Entered)) {
Actor_Says(kActorOfficerLeary, 50, 14);
@@ -359,7 +359,7 @@ bool SceneScriptRC01::ClickedOnActor(int actorId) {
Actor_Says(kActorOfficerLeary, 80, 18);
Actor_Says(kActorMcCoy, 4530, 15);
}
- Game_Flag_Reset(KFlagMcCoyAndOfficerLearyTalking);
+ Game_Flag_Reset(kFlagRC01McCoyAndOfficerLearyTalking);
}
}
return true;
@@ -375,7 +375,7 @@ bool SceneScriptRC01::ClickedOnItem(int itemId, bool a2) {
Actor_Clue_Acquire(kActorMcCoy, kClueChromeDebris, true, -1);
Actor_Face_Actor(kActorOfficerLeary, kActorMcCoy, true);
Actor_Says(kActorOfficerLeary, 20, 12);
- Game_Flag_Set(kFlagChromeDebrisTaken);
+ Game_Flag_Set(kFlagRC01ChromeDebrisTaken);
Item_Remove_From_World(kItemChromeDebris);
Item_Pickup_Spin_Effect(938, 426, 316);
I_Sez("JM: Chrome...is that what that is?");
@@ -395,7 +395,7 @@ bool SceneScriptRC01::ClickedOnItem(int itemId, bool a2) {
void SceneScriptRC01::walkToCenter() {
Player_Loses_Control();
- Game_Flag_Set(kFlagMcCoyAtRCxx);
+ Game_Flag_Set(kFlagMcCoyInRunciters);
Actor_Set_Immunity_To_Obstacles(kActorMcCoy, true);
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -151.98f, -0.3f, 318.15f, 0, 0, false, 0);
Actor_Set_Immunity_To_Obstacles(kActorMcCoy, false);
@@ -426,6 +426,7 @@ bool SceneScriptRC01::ClickedOnExit(int exitId) {
}
return true;
}
+
if (exitId == kRC01ExitSpinner) {
if (Game_Flag_Query(kFlagDNARowAvailable)) {
Spinner_Set_Selectable_Destination_Flag(kSpinnerDestinationDNARow, true);
@@ -447,10 +448,10 @@ bool SceneScriptRC01::ClickedOnExit(int exitId) {
}
Actor_Set_Immunity_To_Obstacles(kActorMcCoy, false);
Player_Gains_Control();
- Game_Flag_Reset(kFlagMcCoyAtCTxx);
- Game_Flag_Reset(kFlagMcCoyAtRCxx);
- Game_Flag_Reset(kFlagMcCoyAtMAxx);
- Game_Flag_Reset(kFlagMcCoyAtPSxx);
+ Game_Flag_Reset(kFlagMcCoyInChinaTown);
+ Game_Flag_Reset(kFlagMcCoyInRunciters);
+ Game_Flag_Reset(kFlagMcCoyInMcCoyApartment);
+ Game_Flag_Reset(kFlagMcCoyInPoliceStation);
int spinnerDest;
if (Game_Flag_Query(kFlagRC01PoliceDone)) {
spinnerDest = Spinner_Interface_Choose_Dest(kRC01LoopDoorAnimNoCrowd, true);
@@ -460,7 +461,7 @@ bool SceneScriptRC01::ClickedOnExit(int exitId) {
switch (spinnerDest) {
case kSpinnerDestinationPoliceStation:
- Game_Flag_Set(kFlagMcCoyAtPSxx);
+ Game_Flag_Set(kFlagMcCoyInPoliceStation);
Game_Flag_Reset(kFlagSpinnerAtRC01);
Game_Flag_Set(kFlagSpinnerAtPS01);
Set_Enter(kSetPS01, kScenePS01);
@@ -471,7 +472,7 @@ bool SceneScriptRC01::ClickedOnExit(int exitId) {
}
break;
case kSpinnerDestinationMcCoysApartment:
- Game_Flag_Set(kFlagMcCoyAtMAxx);
+ Game_Flag_Set(kFlagMcCoyInMcCoyApartment);
Game_Flag_Reset(kFlagSpinnerAtRC01);
Game_Flag_Set(kFlagSpinnerAtMA01);
Set_Enter(kSetMA01, kSceneMA01);
@@ -482,7 +483,7 @@ bool SceneScriptRC01::ClickedOnExit(int exitId) {
}
break;
case kSpinnerDestinationChinatown:
- Game_Flag_Set(kFlagMcCoyAtCTxx);
+ Game_Flag_Set(kFlagMcCoyInChinaTown);
Game_Flag_Reset(kFlagSpinnerAtRC01);
Game_Flag_Set(kFlagSpinnerAtCT01);
Set_Enter(kSetCT01_CT12, kSceneCT01);
@@ -493,7 +494,7 @@ bool SceneScriptRC01::ClickedOnExit(int exitId) {
}
break;
case kSpinnerDestinationTyrellBuilding:
- Game_Flag_Set(kFlagMcCoyAtTBxx);
+ Game_Flag_Set(kFlagMcCoyInTyrellBuilding);
Game_Flag_Reset(kFlagSpinnerAtRC01);
Game_Flag_Set(kFlagSpinnerAtTB02);
Set_Enter(kSetTB02_TB03, kSceneTB02);
@@ -504,7 +505,7 @@ bool SceneScriptRC01::ClickedOnExit(int exitId) {
}
break;
case kSpinnerDestinationAnimoidRow:
- Game_Flag_Set(kFlagMcCoyAtARxx);
+ Game_Flag_Set(kFlagMcCoyInAnimoidRow);
Game_Flag_Reset(kFlagSpinnerAtRC01);
Game_Flag_Set(kFlagSpinnerAtAR01);
Set_Enter(kSetAR01_AR02, kSceneAR01);
@@ -515,7 +516,7 @@ bool SceneScriptRC01::ClickedOnExit(int exitId) {
}
break;
case kSpinnerDestinationDNARow:
- Game_Flag_Set(kFlagMcCoyAtDRxx);
+ Game_Flag_Set(kFlagMcCoyInDNARow);
Game_Flag_Reset(kFlagSpinnerAtRC01);
Game_Flag_Set(kFlagSpinnerAtDR01);
Set_Enter(kSetDR01_DR02_DR04, kSceneDR01);
@@ -526,7 +527,7 @@ bool SceneScriptRC01::ClickedOnExit(int exitId) {
}
break;
case kSpinnerDestinationBradburyBuilding:
- Game_Flag_Set(kFlagMcCoyAtBBxx);
+ Game_Flag_Set(kFlagMcCoyInBradburyBuilding);
Game_Flag_Reset(kFlagSpinnerAtRC01);
Game_Flag_Set(kFlagSpinnerAtBB01);
Set_Enter(kSetBB01, kSceneBB01);
@@ -537,7 +538,7 @@ bool SceneScriptRC01::ClickedOnExit(int exitId) {
}
break;
case kSpinnerDestinationNightclubRow:
- Game_Flag_Set(kFlagMcCoyAtNRxx);
+ Game_Flag_Set(kFlagMcCoyInNightclubRow);
Game_Flag_Reset(kFlagSpinnerAtRC01);
Game_Flag_Set(kFlagSpinnerAtNR01);
Set_Enter(kSetNR01, kSceneNR01);
@@ -548,7 +549,7 @@ bool SceneScriptRC01::ClickedOnExit(int exitId) {
}
break;
case kSpinnerDestinationHysteriaHall:
- Game_Flag_Set(kFlagMcCoyAtHFxx);
+ Game_Flag_Set(kFlagMcCoyInHysteriaHall);
Game_Flag_Reset(kFlagSpinnerAtRC01);
Game_Flag_Set(kFlagSpinnerAtHF01);
Set_Enter(kSetHF01, kSceneHF01);
@@ -565,6 +566,7 @@ bool SceneScriptRC01::ClickedOnExit(int exitId) {
}
return true;
}
+
if (exitId == kRC01ExitRC03) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -471.98f, -0.3f, 258.15f, 4, true, false, 0)) {
Game_Flag_Set(kFlagRC01toRC03);
@@ -645,11 +647,13 @@ void SceneScriptRC01::PlayerWalkedIn() {
Player_Gains_Control();
Game_Flag_Reset(kFlagRC02toRC01);
- if (Game_Flag_Query(kFlagRC02Entered) && !Game_Flag_Query(kFlagRC02FirstLeave)) {
+ if ( Game_Flag_Query(kFlagRC02Entered)
+ && !Game_Flag_Query(kFlagRC02Left)
+ ) {
Actor_Voice_Over(1910, kActorVoiceOver);
Actor_Voice_Over(1920, kActorVoiceOver);
Actor_Voice_Over(1930, kActorVoiceOver);
- Game_Flag_Set(kFlagRC02FirstLeave);
+ Game_Flag_Set(kFlagRC02Left);
}
//return true;
}
diff --git a/engines/bladerunner/script/scene/rc02.cpp b/engines/bladerunner/script/scene/rc02.cpp
index a5ad0ab591..a84fe99bcf 100644
--- a/engines/bladerunner/script/scene/rc02.cpp
+++ b/engines/bladerunner/script/scene/rc02.cpp
@@ -84,7 +84,7 @@ void SceneScriptRC02::SceneLoaded() {
if (Actor_Clue_Query(kActorMcCoy, kClueRuncitersVideo) || Global_Variable_Query(kVariableChapter) > 1) {
Unclickable_Object("SCRTY CA03");
}
- if (!Game_Flag_Query(kFlagShellCasingsTaken)) {
+ if (!Game_Flag_Query(kFlagRC02ShellCasingsTaken)) {
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);
@@ -259,7 +259,7 @@ bool SceneScriptRC02::ClickedOnActor(int actorId) {
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)) {
+ if (!Game_Flag_Query(kFlagRC02RunciterInterview)) {
Actor_Says(kActorMcCoy, 4560, 13);
Actor_Face_Actor(kActorRunciter, kActorMcCoy, true);
Actor_Says(kActorRunciter, 40, 16);
@@ -268,7 +268,7 @@ bool SceneScriptRC02::ClickedOnActor(int actorId) {
Actor_Says(kActorRunciter, 60, 14);
Actor_Says(kActorMcCoy, 4570, 18);
Actor_Says(kActorRunciter, 70, 13);
- Game_Flag_Set(kFlagRunciterInterviewA);
+ Game_Flag_Set(kFlagRC02RunciterInterview);
Actor_Clue_Acquire(kActorMcCoy, kClueRunciterInterviewA, true, kActorRunciter);
AI_Movement_Track_Unpause(kActorRunciter);
return true;
@@ -321,7 +321,7 @@ bool SceneScriptRC02::ClickedOnItem(int itemId, bool a2) {
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);
+ Game_Flag_Set(kFlagRC02ShellCasingsTaken);
Item_Remove_From_World(kItemShellCasingA);
Item_Remove_From_World(kItemShellCasingB);
Item_Remove_From_World(kItemShellCasingC);
@@ -384,7 +384,7 @@ void SceneScriptRC02::PlayerWalkedIn() {
if (Actor_Query_Which_Set_In(kActorRunciter) == kSetRC02_RC51
&& Actor_Query_Goal_Number(kActorRunciter) < kGoalRunciterAtShop
) {
- Actor_Set_Goal_Number(kActorRunciter, kGoalRunciterWalkAround);
+ Actor_Set_Goal_Number(kActorRunciter, kGoalRunciterWalkAroundRC02);
}
if ( Actor_Query_Goal_Number(kActorRunciter) == kGoalRunciterAtShop
&& !Game_Flag_Query(704)
diff --git a/engines/bladerunner/script/scene/rc03.cpp b/engines/bladerunner/script/scene/rc03.cpp
index 8668be8045..28fbe7c870 100644
--- a/engines/bladerunner/script/scene/rc03.cpp
+++ b/engines/bladerunner/script/scene/rc03.cpp
@@ -147,7 +147,7 @@ bool SceneScriptRC03::ClickedOnExit(int exitId) {
}
Game_Flag_Set(kFlagRC03toRC01);
Set_Enter(kSetRC01, kSceneRC01);
- Actor_Set_Goal_Number(kActorDektora, 100);
+ Actor_Set_Goal_Number(kActorDektora, kGoalDektoraStartWalkingAround);
}
return true;
}
@@ -157,8 +157,8 @@ bool SceneScriptRC03::ClickedOnExit(int exitId) {
Game_Flag_Set(kFlagRC04Locked);
}
Game_Flag_Set(kFlagRC03toAR02);
- Game_Flag_Reset(kFlagMcCoyAtRCxx);
- Game_Flag_Set(kFlagMcCoyAtARxx);
+ Game_Flag_Reset(kFlagMcCoyInRunciters);
+ Game_Flag_Set(kFlagMcCoyInAnimoidRow);
Set_Enter(kSetAR01_AR02, kSceneAR02);
}
return true;
@@ -166,26 +166,26 @@ bool SceneScriptRC03::ClickedOnExit(int exitId) {
if (exitId == 2) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 147.51f, -4.0f, 166.48f, 0, true, false, 0)) {
Game_Flag_Set(kFlagRC03toUG01);
- Game_Flag_Reset(kFlagMcCoyAtRCxx);
- Game_Flag_Set(kFlagMcCoyAtUGxx);
+ Game_Flag_Reset(kFlagMcCoyInRunciters);
+ Game_Flag_Set(kFlagMcCoyInUnderground);
if (Game_Flag_Query(kFlagRC04McCoyShotBob)) {
Game_Flag_Set(kFlagRC04Locked);
}
Set_Enter(kSetUG01, kSceneUG01);
- Actor_Set_Goal_Number(kActorDektora, 100);
+ Actor_Set_Goal_Number(kActorDektora, kGoalDektoraStartWalkingAround);
}
return true;
}
if (exitId == 3) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -487.0f, 1.0f, 116.0f, 0, true, false, 0)) {
Game_Flag_Set(kFlagRC03toHC04);
- Game_Flag_Reset(kFlagMcCoyAtRCxx);
- Game_Flag_Set(kFlagMcCoyAtHCxx);
+ Game_Flag_Reset(kFlagMcCoyInRunciters);
+ Game_Flag_Set(kFlagMcCoyInHawkersCircle);
if (Game_Flag_Query(kFlagRC04McCoyShotBob)) {
Game_Flag_Set(kFlagRC04Locked);
}
Set_Enter(kSetHC01_HC02_HC03_HC04, kSceneHC04);
- Actor_Set_Goal_Number(kActorDektora, 100);
+ Actor_Set_Goal_Number(kActorDektora, kGoalDektoraStartWalkingAround);
}
return true;
}
@@ -297,7 +297,7 @@ void SceneScriptRC03::PlayerWalkedIn() {
if (Global_Variable_Query(kVariableChapter) == 1
|| Global_Variable_Query(kVariableChapter) == 2
) {
- Actor_Set_Goal_Number(kActorDektora, 103);
+ Actor_Set_Goal_Number(kActorDektora, kGoalDektoraStopWalkingAround);
}
}
diff --git a/engines/bladerunner/script/scene/rc51.cpp b/engines/bladerunner/script/scene/rc51.cpp
index 47b243d12b..f8e30f0de0 100644
--- a/engines/bladerunner/script/scene/rc51.cpp
+++ b/engines/bladerunner/script/scene/rc51.cpp
@@ -47,13 +47,13 @@ void SceneScriptRC51::SceneLoaded() {
Unclickable_Object("GRL_DSK");
Unclickable_Object("GRL_DSKLEG");
Unclickable_Object("CURTAIN");
- if (!Game_Flag_Query(kFlagChopstickWrapperTaken)) {
+ if (!Game_Flag_Query(kFlagRC51ChopstickWrapperTaken)) {
Item_Add_To_World(kItemChopstickWrapper, 937, kSetRC02_RC51, 47.56f, -1238.89f, 108048.61f, 0, 6, 18, false, true, false, true);
}
- if (!Game_Flag_Query(kFlagCandyTaken)) {
+ if (!Game_Flag_Query(kFlagRC51CandyTaken)) {
Item_Add_To_World(kItemCandy, 933, kSetRC02_RC51, 67.28f, -1193.38f, 108011.27f, 0, 6, 6, false, true, false, true);
}
- if (!Game_Flag_Query(kFlagToyDogTaken)) {
+ if (!Game_Flag_Query(kFlagRC51ToyDogTaken)) {
Item_Add_To_World(kItemToyDog, 971, kSetRC02_RC51, -69.65f, -1238.89f, 107995.24f, 256, 18, 18, false, true, false, true);
}
}
@@ -83,7 +83,7 @@ bool SceneScriptRC51::ClickedOnItem(int itemId, bool a2) {
Item_Remove_From_World(kItemChopstickWrapper);
Item_Pickup_Spin_Effect(937, 437, 407);
Actor_Voice_Over(2010, kActorVoiceOver);
- Game_Flag_Set(kFlagChopstickWrapperTaken);
+ Game_Flag_Set(kFlagRC51ChopstickWrapperTaken);
return true;
}
}
@@ -96,7 +96,7 @@ bool SceneScriptRC51::ClickedOnItem(int itemId, bool a2) {
Item_Pickup_Spin_Effect(933, 445, 230);
Actor_Says(kActorMcCoy, 8735, 3);
Actor_Says(kActorMcCoy, 8529, 3);
- Game_Flag_Set(kFlagCandyTaken);
+ Game_Flag_Set(kFlagRC51CandyTaken);
return true;
}
}
@@ -109,7 +109,7 @@ bool SceneScriptRC51::ClickedOnItem(int itemId, bool a2) {
Item_Pickup_Spin_Effect(971, 55, 376);
Actor_Says(kActorMcCoy, 8525, 3);
Actor_Says(kActorMcCoy, 8740, 3);
- Game_Flag_Set(kFlagToyDogTaken);
+ Game_Flag_Set(kFlagRC51ToyDogTaken);
return true;
}
}
diff --git a/engines/bladerunner/script/scene/tb02.cpp b/engines/bladerunner/script/scene/tb02.cpp
index ac6f613d59..d82ef220d4 100644
--- a/engines/bladerunner/script/scene/tb02.cpp
+++ b/engines/bladerunner/script/scene/tb02.cpp
@@ -194,71 +194,71 @@ bool SceneScriptTB02::ClickedOnExit(int exitId) {
if (Actor_Query_Goal_Number(kActorTyrellGuard) == 300) {
Actor_Set_Goal_Number(kActorTyrellGuard, 301);
} else {
- Game_Flag_Reset(kFlagMcCoyAtCTxx);
- Game_Flag_Reset(kFlagMcCoyAtRCxx);
- Game_Flag_Reset(kFlagMcCoyAtMAxx);
- Game_Flag_Reset(kFlagMcCoyAtPSxx);
- Game_Flag_Reset(kFlagMcCoyAtBBxx);
- Game_Flag_Reset(kFlagMcCoyAtHFxx);
- Game_Flag_Reset(kFlagMcCoyAtTBxx);
+ Game_Flag_Reset(kFlagMcCoyInChinaTown);
+ Game_Flag_Reset(kFlagMcCoyInRunciters);
+ Game_Flag_Reset(kFlagMcCoyInMcCoyApartment);
+ Game_Flag_Reset(kFlagMcCoyInPoliceStation);
+ Game_Flag_Reset(kFlagMcCoyInBradburyBuilding);
+ Game_Flag_Reset(kFlagMcCoyInHysteriaHall);
+ Game_Flag_Reset(kFlagMcCoyInTyrellBuilding);
Game_Flag_Reset(kFlagTB02ElevatorToTB05);
switch (Spinner_Interface_Choose_Dest(-1, false)) {
case kSpinnerDestinationPoliceStation:
- Game_Flag_Set(kFlagMcCoyAtPSxx);
+ Game_Flag_Set(kFlagMcCoyInPoliceStation);
Game_Flag_Reset(kFlagSpinnerAtTB02);
Game_Flag_Set(kFlagSpinnerAtPS01);
Set_Enter(kSetPS01, kScenePS01);
break;
case kSpinnerDestinationMcCoysApartment:
- Game_Flag_Set(kFlagMcCoyAtMAxx);
+ Game_Flag_Set(kFlagMcCoyInMcCoyApartment);
Game_Flag_Reset(kFlagSpinnerAtTB02);
Game_Flag_Set(kFlagSpinnerAtMA01);
Set_Enter(kSetMA01, kSceneMA01);
break;
case kSpinnerDestinationRuncitersAnimals:
- Game_Flag_Set(kFlagMcCoyAtRCxx);
+ Game_Flag_Set(kFlagMcCoyInRunciters);
Game_Flag_Reset(kFlagSpinnerAtTB02);
Game_Flag_Set(kFlagSpinnerAtRC01);
Set_Enter(kSetRC01, kSceneRC01);
break;
case kSpinnerDestinationChinatown:
- Game_Flag_Set(kFlagMcCoyAtCTxx);
+ Game_Flag_Set(kFlagMcCoyInChinaTown);
Game_Flag_Reset(kFlagSpinnerAtTB02);
Game_Flag_Set(kFlagSpinnerAtCT01);
Set_Enter(kSetCT01_CT12, kSceneCT01);
break;
case kSpinnerDestinationAnimoidRow:
- Game_Flag_Set(kFlagMcCoyAtARxx);
+ Game_Flag_Set(kFlagMcCoyInAnimoidRow);
Game_Flag_Reset(kFlagSpinnerAtTB02);
Game_Flag_Set(kFlagSpinnerAtAR01);
Set_Enter(kSetAR01_AR02, kSceneAR01);
break;
case kSpinnerDestinationDNARow:
- Game_Flag_Set(kFlagMcCoyAtDRxx);
+ Game_Flag_Set(kFlagMcCoyInDNARow);
Game_Flag_Reset(kFlagSpinnerAtTB02);
Game_Flag_Set(kFlagSpinnerAtDR01);
Set_Enter(kSetDR01_DR02_DR04, kSceneDR01);
break;
case kSpinnerDestinationBradburyBuilding:
- Game_Flag_Set(kFlagMcCoyAtBBxx);
+ Game_Flag_Set(kFlagMcCoyInBradburyBuilding);
Game_Flag_Reset(kFlagSpinnerAtTB02);
Game_Flag_Set(kFlagSpinnerAtBB01);
Set_Enter(kSetBB01, kSceneBB01);
break;
case kSpinnerDestinationNightclubRow:
- Game_Flag_Set(kFlagMcCoyAtNRxx);
+ Game_Flag_Set(kFlagMcCoyInNightclubRow);
Game_Flag_Reset(kFlagSpinnerAtTB02);
Game_Flag_Set(kFlagSpinnerAtNR01);
Set_Enter(kSetNR01, kSceneNR01);
break;
case kSpinnerDestinationHysteriaHall:
- Game_Flag_Set(kFlagMcCoyAtHFxx);
+ Game_Flag_Set(kFlagMcCoyInHysteriaHall);
Game_Flag_Reset(kFlagSpinnerAtTB02);
Game_Flag_Set(kFlagSpinnerAtHF01);
Set_Enter(kSetHF01, kSceneHF01);
break;
default:
- Game_Flag_Set(kFlagMcCoyAtTBxx);
+ Game_Flag_Set(kFlagMcCoyInTyrellBuilding);
break;
}
}
diff --git a/engines/bladerunner/script/scene/tb07.cpp b/engines/bladerunner/script/scene/tb07.cpp
index 145aa45c77..cc14203864 100644
--- a/engines/bladerunner/script/scene/tb07.cpp
+++ b/engines/bladerunner/script/scene/tb07.cpp
@@ -24,9 +24,17 @@
namespace BladeRunner {
+enum kTB07Loops {
+ kTB07LoopMain = 0,
+ kTB07LoopShadeDrop = 2,
+ kTB07LoopMainShadeDown = 3
+};
+
void SceneScriptTB07::InitializeScene() {
Setup_Scene_Information(68.0f, 12.0f, 288.0f, 0);
+
Scene_Exit_Add_2D_Exit(0, 383, 445, 639, 479, 2);
+
Ambient_Sounds_Add_Looping_Sound(109, 20, 0, 1);
Ambient_Sounds_Add_Sound(363, 2, 55, 14, 14, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(364, 2, 55, 14, 14, -100, 100, -101, -101, 0, 0);
@@ -37,13 +45,16 @@ void SceneScriptTB07::InitializeScene() {
Ambient_Sounds_Add_Sound(214, 1, 20, 20, 25, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(215, 1, 15, 20, 25, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(216, 1, 15, 20, 25, -100, 100, -101, -101, 0, 0);
- if (Global_Variable_Query(kVariableChapter) == 4 && !Actor_Clue_Query(kActorMcCoy, kClueDNATyrell)) {
- Item_Add_To_World(83, 941, 18, 9.7f, 48.7f, -174.22f, 0, 12, 12, false, true, false, true);
+
+ if ( Global_Variable_Query(kVariableChapter) == 4
+ && !Actor_Clue_Query(kActorMcCoy, kClueDNATyrell)
+ ) {
+ Item_Add_To_World(83, 941, kSetTB07, 9.7f, 48.7f, -174.22f, 0, 12, 12, false, true, false, true);
}
- if (Game_Flag_Query(661)) {
- Scene_Loop_Set_Default(3);
+ if (Game_Flag_Query(kFlagTB07ShadeDown)) {
+ Scene_Loop_Set_Default(kTB07LoopMainShadeDown);
} else {
- Scene_Loop_Set_Default(0);
+ Scene_Loop_Set_Default(kTB07LoopMain);
}
}
@@ -85,71 +96,71 @@ bool SceneScriptTB07::ClickedOnExit(int exitId) {
Game_Flag_Set(kFlagTB07toTB02);
Set_Enter(kSetTB02_TB03, kSceneTB02);
} else {
- Game_Flag_Reset(kFlagMcCoyAtCTxx);
- Game_Flag_Reset(kFlagMcCoyAtRCxx);
- Game_Flag_Reset(kFlagMcCoyAtMAxx);
- Game_Flag_Reset(kFlagMcCoyAtPSxx);
- Game_Flag_Reset(kFlagMcCoyAtBBxx);
- Game_Flag_Reset(kFlagMcCoyAtHFxx);
- Game_Flag_Reset(kFlagMcCoyAtTBxx);
+ Game_Flag_Reset(kFlagMcCoyInChinaTown);
+ Game_Flag_Reset(kFlagMcCoyInRunciters);
+ Game_Flag_Reset(kFlagMcCoyInMcCoyApartment);
+ Game_Flag_Reset(kFlagMcCoyInPoliceStation);
+ Game_Flag_Reset(kFlagMcCoyInBradburyBuilding);
+ Game_Flag_Reset(kFlagMcCoyInHysteriaHall);
+ Game_Flag_Reset(kFlagMcCoyInTyrellBuilding);
Game_Flag_Reset(kFlagTB02ElevatorToTB05);
switch (Spinner_Interface_Choose_Dest(-1, false)) {
case kSpinnerDestinationPoliceStation:
- Game_Flag_Set(kFlagMcCoyAtPSxx);
+ Game_Flag_Set(kFlagMcCoyInPoliceStation);
Game_Flag_Reset(kFlagSpinnerAtTB02);
Game_Flag_Set(kFlagSpinnerAtPS01);
Set_Enter(kSetPS01, kScenePS01);
break;
case kSpinnerDestinationMcCoysApartment:
- Game_Flag_Set(kFlagMcCoyAtMAxx);
+ Game_Flag_Set(kFlagMcCoyInMcCoyApartment);
Game_Flag_Reset(kFlagSpinnerAtTB02);
Game_Flag_Set(kFlagSpinnerAtMA01);
Set_Enter(kSetMA01, kSceneMA01);
break;
case kSpinnerDestinationRuncitersAnimals:
- Game_Flag_Set(kFlagMcCoyAtRCxx);
+ Game_Flag_Set(kFlagMcCoyInRunciters);
Game_Flag_Reset(kFlagSpinnerAtTB02);
Game_Flag_Set(kFlagSpinnerAtRC01);
Set_Enter(kSetRC01, kSceneRC01);
break;
case kSpinnerDestinationChinatown:
- Game_Flag_Set(kFlagMcCoyAtCTxx);
+ Game_Flag_Set(kFlagMcCoyInChinaTown);
Game_Flag_Reset(kFlagSpinnerAtTB02);
Game_Flag_Set(kFlagSpinnerAtCT01);
Set_Enter(kSetCT01_CT12, kSceneCT01);
break;
case kSpinnerDestinationAnimoidRow:
- Game_Flag_Set(kFlagMcCoyAtARxx);
+ Game_Flag_Set(kFlagMcCoyInAnimoidRow);
Game_Flag_Reset(kFlagSpinnerAtTB02);
Game_Flag_Set(kFlagSpinnerAtAR01);
Set_Enter(kSetAR01_AR02, kSceneAR01);
break;
case kSpinnerDestinationDNARow:
- Game_Flag_Set(kFlagMcCoyAtDRxx);
+ Game_Flag_Set(kFlagMcCoyInDNARow);
Game_Flag_Reset(kFlagSpinnerAtTB02);
Game_Flag_Set(kFlagSpinnerAtDR01);
Set_Enter(kSetDR01_DR02_DR04, kSceneDR01);
break;
case kSpinnerDestinationBradburyBuilding:
- Game_Flag_Set(kFlagMcCoyAtBBxx);
+ Game_Flag_Set(kFlagMcCoyInBradburyBuilding);
Game_Flag_Reset(kFlagSpinnerAtTB02);
Game_Flag_Set(kFlagSpinnerAtBB01);
Set_Enter(kSetBB01, kSceneBB01);
break;
case kSpinnerDestinationNightclubRow:
- Game_Flag_Set(kFlagMcCoyAtNRxx);
+ Game_Flag_Set(kFlagMcCoyInNightclubRow);
Game_Flag_Reset(kFlagSpinnerAtTB02);
Game_Flag_Set(kFlagSpinnerAtNR01);
Set_Enter(kSetNR01, kSceneNR01);
break;
case kSpinnerDestinationHysteriaHall:
- Game_Flag_Set(kFlagMcCoyAtHFxx);
+ Game_Flag_Set(kFlagMcCoyInHysteriaHall);
Game_Flag_Reset(kFlagSpinnerAtTB02);
Game_Flag_Set(kFlagSpinnerAtHF01);
Set_Enter(kSetHF01, kSceneHF01);
break;
default:
- Game_Flag_Set(kFlagMcCoyAtTBxx);
+ Game_Flag_Set(kFlagMcCoyInTyrellBuilding);
Loop_Actor_Walk_To_XYZ(kActorMcCoy, 44.0f, 12.0f, 176.0f, 0, false, false, 0);
break;
}
@@ -175,11 +186,15 @@ void SceneScriptTB07::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
}
void SceneScriptTB07::PlayerWalkedIn() {
- int v0 = Global_Variable_Query(kVariableChapter);
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, 44.0f, 12.0f, 176.0f, 0, 0, false, 0);
- if ((v0 == 2 || v0 == 3) && !Game_Flag_Query(612)) {
+ int chapter = Global_Variable_Query(kVariableChapter);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, 44.0f, 12.0f, 176.0f, 0, false, false, 0);
+ if ((chapter == 2
+ || chapter == 3
+ )
+ && !Game_Flag_Query(kFlagTB07RachaelTalk)
+ ) {
Player_Set_Combat_Mode(false);
- sub_401B0C();
+ McCoyTalkWithRachaelAndTyrell();
}
}
@@ -189,17 +204,17 @@ void SceneScriptTB07::PlayerWalkedOut() {
void SceneScriptTB07::DialogueQueueFlushed(int a1) {
}
-void SceneScriptTB07::sub_401B0C() {
- Game_Flag_Set(612);
+void SceneScriptTB07::McCoyTalkWithRachaelAndTyrell() {
+ Game_Flag_Set(kFlagTB07RachaelTalk);
Delay(1500);
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, 44.98f, 12.0f, 49.79f, 0, 0, false, 0);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, 44.98f, 12.0f, 49.79f, 0, false, false, 0);
Actor_Face_Heading(kActorMcCoy, 178, true);
Delay(3000);
Actor_Put_In_Set(kActorRachael, kSetTB07);
Actor_Set_At_XYZ(kActorRachael, -260.15f, 12.0f, -19.16f, 256);
Actor_Change_Animation_Mode(kActorRachael, 0);
Outtake_Play(kOuttakeRachel, true, -1);
- Loop_Actor_Walk_To_XYZ(kActorRachael, -146.15f, 12.0f, -5.84f, 0, 0, false, 0);
+ Loop_Actor_Walk_To_XYZ(kActorRachael, -146.15f, 12.0f, -5.84f, 0, false, false, 0);
Actor_Face_Actor(kActorRachael, kActorMcCoy, true);
Actor_Says(kActorRachael, 480, 14);
Actor_Face_Actor(kActorMcCoy, kActorRachael, true);
@@ -209,7 +224,7 @@ void SceneScriptTB07::sub_401B0C() {
Actor_Says(kActorMcCoy, 5320, 15);
Actor_Says_With_Pause(kActorMcCoy, 5325, 1.0f, 19);
Actor_Start_Speech_Sample(kActorRachael, 500);
- Loop_Actor_Walk_To_XYZ(kActorRachael, -60.15f, 12.0f, 60.84f, 0, 0, false, 0);
+ Loop_Actor_Walk_To_XYZ(kActorRachael, -60.15f, 12.0f, 60.84f, 0, false, false, 0);
Actor_Face_Actor(kActorRachael, kActorMcCoy, true);
Actor_Face_Actor(kActorMcCoy, kActorRachael, true);
Actor_Says(kActorMcCoy, 5330, 14);
@@ -218,7 +233,7 @@ void SceneScriptTB07::sub_401B0C() {
Actor_Says(kActorRachael, 520, 17);
Actor_Says(kActorMcCoy, 5340, 3);
Actor_Start_Speech_Sample(kActorRachael, 530);
- Loop_Actor_Walk_To_XYZ(kActorRachael, -4.15f, 12.0f, 54.73f, 0, 0, false, 0);
+ Loop_Actor_Walk_To_XYZ(kActorRachael, -4.15f, 12.0f, 54.73f, 0, false, false, 0);
Actor_Says(kActorRachael, 540, 16);
Actor_Says(kActorMcCoy, 5345, 18);
Actor_Says(kActorRachael, 550, 13);
@@ -231,7 +246,7 @@ void SceneScriptTB07::sub_401B0C() {
Actor_Says(kActorMcCoy, 5365, 13);
Actor_Says_With_Pause(kActorRachael, 600, 1.0f, 12);
Actor_Says(kActorMcCoy, 5370, 3);
- Loop_Actor_Walk_To_XYZ(kActorRachael, -24.15f, 12.0f, -10.84f, 0, 0, false, 0);
+ Loop_Actor_Walk_To_XYZ(kActorRachael, -24.15f, 12.0f, -10.84f, 0, false, false, 0);
Actor_Says(kActorRachael, 610, 13);
Actor_Face_Actor(kActorMcCoy, kActorRachael, true);
Actor_Says(kActorMcCoy, 5375, 18);
@@ -253,10 +268,10 @@ void SceneScriptTB07::sub_401B0C() {
Actor_Put_In_Set(kActorTyrell, kSetTB07);
Actor_Set_At_XYZ(kActorTyrell, 68.0f, 12.0f, 288.0f, 0);
Actor_Change_Animation_Mode(kActorTyrell, 0);
- Scene_Loop_Set_Default(3);
- Scene_Loop_Start_Special(kSceneLoopModeOnce, 2, false);
+ Scene_Loop_Set_Default(kTB07LoopMainShadeDown);
+ Scene_Loop_Start_Special(kSceneLoopModeOnce, kTB07LoopShadeDrop, false);
Actor_Start_Speech_Sample(kActorTyrell, 0);
- Loop_Actor_Walk_To_XYZ(kActorTyrell, 44.0f, 12.0f, 176.0f, 0, 0, false, 0);
+ Loop_Actor_Walk_To_XYZ(kActorTyrell, 44.0f, 12.0f, 176.0f, 0, false, false, 0);
Actor_Face_Actor(kActorTyrell, kActorMcCoy, true);
Actor_Face_Actor(kActorMcCoy, kActorTyrell, true);
Actor_Face_Actor(kActorRachael, kActorTyrell, true);
@@ -267,7 +282,7 @@ void SceneScriptTB07::sub_401B0C() {
Actor_Set_Goal_Number(kActorRachael, 200);
Actor_Says(kActorTyrell, 40, 15);
Actor_Start_Speech_Sample(kActorTyrell, 50);
- Loop_Actor_Walk_To_XYZ(kActorTyrell, -10.0f, 12.0f, 100.0f, 0, 0, false, 0);
+ Loop_Actor_Walk_To_XYZ(kActorTyrell, -10.0f, 12.0f, 100.0f, 0, false, false, 0);
Actor_Face_Actor(kActorTyrell, kActorMcCoy, true);
Actor_Face_Actor(kActorMcCoy, kActorTyrell, true);
Actor_Says(kActorMcCoy, 5430, 17);
@@ -284,7 +299,7 @@ void SceneScriptTB07::sub_401B0C() {
Actor_Says(kActorTyrell, 100, 14);
Actor_Clue_Acquire(kActorMcCoy, kClueRachaelInterview, false, kActorRachael);
Actor_Clue_Acquire(kActorMcCoy, kClueTyrellInterview, false, kActorTyrell);
- Loop_Actor_Walk_To_XYZ(kActorTyrell, -260.15f, 12.0f, -19.16f, 0, 0, false, 0);
+ Loop_Actor_Walk_To_XYZ(kActorTyrell, -260.15f, 12.0f, -19.16f, 0, false, false, 0);
}
} // End of namespace BladeRunner
diff --git a/engines/bladerunner/script/scene/ug01.cpp b/engines/bladerunner/script/scene/ug01.cpp
index 98e79a5c2e..f1c11fe620 100644
--- a/engines/bladerunner/script/scene/ug01.cpp
+++ b/engines/bladerunner/script/scene/ug01.cpp
@@ -115,8 +115,8 @@ bool SceneScriptUG01::ClickedOnExit(int exitId) {
Actor_Face_Heading(kActorMcCoy, 768, false);
Loop_Actor_Travel_Ladder(kActorMcCoy, 12, true, 0);
Game_Flag_Set(kFlagUG01toRC03);
- Game_Flag_Reset(kFlagMcCoyAtUGxx);
- Game_Flag_Set(kFlagMcCoyAtRCxx);
+ Game_Flag_Reset(kFlagMcCoyInUnderground);
+ Game_Flag_Set(kFlagMcCoyInRunciters);
Set_Enter(kSetRC03, kSceneRC03);
}
return true;
diff --git a/engines/bladerunner/script/scene/ug02.cpp b/engines/bladerunner/script/scene/ug02.cpp
index ccea89a41e..5ac3fad135 100644
--- a/engines/bladerunner/script/scene/ug02.cpp
+++ b/engines/bladerunner/script/scene/ug02.cpp
@@ -68,7 +68,7 @@ void SceneScriptUG02::SceneLoaded() {
Footstep_Sounds_Set(0, 0);
Footstep_Sounds_Set(8, 2);
- if (!Game_Flag_Query(kFlagRagiationGooglesTaken)
+ if (!Game_Flag_Query(kFlagUG02RagiationGooglesTaken)
&& Game_Flag_Query(kFlagIzoIsReplicant)
) {
Item_Add_To_World(kItemRadiationGoogles, 963, kSetUG02, -300.37f, 120.16f, -81.31f, 0, 8, 8, false, true, false, true);
@@ -153,7 +153,7 @@ bool SceneScriptUG02::ClickedOnItem(int itemId, bool a2) {
if (itemId == kItemRadiationGoogles) {
Actor_Face_Item(kActorMcCoy, kItemRadiationGoogles, true);
Actor_Clue_Acquire(kActorMcCoy, kClueRadiationGoggles, true, -1);
- Game_Flag_Set(kFlagRagiationGooglesTaken);
+ Game_Flag_Set(kFlagUG02RagiationGooglesTaken);
Item_Remove_From_World(kItemRadiationGoogles);
Item_Pickup_Spin_Effect(963, 426, 316);
return true;
@@ -192,12 +192,12 @@ bool SceneScriptUG02::ClickedOnExit(int exitId) {
Actor_Face_Heading(kActorMcCoy, 14, false);
Loop_Actor_Travel_Ladder(kActorMcCoy, 9, true, 0);
Game_Flag_Set(kFlagUG02toHC03);
- Game_Flag_Reset(kFlagMcCoyAtUGxx);
- Game_Flag_Set(kFlagMcCoyAtHCxx);
+ Game_Flag_Reset(kFlagMcCoyInUnderground);
+ Game_Flag_Set(kFlagMcCoyInHawkersCircle);
if (!Game_Flag_Query(kFlagHC03CageOpen)) {
Game_Flag_Set(kFlagHC03TrapDoorOpen);
Game_Flag_Set(kFlagHC03CageOpen);
- Item_Remove_From_World(kItemHC03Lock);
+ Item_Remove_From_World(kItemGreenPawnLock);
}
Set_Enter(kSetHC01_HC02_HC03_HC04, kSceneHC03);
return true;
diff --git a/engines/bladerunner/script/scene/ug03.cpp b/engines/bladerunner/script/scene/ug03.cpp
index c9c88e7fbf..a11e768b0c 100644
--- a/engines/bladerunner/script/scene/ug03.cpp
+++ b/engines/bladerunner/script/scene/ug03.cpp
@@ -25,39 +25,40 @@
namespace BladeRunner {
void SceneScriptUG03::InitializeScene() {
- if (Game_Flag_Query(335)) {
- Setup_Scene_Information(-51.0f, 0.03f, 255.0f, 780);
- Game_Flag_Reset(335);
- } else if (Game_Flag_Query(337)) {
- Setup_Scene_Information(-139.0f, 0.03f, -13.0f, 540);
- Game_Flag_Reset(337);
+ if (Game_Flag_Query(kFlagUG04toUG03)) {
+ Setup_Scene_Information( -51.0f, 0.03f, 255.0f, 780);
+ Game_Flag_Reset(kFlagUG04toUG03);
+ } else if (Game_Flag_Query(kFlagUG10toUG03)) {
+ Setup_Scene_Information( -139.0f, 0.03f, -13.0f, 540);
+ Game_Flag_Reset(kFlagUG10toUG03);
} else {
Setup_Scene_Information(-121.88f, 0.03f, 213.35f, 540);
}
- Scene_Exit_Add_2D_Exit(0, 46, 137, 131, 296, 0);
+ Scene_Exit_Add_2D_Exit(0, 46, 137, 131, 296, 0);
Scene_Exit_Add_2D_Exit(1, 559, 141, 639, 380, 1);
+
Ambient_Sounds_Add_Looping_Sound(331, 15, 0, 1);
Ambient_Sounds_Add_Looping_Sound(332, 40, 0, 1);
Ambient_Sounds_Add_Looping_Sound(333, 40, 0, 1);
- Ambient_Sounds_Add_Sound(402, 2, 120, 10, 11, 0, 100, 0, 100, 0, 0);
- Ambient_Sounds_Add_Sound(370, 2, 120, 10, 11, 0, 100, 0, 100, 0, 0);
- Ambient_Sounds_Add_Sound(396, 2, 120, 10, 11, 0, 100, 0, 100, 0, 0);
- Ambient_Sounds_Add_Sound(395, 2, 120, 10, 11, 0, 100, 0, 100, 0, 0);
- Ambient_Sounds_Add_Sound(234, 2, 190, 12, 16, -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(391, 2, 190, 12, 16, -100, 100, -100, 100, 0, 0);
- Ambient_Sounds_Add_Sound(392, 2, 190, 12, 16, -100, 100, -100, 100, 0, 0);
- Ambient_Sounds_Add_Sound(393, 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(225, 2, 190, 12, 16, -100, 100, -100, 100, 0, 0);
- Ambient_Sounds_Add_Sound(226, 2, 190, 12, 16, -100, 100, -100, 100, 0, 0);
- Ambient_Sounds_Add_Sound(227, 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);
- Ambient_Sounds_Add_Sound(303, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(304, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(305, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(402, 2, 120, 10, 11, 0, 100, 0, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(370, 2, 120, 10, 11, 0, 100, 0, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(396, 2, 120, 10, 11, 0, 100, 0, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(395, 2, 120, 10, 11, 0, 100, 0, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(234, 2, 190, 12, 16, -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(391, 2, 190, 12, 16, -100, 100, -100, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(392, 2, 190, 12, 16, -100, 100, -100, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(393, 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(225, 2, 190, 12, 16, -100, 100, -100, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(226, 2, 190, 12, 16, -100, 100, -100, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(227, 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);
+ Ambient_Sounds_Add_Sound(303, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(304, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(305, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
}
void SceneScriptUG03::SceneLoaded() {
@@ -75,15 +76,20 @@ bool SceneScriptUG03::MouseClick(int x, int y) {
}
bool SceneScriptUG03::ClickedOn3DObject(const char *objectName, bool a2) {
- if ((Object_Query_Click("CHAIR_BACK", objectName) || Object_Query_Click("CHAIR_SEAT", objectName) || Object_Query_Click("CHAIR_HEADZAPPER", objectName)) && !Loop_Actor_Walk_To_Scene_Object(kActorMcCoy, "CHAIR_BACK", 36, true, false)) {
- Actor_Face_Object(kActorMcCoy, "CHAIR_BACK", true);
- if (!Actor_Clue_Query(kActorMcCoy, kClueScaryChair)) {
- Actor_Voice_Over(2550, kActorVoiceOver);
- Actor_Voice_Over(2560, kActorVoiceOver);
- Actor_Voice_Over(2570, kActorVoiceOver);
- Actor_Voice_Over(2580, kActorVoiceOver);
- Actor_Voice_Over(2590, kActorVoiceOver);
- Actor_Clue_Acquire(kActorMcCoy, kClueScaryChair, true, -1);
+ if (Object_Query_Click("CHAIR_BACK", objectName)
+ || Object_Query_Click("CHAIR_SEAT", objectName)
+ || Object_Query_Click("CHAIR_HEADZAPPER", objectName)
+ ) {
+ if (!Loop_Actor_Walk_To_Scene_Object(kActorMcCoy, "CHAIR_BACK", 36, true, false)) {
+ Actor_Face_Object(kActorMcCoy, "CHAIR_BACK", true);
+ if (!Actor_Clue_Query(kActorMcCoy, kClueScaryChair)) {
+ Actor_Voice_Over(2550, kActorVoiceOver);
+ Actor_Voice_Over(2560, kActorVoiceOver);
+ Actor_Voice_Over(2570, kActorVoiceOver);
+ Actor_Voice_Over(2580, kActorVoiceOver);
+ Actor_Voice_Over(2590, kActorVoiceOver);
+ Actor_Clue_Acquire(kActorMcCoy, kClueScaryChair, true, -1);
+ }
}
}
return false;
@@ -99,23 +105,24 @@ bool SceneScriptUG03::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptUG03::ClickedOnExit(int exitId) {
if (exitId == 0) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -139.0f, 0.0f, -13.0f, 0, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -139.0f, 0.0f, -13.0f, 0, true, false, 0)) {
if (Global_Variable_Query(kVariableChapter) < 4) {
Actor_Says(kActorMcCoy, 8522, 14);
} else {
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(336);
+ Game_Flag_Set(kFlagUG03toUG10);
Set_Enter(kSetUG10, kSceneUG10);
}
}
return true;
}
+
if (exitId == 1) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -51.0f, 0.0f, 255.0f, 0, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -51.0f, 0.0f, 255.0f, 0, true, false, 0)) {
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(334);
+ Game_Flag_Set(kFlagUG03toUG04);
Set_Enter(kSetUG04, kSceneUG04);
}
return true;
diff --git a/engines/bladerunner/script/scene/ug04.cpp b/engines/bladerunner/script/scene/ug04.cpp
index 7aa0ad130c..82da71bc61 100644
--- a/engines/bladerunner/script/scene/ug04.cpp
+++ b/engines/bladerunner/script/scene/ug04.cpp
@@ -25,37 +25,40 @@
namespace BladeRunner {
void SceneScriptUG04::InitializeScene() {
- if (Game_Flag_Query(339)) {
- Setup_Scene_Information(0.0f, -1.74f, -2400.0f, 496);
- Game_Flag_Reset(339);
- } else if (Game_Flag_Query(341)) {
- Setup_Scene_Information(164.0f, 11.87f, -1013.0f, 83);
+ if (Game_Flag_Query(kFlagUG05toUG04)) {
+ Setup_Scene_Information( 0.0f, -1.74f, -2400.0f, 496);
+ Game_Flag_Reset(kFlagUG05toUG04);
+ } else if (Game_Flag_Query(kFlagUG06toUG04)) {
+ Setup_Scene_Information( 164.0f, 11.87f, -1013.0f, 83);
} else {
- Setup_Scene_Information(-172.0f, 16.29f, -735.0f, 380);
- Game_Flag_Reset(334);
+ Setup_Scene_Information(-172.0f, 16.29f, -735.0f, 380);
+ Game_Flag_Reset(kFlagUG03toUG04);
}
+
Scene_Exit_Add_2D_Exit(0, 123, 308, 159, 413, 3);
if (Global_Variable_Query(kVariableChapter) > 3) {
Scene_Exit_Add_2D_Exit(1, 256, 333, 290, 373, 0);
}
Scene_Exit_Add_2D_Exit(2, 344, 298, 451, 390, 1);
+
Ambient_Sounds_Add_Looping_Sound(331, 25, 0, 1);
Ambient_Sounds_Add_Looping_Sound(332, 40, 0, 1);
Ambient_Sounds_Add_Looping_Sound(333, 40, 0, 1);
- Ambient_Sounds_Add_Sound(234, 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(225, 2, 190, 12, 16, -100, 100, -100, 100, 0, 0);
- Ambient_Sounds_Add_Sound(227, 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);
- Ambient_Sounds_Add_Sound(368, 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(370, 2, 120, 11, 12, -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(392, 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(303, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(304, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(305, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(234, 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(225, 2, 190, 12, 16, -100, 100, -100, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(227, 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);
+ Ambient_Sounds_Add_Sound(368, 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(370, 2, 120, 11, 12, -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(392, 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(303, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(304, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(305, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
+
Scene_Loop_Start_Special(0, 0, 0);
Scene_Loop_Set_Default(1);
}
@@ -86,22 +89,22 @@ bool SceneScriptUG04::ClickedOnItem(int itemId, bool a2) {
bool SceneScriptUG04::ClickedOnExit(int exitId) {
if (exitId == 0) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -172.0f, 16.29f, -735.0f, 0, 1, false, 0)) {
- Game_Flag_Set(335);
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -172.0f, 16.29f, -735.0f, 0, true, false, 0)) {
+ Game_Flag_Set(kFlagUG04toUG03);
Set_Enter(kSetUG03, kSceneUG03);
}
return true;
}
if (exitId == 1) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 0.0f, -1.74f, -2400.0f, 0, 1, false, 0)) {
- Game_Flag_Set(338);
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 0.0f, -1.74f, -2400.0f, 0, true, false, 0)) {
+ Game_Flag_Set(kFlagUG04toUG05);
Set_Enter(kSetUG05, kSceneUG05);
}
return true;
}
if (exitId == 2) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 164.0f, 11.87f, -1013.0f, 0, 1, false, 0)) {
- Game_Flag_Set(340);
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 164.0f, 11.87f, -1013.0f, 0, true, false, 0)) {
+ Game_Flag_Set(kFlagUG04toUG06);
Set_Enter(kSetUG06, kSceneUG06);
}
return true;
@@ -123,9 +126,9 @@ void SceneScriptUG04::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
}
void SceneScriptUG04::PlayerWalkedIn() {
- if (Game_Flag_Query(341)) {
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, 60.0f, -1.74f, -976.0f, 6, 0, false, 0);
- Game_Flag_Reset(341);
+ if (Game_Flag_Query(kFlagUG06toUG04)) {
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, 60.0f, -1.74f, -976.0f, 6, false, false, 0);
+ Game_Flag_Reset(kFlagUG06toUG04);
}
}
diff --git a/engines/bladerunner/script/scene/ug05.cpp b/engines/bladerunner/script/scene/ug05.cpp
index 3be09c1ee1..324ef08654 100644
--- a/engines/bladerunner/script/scene/ug05.cpp
+++ b/engines/bladerunner/script/scene/ug05.cpp
@@ -25,21 +25,25 @@
namespace BladeRunner {
void SceneScriptUG05::InitializeScene() {
- if (Game_Flag_Query(360)) {
- if (Game_Flag_Query(663) && !Game_Flag_Query(368)) {
+ if (Game_Flag_Query(kFlagHF07toUG06)) {
+ if ( Game_Flag_Query(663)
+ && !Game_Flag_Query(368)
+ ) {
Setup_Scene_Information(-356.35f, 132.77f, -1092.36f, 389);
} else {
Setup_Scene_Information(-180.0f, 37.28f, -1124.0f, 296);
}
} else {
Setup_Scene_Information(0.0f, -1.37f, 0.0f, 0);
- Game_Flag_Reset(338);
+ Game_Flag_Reset(kFlagUG04toUG05);
}
Scene_Exit_Add_2D_Exit(0, 215, 240, 254, 331, 3);
if (!Game_Flag_Query(663)) {
Scene_Exit_Add_2D_Exit(1, 303, 422, 639, 479, 2);
}
- if (!Game_Flag_Query(663) || Game_Flag_Query(368)) {
+ if (!Game_Flag_Query(663)
+ || Game_Flag_Query(368)
+ ) {
Scene_Exit_Add_2D_Exit(2, 352, 256, 393, 344, 0);
}
Ambient_Sounds_Add_Looping_Sound(105, 28, 0, 1);
@@ -115,19 +119,19 @@ bool SceneScriptUG05::ClickedOnExit(int exitId) {
if (exitId == 0) {
if (Game_Flag_Query(663) && !Game_Flag_Query(368)) {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -356.35f, 132.77f, -1092.36f, 0, 0, false, 0);
- Game_Flag_Set(361);
+ Game_Flag_Set(kFlagUG06toHF07);
Set_Enter(kSetHF07, kSceneHF07);
} else if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -156.72f, 3.03f, -1118.17f, 0, 1, false, 0)) {
Actor_Face_Heading(kActorMcCoy, 760, false);
Loop_Actor_Travel_Stairs(kActorMcCoy, 3, 1, kAnimationModeIdle);
- Game_Flag_Set(361);
+ Game_Flag_Set(kFlagUG06toHF07);
Set_Enter(kSetHF07, kSceneHF07);
}
return true;
}
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 4.0f, -11.67f, -4.0f, 0, 1, false, 0)) {
- Game_Flag_Set(339);
+ Game_Flag_Set(kFlagUG05toUG04);
Set_Enter(kSetUG04, kSceneUG04);
}
return true;
@@ -200,7 +204,7 @@ void SceneScriptUG05::PlayerWalkedIn() {
}
}
}
- if (Game_Flag_Query(360)) {
+ if (Game_Flag_Query(kFlagHF07toUG06)) {
if (Game_Flag_Query(663) && !Game_Flag_Query(368)) {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -288.35f, 132.77f, -1092.36f, 0, 1, false, 0);
} else {
@@ -210,7 +214,7 @@ void SceneScriptUG05::PlayerWalkedIn() {
if (Game_Flag_Query(663)) {
Game_Flag_Query(368); // bug in game?
}
- Game_Flag_Reset(360);
+ Game_Flag_Reset(kFlagHF07toUG06);
}
void SceneScriptUG05::PlayerWalkedOut() {
diff --git a/engines/bladerunner/script/scene/ug06.cpp b/engines/bladerunner/script/scene/ug06.cpp
index 8c93eb7eaa..a979c9dd0f 100644
--- a/engines/bladerunner/script/scene/ug06.cpp
+++ b/engines/bladerunner/script/scene/ug06.cpp
@@ -36,33 +36,35 @@ void SceneScriptUG06::InitializeScene() {
}
Game_Flag_Reset(680);
}
- if (Game_Flag_Query(340)) {
- Setup_Scene_Information(23.0f, 0.0f, 321.0f, 0);
- } else if (Game_Flag_Query(343)) {
- Setup_Scene_Information(66.0f, 153.0f, -301.4f, 512);
+
+ if (Game_Flag_Query(kFlagUG04toUG06)) {
+ Setup_Scene_Information( 23.0f, 0.0f, 321.0f, 0);
+ } else if (Game_Flag_Query(kFlagNR01toUG06)) {
+ Setup_Scene_Information( 66.0f, 153.0f, -301.4f, 512);
} else {
- Setup_Scene_Information(-165.0f, 1.0f, 89.0f, 990);
+ Setup_Scene_Information(-165.0f, 1.0f, 89.0f, 990);
}
- Scene_Exit_Add_2D_Exit(0, 0, 0, 30, 479, 3);
+ Scene_Exit_Add_2D_Exit(0, 0, 0, 30, 479, 3);
Scene_Exit_Add_2D_Exit(1, 294, 68, 544, 236, 0);
+
Ambient_Sounds_Add_Looping_Sound(288, 18, 0, 1);
Ambient_Sounds_Add_Looping_Sound(332, 40, 0, 1);
Ambient_Sounds_Add_Looping_Sound(333, 40, 0, 1);
- Ambient_Sounds_Add_Sound(234, 2, 190, 12, 16, -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(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(398, 2, 120, 11, 12, -100, 100, -100, 100, 0, 0);
- Ambient_Sounds_Add_Sound(392, 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(225, 2, 190, 12, 16, -100, 100, -100, 100, 0, 0);
- Ambient_Sounds_Add_Sound(227, 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);
- Ambient_Sounds_Add_Sound(303, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(304, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(305, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(234, 2, 190, 12, 16, -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(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(398, 2, 120, 11, 12, -100, 100, -100, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(392, 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(225, 2, 190, 12, 16, -100, 100, -100, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(227, 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);
+ Ambient_Sounds_Add_Sound(303, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(304, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(305, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
}
void SceneScriptUG06::SceneLoaded() {
@@ -91,22 +93,23 @@ 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)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 23.0f, 0.0f, 321.0f, 0, true, false, 0)) {
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(341);
+ Game_Flag_Set(kFlagUG06toUG04);
Set_Enter(kSetUG04, kSceneUG04);
}
return true;
}
+
if (exitId == 1) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 66.0f, 0.0f, -90.0f, 0, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 66.0f, 0.0f, -90.0f, 0, true, false, 0)) {
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);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, 66.0f, 153.0f, -446.0f, 0, false, false, 0);
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(342);
+ Game_Flag_Set(kFlagUG06toNR01);
Set_Enter(kSetNR01, kSceneNR01);
}
return true;
@@ -125,16 +128,18 @@ void SceneScriptUG06::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
}
void SceneScriptUG06::PlayerWalkedIn() {
- if (Game_Flag_Query(340)) {
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, 23.0f, 0.0f, 273.0f, 0, 0, false, 0);
- Game_Flag_Reset(340);
+ if (Game_Flag_Query(kFlagUG04toUG06)) {
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, 23.0f, 0.0f, 273.0f, 0, false, false, 0);
+ Game_Flag_Reset(kFlagUG04toUG06);
}
- if (Game_Flag_Query(343)) {
- Loop_Actor_Travel_Stairs(kActorMcCoy, 17, 0, kAnimationModeIdle);
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, 66.0f, 0.0f, -36.91f, 0, 0, false, 0);
- Game_Flag_Reset(343);
+ if (Game_Flag_Query(kFlagNR01toUG06)) {
+ Loop_Actor_Travel_Stairs(kActorMcCoy, 17, false, kAnimationModeIdle);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, 66.0f, 0.0f, -36.91f, 0, false, false, 0);
+ Game_Flag_Reset(kFlagNR01toUG06);
}
- if (Global_Variable_Query(kVariableChapter) == 4 && !Game_Flag_Query(524)) {
+ if ( Global_Variable_Query(kVariableChapter) == 4
+ && !Game_Flag_Query(524)
+ ) {
Player_Loses_Control();
Actor_Voice_Over(2620, kActorVoiceOver);
Actor_Voice_Over(2630, kActorVoiceOver);
diff --git a/engines/bladerunner/script/scene/ug09.cpp b/engines/bladerunner/script/scene/ug09.cpp
index 0724ce8d81..91e493ab63 100644
--- a/engines/bladerunner/script/scene/ug09.cpp
+++ b/engines/bladerunner/script/scene/ug09.cpp
@@ -145,8 +145,8 @@ void SceneScriptUG09::PlayerWalkedOut() {
}
if (Game_Flag_Query(kFlagUG09toCT12)) {
- Game_Flag_Set(kFlagMcCoyAtCTxx);
- Game_Flag_Reset(kFlagMcCoyAtUGxx);
+ Game_Flag_Set(kFlagMcCoyInChinaTown);
+ Game_Flag_Reset(kFlagMcCoyInUnderground);
}
}
diff --git a/engines/bladerunner/script/scene/ug10.cpp b/engines/bladerunner/script/scene/ug10.cpp
index 64e63a6a03..a33c05fbde 100644
--- a/engines/bladerunner/script/scene/ug10.cpp
+++ b/engines/bladerunner/script/scene/ug10.cpp
@@ -25,15 +25,15 @@
namespace BladeRunner {
void SceneScriptUG10::InitializeScene() {
- if (Game_Flag_Query(336)) {
- Setup_Scene_Information(-92.0f, 81.33f, -652.0f, 520);
+ if (Game_Flag_Query(kFlagUG03toUG10)) {
+ Setup_Scene_Information( -92.0f, 81.33f, -652.0f, 520);
} else if (Game_Flag_Query(423)) {
Game_Flag_Reset(423);
- Setup_Scene_Information(-385.12f, 1.15f, 57.44f, 400);
- } else if (Game_Flag_Query(346)) {
- Setup_Scene_Information(2.5f, 1.15f, 405.0f, 200);
+ Setup_Scene_Information(-385.12f, 1.15f, 57.44f, 400);
+ } else if (Game_Flag_Query(kFlagUG14toUG10)) {
+ Setup_Scene_Information( 2.5f, 1.15f, 405.0f, 200);
} else {
- Setup_Scene_Information(235.0f, 1.15f, 29.0f, 0);
+ Setup_Scene_Information( 235.0f, 1.15f, 29.0f, 0);
}
Scene_Exit_Add_2D_Exit(0, 589, 300, 639, 479, 1);
@@ -78,7 +78,7 @@ void SceneScriptUG10::SceneLoaded() {
Obstacle_Object("SLUICEGATE_LEVER", true);
if (Global_Variable_Query(kVariableChapter) == 4
&& !Game_Flag_Query(kFlagUG10GateOpen)
- && Game_Flag_Query(kFlagDumpsterEmptied)
+ && Game_Flag_Query(kFlagCT04HomelessBodyThrownAway)
&& !Game_Flag_Query(kFlagUG03DeadHomeless)
) {
Scene_Loop_Set_Default(1);
@@ -114,7 +114,7 @@ bool SceneScriptUG10::ClickedOnExit(int exitId) {
)
|| Game_Flag_Query(kFlagUG10GateOpen)
) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 235.0f, 1.15f, 29.0f, 0, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 235.0f, 1.15f, 29.0f, 0, true, false, 0)) {
Game_Flag_Set(kFlagUG10toUG01);
Set_Enter(kSetUG01, kSceneUG01);
return true;
@@ -128,11 +128,11 @@ bool SceneScriptUG10::ClickedOnExit(int exitId) {
)
|| Game_Flag_Query(kFlagUG10GateOpen)
) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -1.83f, 1.15f, -410.8f, 0, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -1.83f, 1.15f, -410.8f, 0, true, false, 0)) {
Actor_Face_Heading(kActorMcCoy, 0, false);
Loop_Actor_Travel_Stairs(kActorMcCoy, 9, 1, kAnimationModeIdle);
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -92.0f, 81.83f, -652.0f, 0, 0, false, 0);
- Game_Flag_Set(337);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -92.0f, 81.83f, -652.0f, 0, false, false, 0);
+ Game_Flag_Set(kFlagUG10toUG03);
Set_Enter(kSetUG03, kSceneUG03);
return true;
}
@@ -145,7 +145,7 @@ bool SceneScriptUG10::ClickedOnExit(int exitId) {
)
|| Game_Flag_Query(kFlagUG10GateOpen)
) {
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -385.0f, 1.15f, 57.44f, 0, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -385.0f, 1.15f, 57.44f, 0, true, false, 0)) {
Actor_Face_Heading(kActorMcCoy, 1001, false);
Loop_Actor_Travel_Ladder(kActorMcCoy, 1, 1, 0);
Game_Flag_Set(424);
@@ -161,8 +161,8 @@ bool SceneScriptUG10::ClickedOnExit(int exitId) {
)
|| 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);
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 2.5f, 1.15f, 405.0f, 0, true, false, 0)) {
+ Game_Flag_Set(kFlagUG10toUG14);
Set_Enter(kSetUG14, kSceneUG14);
return true;
}
@@ -228,14 +228,14 @@ void SceneScriptUG10::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
}
void SceneScriptUG10::PlayerWalkedIn() {
- if (Game_Flag_Query(346)) {
- Game_Flag_Reset(346);
+ if (Game_Flag_Query(kFlagUG14toUG10)) {
+ Game_Flag_Reset(kFlagUG14toUG10);
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, false, false, 0);
- } else if (Game_Flag_Query(336)) {
- Game_Flag_Reset(336);
+ } else if (Game_Flag_Query(kFlagUG03toUG10)) {
+ Game_Flag_Reset(kFlagUG03toUG10);
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, false, kAnimationModeIdle);
diff --git a/engines/bladerunner/script/scene/ug12.cpp b/engines/bladerunner/script/scene/ug12.cpp
index f189224713..7f9202381d 100644
--- a/engines/bladerunner/script/scene/ug12.cpp
+++ b/engines/bladerunner/script/scene/ug12.cpp
@@ -29,27 +29,30 @@ void SceneScriptUG12::InitializeScene() {
Setup_Scene_Information(207.0f, -126.21f, -364.0f, 561);
Game_Flag_Reset(411);
} else {
- Setup_Scene_Information(375.0f, -126.21f, 180.0f, 730);
- Game_Flag_Reset(345);
+ Setup_Scene_Information(375.0f, -126.21f, 180.0f, 730);
+ Game_Flag_Reset(kFlagUG14toUG12);
}
+
Scene_Exit_Add_2D_Exit(0, 538, 222, 615, 346, 1);
if (Game_Flag_Query(373)) {
Scene_Exit_Add_2D_Exit(1, 334, 176, 426, 266, 0);
}
+
Ambient_Sounds_Add_Looping_Sound(105, 47, 60, 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(292, 2, 20, 20, 25, -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(369, 2, 120, 11, 12, -100, 100, -100, 100, 0, 0);
- Ambient_Sounds_Add_Sound(370, 2, 120, 11, 12, -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(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(303, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(304, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(305, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
+ 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(292, 2, 20, 20, 25, -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(369, 2, 120, 11, 12, -100, 100, -100, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(370, 2, 120, 11, 12, -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(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(303, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(304, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(305, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
+
if (Game_Flag_Query(373)) {
Scene_Loop_Set_Default(2);
} else {
@@ -83,7 +86,7 @@ bool SceneScriptUG12::ClickedOnExit(int exitId) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 375.0f, -126.21f, 180.0f, 0, 1, false, 0)) {
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(344);
+ Game_Flag_Set(kFlagUG12toUG14);
Set_Enter(kSetUG14, kSceneUG14);
}
return true;
diff --git a/engines/bladerunner/script/scene/ug13.cpp b/engines/bladerunner/script/scene/ug13.cpp
index 3fb1aaf3dc..e2a7ae9a1d 100644
--- a/engines/bladerunner/script/scene/ug13.cpp
+++ b/engines/bladerunner/script/scene/ug13.cpp
@@ -27,17 +27,19 @@ namespace BladeRunner {
void SceneScriptUG13::InitializeScene() {
if (Game_Flag_Query(435)) {
Setup_Scene_Information(-477.0f, 141.9f, -870.0f, 378);
- } else if (Game_Flag_Query(350)) {
- Setup_Scene_Information(39.0f, 52.94f, -528.0f, 600);
+ } else if (Game_Flag_Query(kFlagUG15toUG13)) {
+ Setup_Scene_Information( 39.0f, 52.94f, -528.0f, 600);
} else {
- Setup_Scene_Information(-22.0f, 54.63f, -883.0f, 578);
+ Setup_Scene_Information( -22.0f, 54.63f, -883.0f, 578);
Actor_Set_Invisible(kActorMcCoy, false);
}
+
if (!Game_Flag_Query(431)) {
Scene_Exit_Add_2D_Exit(0, 394, 205, 464, 281, 0);
}
Scene_Exit_Add_2D_Exit(1, 560, 90, 639, 368, 1);
Scene_Exit_Add_2D_Exit(2, 108, 85, 175, 210, 3);
+
Ambient_Sounds_Add_Looping_Sound(331, 15, 0, 1);
Ambient_Sounds_Add_Looping_Sound(332, 40, 0, 1);
Ambient_Sounds_Add_Looping_Sound(333, 40, 0, 1);
@@ -46,7 +48,10 @@ void SceneScriptUG13::InitializeScene() {
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);
- if (Global_Variable_Query(kVariableChapter) == 4 && !Game_Flag_Query(kFlagMcCoyKilledHomeless)) {
+
+ if ( Global_Variable_Query(kVariableChapter) == 4
+ && !Game_Flag_Query(kFlagCT04HomelessKilledByMcCoy)
+ ) {
Actor_Set_Goal_Number(kActorTransient, 390);
}
if (Actor_Query_Goal_Number(kActorTransient) == 599) {
@@ -74,7 +79,7 @@ void SceneScriptUG13::SceneLoaded() {
Unclickable_Object("BASKET");
if ( Global_Variable_Query(kVariableChapter) >= 3
&& !Actor_Clue_Query(kActorMcCoy, kClueOriginalRequisitionForm)
- && Game_Flag_Query(kFlagMcCoyKilledHomeless)
+ && Game_Flag_Query(kFlagCT04HomelessKilledByMcCoy)
&& (Actor_Clue_Query(kActorMcCoy, kClueShippingForm)
|| Actor_Clue_Query(kActorMcCoy, kClueWeaponsOrderForm)
)
@@ -175,7 +180,7 @@ bool SceneScriptUG13::ClickedOnExit(int exitId) {
}
if (exitId == 1) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 39.0f, 52.94f, -528.0f, 0, 1, false, 0)) {
- Game_Flag_Set(351);
+ Game_Flag_Set(kFlagUG13toUG15);
Set_Enter(kSetUG15, kSceneUG15);
}
return true;
@@ -238,15 +243,15 @@ void SceneScriptUG13::PlayerWalkedIn() {
Loop_Actor_Travel_Stairs(kActorMcCoy, 11, 0, kAnimationModeIdle);
Footstep_Sound_Override_Off();
Game_Flag_Reset(435);
- } else if (Game_Flag_Query(350)) {
+ } else if (Game_Flag_Query(kFlagUG15toUG13)) {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -12.0f, 44.0f, -528.0f, 0, 0, false, 0);
- Game_Flag_Reset(350);
+ Game_Flag_Reset(kFlagUG15toUG13);
} else {
Loop_Actor_Walk_To_XYZ(kActorMcCoy, -60.0f, 55.24f, -816.0f, 0, 0, false, 0);
Game_Flag_Reset(429);
Player_Gains_Control();
}
- if (Actor_Query_Goal_Number(kActorTransient) >= 390 && !Game_Flag_Query(kFlagMcCoyKilledHomeless)) {
+ if (Actor_Query_Goal_Number(kActorTransient) >= 390 && !Game_Flag_Query(kFlagCT04HomelessKilledByMcCoy)) {
if (Game_Flag_Query(553)) {
if (Random_Query(1, 3) == 1) {
Actor_Set_Goal_Number(kActorTransient, 395);
diff --git a/engines/bladerunner/script/scene/ug14.cpp b/engines/bladerunner/script/scene/ug14.cpp
index 6e95691367..ace4b90365 100644
--- a/engines/bladerunner/script/scene/ug14.cpp
+++ b/engines/bladerunner/script/scene/ug14.cpp
@@ -25,32 +25,34 @@
namespace BladeRunner {
void SceneScriptUG14::InitializeScene() {
- if (Game_Flag_Query(349)) {
- Setup_Scene_Information(-278.0f, 12.97f, -152.0f, 200);
- } else if (Game_Flag_Query(344)) {
- Setup_Scene_Information(-50.0f, 129.0f, -814.0f, 533);
+ if (Game_Flag_Query(kFlagUG19toUG14)) {
+ Setup_Scene_Information(-278.0f, 12.97f, -152.0f, 200);
+ } else if (Game_Flag_Query(kFlagUG12toUG14)) {
+ Setup_Scene_Information( -50.0f, 129.0f, -814.0f, 533);
} else {
- Setup_Scene_Information(233.0f, 186.04f, -32.0f, 865);
+ Setup_Scene_Information( 233.0f, 186.04f, -32.0f, 865);
}
- Scene_Exit_Add_2D_Exit(0, 0, 232, 45, 427, 3);
- Scene_Exit_Add_2D_Exit(1, 175, 44, 228, 115, 0);
- Scene_Exit_Add_2D_Exit(2, 537, 0, 639, 190, 1);
+
+ Scene_Exit_Add_2D_Exit(0, 0, 232, 45, 427, 3);
+ Scene_Exit_Add_2D_Exit(1, 175, 44, 228, 115, 0);
+ Scene_Exit_Add_2D_Exit(2, 537, 0, 639, 190, 1);
+
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(292, 2, 20, 20, 25, -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(293, 2, 20, 20, 25, -100, 100, -100, 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(303, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(304, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(305, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(291, 2, 20, 20, 25, -100, 100, -100, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(292, 2, 20, 20, 25, -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(293, 2, 20, 20, 25, -100, 100, -100, 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(303, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(304, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(305, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
}
void SceneScriptUG14::SceneLoaded() {
@@ -84,36 +86,36 @@ bool SceneScriptUG14::ClickedOnExit(int exitId) {
}
if (!exitId) {
if (v1) {
- if (Loop_Actor_Walk_To_XYZ(kActorMcCoy, 141.47f, 128.92f, -150.16f, 0, 1, false, 0)) {
+ if (Loop_Actor_Walk_To_XYZ(kActorMcCoy, 141.47f, 128.92f, -150.16f, 0, true, false, 0)) {
return false;
}
Actor_Face_XYZ(kActorMcCoy, -14.53f, 12.12f, -150.16f, true);
Footstep_Sound_Override_On(3);
- Loop_Actor_Travel_Stairs(kActorMcCoy, 13, 0, kAnimationModeIdle);
+ Loop_Actor_Travel_Stairs(kActorMcCoy, 13, false, kAnimationModeIdle);
Footstep_Sound_Override_Off();
}
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -278.0f, 12.97f, -152.0f, 0, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -278.0f, 12.97f, -152.0f, 0, true, false, 0)) {
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(348);
+ Game_Flag_Set(kFlagUG14toUG19);
Set_Enter(kSetUG19, kSceneUG19);
}
return true;
}
if (exitId == 1) {
if (!v1) {
- if (Loop_Actor_Walk_To_XYZ(kActorMcCoy, -14.53f, 12.12f, -150.16f, 0, 1, false, 0)) {
+ if (Loop_Actor_Walk_To_XYZ(kActorMcCoy, -14.53f, 12.12f, -150.16f, 0, true, false, 0)) {
return false;
}
Actor_Face_XYZ(kActorMcCoy, 141.47f, 128.92f, -150.16f, true);
Footstep_Sound_Override_On(3);
- Loop_Actor_Travel_Stairs(kActorMcCoy, 13, 1, kAnimationModeIdle);
+ Loop_Actor_Travel_Stairs(kActorMcCoy, 13, true, kAnimationModeIdle);
Footstep_Sound_Override_Off();
}
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -50.0f, 129.0f, -814.0f, 0, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -50.0f, 129.0f, -814.0f, 0, true, false, 0)) {
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(345);
+ Game_Flag_Set(kFlagUG14toUG12);
Set_Enter(kSetCT08_CT51_UG12, kSceneUG12);
}
return true;
@@ -121,22 +123,22 @@ bool SceneScriptUG14::ClickedOnExit(int exitId) {
if (exitId == 2) {
if (!v1) {
- if (Loop_Actor_Walk_To_XYZ(kActorMcCoy, -14.53f, 12.12f, -150.16f, 0, 1, false, 0)) {
+ if (Loop_Actor_Walk_To_XYZ(kActorMcCoy, -14.53f, 12.12f, -150.16f, 0, true, false, 0)) {
return false;
}
Actor_Face_XYZ(kActorMcCoy, 141.47f, 128.92f, -150.16f, true);
Footstep_Sound_Override_On(3);
- Loop_Actor_Travel_Stairs(kActorMcCoy, 13, 1, kAnimationModeIdle);
+ Loop_Actor_Travel_Stairs(kActorMcCoy, 13, true, kAnimationModeIdle);
Footstep_Sound_Override_Off();
}
- if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 157.0f, 128.92f, -108.01f, 0, 1, false, 0)) {
+ if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 157.0f, 128.92f, -108.01f, 0, true, false, 0)) {
Footstep_Sound_Override_On(3);
- Loop_Actor_Travel_Stairs(kActorMcCoy, 6, 1, kAnimationModeIdle);
+ Loop_Actor_Travel_Stairs(kActorMcCoy, 6, true, kAnimationModeIdle);
Footstep_Sound_Override_Off();
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, 233.0f, 186.04f, -32.0f, 0, 0, false, 0);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, 233.0f, 186.04f, -32.0f, 0, false, false, 0);
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(346);
+ Game_Flag_Set(kFlagUG14toUG10);
Set_Enter(kSetUG10, kSceneUG10);
}
return true;
@@ -155,23 +157,26 @@ void SceneScriptUG14::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
}
void SceneScriptUG14::PlayerWalkedIn() {
- if (Game_Flag_Query(349)) {
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -250.0f, 12.97f, -152.0f, 0, 0, false, 0);
- Game_Flag_Reset(349);
- } else if (Game_Flag_Query(344)) {
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -50.0f, 129.0f, -604.0f, 0, 0, false, 0);
- Game_Flag_Reset(344);
+ if (Game_Flag_Query(kFlagUG19toUG14)) {
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -250.0f, 12.97f, -152.0f, 0, false, false, 0);
+ Game_Flag_Reset(kFlagUG19toUG14);
+ } else if (Game_Flag_Query(kFlagUG12toUG14)) {
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -50.0f, 129.0f, -604.0f, 0, false, false, 0);
+ Game_Flag_Reset(kFlagUG12toUG14);
} else {
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, 157.0f, 186.04f, -44.01f, 0, 0, false, 0);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, 157.0f, 186.04f, -44.01f, 0, false, false, 0);
Actor_Face_Heading(kActorMcCoy, 10, false);
Footstep_Sound_Override_On(3);
- Loop_Actor_Travel_Stairs(kActorMcCoy, 6, 0, kAnimationModeIdle);
+ Loop_Actor_Travel_Stairs(kActorMcCoy, 6, false, kAnimationModeIdle);
Footstep_Sound_Override_Off();
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, 157.0f, 128.92f, -148.01f, 0, 0, false, 0);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, 157.0f, 128.92f, -148.01f, 0, false, false, 0);
Actor_Face_Heading(kActorMcCoy, 807, false);
- Game_Flag_Reset(347);
+ Game_Flag_Reset(kFlagUG10toUG14);
}
- if (Global_Variable_Query(kVariableChapter) == 4 && Game_Flag_Query(kFlagDumpsterEmptied) && !Game_Flag_Query(694)) {
+ if ( Global_Variable_Query(kVariableChapter) == 4
+ && Game_Flag_Query(kFlagCT04HomelessBodyThrownAway)
+ && !Game_Flag_Query(kFlagUG14DeadHomeless)
+ ) {
Overlay_Play("UG14OVER", 0, 0, 1, 0);
Delay(1000);
Actor_Face_Heading(kActorMcCoy, 609, false);
@@ -179,7 +184,7 @@ void SceneScriptUG14::PlayerWalkedIn() {
Actor_Voice_Over(270, kActorVoiceOver);
Delay(2150);
Actor_Voice_Over(300, kActorVoiceOver);
- Game_Flag_Set(694);
+ Game_Flag_Set(kFlagUG14DeadHomeless);
}
//return false;
}
diff --git a/engines/bladerunner/script/scene/ug15.cpp b/engines/bladerunner/script/scene/ug15.cpp
index 4743c8d336..13408bbfab 100644
--- a/engines/bladerunner/script/scene/ug15.cpp
+++ b/engines/bladerunner/script/scene/ug15.cpp
@@ -25,57 +25,62 @@
namespace BladeRunner {
void SceneScriptUG15::InitializeScene() {
- if (Game_Flag_Query(353)) {
- Setup_Scene_Information(-25.0f, 26.31f, -434.0f, 520);
- } else if (Game_Flag_Query(kFlagUG16toUG15)) {
- Setup_Scene_Information(-17.0f, 26.31f, -346.0f, 711);
- } else if (Game_Flag_Query(355)) {
- Setup_Scene_Information(-18.0f, 48.07f, 62.0f, 650);
+ if (Game_Flag_Query(kFlagUG17toUG15)) {
+ Setup_Scene_Information( -25.0f, 26.31f, -434.0f, 520);
+ } else if (Game_Flag_Query(kFlagUG16toUG15a)) {
+ Setup_Scene_Information( -17.0f, 26.31f, -346.0f, 711);
+ } else if (Game_Flag_Query(kFlagUG16toUG15b)) {
+ Setup_Scene_Information( -18.0f, 48.07f, 62.0f, 650);
} else {
- Setup_Scene_Information(-238.0f, 48.07f, 222.0f, 180);
- if (Game_Flag_Query(676) && Random_Query(1, 10) == 10) {
+ Setup_Scene_Information(-238.0f, 48.07f, 222.0f, 180);
+ if (Game_Flag_Query(676)
+ && Random_Query(1, 10) == 10
+ ) {
Game_Flag_Reset(676);
}
}
if (Game_Flag_Query(682)) {
Scene_Loop_Set_Default(3);
}
- if (Game_Flag_Query(353) || Game_Flag_Query(kFlagUG16toUG15)) {
- Scene_Exit_Add_2D_Exit(0, 260, 0, 307, 298, 0);
+
+ if (Game_Flag_Query(kFlagUG17toUG15)
+ || Game_Flag_Query(kFlagUG16toUG15a)
+ ) {
+ Scene_Exit_Add_2D_Exit(0, 260, 0, 307, 298, 0);
Scene_Exit_Add_2D_Exit(1, 301, 147, 337, 304, 1);
- Game_Flag_Reset(353);
- Game_Flag_Reset(kFlagUG16toUG15);
+ Game_Flag_Reset(kFlagUG17toUG15);
+ Game_Flag_Reset(kFlagUG16toUG15a);
} else {
Scene_Exit_Add_2D_Exit(2, 406, 128, 480, 316, 1);
- Scene_Exit_Add_2D_Exit(3, 0, 0, 30, 479, 3);
+ Scene_Exit_Add_2D_Exit(3, 0, 0, 30, 479, 3);
}
+
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(292, 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(294, 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(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(305, 5, 50, 47, 57, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(1, 5, 50, 47, 57, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(57, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(58, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(306, 5, 50, 27, 37, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(307, 5, 50, 27, 37, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(308, 5, 50, 27, 37, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(196, 5, 50, 27, 37, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(197, 5, 50, 27, 37, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(198, 5, 50, 27, 37, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(199, 5, 50, 27, 37, -100, 100, -101, -101, 0, 0);
-
+ Ambient_Sounds_Add_Sound(291, 2, 20, 25, 33, -100, 100, -100, 100, 0, 0);
+ Ambient_Sounds_Add_Sound(292, 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(294, 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(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(305, 5, 50, 47, 57, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 1, 5, 50, 47, 57, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 57, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 58, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(306, 5, 50, 27, 37, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(307, 5, 50, 27, 37, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(308, 5, 50, 27, 37, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(196, 5, 50, 27, 37, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(197, 5, 50, 27, 37, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(198, 5, 50, 27, 37, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(199, 5, 50, 27, 37, -100, 100, -101, -101, 0, 0);
}
void SceneScriptUG15::SceneLoaded() {
@@ -107,20 +112,22 @@ bool SceneScriptUG15::ClickedOnExit(int exitId) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -25.0f, 26.31f, -434.0f, 0, 1, false, 0)) {
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(352);
+ Game_Flag_Set(kFlagUG15toUG17);
Set_Enter(kSetUG17, kSceneUG17);
}
return true;
}
+
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(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(kFlagUG15toUG16);
+ Game_Flag_Set(kFlagUG15toUG16a);
Set_Enter(kSetUG16, kSceneUG16);
}
return true;
}
+
if (exitId == 2) {
int v1 = Actor_Query_Goal_Number(kActorFreeSlotA);
if (v1 >= 300 && v1 <= 303) {
@@ -128,22 +135,22 @@ bool SceneScriptUG15::ClickedOnExit(int exitId) {
} 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(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(354);
+ Game_Flag_Set(kFlagUG15toUG16b);
Set_Enter(kSetUG16, kSceneUG16);
}
return true;
}
+
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(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(350);
+ Game_Flag_Set(kFlagUG15toUG13);
Set_Enter(kSetUG13, kSceneUG13);
}
return true;
}
return false;
-
}
bool SceneScriptUG15::ClickedOn2DRegion(int region) {
@@ -154,7 +161,9 @@ void SceneScriptUG15::SceneFrameAdvanced(int frame) {
if (Actor_Query_Goal_Number(kActorFreeSlotA) == 300) {
float x, y, z;
Actor_Query_XYZ(kActorMcCoy, &x, &y, &z);
- if (-160.0f <= x && z < 220.0f) {
+ if (-160.0f <= x
+ && z < 220.0f
+ ) {
Actor_Set_Goal_Number(kActorFreeSlotA, 301);
}
}
@@ -164,14 +173,19 @@ void SceneScriptUG15::SceneFrameAdvanced(int frame) {
if (Game_Flag_Query(677) && !Game_Flag_Query(682)) {
float x, y, z;
Actor_Query_XYZ(kActorMcCoy, &x, &y, &z);
- if (-180.0f <= x && (z < 220.0f && !Game_Flag_Query(724))) {
+ if (-180.0f <= x
+ && z < 220.0f
+ && !Game_Flag_Query(724)
+ ) {
Game_Flag_Set(724);
Game_Flag_Set(682);
Scene_Loop_Set_Default(3);
Scene_Loop_Start_Special(kSceneLoopModeOnce, 2, true);
Actor_Set_Goal_Number(kActorMcCoy, 390);
Actor_Query_XYZ(kActorFreeSlotA, &x, &y, &z);
- if (-200.0f < x && -62.0f > x) {
+ if (-200.0f < x
+ && -62.0f > x
+ ) {
Actor_Set_Goal_Number(kActorFreeSlotA, 309);
}
}
@@ -183,11 +197,11 @@ void SceneScriptUG15::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
}
void SceneScriptUG15::PlayerWalkedIn() {
- if (Game_Flag_Query(355)) {
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, -62.0f, 48.07f, 102.0f, 0, 0, false, 0);
- Game_Flag_Reset(355);
- } else if (Game_Flag_Query(351)) {
- Game_Flag_Reset(351);
+ if (Game_Flag_Query(kFlagUG16toUG15b)) {
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, -62.0f, 48.07f, 102.0f, 0, false, false, 0);
+ Game_Flag_Reset(kFlagUG16toUG15b);
+ } else if (Game_Flag_Query(kFlagUG13toUG15)) {
+ Game_Flag_Reset(kFlagUG13toUG15);
if (!Game_Flag_Query(676)) {
Actor_Set_Goal_Number(kActorFreeSlotA, 310);
}
diff --git a/engines/bladerunner/script/scene/ug16.cpp b/engines/bladerunner/script/scene/ug16.cpp
index fbffe9f701..858f4d1b8e 100644
--- a/engines/bladerunner/script/scene/ug16.cpp
+++ b/engines/bladerunner/script/scene/ug16.cpp
@@ -28,19 +28,22 @@ void SceneScriptUG16::InitializeScene() {
if (Game_Flag_Query(552)) {
Setup_Scene_Information(-270.76f, -34.88f, -504.02f, 404);
Game_Flag_Reset(552);
- } else if (Game_Flag_Query(kFlagUG15toUG16)) {
+ } else if (Game_Flag_Query(kFlagUG15toUG16a)) {
Setup_Scene_Information(-322.0f, -34.0f, -404.0f, 345);
- Game_Flag_Reset(kFlagUG15toUG16);
+ Game_Flag_Reset(kFlagUG15toUG16a);
} else {
Setup_Scene_Information(-318.0f, -34.0f, -216.0f, 340);
- Game_Flag_Reset(354);
+ Game_Flag_Reset(kFlagUG15toUG16b);
}
+
Scene_Exit_Add_2D_Exit(0, 242, 169, 282, 262, 3);
Scene_Exit_Add_2D_Exit(1, 375, 166, 407, 251, 3);
Scene_Exit_Add_2D_Exit(2, 461, 148, 523, 248, 0);
+
Ambient_Sounds_Add_Looping_Sound(516, 33, 81, 0);
- Ambient_Sounds_Add_Looping_Sound(332, 40, 0, 1);
- Ambient_Sounds_Add_Looping_Sound(333, 40, 0, 1);
+ Ambient_Sounds_Add_Looping_Sound(332, 40, 0, 1);
+ Ambient_Sounds_Add_Looping_Sound(333, 40, 0, 1);
+
if (Game_Flag_Query(568)) {
Scene_Loop_Set_Default(5);
} else {
@@ -132,24 +135,26 @@ bool SceneScriptUG16::ClickedOnExit(int exitId) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -322.0f, -34.0f, -216.0f, 0, 1, false, 0)) {
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(355);
+ Game_Flag_Set(kFlagUG16toUG15b);
Set_Enter(kSetUG15, kSceneUG15);
}
return true;
}
+
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(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(kFlagUG16toUG15);
+ Game_Flag_Set(kFlagUG16toUG15a);
Set_Enter(kSetUG15, kSceneUG15);
}
return true;
}
+
if (exitId == 2) {
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);
+ Loop_Actor_Travel_Stairs(kActorMcCoy, 13, true, kAnimationModeIdle);
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
Game_Flag_Set(551);
diff --git a/engines/bladerunner/script/scene/ug17.cpp b/engines/bladerunner/script/scene/ug17.cpp
index 104c831e59..afbe340a39 100644
--- a/engines/bladerunner/script/scene/ug17.cpp
+++ b/engines/bladerunner/script/scene/ug17.cpp
@@ -31,14 +31,17 @@ void SceneScriptUG17::InitializeScene() {
} else {
Setup_Scene_Information(1000.0f, 67.96f, -1539.0f, 0);
}
- Scene_Exit_Add_2D_Exit(0, 610, 0, 639, 479, 1);
+
+ Scene_Exit_Add_2D_Exit(0, 610, 0, 639, 479, 1);
Scene_Exit_Add_2D_Exit(1, 551, 347, 594, 386, 0);
+
Ambient_Sounds_Add_Looping_Sound(589, 100, 1, 1);
- Ambient_Sounds_Add_Looping_Sound(384, 50, 1, 1);
+ Ambient_Sounds_Add_Looping_Sound(384, 50, 1, 1);
Ambient_Sounds_Add_Sound(72, 5, 80, 10, 11, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(73, 5, 80, 10, 11, -100, 100, -101, -101, 0, 0);
Ambient_Sounds_Add_Sound(74, 5, 80, 10, 11, -100, 100, -101, -101, 0, 0);
- Overlay_Play("UG17OVER", 0, 1, 0, 0);
+
+ Overlay_Play("UG17OVER", 0, true, false, 0);
}
void SceneScriptUG17::SceneLoaded() {
@@ -67,7 +70,7 @@ bool SceneScriptUG17::ClickedOnExit(int exitId) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 1000.0f, 67.96f, -1539.0f, 0, 1, false, 0)) {
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(353);
+ Game_Flag_Set(kFlagUG17toUG15);
Set_Enter(kSetUG15, kSceneUG15);
}
return true;
@@ -101,9 +104,9 @@ void SceneScriptUG17::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
}
void SceneScriptUG17::PlayerWalkedIn() {
- if (Game_Flag_Query(352)) {
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, 961.0f, 67.96f, -1539.0f, 0, 0, false, 0);
- Game_Flag_Reset(352);
+ if (Game_Flag_Query(kFlagUG15toUG17)) {
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, 961.0f, 67.96f, -1539.0f, 0, false, false, 0);
+ Game_Flag_Reset(kFlagUG15toUG17);
}
//return false;
}
diff --git a/engines/bladerunner/script/scene/ug19.cpp b/engines/bladerunner/script/scene/ug19.cpp
index 4c7d96375e..40097dee12 100644
--- a/engines/bladerunner/script/scene/ug19.cpp
+++ b/engines/bladerunner/script/scene/ug19.cpp
@@ -25,38 +25,39 @@
namespace BladeRunner {
void SceneScriptUG19::InitializeScene() {
- if (Game_Flag_Query(357)) {
+ if (Game_Flag_Query(kFlagMA07toUG19)) {
Setup_Scene_Information(67.03f, 105.0f, -74.97f, 256);
} else {
- Setup_Scene_Information(181.0f, 11.52f, -18.0f, 777);
+ Setup_Scene_Information(181.0f, 11.52f, -18.0f, 777);
}
- Scene_Exit_Add_2D_Exit(0, 351, 0, 491, 347, 0);
+
+ Scene_Exit_Add_2D_Exit(0, 351, 0, 491, 347, 0);
Scene_Exit_Add_2D_Exit(1, 548, 124, 639, 369, 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(292, 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(294, 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(401, 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(396, 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(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(305, 5, 50, 47, 57, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(1, 5, 50, 47, 57, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(57, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(58, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(306, 5, 50, 27, 37, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(307, 5, 50, 27, 37, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(308, 5, 50, 27, 37, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(196, 5, 50, 27, 37, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(197, 5, 50, 27, 37, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(198, 5, 50, 27, 37, -100, 100, -101, -101, 0, 0);
- Ambient_Sounds_Add_Sound(199, 5, 50, 27, 37, -100, 100, -101, -101, 0, 0);
+ 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(292, 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(294, 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(401, 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(396, 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(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(305, 5, 50, 47, 57, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 1, 5, 50, 47, 57, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 57, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound( 58, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(306, 5, 50, 27, 37, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(307, 5, 50, 27, 37, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(308, 5, 50, 27, 37, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(196, 5, 50, 27, 37, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(197, 5, 50, 27, 37, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(198, 5, 50, 27, 37, -100, 100, -101, -101, 0, 0);
+ Ambient_Sounds_Add_Sound(199, 5, 50, 27, 37, -100, 100, -101, -101, 0, 0);
}
void SceneScriptUG19::SceneLoaded() {
@@ -91,7 +92,7 @@ bool SceneScriptUG19::ClickedOnExit(int exitId) {
Footstep_Sound_Override_Off();
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(356);
+ Game_Flag_Set(kFlagUG19toMA07);
Set_Enter(kSetMA07, kSceneMA07);
}
return true;
@@ -100,7 +101,7 @@ bool SceneScriptUG19::ClickedOnExit(int exitId) {
if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 181.0f, 11.52f, -18.0f, 0, 1, false, 0)) {
Ambient_Sounds_Remove_All_Non_Looping_Sounds(true);
Ambient_Sounds_Remove_All_Looping_Sounds(1);
- Game_Flag_Set(349);
+ Game_Flag_Set(kFlagUG19toUG14);
Set_Enter(kSetUG14, kSceneUG14);
}
return true;
@@ -119,13 +120,13 @@ void SceneScriptUG19::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
}
void SceneScriptUG19::PlayerWalkedIn() {
- if (Game_Flag_Query(348)) {
- Game_Flag_Reset(348);
- Loop_Actor_Walk_To_XYZ(kActorMcCoy, 129.0f, 11.52f, -18.0f, 0, 0, false, 0);
+ if (Game_Flag_Query(kFlagUG14toUG19)) {
+ Game_Flag_Reset(kFlagUG14toUG19);
+ Loop_Actor_Walk_To_XYZ(kActorMcCoy, 129.0f, 11.52f, -18.0f, 0, false, false, 0);
} else {
- Game_Flag_Reset(357);
+ Game_Flag_Reset(kFlagMA07toUG19);
Footstep_Sound_Override_On(3);
- Loop_Actor_Travel_Ladder(kActorMcCoy, 8, 0, 0);
+ Loop_Actor_Travel_Ladder(kActorMcCoy, 8, false, 0);
Footstep_Sound_Override_Off();
}
}
diff --git a/engines/bladerunner/script/scene_script.h b/engines/bladerunner/script/scene_script.h
index ee439018d2..cb0b3a4204 100644
--- a/engines/bladerunner/script/scene_script.h
+++ b/engines/bladerunner/script/scene_script.h
@@ -168,11 +168,11 @@ DECLARE_SCRIPT(DR02)
END_SCRIPT
DECLARE_SCRIPT(DR03)
- void sub_401B18();
+ void dialogueWithChew();
END_SCRIPT
DECLARE_SCRIPT(DR04)
- bool sub_401160();
+ bool farEnoughFromExplosion();
END_SCRIPT
DECLARE_SCRIPT(DR05)
@@ -441,7 +441,7 @@ DECLARE_SCRIPT(TB06)
END_SCRIPT
DECLARE_SCRIPT(TB07)
- void sub_401B0C();
+ void McCoyTalkWithRachaelAndTyrell();
END_SCRIPT
DECLARE_SCRIPT(UG01)