22#ifndef SUPERNOVA_SUPERNOVA_H
23#define SUPERNOVA_SUPERNOVA_H
25#include "common/array.h"
26#include "common/events.h"
27#include "common/random.h"
28#include "common/scummsys.h"
29#include "engines/engine.h"
30#include "common/file.h"
32#include "supernova/console.h"
33#include "supernova/graphics.h"
34#include "supernova/msn_def.h"
35#include "supernova/room.h"
36#include "supernova/sound.h"
37#include "supernova/imageid.h"
38#include "supernova/game-manager.h"
41 class MemoryReadWriteStream;
46#define SAVEGAME_HEADER MKTAG('M','S','N','1')
47#define SAVEGAME_HEADER2 MKTAG('M','S','N','2')
48#define SAVEGAME_VERSION 10
50#define SUPERNOVA_DAT "supernova.dat"
51#define SUPERNOVA_DAT_VERSION 4
82 int _sleepAuoSaveVersion;
93 bool loadGame(
int slot);
97 bool quitGameDialog();
98 void errorTempSave(
bool saving);
102 void showHelpScreen1();
103 void showHelpScreen2();
108 void playSound(AudioId sample);
109 void playSound(MusicId index);
110 void paletteFadeIn();
111 void paletteFadeOut(
int minBrightness = 0);
112 void paletteBrightness();
113 void renderImage(
int section);
114 void renderImage(ImageId
id,
bool removeImage =
false);
115 bool setCurrentImage(
int filenumber);
116 void saveScreen(
int x,
int y,
int width,
int height);
117 void saveScreen(
const GuiElement &guiElement);
118 void restoreScreen();
119 void renderRoom(
Room &room);
120 void renderMessage(
const char *text, MessagePosition position = kMessageNormal);
121 void renderMessage(
const Common::String &text, MessagePosition position = kMessageNormal);
122 void renderMessage(
int stringId, MessagePosition position = kMessageNormal,
124 void renderMessage(
int stringId,
int x,
int y);
125 void removeMessage();
126 void renderText(
const uint16 character);
127 void renderText(
const char *text);
129 void renderText(
int stringId);
130 void renderText(
const uint16 character,
int x,
int y,
byte color);
131 void renderText(
const char *text,
int x,
int y,
byte color);
132 void renderText(
const Common::String &text,
int x,
int y,
byte color);
133 void renderText(
int stringId,
int x,
int y,
byte color);
134 void renderText(
const GuiElement &guiElement);
135 void renderBox(
int x,
int y,
int width,
int height,
byte color);
137 void setColor63(
byte value);
141enum SUPERNOVAAction {
166 kActionOfficeManager,
Definition: memstream.h:283
EngineFeature
Definition: engine.h:282
Definition: game-manager.h:101
Definition: game-manager.h:63
Definition: supernova.h:61
void pauseEngineIntern(bool pause) override
Common::Error saveGameState(int slot, const Common::String &desc, bool isAutosave=false) override
bool canLoadGameStateCurrently(Common::U32String *msg=nullptr) override
Common::String getSaveStateName(int slot) const override
Common::Error run() override
bool canSaveGameStateCurrently(Common::U32String *msg=nullptr) override
bool hasFeature(EngineFeature f) const override
Common::Error loadGameState(int slot) override
Definition: algorithm.h:29
Definition: atari-screen.h:58