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;
85 void loadAssetsAtariFullGame()
override;
88 void loadAssetsCPCFullGame()
override;
90 void loadAssetsZXDemo()
override;
91 void loadAssetsZXFullGame()
override;
96 void updateTimeVariables()
override;
98 void drawBinaryClock(
Graphics::Surface *surface,
int xPosition,
int yPosition, uint32 front, uint32 back);
103 void updateIndicatorsDOS(
const byte *palette);
105 void drawSensorShoot(
Sensor *sensor)
override;
119 uint32 _cpcActionIndicatorUntilMillis;
128 static const int kAtariSpriteDelta = 0xE052;
137 bool _amigaCompassYawPhaseInitialized;
138 int _amigaCompassYawPhase;
139 int _amigaCompassYawLastUpdateTick;
140 bool _jetpackIndicatorStateInitialized;
141 bool _jetpackIndicatorLastFlyMode;
142 int _jetpackIndicatorTransitionFrame;
143 int _jetpackIndicatorTransitionDirection;
144 uint32 _jetpackIndicatorNextFrameMillis;
152 int _soundIndexRestoreECD;
153 int _soundIndexDestroyECD;
159 bool _c64CompassInitialized;
160 int _c64CompassPosition;
163 void toggleC64Sound();
167 void drawString(
const DarkFontSize size,
const Common::String &str,
int x,
int y, uint32 primaryColor, uint32 secondaryColor, uint32 backColor,
Graphics::Surface *surface);
168 void drawInfoMenu()
override;
174 void addECDs(
Area *area);
175 void addECD(
Area *area,
const Math::Vector3d position,
int index);
176 void restoreECD(
Area &area,
int index);
177 bool checkECD(uint16 areaID,
int index);
178 bool tryDestroyECD(
int index);
179 bool tryDestroyECDFullGame(
int index);
180 void addWalls(
Area *area);
187 void drawVerticalCompass(
Graphics::Surface *surface,
int x,
int y,
float angle, uint32 color);
188 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:49