ScummVM API documentation
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
scoring.h
1 /* ScummVM - Graphic Adventure Engine
2  *
3  * ScummVM is the legal property of its developers, whose names
4  * are too numerous to list here. Please refer to the COPYRIGHT
5  * file distributed with this source distribution.
6  *
7  * Additional copyright for this file:
8  * Copyright (C) 1995-1997 Presto Studios, Inc.
9  *
10  * This program is free software: you can redistribute it and/or modify
11  * it under the terms of the GNU General Public License as published by
12  * the Free Software Foundation, either version 3 of the License, or
13  * (at your option) any later version.
14  *
15  * This program is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18  * GNU General Public License for more details.
19  *
20  * You should have received a copy of the GNU General Public License
21  * along with this program. If not, see <http://www.gnu.org/licenses/>.
22  *
23  */
24 
25 #ifndef PEGASUS_SCORING_H
26 #define PEGASUS_SCORING_H
27 
28 #include "pegasus/types.h"
29 
30 namespace Pegasus {
31 
33 //
34 // Scoring.
35 
36 static const CoordType kDeathScreenScoreLeft = 151;
37 static const CoordType kDeathScreenScoreTop = 212;
38 static const CoordType kDeathScreenScoreWidth = 124;
39 static const CoordType kDeathScreenScoreHeight = 12;
40 static const CoordType kDeathScreenScoreSkipVert = -16;
41 
42 // Caldoria & TSA
43 
44 static const GameScoreType kSawINNScore = 5;
45 static const GameScoreType kTookShowerScore = 2;
46 static const GameScoreType kFixedHairScore = 2;
47 static const GameScoreType kGotKeyCardScore = 5;
48 static const GameScoreType kReadPaperScore = 2;
49 static const GameScoreType kLookThroughTelescopeScore = 2;
50 static const GameScoreType kSawCaldoriaKioskScore = 2;
51 static const GameScoreType kGoToTSAScore = 3;
52 
53 static const GameScoreType kEnterTSAScore = 2;
54 static const GameScoreType kSawBust1Score = 2;
55 static const GameScoreType kSawBust2Score = 2;
56 static const GameScoreType kSawBust3Score = 2;
57 static const GameScoreType kSawBust4Score = 2;
58 static const GameScoreType kSawBust5Score = 2;
59 static const GameScoreType kSawBust6Score = 2;
60 static const GameScoreType kSawTheoryScore = 4;
61 static const GameScoreType kSawBackgroundScore = 4;
62 static const GameScoreType kSawProcedureScore = 4;
63 static const GameScoreType kGotJourneymanKeyScore = 5;
64 static const GameScoreType kGotPegasusBiochipScore = 5;
65 static const GameScoreType kGotBiosuitScore = 5;
66 static const GameScoreType kGoToPrehistoricScore = 5;
67 
68 static const GameScoreType kPutLogInReaderScore = 5;
69 static const GameScoreType kSawCaldoriaNormalScore = 2;
70 static const GameScoreType kSawCaldoriaAlteredScore = 2;
71 static const GameScoreType kSawNoradNormalScore = 2;
72 static const GameScoreType kSawNoradAlteredScore = 2;
73 static const GameScoreType kSawMarsNormalScore = 2;
74 static const GameScoreType kSawMarsAlteredScore = 2;
75 static const GameScoreType kSawWSCNormalScore = 2;
76 static const GameScoreType kSawWSCAlteredScore = 2;
77 static const GameScoreType kWentToReadyRoom2Score = 5;
78 static const GameScoreType kWentAfterSinclairScore = 5;
79 static const GameScoreType kUsedCardBombScore = 10;
80 static const GameScoreType kShieldedCardBombScore = 5;
81 static const GameScoreType kStunnedSinclairScore = 10;
82 static const GameScoreType kDisarmedNukeScore = 10;
83 
84 static const GameScoreType kMaxCaldoriaTSAScoreBefore = kSawINNScore +
85  kTookShowerScore +
86  kFixedHairScore +
87  kGotKeyCardScore +
88  kReadPaperScore +
89  kLookThroughTelescopeScore +
90  kSawCaldoriaKioskScore +
91  kGoToTSAScore +
92  kEnterTSAScore +
93  kSawBust1Score +
94  kSawBust2Score +
95  kSawBust3Score +
96  kSawBust4Score +
97  kSawBust5Score +
98  kSawBust6Score +
99  kSawTheoryScore +
100  kSawBackgroundScore +
101  kSawProcedureScore +
102  kGotJourneymanKeyScore +
103  kGotPegasusBiochipScore +
104  kGotBiosuitScore +
105  kGoToPrehistoricScore +
106  kPutLogInReaderScore +
107  kSawCaldoriaNormalScore +
108  kSawCaldoriaAlteredScore +
109  kSawNoradNormalScore +
110  kSawNoradAlteredScore +
111  kSawMarsNormalScore +
112  kSawMarsAlteredScore +
113  kSawWSCNormalScore +
114  kSawWSCAlteredScore +
115  kWentToReadyRoom2Score;
116 
117 static const GameScoreType kMaxCaldoriaTSAScoreAfter = kWentAfterSinclairScore +
118  kUsedCardBombScore +
119  kShieldedCardBombScore +
120  kStunnedSinclairScore +
121  kDisarmedNukeScore;
122 
123 static const GameScoreType kMaxCaldoriaTSAScore = kMaxCaldoriaTSAScoreBefore +
124  kMaxCaldoriaTSAScoreAfter;
125 
126 // Prehistoric
127 
128 static const GameScoreType kThrewBreakerScore = 10;
129 static const GameScoreType kExtendedBridgeScore = 10;
130 static const GameScoreType kGotHistoricalLogScore = 5;
131 static const GameScoreType kFinishedPrehistoricScore = 10;
132 
133 static const GameScoreType kMaxPrehistoricScore = kThrewBreakerScore +
134  kExtendedBridgeScore +
135  kGotHistoricalLogScore +
136  kFinishedPrehistoricScore;
137 
138 // Mars
139 
140 static const GameScoreType kThrownByRobotScore = 3;
141 static const GameScoreType kGotMarsCardScore = 5;
142 static const GameScoreType kSawMarsKioskScore = 2;
143 static const GameScoreType kSawTransportMapScore = 2;
144 static const GameScoreType kGotCrowBarScore = 5;
145 static const GameScoreType kTurnedOnTransportScore = 5;
146 static const GameScoreType kGotOxygenMaskScore = 5;
147 static const GameScoreType kAvoidedRobotScore = 5;
148 static const GameScoreType kActivatedPlatformScore = 2;
149 static const GameScoreType kUsedLiquidNitrogenScore = 3;
150 static const GameScoreType kUsedCrowBarScore = 3;
151 static const GameScoreType kFoundCardBombScore = 4;
152 static const GameScoreType kDisarmedCardBombScore = 8;
153 static const GameScoreType kGotCardBombScore = 5;
154 static const GameScoreType kThreadedMazeScore = 5;
155 static const GameScoreType kThreadedGearRoomScore = 2;
156 static const GameScoreType kEnteredShuttleScore = 2;
157 static const GameScoreType kEnteredLaunchTubeScore = 4;
158 static const GameScoreType kStoppedRobotsShuttleScore = 10;
159 static const GameScoreType kGotMarsOpMemChipScore = 10;
160 static const GameScoreType kFinishedMarsScore = 10;
161 
162 static const GameScoreType kMaxMarsScore = kThrownByRobotScore +
163  kGotMarsCardScore +
164  kSawMarsKioskScore +
165  kSawTransportMapScore +
166  kGotCrowBarScore +
167  kTurnedOnTransportScore +
168  kGotOxygenMaskScore +
169  kAvoidedRobotScore +
170  kActivatedPlatformScore +
171  kUsedLiquidNitrogenScore +
172  kUsedCrowBarScore +
173  kFoundCardBombScore +
174  kDisarmedCardBombScore +
175  kGotCardBombScore +
176  kThreadedMazeScore +
177  kThreadedGearRoomScore +
178  kEnteredShuttleScore +
179  kEnteredLaunchTubeScore +
180  kStoppedRobotsShuttleScore +
181  kGotMarsOpMemChipScore +
182  kFinishedMarsScore;
183 
184 // Norad
185 
186 static const GameScoreType kSawSecurityMonitorScore = 5;
187 static const GameScoreType kFilledOxygenCanisterScore = 5;
188 static const GameScoreType kFilledArgonCanisterScore = 5;
189 static const GameScoreType kSawUnconsciousOperatorScore = 5;
190 static const GameScoreType kWentThroughPressureDoorScore = 5;
191 static const GameScoreType kPreppedSubScore = 5;
192 static const GameScoreType kEnteredSubScore = 5;
193 static const GameScoreType kExitedSubScore = 10;
194 static const GameScoreType kSawRobotAt54NorthScore = 5;
195 static const GameScoreType kPlayedWithClawScore = 5;
196 static const GameScoreType kUsedRetinalChipScore = 5;
197 static const GameScoreType kFinishedGlobeGameScore = 10;
198 static const GameScoreType kStoppedNoradRobotScore = 10;
199 static const GameScoreType kGotNoradOpMemChipScore = 10;
200 static const GameScoreType kFinishedNoradScore = 10;
201 
202 static const GameScoreType kMaxNoradScore = kSawSecurityMonitorScore +
203  kFilledOxygenCanisterScore +
204  kFilledArgonCanisterScore +
205  kSawUnconsciousOperatorScore +
206  kWentThroughPressureDoorScore +
207  kPreppedSubScore +
208  kEnteredSubScore +
209  kExitedSubScore +
210  kSawRobotAt54NorthScore +
211  kPlayedWithClawScore +
212  kUsedRetinalChipScore +
213  kFinishedGlobeGameScore +
214  kStoppedNoradRobotScore +
215  kGotNoradOpMemChipScore +
216  kFinishedNoradScore;
217 
218 // WSC
219 
220 static const GameScoreType kRemovedDartScore = 5;
221 static const GameScoreType kAnalyzedDartScore = 5;
222 static const GameScoreType kBuiltAntidoteScore = 5;
223 static const GameScoreType kGotSinclairKeyScore = 5;
224 static const GameScoreType kGotArgonCanisterScore = 5;
225 static const GameScoreType kGotNitrogenCanisterScore = 5;
226 static const GameScoreType kPlayedWithMessagesScore = 2;
227 static const GameScoreType kSawMorphExperimentScore = 3;
228 static const GameScoreType kEnteredSinclairOfficeScore = 2;
229 static const GameScoreType kSawBrochureScore = 3;
230 static const GameScoreType kSawSinclairEntry1Score = 3;
231 static const GameScoreType kSawSinclairEntry2Score = 3;
232 static const GameScoreType kSawSinclairEntry3Score = 3;
233 static const GameScoreType kSawWSCDirectoryScore = 3;
234 static const GameScoreType kUsedCrowBarInWSCScore = 5;
235 static const GameScoreType kFinishedPlasmaDodgeScore = 10;
236 static const GameScoreType kOpenedCatwalkScore = 3;
237 static const GameScoreType kStoppedWSCRobotScore = 10;
238 static const GameScoreType kGotWSCOpMemChipScore = 10;
239 static const GameScoreType kFinishedWSCScore = 10;
240 
241 static const GameScoreType kMaxWSCScore = kRemovedDartScore +
242  kAnalyzedDartScore +
243  kBuiltAntidoteScore +
244  kGotSinclairKeyScore +
245  kGotArgonCanisterScore +
246  kGotNitrogenCanisterScore +
247  kPlayedWithMessagesScore +
248  kSawMorphExperimentScore +
249  kEnteredSinclairOfficeScore +
250  kSawBrochureScore +
251  kSawSinclairEntry1Score +
252  kSawSinclairEntry2Score +
253  kSawSinclairEntry3Score +
254  kSawWSCDirectoryScore +
255  kUsedCrowBarInWSCScore +
256  kFinishedPlasmaDodgeScore +
257  kOpenedCatwalkScore +
258  kStoppedWSCRobotScore +
259  kGotWSCOpMemChipScore +
260  kFinishedWSCScore;
261 
262 // Gandhi
263 
264 static const GameScoreType kMarsGandhiScore = 10;
265 static const GameScoreType kNoradGandhiScore = 10;
266 static const GameScoreType kWSCGandhiScore = 10;
267 
268 static const GameScoreType kMaxGandhiScore = kMarsGandhiScore +
269  kNoradGandhiScore +
270  kWSCGandhiScore;
271 
272 static const GameScoreType kMaxTotalScore = kMaxCaldoriaTSAScore +
273  kMaxPrehistoricScore +
274  kMaxMarsScore +
275  kMaxNoradScore +
276  kMaxWSCScore +
277  kMaxGandhiScore;
278 } // End of namespace Pegasus
279 
280 #endif
Definition: ai_action.h:33