aboutsummaryrefslogtreecommitdiff
path: root/engines/pegasus/scoring.h
diff options
context:
space:
mode:
Diffstat (limited to 'engines/pegasus/scoring.h')
-rw-r--r--engines/pegasus/scoring.h281
1 files changed, 281 insertions, 0 deletions
diff --git a/engines/pegasus/scoring.h b/engines/pegasus/scoring.h
new file mode 100644
index 0000000000..fbf8641ecb
--- /dev/null
+++ b/engines/pegasus/scoring.h
@@ -0,0 +1,281 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * Additional copyright for this file:
+ * Copyright (C) 1995-1997 Presto Studios, Inc.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef PEGASUS_SCORING_H
+#define PEGASUS_SCORING_H
+
+#include "pegasus/types.h"
+
+namespace Pegasus {
+
+/////////////////////////////////////////////
+//
+// Scoring.
+
+static const CoordType kDeathScreenScoreLeft = 151;
+static const CoordType kDeathScreenScoreTop = 212;
+static const CoordType kDeathScreenScoreWidth = 124;
+static const CoordType kDeathScreenScoreHeight = 12;
+static const CoordType kDeathScreenScoreSkipVert = -16;
+
+// Caldoria & TSA
+
+static const GameScoreType kSawINNScore = 5;
+static const GameScoreType kTookShowerScore = 2;
+static const GameScoreType kFixedHairScore = 2;
+static const GameScoreType kGotKeyCardScore = 5;
+static const GameScoreType kReadPaperScore = 2;
+static const GameScoreType kLookThroughTelescopeScore = 2;
+static const GameScoreType kSawCaldoriaKioskScore = 2;
+static const GameScoreType kGoToTSAScore = 3;
+
+static const GameScoreType kEnterTSAScore = 2;
+static const GameScoreType kSawBust1Score = 2;
+static const GameScoreType kSawBust2Score = 2;
+static const GameScoreType kSawBust3Score = 2;
+static const GameScoreType kSawBust4Score = 2;
+static const GameScoreType kSawBust5Score = 2;
+static const GameScoreType kSawBust6Score = 2;
+static const GameScoreType kSawTheoryScore = 4;
+static const GameScoreType kSawBackgroundScore = 4;
+static const GameScoreType kSawProcedureScore = 4;
+static const GameScoreType kGotJourneymanKeyScore = 5;
+static const GameScoreType kGotPegasusBiochipScore = 5;
+static const GameScoreType kGotBiosuitScore = 5;
+static const GameScoreType kGoToPrehistoricScore = 5;
+
+static const GameScoreType kPutLogInReaderScore = 5;
+static const GameScoreType kSawCaldoriaNormalScore = 2;
+static const GameScoreType kSawCaldoriaAlteredScore = 2;
+static const GameScoreType kSawNoradNormalScore = 2;
+static const GameScoreType kSawNoradAlteredScore = 2;
+static const GameScoreType kSawMarsNormalScore = 2;
+static const GameScoreType kSawMarsAlteredScore = 2;
+static const GameScoreType kSawWSCNormalScore = 2;
+static const GameScoreType kSawWSCAlteredScore = 2;
+static const GameScoreType kWentToReadyRoom2Score = 5;
+static const GameScoreType kWentAfterSinclairScore = 5;
+static const GameScoreType kUsedCardBombScore = 10;
+static const GameScoreType kShieldedCardBombScore = 5;
+static const GameScoreType kStunnedSinclairScore = 10;
+static const GameScoreType kDisarmedNukeScore = 10;
+
+static const GameScoreType kMaxCaldoriaTSAScoreBefore = kSawINNScore +
+ kTookShowerScore +
+ kFixedHairScore +
+ kGotKeyCardScore +
+ kReadPaperScore +
+ kLookThroughTelescopeScore +
+ kSawCaldoriaKioskScore +
+ kGoToTSAScore +
+ kEnterTSAScore +
+ kSawBust1Score +
+ kSawBust2Score +
+ kSawBust3Score +
+ kSawBust4Score +
+ kSawBust5Score +
+ kSawBust6Score +
+ kSawTheoryScore +
+ kSawBackgroundScore +
+ kSawProcedureScore +
+ kGotJourneymanKeyScore +
+ kGotPegasusBiochipScore +
+ kGotBiosuitScore +
+ kGoToPrehistoricScore +
+ kPutLogInReaderScore +
+ kSawCaldoriaNormalScore +
+ kSawCaldoriaAlteredScore +
+ kSawNoradNormalScore +
+ kSawNoradAlteredScore +
+ kSawMarsNormalScore +
+ kSawMarsAlteredScore +
+ kSawWSCNormalScore +
+ kSawWSCAlteredScore +
+ kWentToReadyRoom2Score;
+
+static const GameScoreType kMaxCaldoriaTSAScoreAfter = kWentAfterSinclairScore +
+ kUsedCardBombScore +
+ kShieldedCardBombScore +
+ kStunnedSinclairScore +
+ kDisarmedNukeScore;
+
+static const GameScoreType kMaxCaldoriaTSAScore = kMaxCaldoriaTSAScoreBefore +
+ kMaxCaldoriaTSAScoreAfter;
+
+// Prehistoric
+
+static const GameScoreType kThrewBreakerScore = 10;
+static const GameScoreType kExtendedBridgeScore = 10;
+static const GameScoreType kGotHistoricalLogScore = 5;
+static const GameScoreType kFinishedPrehistoricScore = 10;
+
+static const GameScoreType kMaxPrehistoricScore = kThrewBreakerScore +
+ kExtendedBridgeScore +
+ kGotHistoricalLogScore +
+ kFinishedPrehistoricScore;
+
+// Mars
+
+static const GameScoreType kThrownByRobotScore = 3;
+static const GameScoreType kGotMarsCardScore = 5;
+static const GameScoreType kSawMarsKioskScore = 2;
+static const GameScoreType kSawTransportMapScore = 2;
+static const GameScoreType kGotCrowBarScore = 5;
+static const GameScoreType kTurnedOnTransportScore = 5;
+static const GameScoreType kGotOxygenMaskScore = 5;
+static const GameScoreType kAvoidedRobotScore = 5;
+static const GameScoreType kActivatedPlatformScore = 2;
+static const GameScoreType kUsedLiquidNitrogenScore = 3;
+static const GameScoreType kUsedCrowBarScore = 3;
+static const GameScoreType kFoundCardBombScore = 4;
+static const GameScoreType kDisarmedCardBombScore = 8;
+static const GameScoreType kGotCardBombScore = 5;
+static const GameScoreType kThreadedMazeScore = 5;
+static const GameScoreType kThreadedGearRoomScore = 2;
+static const GameScoreType kEnteredShuttleScore = 2;
+static const GameScoreType kEnteredLaunchTubeScore = 4;
+static const GameScoreType kStoppedRobotsShuttleScore = 10;
+static const GameScoreType kGotMarsOpMemChipScore = 10;
+static const GameScoreType kFinishedMarsScore = 10;
+
+static const GameScoreType kMaxMarsScore = kThrownByRobotScore +
+ kGotMarsCardScore +
+ kSawMarsKioskScore +
+ kSawTransportMapScore +
+ kGotCrowBarScore +
+ kTurnedOnTransportScore +
+ kGotOxygenMaskScore +
+ kAvoidedRobotScore +
+ kActivatedPlatformScore +
+ kUsedLiquidNitrogenScore +
+ kUsedCrowBarScore +
+ kFoundCardBombScore +
+ kDisarmedCardBombScore +
+ kGotCardBombScore +
+ kThreadedMazeScore +
+ kThreadedGearRoomScore +
+ kEnteredShuttleScore +
+ kEnteredLaunchTubeScore +
+ kStoppedRobotsShuttleScore +
+ kGotMarsOpMemChipScore +
+ kFinishedMarsScore;
+
+// Norad
+
+static const GameScoreType kSawSecurityMonitorScore = 5;
+static const GameScoreType kFilledOxygenCanisterScore = 5;
+static const GameScoreType kFilledArgonCanisterScore = 5;
+static const GameScoreType kSawUnconsciousOperatorScore = 5;
+static const GameScoreType kWentThroughPressureDoorScore = 5;
+static const GameScoreType kPreppedSubScore = 5;
+static const GameScoreType kEnteredSubScore = 5;
+static const GameScoreType kExitedSubScore = 10;
+static const GameScoreType kSawRobotAt54NorthScore = 5;
+static const GameScoreType kPlayedWithClawScore = 5;
+static const GameScoreType kUsedRetinalChipScore = 5;
+static const GameScoreType kFinishedGlobeGameScore = 10;
+static const GameScoreType kStoppedNoradRobotScore = 10;
+static const GameScoreType kGotNoradOpMemChipScore = 10;
+static const GameScoreType kFinishedNoradScore = 10;
+
+static const GameScoreType kMaxNoradScore = kSawSecurityMonitorScore +
+ kFilledOxygenCanisterScore +
+ kFilledArgonCanisterScore +
+ kSawUnconsciousOperatorScore +
+ kWentThroughPressureDoorScore +
+ kPreppedSubScore +
+ kEnteredSubScore +
+ kExitedSubScore +
+ kSawRobotAt54NorthScore +
+ kPlayedWithClawScore +
+ kUsedRetinalChipScore +
+ kFinishedGlobeGameScore +
+ kStoppedNoradRobotScore +
+ kGotNoradOpMemChipScore +
+ kFinishedNoradScore;
+
+// WSC
+
+static const GameScoreType kRemovedDartScore = 5;
+static const GameScoreType kAnalyzedDartScore = 5;
+static const GameScoreType kBuiltAntidoteScore = 5;
+static const GameScoreType kGotSinclairKeyScore = 5;
+static const GameScoreType kGotArgonCanisterScore = 5;
+static const GameScoreType kGotNitrogenCanisterScore = 5;
+static const GameScoreType kPlayedWithMessagesScore = 2;
+static const GameScoreType kSawMorphExperimentScore = 3;
+static const GameScoreType kEnteredSinclairOfficeScore = 2;
+static const GameScoreType kSawBrochureScore = 3;
+static const GameScoreType kSawSinclairEntry1Score = 3;
+static const GameScoreType kSawSinclairEntry2Score = 3;
+static const GameScoreType kSawSinclairEntry3Score = 3;
+static const GameScoreType kSawWSCDirectoryScore = 3;
+static const GameScoreType kUsedCrowBarInWSCScore = 5;
+static const GameScoreType kFinishedPlasmaDodgeScore = 10;
+static const GameScoreType kOpenedCatwalkScore = 3;
+static const GameScoreType kStoppedWSCRobotScore = 10;
+static const GameScoreType kGotWSCOpMemChipScore = 10;
+static const GameScoreType kFinishedWSCScore = 10;
+
+static const GameScoreType kMaxWSCScore = kRemovedDartScore +
+ kAnalyzedDartScore +
+ kBuiltAntidoteScore +
+ kGotSinclairKeyScore +
+ kGotArgonCanisterScore +
+ kGotNitrogenCanisterScore +
+ kPlayedWithMessagesScore +
+ kSawMorphExperimentScore +
+ kEnteredSinclairOfficeScore +
+ kSawBrochureScore +
+ kSawSinclairEntry1Score +
+ kSawSinclairEntry2Score +
+ kSawSinclairEntry3Score +
+ kSawWSCDirectoryScore +
+ kUsedCrowBarInWSCScore +
+ kFinishedPlasmaDodgeScore +
+ kOpenedCatwalkScore +
+ kStoppedWSCRobotScore +
+ kGotWSCOpMemChipScore +
+ kFinishedWSCScore;
+
+// Gandhi
+
+static const GameScoreType kMarsGandhiScore = 10;
+static const GameScoreType kNoradGandhiScore = 10;
+static const GameScoreType kWSCGandhiScore = 10;
+
+static const GameScoreType kMaxGandhiScore = kMarsGandhiScore +
+ kNoradGandhiScore +
+ kWSCGandhiScore;
+
+static const GameScoreType kMaxTotalScore = kMaxCaldoriaTSAScore +
+ kMaxPrehistoricScore +
+ kMaxMarsScore +
+ kMaxNoradScore +
+ kMaxWSCScore +
+ kMaxGandhiScore;
+} // End of namespace Pegasus
+
+#endif