22 #include "audio/mixer.h" 23 #include "common/array.h" 24 #include "freescape/music.h" 25 #include "freescape/games/dark/c64.music.h" 26 #include "freescape/games/dark/c64.sfx.h" 31 kVariableDarkEnding = 28,
32 kVariableDarkECD = 29,
33 kVariableActiveECDs = 60,
37 kDarkEndingEvathDestroyed = 1,
38 kDarkEndingECDsDestroyed = 2,
57 uint32 _initialEnergy;
58 uint32 _initialShield;
59 uint32 _jetFuelSeconds;
60 void addSkanner(
Area *area);
63 void initGameState()
override;
64 void borderScreen()
override;
65 bool triggerWinCondition()
override;
66 bool checkIfGameEnded()
override;
67 void endGame()
override;
69 void gotoArea(uint16 areaID,
int entranceID)
override;
70 void pressedKey(
const int keycode)
override;
75 void initAmigaAtari();
79 void loadAssets()
override;
80 void loadAssetsDOSFullGame()
override;
81 void loadAssetsDOSDemo()
override;
82 void loadAssetsC64FullGame()
override;
83 void loadAssetsAmigaFullGame()
override;
84 void loadAssetsAtariFullGame()
override;
86 void loadAssetsCPCFullGame()
override;
88 void loadAssetsZXDemo()
override;
89 void loadAssetsZXFullGame()
override;
94 void updateTimeVariables()
override;
96 void drawBinaryClock(
Graphics::Surface *surface,
int xPosition,
int yPosition, uint32 front, uint32 back);
99 void drawSensorShoot(
Sensor *sensor)
override;
113 uint32 _cpcActionIndicatorUntilMillis;
127 bool _amigaCompassYawPhaseInitialized;
128 int _amigaCompassYawPhase;
129 int _amigaCompassYawLastUpdateTick;
130 bool _jetpackIndicatorStateInitialized;
131 bool _jetpackIndicatorLastFlyMode;
132 int _jetpackIndicatorTransitionFrame;
133 int _jetpackIndicatorTransitionDirection;
134 uint32 _jetpackIndicatorNextFrameMillis;
142 int _soundIndexRestoreECD;
143 int _soundIndexDestroyECD;
149 bool _c64CompassInitialized;
150 int _c64CompassPosition;
152 void playSoundC64(
int index)
override;
153 void toggleC64Sound();
157 void drawString(
const DarkFontSize size,
const Common::String &str,
int x,
int y, uint32 primaryColor, uint32 secondaryColor, uint32 backColor,
Graphics::Surface *surface);
158 void drawInfoMenu()
override;
164 void addECDs(
Area *area);
165 void addECD(
Area *area,
const Math::Vector3d position,
int index);
166 void restoreECD(
Area &area,
int index);
167 bool checkECD(uint16 areaID,
int index);
168 bool tryDestroyECD(
int index);
169 bool tryDestroyECDFullGame(
int index);
170 void addWalls(
Area *area);
177 void drawVerticalCompass(
Graphics::Surface *surface,
int x,
int y,
float angle, uint32 color);
178 void drawHorizontalCompass(
int x,
int y,
float angle, uint32 front, uint32 back,
Graphics::Surface *surface);
Definition: managed_surface.h:51
Definition: advancedDetector.h:164
Definition: freescape.h:191
Definition: instruction.h:36