[Scummvm-git-logs] scummvm master -> 364a2aa0fbe1c6640fdaeb15cfd7cc66fd9e4a42

peterkohaut peterkohaut at users.noreply.github.com
Mon Jan 21 22:03:23 CET 2019


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
364a2aa0fb BLADERUNNER: More game constants


Commit: 364a2aa0fbe1c6640fdaeb15cfd7cc66fd9e4a42
    https://github.com/scummvm/scummvm/commit/364a2aa0fbe1c6640fdaeb15cfd7cc66fd9e4a42
Author: Peter Kohaut (peter.kohaut at gmail.com)
Date: 2019-01-21T22:03:01+01:00

Commit Message:
BLADERUNNER: More game constants

Added Region_Check functionality
Code cleanup

Changed paths:
    engines/bladerunner/actor.cpp
    engines/bladerunner/game_constants.h
    engines/bladerunner/script/ai/clovis.cpp
    engines/bladerunner/script/ai/dektora.cpp
    engines/bladerunner/script/ai/hawkers_barkeep.cpp
    engines/bladerunner/script/ai/holloway.cpp
    engines/bladerunner/script/ai/insect_dealer.cpp
    engines/bladerunner/script/ai/izo.cpp
    engines/bladerunner/script/ai/lucy.cpp
    engines/bladerunner/script/ai/mccoy.cpp
    engines/bladerunner/script/ai/runciter.cpp
    engines/bladerunner/script/ai/sadik.cpp
    engines/bladerunner/script/ai/steele.cpp
    engines/bladerunner/script/scene/ar01.cpp
    engines/bladerunner/script/scene/ar02.cpp
    engines/bladerunner/script/scene/bb01.cpp
    engines/bladerunner/script/scene/bb02.cpp
    engines/bladerunner/script/scene/bb03.cpp
    engines/bladerunner/script/scene/bb04.cpp
    engines/bladerunner/script/scene/bb05.cpp
    engines/bladerunner/script/scene/bb06.cpp
    engines/bladerunner/script/scene/bb07.cpp
    engines/bladerunner/script/scene/bb08.cpp
    engines/bladerunner/script/scene/bb09.cpp
    engines/bladerunner/script/scene/bb10.cpp
    engines/bladerunner/script/scene/bb11.cpp
    engines/bladerunner/script/scene/bb12.cpp
    engines/bladerunner/script/scene/bb51.cpp
    engines/bladerunner/script/scene/ct01.cpp
    engines/bladerunner/script/scene/ct02.cpp
    engines/bladerunner/script/scene/ct03.cpp
    engines/bladerunner/script/scene/ct04.cpp
    engines/bladerunner/script/scene/ct05.cpp
    engines/bladerunner/script/scene/ct06.cpp
    engines/bladerunner/script/scene/ct07.cpp
    engines/bladerunner/script/scene/ct08.cpp
    engines/bladerunner/script/scene/ct09.cpp
    engines/bladerunner/script/scene/ct10.cpp
    engines/bladerunner/script/scene/ct11.cpp
    engines/bladerunner/script/scene/ct12.cpp
    engines/bladerunner/script/scene/ct51.cpp
    engines/bladerunner/script/scene/dr01.cpp
    engines/bladerunner/script/scene/dr04.cpp
    engines/bladerunner/script/scene/dr05.cpp
    engines/bladerunner/script/scene/hc01.cpp
    engines/bladerunner/script/scene/hc02.cpp
    engines/bladerunner/script/scene/hc03.cpp
    engines/bladerunner/script/scene/hc04.cpp
    engines/bladerunner/script/scene/hf01.cpp
    engines/bladerunner/script/scene/hf02.cpp
    engines/bladerunner/script/scene/hf03.cpp
    engines/bladerunner/script/scene/hf04.cpp
    engines/bladerunner/script/scene/hf05.cpp
    engines/bladerunner/script/scene/hf06.cpp
    engines/bladerunner/script/scene/hf07.cpp
    engines/bladerunner/script/scene/kp01.cpp
    engines/bladerunner/script/scene/kp02.cpp
    engines/bladerunner/script/scene/kp03.cpp
    engines/bladerunner/script/scene/kp04.cpp
    engines/bladerunner/script/scene/kp05.cpp
    engines/bladerunner/script/scene/kp06.cpp
    engines/bladerunner/script/scene/kp07.cpp
    engines/bladerunner/script/scene/ma04.cpp
    engines/bladerunner/script/scene/ma07.cpp
    engines/bladerunner/script/scene/nr01.cpp
    engines/bladerunner/script/scene/nr02.cpp
    engines/bladerunner/script/scene/nr03.cpp
    engines/bladerunner/script/scene/nr04.cpp
    engines/bladerunner/script/scene/nr05.cpp
    engines/bladerunner/script/scene/nr06.cpp
    engines/bladerunner/script/scene/nr07.cpp
    engines/bladerunner/script/scene/nr08.cpp
    engines/bladerunner/script/scene/nr09.cpp
    engines/bladerunner/script/scene/nr10.cpp
    engines/bladerunner/script/scene/nr11.cpp
    engines/bladerunner/script/scene/ps01.cpp
    engines/bladerunner/script/scene/ps02.cpp
    engines/bladerunner/script/scene/ps03.cpp
    engines/bladerunner/script/scene/ps04.cpp
    engines/bladerunner/script/scene/ps06.cpp
    engines/bladerunner/script/scene/ps09.cpp
    engines/bladerunner/script/scene/ps10.cpp
    engines/bladerunner/script/scene/ps11.cpp
    engines/bladerunner/script/scene/ps12.cpp
    engines/bladerunner/script/scene/ps13.cpp
    engines/bladerunner/script/scene/rc01.cpp
    engines/bladerunner/script/scene/rc02.cpp
    engines/bladerunner/script/scene/rc03.cpp
    engines/bladerunner/script/scene/tb02.cpp
    engines/bladerunner/script/scene/tb03.cpp
    engines/bladerunner/script/scene/tb05.cpp
    engines/bladerunner/script/scene/tb06.cpp
    engines/bladerunner/script/scene/tb07.cpp
    engines/bladerunner/script/scene/ug01.cpp
    engines/bladerunner/script/scene/ug02.cpp
    engines/bladerunner/script/scene/ug03.cpp
    engines/bladerunner/script/scene/ug04.cpp
    engines/bladerunner/script/scene/ug05.cpp
    engines/bladerunner/script/scene/ug06.cpp
    engines/bladerunner/script/scene/ug07.cpp
    engines/bladerunner/script/scene/ug08.cpp
    engines/bladerunner/script/scene/ug09.cpp
    engines/bladerunner/script/scene/ug10.cpp
    engines/bladerunner/script/scene/ug12.cpp
    engines/bladerunner/script/scene/ug13.cpp
    engines/bladerunner/script/scene/ug14.cpp
    engines/bladerunner/script/scene/ug15.cpp
    engines/bladerunner/script/scene/ug16.cpp
    engines/bladerunner/script/scene/ug17.cpp
    engines/bladerunner/script/scene/ug18.cpp
    engines/bladerunner/script/scene/ug19.cpp
    engines/bladerunner/script/scene_script.cpp
    engines/bladerunner/script/scene_script.h
    engines/bladerunner/script/script.cpp
    engines/bladerunner/script/script.h


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





More information about the Scummvm-git-logs mailing list