Skip to content

Commit

Permalink
BLADERUNNER: PoliceMaze fix & constants
Browse files Browse the repository at this point in the history
  • Loading branch information
peterkohaut committed Mar 24, 2018
1 parent a222fc8 commit a70c59f
Show file tree
Hide file tree
Showing 10 changed files with 707 additions and 335 deletions.
40 changes: 40 additions & 0 deletions engines/bladerunner/game_constants.h
Expand Up @@ -536,6 +536,7 @@ enum Variables {
kVariableChapter = 1,
kVariableChinyen = 2,
kVariablePoliceMazeScore = 9,
kVariablePoliceMazePS10TargetCounter = 10,
kVariableGenericWalkerAModel = 32,
kVariableGenericWalkerBModel = 33,
kVariableGenericWalkerCModel = 34,
Expand Down Expand Up @@ -846,6 +847,15 @@ enum Sets {
};

enum GameItems {
kItemPoliceMazeTarget1 = 0,
kItemPoliceMazeTarget2 = 1,
kItemPoliceMazeTarget3 = 2,
kItemPoliceMazeTarget4 = 3,
kItemPoliceMazeTarget5 = 4,
kItemPoliceMazeTarget6 = 5,
kItemPoliceMazeTarget7 = 6,
kItemPoliceMazeTarget8 = 7,
kItemPoliceMazeTarget9 = 8,
kItemChromeDebris = 66,
kItemCandy = 79,
kItemChopstickWrapper = 82,
Expand Down Expand Up @@ -887,6 +897,36 @@ enum ActorCombatStates {
kActorCombatStateApproachRangedAttack = 8
};

enum PoliceMazeTrackInstruction {
kPMTIActivate = -26,
kPMTILeave = -25,
kPMTIShoot = -24,
kPMTIEnemyReset = -23,
kPMTIEnemySet = -22,
kPMTIFlagReset = -21,
kPMTIFlagSet = -20,
kPMTIVariableDec = -19,
kPMTIVariableInc = -18,
kPMTIVariableReset = -17,
kPMTIVariableSet = -16,
kPMTITargetSet = -15,
kPMTI12 = -14,
kPMTI13 = -13,
kPMTIPausedSet = -12,
kPMTIPausedReset = -11,
kPMTIPlaySound = -10,
kPMTIObstacleReset = -9,
kPMTIObstacleSet = -8,
kPMTIWaitRandom = -7,
kPMTIRotate = -6,
kPMTIFacing = -5,
kPMTIRestart = -4,
kPMTIWait = -3,
kPMTIMove = -2,
kPMTIPosition = -1,
kPMTI26 = 0
};

} // End of namespace BladeRunner

#endif
6 changes: 3 additions & 3 deletions engines/bladerunner/mouse.cpp
Expand Up @@ -170,19 +170,19 @@ void Mouse::setRandomY() {
switch (_vm->_settings->getDifficulty()) {
case 0:
_randomCountdownY = 2;
_randomX = _vm->_rnd.getRandomNumberRng(-3, 3);
_randomX = _vm->_rnd.getRandomNumberRng(0, 6) - 3;
_randomY = _vm->_rnd.getRandomNumberRng(10, 20);
break;

case 1:
_randomCountdownY = 3;
_randomX = _vm->_rnd.getRandomNumberRng(-4, 4);
_randomX = _vm->_rnd.getRandomNumberRng(0, 8) - 4;
_randomY = _vm->_rnd.getRandomNumberRng(15, 25);
break;

case 2:
_randomCountdownY = 4;
_randomX = _vm->_rnd.getRandomNumberRng(-5, 5);
_randomX = _vm->_rnd.getRandomNumberRng(0, 10) - 5;
_randomY = _vm->_rnd.getRandomNumberRng(20, 30);
break;
}
Expand Down
12 changes: 6 additions & 6 deletions engines/bladerunner/script/ai/mccoy.cpp
Expand Up @@ -1503,7 +1503,7 @@ bool AIScriptMcCoy::ChangeAnimationMode(int mode) {
}
}
break;
case 21:
case kAnimationModeHit:
switch (_animationState) {
case 14:
case 15:
Expand All @@ -1520,7 +1520,7 @@ bool AIScriptMcCoy::ChangeAnimationMode(int mode) {
}
_animationFrame = 0;
break;
case 16:
default:
if (Random_Query(0, 1) == 1) {
_animationState = 26;
} else {
Expand All @@ -1530,7 +1530,7 @@ bool AIScriptMcCoy::ChangeAnimationMode(int mode) {
break;
}
break;
case 22:
case kAnimationModeCombatHit:
if (Random_Query(0, 1) == 1) {
_animationState = 23;
} else {
Expand Down Expand Up @@ -1587,7 +1587,7 @@ bool AIScriptMcCoy::ChangeAnimationMode(int mode) {
_animationState = 41;
_animationFrame = 0;
break;
case 48:
case kAnimationModeDie:
switch (_animationState) {
case 14:
case 15:
Expand All @@ -1610,7 +1610,7 @@ bool AIScriptMcCoy::ChangeAnimationMode(int mode) {
break;
}
break;
case 49:
case kAnimationModeCombatDie:
_animationState = 28;
_animationFrame = 0;
break;
Expand All @@ -1622,7 +1622,7 @@ bool AIScriptMcCoy::ChangeAnimationMode(int mode) {
_animationState = 55;
_animationFrame = 0;
break;
case 53:
case kAnimationModeSit:
if (_animationState != 60 && (Player_Query_Current_Set() == kSetNR03 || Player_Query_Current_Set() == kSetNR05_NR08)) {
_animationState = 60;
_animationFrame = 0;
Expand Down

0 comments on commit a70c59f

Please sign in to comment.