aboutsummaryrefslogtreecommitdiff
path: root/sky/sky.h
diff options
context:
space:
mode:
authorOliver Kiehl2003-04-07 20:44:52 +0000
committerOliver Kiehl2003-04-07 20:44:52 +0000
commit17f53e4c1c73b193345bad68255dbe7e0a2e5ce8 (patch)
treeb696c63bdfbc0fa6ff48a92dc61ddc2b808ef8cb /sky/sky.h
parent6fc83fa9057a8f4cbb537662433c5b6039c99b67 (diff)
downloadscummvm-rg350-17f53e4c1c73b193345bad68255dbe7e0a2e5ce8.tar.gz
scummvm-rg350-17f53e4c1c73b193345bad68255dbe7e0a2e5ce8.tar.bz2
scummvm-rg350-17f53e4c1c73b193345bad68255dbe7e0a2e5ce8.zip
restructure
svn-id: r6934
Diffstat (limited to 'sky/sky.h')
-rw-r--r--sky/sky.h50
1 files changed, 9 insertions, 41 deletions
diff --git a/sky/sky.h b/sky/sky.h
index a0328d235b..9386f79e7c 100644
--- a/sky/sky.h
+++ b/sky/sky.h
@@ -28,14 +28,14 @@
#include "common/timer.h"
#include "sound/mixer.h"
#include "sky/sound.h"
+#include "sky/text.h"
+#include "sky/disk.h"
class SkyState : public Engine {
void errorString(const char *buf_input, char *buf_output);
protected:
byte _game;
uint32 _gameVersion;
- bool _isCDVersion;
- bool _isDemo;
byte _key_pressed;
uint32 _tseqFrames;
@@ -43,29 +43,7 @@ protected:
uint32 _tseqCounter;
void *_itemList[300];
- uint8 _textBuffer[1024];
- uint32 _dtLineWidth; //width of line in pixels
- uint32 _dtLines; //no of lines to do
- uint32 _dtLineSize; //size of one line in bytes
- uint8 *_dtData; //address of textdata
- uint32 _dtLetters; //no of chars in message
- uint8 *_dtText; //pointer to text
- uint32 _dtCharSpacing; //character seperation adjustment
- uint32 _dtWidth; //width of chars in last line (for editing (?))
- uint32 _dtCentre; //set for centre text
- uint8 *_mouseTextData; //space for the mouse text
-
- struct charSet {
- uint8 *addr;
- uint32 charHeight;
- uint32 thirdVal;
- } _mainCharacterSet, _linkCharacterSet, _controlCharacterSet;
-
- uint32 _curCharSet;
- uint32 _characterSet;
- uint32 _charHeight;
- uint8 *_preAfterTableArea;
-
+
uint16 _debugMode;
uint16 _debugLevel;
uint16 _language;
@@ -78,8 +56,6 @@ protected:
int _numScreenUpdates;
- uint32 _lastLoadedFileSize;
-
Timer *_timer;
//int _timer_id;
@@ -90,6 +66,7 @@ protected:
int _sdl_mouse_x, _sdl_mouse_y;
SkySound *_sound;
+ SkyDisk *_skyDisk;
byte *_workScreen;
byte *_backScreen;
@@ -105,36 +82,26 @@ public:
SkyState(GameDetector *detector, OSystem *syst);
virtual ~SkyState();
+ static bool isDemo(uint32 version);
+ static bool isCDVersion(uint32 version);
+
protected:
void delay(uint amount);
void pollMouseXY();
void go();
void convertPalette(uint8 *inpal, uint8* outpal);
- void determineGameVersion(uint32 dnrEntries);
- void setupVersionSpecifics(uint32 version);
+ SkyText *getSkyText();
void initialise();
void initTimer();
- void initialiseDisk();
void initialiseScreen();
void initialiseGrids();
void initItemList();
- void initialiseText();
- void fnSetFont(uint32 fontNr);
- void getText(uint32 textNr);
- char (SkyState::*getTextChar)(uint8 *, uint8 *, uint8 *&);
- char getTextChar_v00267(uint8 *inputValue, uint8 *shiftBits, uint8 *&inputStream);
- char getTextChar_v00288(uint8 *inputValue, uint8 *shiftBits, uint8 *&inputStream);
- char getTextChar_v00368(uint8 *inputValue, uint8 *shiftBits, uint8 *&inputStream);
- bool getTBit(uint8 *inputValue, uint8 *shiftBits, byte *&inputStream);
void setPalette(uint8 *pal);
void fnFadeDown(uint8 action);
void palette_fadedown_helper(uint32 *pal, uint num);
void paletteFadeUp(uint8 *pal);
void palette_fadeup_helper(uint32 *realPal, uint32 *desiredPal, int num);
- uint8 *loadFile(uint16 fileNr, uint8 *dest);
- uint8 *getFileInfo(uint16 fileNr);
- void dumpFile(uint16 fileNr);
void initVirgin();
void intro();
void doCDIntro();
@@ -148,6 +115,7 @@ protected:
void shutdown();
RandomSource _rnd;
+ SkyText *_skyText;
};
#endif