[Scummvm-git-logs] scummvm master -> a03dbae1f0d52d288db662cf70fc535ad42ac4b4

antoniou79 antoniou at cti.gr
Fri Mar 22 22:59:45 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:
a03dbae1f0 BLADERUNNER: All maze targets normalized


Commit: a03dbae1f0d52d288db662cf70fc535ad42ac4b4
    https://github.com/scummvm/scummvm/commit/a03dbae1f0d52d288db662cf70fc535ad42ac4b4
Author: Thanasis Antoniou (a.antoniou79 at gmail.com)
Date: 2019-03-22T23:59:21+02:00

Commit Message:
BLADERUNNER: All maze targets normalized

Max achievable score is verified 80 as it should be if all targets were normal

Since there are special targets (to be restored in the next commit) the max score with be above 80 and it's not a fixed value known in advance.

Changed paths:
    engines/bladerunner/script/scene/ps10.cpp
    engines/bladerunner/script/scene/ps11.cpp
    engines/bladerunner/script/scene/ps12.cpp


diff --git a/engines/bladerunner/script/scene/ps10.cpp b/engines/bladerunner/script/scene/ps10.cpp
index 3934ebc..431ee7d 100644
--- a/engines/bladerunner/script/scene/ps10.cpp
+++ b/engines/bladerunner/script/scene/ps10.cpp
@@ -92,7 +92,6 @@ static const int *getPoliceMazePS10TrackData2() {  // Enemy linked series (kItem
 #if BLADERUNNER_ORIGINAL_BUGS
 #else
 		kPMTITargetSet,       kItemPS10Target2, 0, // remove target-able here - only for Target2 item
-		kPMTIPausedReset,     kItemPS10Target3,
 #endif // BLADERUNNER_ORIGINAL_BUGS
 		kPMTIPausedReset,     kItemPS10Target5,
 		kPMTIPausedSet,       kItemPS10Target2,
@@ -102,7 +101,6 @@ static const int *getPoliceMazePS10TrackData2() {  // Enemy linked series (kItem
 	return trackData;
 }
 
-// NOTE Track 3 is used only once as is; it's activated when entering the room
 static const int *getPoliceMazePS10TrackData3() {  // Enemy (kItemPS10Target3) - Starts activated - Rotating reveal
 	static int trackData[] = {
 		kPMTIActivate,        kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount,
@@ -138,7 +136,7 @@ static const int *getPoliceMazePS10TrackData3() {  // Enemy (kItemPS10Target3) -
 #if BLADERUNNER_ORIGINAL_BUGS
 #else
 		kPMTITargetSet,       kItemPS10Target3, 0, // remove target-able here
-		kPMTIPausedSet,       kItemPS10Target3,
+//		kPMTIPausedSet,       kItemPS10Target3,    // It is intentional (original) that kItemPS10Target3 does not get paused - This target loops on its own
 #endif // BLADERUNNER_ORIGINAL_BUGS
 		kPMTIRestart
 	};
@@ -315,7 +313,7 @@ static const int *getPoliceMazePS10TrackData8() {  // Enemy (kItemPS10Target8) -
 #if BLADERUNNER_ORIGINAL_BUGS
 		kPMTIWait,            0,                    // this is too fast
 #else
-		kPMTIWait,            250,
+		kPMTIWait,            100,
 #endif // BLADERUNNER_ORIGINAL_BUGS
 		kPMTIShoot,           27, 33,
 		kPMTIMove,            0,
diff --git a/engines/bladerunner/script/scene/ps11.cpp b/engines/bladerunner/script/scene/ps11.cpp
index d511899..ad8be4a 100644
--- a/engines/bladerunner/script/scene/ps11.cpp
+++ b/engines/bladerunner/script/scene/ps11.cpp
@@ -255,7 +255,11 @@ static const int *getPoliceMazePS11TrackData14() {  // Enemy (kItemPS11Target6)
 		kPMTIObstacleReset,   kItemPS11Target6,
 		kPMTITargetSet,       kItemPS11Target6, 1,
 		kPMTIEnemyReset,      kItemPS11Target6,
-		kPMTIFacing,          900,
+#if BLADERUNNER_ORIGINAL_BUGS
+		kPMTIFacing,          900,                  // orientation is wrong here - should conceal the gun entirely
+#else
+		kPMTIFacing,          750,              // corrected orientation
+#endif // BLADERUNNER_ORIGINAL_BUGS
 		kPMTIPosition,        0,
 		kPMTIWaitRandom,      3000, 6000,
 		kPMTIObstacleSet,     kItemPS11Target6,
@@ -267,9 +271,9 @@ static const int *getPoliceMazePS11TrackData14() {  // Enemy (kItemPS11Target6)
 		kPMTIRotate,          644, 80,
 		kPMTIWait,            0,
 #if BLADERUNNER_ORIGINAL_BUGS
-1		kPMTIRotate,          388, 80,              // TODO fix orientation here
+1		kPMTIRotate,          388, 80,              // orientation is wrong here
 #else
-		kPMTIRotate,          280, 80,              // corrected orientation
+		kPMTIRotate,          260, 80,              // corrected orientation
 #endif // BLADERUNNER_ORIGINAL_BUGS
 		kPMTIWait,            1000,
 		kPMTIShoot,           27, 33,
diff --git a/engines/bladerunner/script/scene/ps12.cpp b/engines/bladerunner/script/scene/ps12.cpp
index 66b4a89..b717dc6 100644
--- a/engines/bladerunner/script/scene/ps12.cpp
+++ b/engines/bladerunner/script/scene/ps12.cpp
@@ -377,7 +377,9 @@ static const int *getPoliceMazePS12TrackData36() {  // Enemy (kItemPS12Target6,
 	return trackData;
 }
 
-static const int *getPoliceMazePS12TrackData37() {  // Innocent (kItemPS12Target9) - Starts activated
+// kItemPS12Target9 and kItemPS12Target10 go together (innocent and enemy who uses innocent as a human shield)
+// They count as one activated target, but they are credited separately (+1 for not shooting the innocent, +1 for shooting the enemy)
+static const int *getPoliceMazePS12TrackData37() {  // Special: Innocent (kItemPS12Target9) - Starts activated, goes together with enemy kItemPS12Target10 (not same target)
 	static int trackData[] = {
 		kPMTIActivate,        kVariablePoliceMazePS12TargetCounter, kPoliceMazePS12TargetCount,
 		kPMTIVariableInc,     kVariablePoliceMazePS12TargetCounter, kPoliceMazePS12TargetCount,
@@ -387,7 +389,7 @@ static const int *getPoliceMazePS12TrackData37() {  // Innocent (kItemPS12Target
 #endif // BLADERUNNER_ORIGINAL_BUGS
 		kPMTIObstacleReset,   kItemPS12Target9,
 		kPMTIWaitRandom,      3000, 6000,
-		kPMTIPausedReset,     kItemPS12Target10,    // TODO MAZE A bug? intended? Why is kItemPS12Target10 unpaused so early?
+		kPMTIPausedReset,     kItemPS12Target10,    // kItemPS12Target10 unpaused early since he is the enemy using kItemPS12Target9 as human shield
 		kPMTIFacing,          1010,
 		kPMTIPosition,        0,
 		kPMTIWait,            2000,
@@ -416,6 +418,8 @@ static const int *getPoliceMazePS12TrackData38() {  // Enemy (kItemPS12Target10)
 	static int trackData[] = {
 #if BLADERUNNER_ORIGINAL_BUGS
 #else
+		kPMTIActivate,        kVariablePoliceMazePS12TargetCounter, kPoliceMazePS12TargetCount, // TODO MAZE A bug? intended? Missing activate instruction
+		kPMTIVariableInc,     kVariablePoliceMazePS12TargetCounter, kPoliceMazePS12TargetCount, // TODO MAZE A bug? intended? Missing increase counter instruction
 		kPMTITargetSet,       kItemPS12Target10, 0, // remove target-able here
 #endif // BLADERUNNER_ORIGINAL_BUGS
 		kPMTIObstacleReset,   kItemPS12Target10,
@@ -560,10 +564,14 @@ static const int *getPoliceMazePS12TrackData41() {  // Innocent (kItemPS12Target
 	return trackData;
 }
 
+// kItemPS12Target14 does not count as an Active target in the original code
+// Supposedly he is "Special" in the sense that he acts as a potential bonus point since he appears from a place where an innocent (kItemPS12Target16) can appear
 static const int *getPoliceMazePS12TrackData42() {  // Enemy (kItemPS12Target14)
 	static int trackData[] = {
 #if BLADERUNNER_ORIGINAL_BUGS
 #else
+		kPMTIActivate,        kVariablePoliceMazePS12TargetCounter, kPoliceMazePS12TargetCount, // TODO MAZE A bug? intended? Missing activate instruction
+		kPMTIVariableInc,     kVariablePoliceMazePS12TargetCounter, kPoliceMazePS12TargetCount, // TODO MAZE A bug? intended? Missing increase counter instruction
 		kPMTITargetSet,       kItemPS12Target14, 0, // remove target-able here
 #endif // BLADERUNNER_ORIGINAL_BUGS
 		kPMTIObstacleReset,   kItemPS12Target14,
@@ -688,7 +696,7 @@ static const int *getPoliceMazePS12TrackData45() {  // Enemy (kItemPS12Target17)
 		kPMTITargetSet,       kItemPS12Target17, 1,
 		kPMTIMove,            9,
 		kPMTIWait,            1000,
-		kPMTIPlaySound,       495, 33,             // ASDF REVEAL BELL
+		kPMTIPlaySound,       495, 33,              // ASDF REVEAL BELL
 		kPMTIEnemySet,        kItemPS12Target17,    // rotate - reveal
 		kPMTIRotate,          284, 80,
 		kPMTIWait,            0,





More information about the Scummvm-git-logs mailing list