diff options
Diffstat (limited to 'engines/bladerunner/script')
-rw-r--r-- | engines/bladerunner/script/police_maze.cpp | 91 | ||||
-rw-r--r-- | engines/bladerunner/script/scene/ps10.cpp | 95 | ||||
-rw-r--r-- | engines/bladerunner/script/scene/ps11.cpp | 62 | ||||
-rw-r--r-- | engines/bladerunner/script/scene/ps12.cpp | 34 | ||||
-rw-r--r-- | engines/bladerunner/script/scene/ps13.cpp | 28 |
5 files changed, 107 insertions, 203 deletions
diff --git a/engines/bladerunner/script/police_maze.cpp b/engines/bladerunner/script/police_maze.cpp index d3d652c8d0..99a5384e94 100644 --- a/engines/bladerunner/script/police_maze.cpp +++ b/engines/bladerunner/script/police_maze.cpp @@ -30,7 +30,7 @@ #include "bladerunner/script/police_maze.h" #include "bladerunner/script/scene_script.h" #include "bladerunner/time.h" -#include "bladerunner/subtitles.h" // TODO Remove if no longer need to display score and debug info on-screen +//#include "bladerunner/subtitles.h" // Display score and debug info on-screen // ---------------------- // Maze point system info @@ -61,27 +61,24 @@ // c) getting shot // // Combat Point System: -// + 1: gain a point when an enemy (revealed) is shot (Item_Spin_In_World) -// - 1: lose a point when an innocent or unrevealed enemy is shot (Item_Spin_In_World) -// + 1: gain a point when an innocent escapes (kPMTILeave instruction) -// - 1: lose a point when an enemy shoots McCoy (kPMTIShoot) +// + 1: gain a point when an enemy (revealed) is shot (at Item_Spin_In_World) +// - 1: lose a point when an innocent or unrevealed enemy is shot (at Item_Spin_In_World) +// + 1: gain a point when an innocent escapes (at kPMTILeave instruction) +// - 1: lose a point when an enemy shoots McCoy (at kPMTIShoot) // // For the maximum score, all 4 * 20 = 80 targets have to get activated and handled properly. // Since McCoy always gains one (1) point per target (enemy or innocent) for that, // the maximum score *should be*: 80 points. -// [TODO] First pass of fixes: Normalize the original special targets. -// Ensure the high score of 80 is achievable -// [TODO] Second pass of fixes: Restore the original special (not bugged) targets. -// Check achievable high score (should be higher than 80) -// [TODO] However, there are some *special* target types: -// 1.[TODO] Targets that will count as multiple targets without increasing -// the active target count more than once. -// 2.[TODO] Targets that won't increase the active target count at all. // -// So the maximum achievable score is greater than 80 points. -// Taking all those targets into account (...) -// ([TODO] can they appear randomly more than once via kPMTIPausedReset1of2 or kPMTIPausedReset1of3?) -// ([TODO] is the highest score not a fixed number?) +// However, there are some *special* target types: +// 1. Targets that will count as multiple targets without increasing +// the active target count more than once. +// 2. Targets that won't increase the active target count at all, +// and act as bonus points themselves. (eg. kItemPS12Target10, kItemPS12Target14) +// +// With the account of special targets the maximum achievable score will be greater than 80 points. +// Since the special targets can appear randomly (by use of the kPMTIPausedReset1of2, kPMTIPausedReset1of3 instructions) +// the highest score is not a predefined fixed number and will differ per run. It will always be above 80 points. // namespace BladeRunner { @@ -147,70 +144,16 @@ void PoliceMaze::tick() { _tracks[i]->tick(); } -// int remainingActiveTargets = 0; // TODO Un-comment this line while debugging the maze -// int targetIdsActive[kNumMazeTracks] = {0}; // TODO Un-comment this line while debugging the maze -// int j = 0; // TODO Un-comment this line while debugging the maze bool notFound = true; for (int i = 0; i < kNumMazeTracks; i++) { if (!_tracks[i]->isPaused()) { notFound = false; -// targetIdsActive[j++] = i; // TODO Un-comment this line while debugging the maze -// remainingActiveTargets++; // TODO Un-comment this line while debugging the maze - break; // TODO Comment-out this break while debugging the maze (debug messages on screen about all active targets) + break; } } - Common::String scoreString; -// TODO un-comment this segment of updating activeTargetsString while debugging the maze -// Common::String activeTargetsString; -// for (int i = 0; i < kNumMazeTracks; ++i) { -// if (_vm->_items->isTarget(i)) { -// activeTargetsString += Common::String::format(" %d", (i+1)); -// } -// } -// activeTargetsString += Common::String::format("] \n"); -// for (int i = 0; i < remainingActiveTargets; ++i) { -// j = targetIdsActive[i]; -// activeTargetsString += Common::String::format(" %d{%s:%s:%s:%s:%s}", -// (j+1), -// _tracks[j]->_isPaused?"P":"X", -// _tracks[j]->_isWaiting?"W":"X", -// _vm->_items->isSpinning(j)?"S":"X", -// _vm->_items->isTarget(j)?"T":"X", -// _vm->_items->isVisible(j)?"V":"X" ); -// } -// int allTargetsNum = SceneScriptPS10::getPoliceMazePS10TargetCount() -// + SceneScriptPS11::getPoliceMazePS11TargetCount() -// + SceneScriptPS12::getPoliceMazePS12TargetCount() -// + SceneScriptPS13::getPoliceMazePS13TargetCount(); - int totalTargetsNumInScene = 0; - int currTargetsCounUpForRoom = 0; -// const int initActivatedTargetsPS10 = 4; -// const int initActivatedTargetsPS11 = 4; -// const int initActivatedTargetsPS12 = 5; -// const int initActivatedTargetsPS13 = 4; - - int currMazeScore = Global_Variable_Query(kVariablePoliceMazeScore); - if (_vm->_scene->getSceneId() == kScenePS10) { - totalTargetsNumInScene = SceneScriptPS10::getPoliceMazePS10TargetCount(); - currTargetsCounUpForRoom = Global_Variable_Query(kVariablePoliceMazePS10TargetCounter); - } else if (_vm->_scene->getSceneId() == kScenePS11) { - totalTargetsNumInScene = SceneScriptPS11::getPoliceMazePS11TargetCount(); - currTargetsCounUpForRoom = Global_Variable_Query(kVariablePoliceMazePS11TargetCounter); - } else if (_vm->_scene->getSceneId() == kScenePS12) { - totalTargetsNumInScene = SceneScriptPS12::getPoliceMazePS12TargetCount(); - currTargetsCounUpForRoom = Global_Variable_Query(kVariablePoliceMazePS12TargetCounter); - } else if (_vm->_scene->getSceneId() == kScenePS13) { - totalTargetsNumInScene = SceneScriptPS13::getPoliceMazePS13TargetCount(); - currTargetsCounUpForRoom = Global_Variable_Query(kVariablePoliceMazePS13TargetCounter); - } -// scoreString = Common::String::format("Score: %02d (%02d), [%s]", -// currMazeScore - (totalTargetsNumInScene - currTargetsCounUpForRoom), -// totalTargetsNumInScene - currTargetsCounUpForRoom, -// activeTargetsString.c_str()); - scoreString = Common::String::format("Score: %02d", currMazeScore - (totalTargetsNumInScene - currTargetsCounUpForRoom)); - _vm->_subtitles->setGameSubsText(scoreString, true); - _vm->_subtitles->show(); +// _vm->_subtitles->setGameSubsText(Common::String::format("Score: %02d", Global_Variable_Query(kVariablePoliceMazeScore)), true); // for debug purposes, show maze score +// _vm->_subtitles->show(); // for debug purposes, show maze score if (notFound && _isActive && !_isEnding) { _isActive = false; diff --git a/engines/bladerunner/script/scene/ps10.cpp b/engines/bladerunner/script/scene/ps10.cpp index 431ee7d3b7..eadcea523c 100644 --- a/engines/bladerunner/script/scene/ps10.cpp +++ b/engines/bladerunner/script/scene/ps10.cpp @@ -29,14 +29,14 @@ int SceneScriptPS10::getPoliceMazePS10TargetCount() { return kPoliceMazePS10TargetCount; } -static const int *getPoliceMazePS10TrackData1() { // Enemy linked series (kItemPS10Target1, kItemPS10Target2) - Rotating reveal +static const int *getPoliceMazePS10TrackData1() { // Enemy linked series (kItemPS10Target1, kItemPS10Target2) - Rotating reveal static int trackData[] = { kPMTIActivate, kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount, kPMTIVariableInc, kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount, #if BLADERUNNER_ORIGINAL_BUGS #else - kPMTITargetSet, kItemPS10Target1, 0, // remove target-able here - kPMTITargetSet, kItemPS10Target2, 0, // remove target-able here + kPMTITargetSet, kItemPS10Target1, 0, // remove target-able here + kPMTITargetSet, kItemPS10Target2, 0, // remove target-able here #endif // BLADERUNNER_ORIGINAL_BUGS kPMTIObstacleReset, kItemPS10Target1, kPMTIObstacleReset, kItemPS10Target2, @@ -47,7 +47,7 @@ static const int *getPoliceMazePS10TrackData1() { // Enemy linked series (kItem kPMTIEnemyReset, kItemPS10Target1, #if BLADERUNNER_ORIGINAL_BUGS #else - kPMTIEnemyReset, kItemPS10Target2, // both targets should clear their enemy flag here + kPMTIEnemyReset, kItemPS10Target2, // both targets should clear their enemy flag here #endif // BLADERUNNER_ORIGINAL_BUGS kPMTIWaitRandom, 3000, 5000, kPMTIObstacleSet, kItemPS10Target1, @@ -55,11 +55,10 @@ static const int *getPoliceMazePS10TrackData1() { // Enemy linked series (kItem kPMTIMove, 14, kPMTIWait, 1000, kPMTIRotate, 740, 80, - kPMTIPlaySound, 495, 33, // ASDF REVEAL BELL - kPMTIEnemySet, kItemPS10Target1, // rotate - reveal + kPMTIEnemySet, kItemPS10Target1, // rotate - reveal #if BLADERUNNER_ORIGINAL_BUGS #else - kPMTIEnemySet, kItemPS10Target2, // both targets should set their enemy flag here + kPMTIEnemySet, kItemPS10Target2, // both targets should set their enemy flag here #endif // BLADERUNNER_ORIGINAL_BUGS kPMTIWait, 0, kPMTIRotate, 488, 80, @@ -67,13 +66,13 @@ static const int *getPoliceMazePS10TrackData1() { // Enemy linked series (kItem kPMTIShoot, 27, 33, kPMTIWait, 0, kPMTIRotate, 740, 80, - kPMTIPausedReset, kItemPS10Target2, // kItemPS10Target2 continues the route of this item - kPMTIObstacleReset, kItemPS10Target1, // kItemPS10Target1 becomes invisible + kPMTIPausedReset, kItemPS10Target2, // kItemPS10Target2 continues the route of this item + kPMTIObstacleReset, kItemPS10Target1, // kItemPS10Target1 becomes invisible #if BLADERUNNER_ORIGINAL_BUGS #else - kPMTITargetSet, kItemPS10Target1, 0, // remove target-able here - only for Target1 item + kPMTITargetSet, kItemPS10Target1, 0, // remove target-able here - only for Target1 item #endif // BLADERUNNER_ORIGINAL_BUGS - kPMTIObstacleSet, kItemPS10Target2, // kItemPS10Target2 becomes visible in kItemPS10Target1's place + kPMTIObstacleSet, kItemPS10Target2, // kItemPS10Target2 becomes visible in kItemPS10Target1's place kPMTIPausedSet, kItemPS10Target1, kPMTIPosition, 0, kPMTIRestart @@ -81,17 +80,17 @@ static const int *getPoliceMazePS10TrackData1() { // Enemy linked series (kItem return trackData; } -static const int *getPoliceMazePS10TrackData2() { // Enemy linked series (kItemPS10Target1, kItemPS10Target2) +static const int *getPoliceMazePS10TrackData2() { // Enemy linked series (kItemPS10Target1, kItemPS10Target2) static int trackData[] = { kPMTIFacing, 740, kPMTIPosition, 0, - kPMTIEnemySet, kItemPS10Target2, // [redundant after bug fix] + kPMTIEnemySet, kItemPS10Target2, // [redundant after bug fix] kPMTIMove, 69, kPMTIWait, 500, kPMTIObstacleReset, kItemPS10Target2, #if BLADERUNNER_ORIGINAL_BUGS #else - kPMTITargetSet, kItemPS10Target2, 0, // remove target-able here - only for Target2 item + kPMTITargetSet, kItemPS10Target2, 0, // remove target-able here - only for Target2 item #endif // BLADERUNNER_ORIGINAL_BUGS kPMTIPausedReset, kItemPS10Target5, kPMTIPausedSet, kItemPS10Target2, @@ -101,13 +100,13 @@ static const int *getPoliceMazePS10TrackData2() { // Enemy linked series (kItem return trackData; } -static const int *getPoliceMazePS10TrackData3() { // Enemy (kItemPS10Target3) - Starts activated - Rotating reveal +static const int *getPoliceMazePS10TrackData3() { // Enemy (kItemPS10Target3) - Starts activated - Rotating reveal static int trackData[] = { kPMTIActivate, kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount, kPMTIVariableInc, kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount, #if BLADERUNNER_ORIGINAL_BUGS #else - kPMTITargetSet, kItemPS10Target3, 0, // remove target-able here + kPMTITargetSet, kItemPS10Target3, 0, // remove target-able here #endif // BLADERUNNER_ORIGINAL_BUGS kPMTIObstacleReset, kItemPS10Target3, kPMTIFacing, 993, @@ -119,8 +118,7 @@ static const int *getPoliceMazePS10TrackData3() { // Enemy (kItemPS10Target3) - kPMTIEnemyReset, kItemPS10Target3, kPMTIMove, 5, kPMTIWait, 1000, - kPMTIPlaySound, 495, 33, // ASDF REVEAL BELL - kPMTIEnemySet, kItemPS10Target3, // rotate - reveal + kPMTIEnemySet, kItemPS10Target3, // rotate - reveal kPMTIRotate, 233, 80, kPMTIWait, 0, kPMTIRotate, 491, 80, @@ -135,21 +133,21 @@ static const int *getPoliceMazePS10TrackData3() { // Enemy (kItemPS10Target3) - kPMTIObstacleReset, kItemPS10Target3, #if BLADERUNNER_ORIGINAL_BUGS #else - kPMTITargetSet, kItemPS10Target3, 0, // remove target-able here -// kPMTIPausedSet, kItemPS10Target3, // It is intentional (original) that kItemPS10Target3 does not get paused - This target loops on its own + kPMTITargetSet, kItemPS10Target3, 0, // remove target-able here +// kPMTIPausedSet, kItemPS10Target3, // intended: Original kItemPS10Target3 does not get paused - it loops on its own #endif // BLADERUNNER_ORIGINAL_BUGS kPMTIRestart }; return trackData; } -static const int *getPoliceMazePS10TrackData4() { // Innocent (kItemPS10Target4) +static const int *getPoliceMazePS10TrackData4() { // Innocent (kItemPS10Target4) static int trackData[] = { kPMTIActivate, kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount, kPMTIVariableInc, kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount, #if BLADERUNNER_ORIGINAL_BUGS #else - kPMTITargetSet, kItemPS10Target4, 0, // remove target-able here + kPMTITargetSet, kItemPS10Target4, 0, // remove target-able here #endif // BLADERUNNER_ORIGINAL_BUGS kPMTIObstacleReset, kItemPS10Target4, kPMTIFacing, 993, @@ -167,7 +165,7 @@ static const int *getPoliceMazePS10TrackData4() { // Innocent (kItemPS10Target4 kPMTIObstacleReset, kItemPS10Target4, #if BLADERUNNER_ORIGINAL_BUGS #else - kPMTITargetSet, kItemPS10Target4, 0, // remove target-able here + kPMTITargetSet, kItemPS10Target4, 0, // remove target-able here #endif // BLADERUNNER_ORIGINAL_BUGS kPMTIPausedReset, kItemPS10Target8, kPMTIPausedSet, kItemPS10Target4, @@ -176,13 +174,13 @@ static const int *getPoliceMazePS10TrackData4() { // Innocent (kItemPS10Target4 return trackData; } -static const int *getPoliceMazePS10TrackData5() { // Innocent (kItemPS10Target5) - Starts activated +static const int *getPoliceMazePS10TrackData5() { // Innocent (kItemPS10Target5) - Starts activated static int trackData[] = { kPMTIActivate, kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount, kPMTIVariableInc, kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount, #if BLADERUNNER_ORIGINAL_BUGS #else - kPMTITargetSet, kItemPS10Target5, 0, // remove target-able here + kPMTITargetSet, kItemPS10Target5, 0, // remove target-able here #endif // BLADERUNNER_ORIGINAL_BUGS kPMTIObstacleReset, kItemPS10Target5, kPMTIFacing, 0, @@ -203,7 +201,7 @@ static const int *getPoliceMazePS10TrackData5() { // Innocent (kItemPS10Target5 kPMTIObstacleReset, kItemPS10Target5, #if BLADERUNNER_ORIGINAL_BUGS #else - kPMTITargetSet, kItemPS10Target5, 0, // remove target-able here + kPMTITargetSet, kItemPS10Target5, 0, // remove target-able here #endif // BLADERUNNER_ORIGINAL_BUGS kPMTIPausedReset, kItemPS10Target1, kPMTIPausedSet, kItemPS10Target5, @@ -213,13 +211,13 @@ static const int *getPoliceMazePS10TrackData5() { // Innocent (kItemPS10Target5 } // NOTE Track 6 is used only once as is; it's activated when entering the room -static const int *getPoliceMazePS10TrackData6() { // Enemy (kItemPS10Target6) - Starts activated - Rotating reveal +static const int *getPoliceMazePS10TrackData6() { // Enemy (kItemPS10Target6) - Starts activated - Rotating reveal static int trackData[] = { kPMTIActivate, kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount, kPMTIVariableInc, kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount, #if BLADERUNNER_ORIGINAL_BUGS #else - kPMTITargetSet, kItemPS10Target6, 0, // remove target-able here + kPMTITargetSet, kItemPS10Target6, 0, // remove target-able here #endif // BLADERUNNER_ORIGINAL_BUGS kPMTIObstacleReset, kItemPS10Target6, kPMTIFacing, 999, @@ -231,8 +229,7 @@ static const int *getPoliceMazePS10TrackData6() { // Enemy (kItemPS10Target6) - kPMTIEnemyReset, kItemPS10Target6, kPMTIMove, 7, kPMTIWait, 500, - kPMTIPlaySound, 495, 33, // ASDF REVEAL BELL - kPMTIEnemySet, kItemPS10Target6, // rotate - reveal + kPMTIEnemySet, kItemPS10Target6, // rotate - reveal kPMTIRotate, 750, 80, kPMTIWait, 0, kPMTIRotate, 500, 80, @@ -247,7 +244,7 @@ static const int *getPoliceMazePS10TrackData6() { // Enemy (kItemPS10Target6) - kPMTIObstacleReset, kItemPS10Target6, #if BLADERUNNER_ORIGINAL_BUGS #else - kPMTITargetSet, kItemPS10Target6, 0, // remove target-able here + kPMTITargetSet, kItemPS10Target6, 0, // remove target-able here #endif // BLADERUNNER_ORIGINAL_BUGS kPMTIPausedReset, kItemPS10Target7, kPMTIPausedReset, kItemPS10Target9, @@ -257,13 +254,13 @@ static const int *getPoliceMazePS10TrackData6() { // Enemy (kItemPS10Target6) - return trackData; } -static const int *getPoliceMazePS10TrackData7() { // Innocent (kItemPS10Target7) +static const int *getPoliceMazePS10TrackData7() { // Innocent (kItemPS10Target7) static int trackData[] = { kPMTIActivate, kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount, kPMTIVariableInc, kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount, #if BLADERUNNER_ORIGINAL_BUGS #else - kPMTITargetSet, kItemPS10Target7, 0, // remove target-able here + kPMTITargetSet, kItemPS10Target7, 0, // remove target-able here #endif // BLADERUNNER_ORIGINAL_BUGS kPMTIObstacleReset, kItemPS10Target7, kPMTIFacing, 264, @@ -280,7 +277,7 @@ static const int *getPoliceMazePS10TrackData7() { // Innocent (kItemPS10Target7 kPMTIObstacleReset, kItemPS10Target7, #if BLADERUNNER_ORIGINAL_BUGS #else - kPMTITargetSet, kItemPS10Target7, 0, // remove target-able here + kPMTITargetSet, kItemPS10Target7, 0, // remove target-able here #endif // BLADERUNNER_ORIGINAL_BUGS kPMTIPausedSet, kItemPS10Target7, kPMTIRestart @@ -288,13 +285,13 @@ static const int *getPoliceMazePS10TrackData7() { // Innocent (kItemPS10Target7 return trackData; } -static const int *getPoliceMazePS10TrackData8() { // Enemy (kItemPS10Target8) - Starts activated - Rotating reveal +static const int *getPoliceMazePS10TrackData8() { // Enemy (kItemPS10Target8) - Starts activated - Rotating reveal static int trackData[] = { kPMTIActivate, kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount, kPMTIVariableInc, kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount, #if BLADERUNNER_ORIGINAL_BUGS #else - kPMTITargetSet, kItemPS10Target8, 0, // remove target-able here + kPMTITargetSet, kItemPS10Target8, 0, // remove target-able here #endif // BLADERUNNER_ORIGINAL_BUGS kPMTIObstacleReset, kItemPS10Target8, kPMTIFacing, 993, @@ -306,21 +303,16 @@ static const int *getPoliceMazePS10TrackData8() { // Enemy (kItemPS10Target8) - kPMTIEnemyReset, kItemPS10Target8, kPMTIMove, 34, kPMTIWait, 500, - kPMTIPlaySound, 495, 33, // ASDF REVEAL BELL - kPMTIEnemySet, kItemPS10Target8, // rotate - reveal + kPMTIEnemySet, kItemPS10Target8, // rotate - reveal kPMTIRotate, 491, 80, kPMTIMove, 20, -#if BLADERUNNER_ORIGINAL_BUGS - kPMTIWait, 0, // this is too fast -#else - kPMTIWait, 100, -#endif // BLADERUNNER_ORIGINAL_BUGS + kPMTIWait, 0, // this results in shooting too fast - TODO maybe introduce a small wait here (50 or 150) kPMTIShoot, 27, 33, kPMTIMove, 0, kPMTIObstacleReset, kItemPS10Target8, #if BLADERUNNER_ORIGINAL_BUGS #else - kPMTITargetSet, kItemPS10Target8, 0, // remove target-able here + kPMTITargetSet, kItemPS10Target8, 0, // remove target-able here #endif // BLADERUNNER_ORIGINAL_BUGS kPMTIPausedReset, kItemPS10Target4, kPMTIPausedSet, kItemPS10Target8, @@ -329,13 +321,13 @@ static const int *getPoliceMazePS10TrackData8() { // Enemy (kItemPS10Target8) - return trackData; } -static const int *getPoliceMazePS10TrackData9() { // Special (kItemPS10Target9) - Enemy x2 +static const int *getPoliceMazePS10TrackData9() { // Special (kItemPS10Target9) - Enemy x2 static int trackData[] = { kPMTIActivate, kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount, kPMTIVariableInc, kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount, #if BLADERUNNER_ORIGINAL_BUGS #else - kPMTITargetSet, kItemPS10Target9, 0, // remove target-able here + kPMTITargetSet, kItemPS10Target9, 0, // remove target-able here #endif // BLADERUNNER_ORIGINAL_BUGS kPMTIObstacleReset, kItemPS10Target9, kPMTIFacing, 738, @@ -369,10 +361,8 @@ static const int *getPoliceMazePS10TrackData9() { // Special (kItemPS10Target9) kPMTIMove, 89, kPMTIPlaySound, 0, 33, kPMTIWaitRandom, 4000, 6000, -#if BLADERUNNER_ORIGINAL_BUGS - kPMTITargetSet, kItemPS10Target9, 1, // TODO MAZE A bug? intended? "second" enemy - kPMTIEnemySet, kItemPS10Target9, -#endif // BLADERUNNER_ORIGINAL_BUGS + kPMTITargetSet, kItemPS10Target9, 1, // intended: special: "second" enemy (re-using the target of the track) + kPMTIEnemySet, kItemPS10Target9, // intended: special: "second" enemy (re-using the target of the track) kPMTIFacing, 216, kPMTIPlaySound, 32, 33, kPMTIMove, 69, @@ -388,7 +378,7 @@ static const int *getPoliceMazePS10TrackData9() { // Special (kItemPS10Target9) kPMTIObstacleReset, kItemPS10Target9, #if BLADERUNNER_ORIGINAL_BUGS #else - kPMTITargetSet, kItemPS10Target9, 0, // remove target-able here + kPMTITargetSet, kItemPS10Target9, 0, // remove target-able here #endif // BLADERUNNER_ORIGINAL_BUGS kPMTIPausedSet, kItemPS10Target9, kPMTIRestart @@ -560,7 +550,8 @@ bool SceneScriptPS10::ClickedOnExit(int exitId) { if (!Loop_Actor_Walk_To_Waypoint(kActorMcCoy, 6, 12, true, false)) { Game_Flag_Set(kFlagPS10toPS11); removeTargets(); - Global_Variable_Decrement(kVariablePoliceMazeScore, kPoliceMazePS10TargetCount - Global_Variable_Query(kVariablePoliceMazePS10TargetCounter)); +// Global_Variable_Decrement(kVariablePoliceMazeScore, kPoliceMazePS10TargetCount - Global_Variable_Query(kVariablePoliceMazePS10TargetCounter)); + Police_Maze_Decrement_Score(kPoliceMazePS10TargetCount - Global_Variable_Query(kVariablePoliceMazePS10TargetCounter)); Global_Variable_Set(kVariablePoliceMazePS10TargetCounter, kPoliceMazePS10TargetCount); Set_Enter(kSetPS10_PS11_PS12_PS13, kScenePS11); } diff --git a/engines/bladerunner/script/scene/ps11.cpp b/engines/bladerunner/script/scene/ps11.cpp index ad8be4a75e..0100370c2a 100644 --- a/engines/bladerunner/script/scene/ps11.cpp +++ b/engines/bladerunner/script/scene/ps11.cpp @@ -121,7 +121,6 @@ static const int *getPoliceMazePS11TrackData10() { // Enemy (kItemPS11Target2, return trackData; } -// TODO - into look possible bug static const int *getPoliceMazePS11TrackData11() { // Enemy (kItemPS11Target2, kItemPS11Target3) static int trackData[] = { kPMTIFacing, 860, @@ -129,7 +128,6 @@ static const int *getPoliceMazePS11TrackData11() { // Enemy (kItemPS11Target2, kPMTIEnemyReset, kItemPS11Target3, // [redundant after bug fix] target 2-3 still is not revealed as enemy kPMTIMove, 25, kPMTIWait, 500, - kPMTIPlaySound, 495, 33, // ASDF REVEAL BELL kPMTIEnemySet, kItemPS11Target3, // rotate - reveal -- no need to set target 2 as enemy too, since it's gone kPMTIPlaySound, 32, 33, kPMTIRotate, 644, 80, @@ -258,7 +256,7 @@ static const int *getPoliceMazePS11TrackData14() { // Enemy (kItemPS11Target6) #if BLADERUNNER_ORIGINAL_BUGS kPMTIFacing, 900, // orientation is wrong here - should conceal the gun entirely #else - kPMTIFacing, 750, // corrected orientation + kPMTIFacing, 750, // corrected orientation #endif // BLADERUNNER_ORIGINAL_BUGS kPMTIPosition, 0, kPMTIWaitRandom, 3000, 6000, @@ -266,14 +264,13 @@ static const int *getPoliceMazePS11TrackData14() { // Enemy (kItemPS11Target6) kPMTIPlaySound, 33, 33, kPMTIMove, 5, kPMTIWait, 500, - kPMTIPlaySound, 495, 33, // ASDF REVEAL BELL kPMTIEnemySet, kItemPS11Target6, // rotate - reveal kPMTIRotate, 644, 80, kPMTIWait, 0, #if BLADERUNNER_ORIGINAL_BUGS 1 kPMTIRotate, 388, 80, // orientation is wrong here #else - kPMTIRotate, 260, 80, // corrected orientation + kPMTIRotate, 260, 80, // corrected orientation - face towards McCoy #endif // BLADERUNNER_ORIGINAL_BUGS kPMTIWait, 1000, kPMTIShoot, 27, 33, @@ -291,7 +288,7 @@ static const int *getPoliceMazePS11TrackData14() { // Enemy (kItemPS11Target6) return trackData; } -static const int *getPoliceMazePS11TrackData15() { // Innocent (kItemPS11Target7, kItemPS11Target8) +static const int *getPoliceMazePS11TrackData15() { // Special (kItemPS11Target7, kItemPS11Target8) - Innocent x2 static int trackData[] = { kPMTIActivate, kVariablePoliceMazePS11TargetCounter, kPoliceMazePS11TargetCount, kPMTIVariableInc, kVariablePoliceMazePS11TargetCounter, kPoliceMazePS11TargetCount, @@ -308,17 +305,14 @@ static const int *getPoliceMazePS11TrackData15() { // Innocent (kItemPS11Target kPMTIPosition, 0, kPMTIWaitRandom, 3000, 7000, kPMTIObstacleSet, kItemPS11Target7, - kPMTIPlaySound, 29, 33, // TARGUP1 + kPMTIPlaySound, 29, 33, kPMTIEnemyReset, kItemPS11Target7, #if BLADERUNNER_ORIGINAL_BUGS #else kPMTIEnemyReset, kItemPS11Target8, // both targets should clear their enemy flag here #endif // BLADERUNNER_ORIGINAL_BUGS kPMTIMove, 14, - -#if BLADERUNNER_ORIGINAL_BUGS - kPMTILeave, // TODO MAZE A bug? intended? - Why do a LEAVE here is its track is continued with kItemPS11Target8? (would result to re-credit another point with the later leave instruction for kItemPS11Target8) -#endif // BLADERUNNER_ORIGINAL_BUGS + kPMTILeave, // intended: special: credit for "first" innocent escaping kPMTIWait, 1000, kPMTIPausedReset, kItemPS11Target8, kPMTIObstacleReset, kItemPS11Target7, @@ -348,7 +342,7 @@ static const int *getPoliceMazePS11TrackData16() { // Innocent (kItemPS11Target kPMTIRotate, 388, 200, kPMTIWait, 500, kPMTIMove, 79, - kPMTILeave, + kPMTILeave, // credit for "second" / final innocent kPMTIObstacleReset, kItemPS11Target8, #if BLADERUNNER_ORIGINAL_BUGS #else @@ -387,28 +381,16 @@ static const int *getPoliceMazePS11TrackData17() { // Special (kItemPS11Target9 #endif // BLADERUNNER_ORIGINAL_BUGS kPMTIPlaySound, 32, 33, kPMTIMove, 10, -#if BLADERUNNER_ORIGINAL_BUGS - kPMTIWait, 0, // this is too fast -#else - kPMTIWait, 350, -#endif // BLADERUNNER_ORIGINAL_BUGS + kPMTIWait, 0, // this results in shooting too fast - TODO maybe introduce a small wait here (50 or 150) kPMTIShoot, 27, 33, kPMTIMove, 0, -#if BLADERUNNER_ORIGINAL_BUGS - kPMTITargetSet, kItemPS11Target9, 1, // TODO MAZE A bug? intended? - "Second" enemy - kPMTIEnemySet, kItemPS11Target9, -#endif // BLADERUNNER_ORIGINAL_BUGS + kPMTITargetSet, kItemPS11Target9, 1, // intended: special: "second" enemy (re-using the target of the track) + kPMTIEnemySet, kItemPS11Target9, // intended: special: "second" enemy (re-using the target of the track) kPMTIMove, 24, -#if BLADERUNNER_ORIGINAL_BUGS - kPMTITargetSet, kItemPS11Target9, 1, // TODO MAZE A bug? intended? - "Third" enemy - kPMTIEnemySet, kItemPS11Target9, -#endif // BLADERUNNER_ORIGINAL_BUGS + kPMTITargetSet, kItemPS11Target9, 1, // intended: special: "third" enemy (re-using the target of the track) + kPMTIEnemySet, kItemPS11Target9, // intended: special: "third" enemy (re-using the target of the track) kPMTIMove, 10, -#if BLADERUNNER_ORIGINAL_BUGS - kPMTIWait, 0, // this is too fast -#else - kPMTIWait, 350, -#endif // BLADERUNNER_ORIGINAL_BUGS + kPMTIWait, 0, // this results in shooting too fast - TODO maybe introduce a small wait here (50 or 150) kPMTIShoot, 27, 33, kPMTIMove, 24, kPMTIWait, 1000, @@ -425,7 +407,7 @@ static const int *getPoliceMazePS11TrackData17() { // Special (kItemPS11Target9 return trackData; } -static const int *getPoliceMazePS11TrackData18() { // Special (kItemPS11Target10, kItemPS11Target11) - Innocent x1???, then Enemy x2 +static const int *getPoliceMazePS11TrackData18() { // Special (kItemPS11Target10, kItemPS11Target11) - Rotating reveal and Enemy x2 static int trackData[] = { kPMTIActivate, kVariablePoliceMazePS11TargetCounter, kPoliceMazePS11TargetCount, kPMTIVariableInc, kVariablePoliceMazePS11TargetCounter, kPoliceMazePS11TargetCount, @@ -450,15 +432,14 @@ static const int *getPoliceMazePS11TrackData18() { // Special (kItemPS11Target1 kPMTIMove, 5, kPMTIPlaySound, 19, 33, #if BLADERUNNER_ORIGINAL_BUGS - kPMTIPlaySound, 3, 33, // FEMHURT1 + kPMTIPlaySound, 3, 33, // FEMHURT1 - Wrong sound #endif // BLADERUNNER_ORIGINAL_BUGS kPMTIWait, 1000, #if BLADERUNNER_ORIGINAL_BUGS - kPMTILeave, // TODO MAZE A bug? intended? Is this target not revealed yet? Credit for "first" innocent (special)? + kPMTILeave, // bug: Leave does not fit here since the target does not actually "escape" (nor is innocent) #endif // BLADERUNNER_ORIGINAL_BUGS kPMTIRotate, 700, 80, - kPMTIPlaySound, 495, 33, // ASDF REVEAL BELL - kPMTIEnemySet, kItemPS11Target10, // Now the target is an enemy. (special) Rotate reveal? + kPMTIEnemySet, kItemPS11Target10, // Now the target is an enemy. (special) Rotate reveal #if BLADERUNNER_ORIGINAL_BUGS #else kPMTIEnemySet, kItemPS11Target11, // both targets should set their enemy flag here @@ -481,17 +462,15 @@ static const int *getPoliceMazePS11TrackData18() { // Special (kItemPS11Target1 return trackData; } -static const int *getPoliceMazePS11TrackData19() { // Enemy (kItemPS11Target10, kItemPS11Target11) +static const int *getPoliceMazePS11TrackData19() { // Special (kItemPS11Target10, kItemPS11Target11) - becomes an Enemy again static int trackData[] = { kPMTIFacing, 512, kPMTIPosition, 0, kPMTIEnemySet, kItemPS11Target11, // [redundant after bug fix] kPMTIMove, 8, kPMTIWait, 4000, -#if BLADERUNNER_ORIGINAL_BUGS - kPMTITargetSet, kItemPS11Target11, 1, // TODO MAZE A bug? intended? Now the target is reset as new enemy again (special) - kPMTIEnemySet, kItemPS11Target11, -#endif // BLADERUNNER_ORIGINAL_BUGS + kPMTITargetSet, kItemPS11Target11, 1, // intended: special: "second" enemy (re-using the target of the track) + kPMTIEnemySet, kItemPS11Target11, // intended: special: "second" enemy (re-using the target of the track) kPMTIMove, 2, kPMTIPlaySound, 32, 33, kPMTIWait, 1000, @@ -869,7 +848,8 @@ bool SceneScriptPS11::ClickedOnExit(int exitId) { if (!Loop_Actor_Walk_To_Waypoint(kActorMcCoy, 8, 12, true, false)) { Game_Flag_Set(kFlagPS11toPS12); removeTargets(); - Global_Variable_Decrement(kVariablePoliceMazeScore, kPoliceMazePS11TargetCount - Global_Variable_Query(kVariablePoliceMazePS11TargetCounter)); +// Global_Variable_Decrement(kVariablePoliceMazeScore, kPoliceMazePS11TargetCount - Global_Variable_Query(kVariablePoliceMazePS11TargetCounter)); + Police_Maze_Decrement_Score(kPoliceMazePS11TargetCount - Global_Variable_Query(kVariablePoliceMazePS11TargetCounter)); Global_Variable_Set(kVariablePoliceMazePS11TargetCounter, kPoliceMazePS11TargetCount); Set_Enter(kSetPS10_PS11_PS12_PS13, kScenePS12); } diff --git a/engines/bladerunner/script/scene/ps12.cpp b/engines/bladerunner/script/scene/ps12.cpp index b717dc65bc..6f745b03e2 100644 --- a/engines/bladerunner/script/scene/ps12.cpp +++ b/engines/bladerunner/script/scene/ps12.cpp @@ -272,14 +272,12 @@ static const int *getPoliceMazePS12TrackData34() { // Special (kItemPS12Target6 kPMTIRotate, 469, 80, kPMTIPlaySound, 29, 33, kPMTIWait, 500, -#if BLADERUNNER_ORIGINAL_BUGS - kPMTITargetSet, kItemPS12Target6, 1, // TODO MAZE A bug? intended? Set as target again ("Second" Enemy) - kPMTITargetSet, kItemPS12Target7, 1, // TODO MAZE A bug? intended? Set as target again ("Second" Enemy) - kPMTITargetSet, kItemPS12Target8, 1, // TODO MAZE A bug? intended? Set as target again ("Second" Enemy) - kPMTIEnemySet, kItemPS12Target6, // TODO MAZE A bug? intended? Set as target again ("Second" Enemy) - kPMTIEnemySet, kItemPS12Target7, // TODO MAZE A bug? intended? Set as target again ("Second" Enemy) - kPMTIEnemySet, kItemPS12Target8, // TODO MAZE A bug? intended? Set as target again ("Second" Enemy) -#endif // BLADERUNNER_ORIGINAL_BUGS + kPMTITargetSet, kItemPS12Target6, 1, // intended: special: "second" enemy (re-using the targets of the track) + kPMTITargetSet, kItemPS12Target7, 1, // intended: special: "second" enemy (re-using the targets of the track) + kPMTITargetSet, kItemPS12Target8, 1, // intended: special: "second" enemy (re-using the targets of the track) + kPMTIEnemySet, kItemPS12Target6, // intended: special: "second" enemy (re-using the targets of the track) + kPMTIEnemySet, kItemPS12Target7, // intended: special: "second" enemy (re-using the targets of the track) + kPMTIEnemySet, kItemPS12Target8, // intended: special: "second" enemy (re-using the targets of the track) kPMTIRotate, 376, 80, kPMTIWait, 0, kPMTIRotate, 168, 80, @@ -389,7 +387,7 @@ static const int *getPoliceMazePS12TrackData37() { // Special: Innocent (kItemP #endif // BLADERUNNER_ORIGINAL_BUGS kPMTIObstacleReset, kItemPS12Target9, kPMTIWaitRandom, 3000, 6000, - kPMTIPausedReset, kItemPS12Target10, // kItemPS12Target10 unpaused early since he is the enemy using kItemPS12Target9 as human shield + kPMTIPausedReset, kItemPS12Target10, // kItemPS12Target10 is unpaused early since he is the enemy using kItemPS12Target9 as human shield kPMTIFacing, 1010, kPMTIPosition, 0, kPMTIWait, 2000, @@ -414,12 +412,12 @@ static const int *getPoliceMazePS12TrackData37() { // Special: Innocent (kItemP return trackData; } -static const int *getPoliceMazePS12TrackData38() { // Enemy (kItemPS12Target10) +static const int *getPoliceMazePS12TrackData38() { // Enemy (kItemPS12Target10) - Special (bonus point) 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 +// kPMTIActivate, kVariablePoliceMazePS12TargetCounter, kPoliceMazePS12TargetCount, // intended: special: Original missing activate instruction +// kPMTIVariableInc, kVariablePoliceMazePS12TargetCounter, kPoliceMazePS12TargetCount, // intended: special: Original missing increase counter instruction kPMTITargetSet, kItemPS12Target10, 0, // remove target-able here #endif // BLADERUNNER_ORIGINAL_BUGS kPMTIObstacleReset, kItemPS12Target10, @@ -470,7 +468,6 @@ static const int *getPoliceMazePS12TrackData39() { // Enemy (kItemPS12Target11) kPMTITargetSet, kItemPS12Target11, 1, kPMTIMove, 5, kPMTIWait, 1000, - kPMTIPlaySound, 495, 33, // ASDF REVEAL BELL kPMTIEnemySet, kItemPS12Target11, // rotate - reveal kPMTIRotate, 1010, 80, kPMTIPlaySound, 29, 33, @@ -509,7 +506,6 @@ static const int *getPoliceMazePS12TrackData40() { // Enemy (kItemPS12Target12) kPMTIMove, 5, kPMTIPlaySound, 29, 33, kPMTIWait, 500, - kPMTIPlaySound, 495, 33, // ASDF REVEAL BELL kPMTIEnemySet, kItemPS12Target12, // rotate - reveal kPMTIRotate, 968, 80, kPMTIPlaySound, 29, 33, @@ -566,12 +562,12 @@ static const int *getPoliceMazePS12TrackData41() { // Innocent (kItemPS12Target // 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 const int *getPoliceMazePS12TrackData42() { // Enemy (kItemPS12Target14) - Special (bonus point) 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 +// kPMTIActivate, kVariablePoliceMazePS12TargetCounter, kPoliceMazePS12TargetCount, // intended: special: Original missing activate instruction +// kPMTIVariableInc, kVariablePoliceMazePS12TargetCounter, kPoliceMazePS12TargetCount, // intended: special: Original missing increase counter instruction kPMTITargetSet, kItemPS12Target14, 0, // remove target-able here #endif // BLADERUNNER_ORIGINAL_BUGS kPMTIObstacleReset, kItemPS12Target14, @@ -696,7 +692,6 @@ static const int *getPoliceMazePS12TrackData45() { // Enemy (kItemPS12Target17) kPMTITargetSet, kItemPS12Target17, 1, kPMTIMove, 9, kPMTIWait, 1000, - kPMTIPlaySound, 495, 33, // ASDF REVEAL BELL kPMTIEnemySet, kItemPS12Target17, // rotate - reveal kPMTIRotate, 284, 80, kPMTIWait, 0, @@ -891,7 +886,8 @@ bool SceneScriptPS12::ClickedOnExit(int exitId) { Player_Gains_Control(); Game_Flag_Set(kFlagPS12toPS13); removeTargets(); - Global_Variable_Decrement(kVariablePoliceMazeScore, kPoliceMazePS12TargetCount - Global_Variable_Query(kVariablePoliceMazePS12TargetCounter)); +// Global_Variable_Decrement(kVariablePoliceMazeScore, kPoliceMazePS12TargetCount - Global_Variable_Query(kVariablePoliceMazePS12TargetCounter)); + Police_Maze_Decrement_Score(kPoliceMazePS12TargetCount - Global_Variable_Query(kVariablePoliceMazePS12TargetCounter)); Global_Variable_Set(kVariablePoliceMazePS12TargetCounter, kPoliceMazePS12TargetCount); Set_Enter(kSetPS10_PS11_PS12_PS13, kScenePS13); } diff --git a/engines/bladerunner/script/scene/ps13.cpp b/engines/bladerunner/script/scene/ps13.cpp index 1dbf6fdd63..2f7bed8129 100644 --- a/engines/bladerunner/script/scene/ps13.cpp +++ b/engines/bladerunner/script/scene/ps13.cpp @@ -289,7 +289,6 @@ static const int *getPoliceMazePS13TrackData52() { // Enemy (kItemPS13Target7) kPMTIEnemyReset, kItemPS13Target7, kPMTIMove, 9, kPMTIWait, 500, - kPMTIPlaySound, 495, 33, // ASDF REVEAL BELL kPMTIEnemySet, kItemPS13Target7, // rotate - reveal kPMTIRotate, 555, 80, kPMTIWait, 0, @@ -330,7 +329,6 @@ static const int *getPoliceMazePS13TrackData53() { // Enemy (kItemPS13Target8) kPMTITargetSet, kItemPS13Target8, 1, kPMTIEnemyReset, kItemPS13Target8, kPMTIMove, 5, - kPMTIPlaySound, 495, 33, // ASDF REVEAL BELL kPMTIEnemySet, kItemPS13Target8, // rotate - reveal kPMTIRotate, 868, 200, kPMTIWait, 1000, @@ -372,7 +370,6 @@ static const int *getPoliceMazePS13TrackData54() { // Enemy (kItemPS13Target9) kPMTIEnemyReset, kItemPS13Target9, kPMTIMove, 3, kPMTIWait, 500, - kPMTIPlaySound, 495, 33, // ASDF REVEAL BELL kPMTIEnemySet, kItemPS13Target9, // rotate - reveal kPMTIRotate, 768, 80, kPMTIWait, 1000, @@ -461,7 +458,6 @@ static const int *getPoliceMazePS13TrackData56() { // Enemy linked series (kIte static const int *getPoliceMazePS13TrackData57() { // Enemy linked series (kItemPS13Target10, kItemPS13Target11, kItemPS13Target12) - Rotating reveal static int trackData[] = { - kPMTIPlaySound, 495, 33, // ASDF REVEAL BELL kPMTIEnemySet, kItemPS13Target12, // rotate - reveal #if BLADERUNNER_ORIGINAL_BUGS #else @@ -514,16 +510,14 @@ static const int *getPoliceMazePS13TrackData58() { // Special (kItemPS13Target1 kPMTIMove, 9, kPMTIWait, 200, kPMTIMove, 0, -#if BLADERUNNER_ORIGINAL_BUGS - kPMTILeave, // TODO MAZE A bug? intended? credit for "first" innocent - kPMTITargetSet, kItemPS13Target13, 1, - kPMTIEnemyReset, kItemPS13Target13, -#endif // BLADERUNNER_ORIGINAL_BUGS + kPMTILeave, // intended: special: credit for "first" innocent escaping + kPMTITargetSet, kItemPS13Target13, 1, // intended: special: "second" innocent (re-using the target of the track) + kPMTIEnemyReset, kItemPS13Target13, // intended: special: "second" innocent (re-using the target of the track) kPMTIWait, 200, kPMTIMove, 9, kPMTIWait, 200, kPMTIMove, 0, - kPMTILeave, // credit for "second" innocent + kPMTILeave, // credit for "second" / final innocent kPMTIObstacleReset, kItemPS13Target13, #if BLADERUNNER_ORIGINAL_BUGS #else @@ -559,7 +553,6 @@ static const int *getPoliceMazePS13TrackData62() { // Enemy (kItemPS13Target14) kPMTIEnemyReset, kItemPS13Target14, kPMTIMove, 14, kPMTIWait, 1000, - kPMTIPlaySound, 495, 33, // ASDF REVEAL BELL kPMTIEnemySet, kItemPS13Target14, // rotate - reveal kPMTIRotate, 650, 80, kPMTIWait, 0, @@ -601,7 +594,6 @@ static const int *getPoliceMazePS13TrackData63() { // Enemy (kItemPS13Target15) kPMTIEnemyReset, kItemPS13Target15, kPMTIMove, 9, kPMTIWait, 1000, - kPMTIPlaySound, 495, 33, // ASDF REVEAL BELL kPMTIEnemySet, kItemPS13Target15, // rotate - reveal kPMTIRotate, 710, 80, kPMTIWait, 0, @@ -777,15 +769,17 @@ bool SceneScriptPS13::ClickedOnExit(int exitId) { Ambient_Sounds_Remove_All_Non_Looping_Sounds(true); Ambient_Sounds_Remove_All_Looping_Sounds(1); removeTargets(); - Global_Variable_Decrement(kVariablePoliceMazeScore, kPoliceMazePS13TargetCount - Global_Variable_Query(kVariablePoliceMazePS13TargetCounter)); - Set_Score(kActorMcCoy, Global_Variable_Query(kVariablePoliceMazeScore)); -// Common::String scoreString = Common::String::format("Final: %03d", Global_Variable_Query(kVariablePoliceMazeScore)); -// Set_Subtitle_Text_On_Screen(scoreString); +// Global_Variable_Decrement(kVariablePoliceMazeScore, kPoliceMazePS13TargetCount - Global_Variable_Query(kVariablePoliceMazePS13TargetCounter)); + Police_Maze_Decrement_Score(kPoliceMazePS13TargetCount - Global_Variable_Query(kVariablePoliceMazePS13TargetCounter)); + Set_Score(kActorMcCoy, Police_Maze_Query_Score()); +// Common::String scoreString = Common::String::format("Final: %03d", Global_Variable_Query(kVariablePoliceMazeScore)); // Display final score as subtitles +// Set_Subtitle_Text_On_Screen(scoreString); // Display final score as subtitles Global_Variable_Reset(kVariablePoliceMazePS10TargetCounter); Global_Variable_Reset(kVariablePoliceMazePS11TargetCounter); Global_Variable_Reset(kVariablePoliceMazePS12TargetCounter); Global_Variable_Reset(kVariablePoliceMazePS13TargetCounter); - Global_Variable_Reset(kVariablePoliceMazeScore); +// Global_Variable_Reset(kVariablePoliceMazeScore); + Police_Maze_Zero_Score(); Set_Enter(kSetPS05, kScenePS05); } return true; |