diff options
Diffstat (limited to 'sword2/sword2.h')
-rw-r--r-- | sword2/sword2.h | 175 |
1 files changed, 4 insertions, 171 deletions
diff --git a/sword2/sword2.h b/sword2/sword2.h index c51202b447..8de53d64e4 100644 --- a/sword2/sword2.h +++ b/sword2/sword2.h @@ -36,8 +36,6 @@ #include "sword2/build_display.h" #include "sword2/header.h" #include "sword2/icons.h" -#include "sword2/layers.h" -#include "sword2/mouse.h" #include "sword2/object.h" #include "sword2/save_rest.h" @@ -56,6 +54,8 @@ enum { class MemoryManager; class ResourceManager; class Sound; +class Screen; +class Mouse; class Graphics; class Logic; class FontRenderer; @@ -96,67 +96,6 @@ private: uint32 _bootParam; int32 _saveSlot; - // structure filled out by each object to register its graphic printing - // requrements - - struct BuildUnit { - int16 x; - int16 y; - uint16 scaled_width; - uint16 scaled_height; - int16 sort_y; - uint32 anim_resource; - uint16 anim_pc; - - // Denotes a scaling sprite at print time - and holds the - // scaling value for the shrink routine - - uint16 scale; - - // Non-zero means this item is a layer - retrieve from - // background layer and send to special renderer - - uint16 layer_number; - - // True means we want this frame to be affected by the shading - // mask - - bool shadingFlag; - }; - - BuildUnit _bgp0List[MAX_bgp0_sprites]; - BuildUnit _bgp1List[MAX_bgp1_sprites]; - BuildUnit _backList[MAX_back_sprites]; - BuildUnit _sortList[MAX_sort_sprites]; - BuildUnit _foreList[MAX_fore_sprites]; - BuildUnit _fgp0List[MAX_fgp0_sprites]; - BuildUnit _fgp1List[MAX_fgp1_sprites]; - - // Holds the order of the sort list, i.e. the list stays static and we - // sort this array. - - uint16 _sortOrder[MAX_sort_sprites]; - - // Last palette used - so that we can restore the correct one after a - // pause (which dims the screen) and it's not always the main screen - // palette that we want, eg. during the eclipse - - // This flag gets set in startNewPalette() and setFullPalette() - - uint32 _lastPaletteRes; - - void drawBackPar0Frames(); - void drawBackPar1Frames(); - void drawBackFrames(); - void drawSortFrames(byte *file); - void drawForeFrames(); - void drawForePar0Frames(); - void drawForePar1Frames(); - - void startNewPalette(); - void processLayer(byte *file, uint32 layer_number); - void processImage(BuildUnit *build_unit); - void getPlayerStructures(); void putPlayerStructures(); @@ -168,12 +107,6 @@ private: void pauseGame(); void unpauseGame(); - MenuObject _tempList[TOTAL_engine_pockets]; - uint32 _totalTemp; - - MenuObject _masterMenuList[TOTAL_engine_pockets]; - uint32 _totalMasters; - uint32 _totalStartups; uint32 _totalScreenManagers; uint32 _startRes; @@ -208,7 +141,8 @@ public: MemoryManager *_memory; ResourceManager *_resman; Sound *_sound; - Graphics *_graphics; + Screen *_screen; + Mouse *_mouse; Logic *_logic; FontRenderer *_fontRenderer; Gui *_gui; @@ -221,9 +155,6 @@ public: uint32 _controlsFontId; uint32 _redFontId; - int16 _mouseX; - int16 _mouseY; - uint32 setEventFilter(uint32 filter); void parseEvents(); @@ -232,36 +163,6 @@ public: MouseEvent *mouseEvent(); KeyboardEvent *keyboardEvent(); - void resetRenderLists(); - void buildDisplay(); - void displayMsg(byte *text, int time); - void setFullPalette(int32 palRes); - - int32 registerFrame(int32 *params); - void registerFrame(int32 *params, BuildUnit *build_unit); - - // The debugger wants to access these - - uint32 _curBgp0; - uint32 _curBgp1; - uint32 _curBack; - uint32 _curSort; - uint32 _curFore; - uint32 _curFgp0; - uint32 _curFgp1; - - // Debugging stuff - - uint32 _largestLayerArea; - uint32 _largestSpriteArea; - char _largestLayerInfo[128]; - char _largestSpriteInfo[128]; - - // 'frames per second' counting stuff - uint32 _fps; - uint32 _cycleTime; - uint32 _frameCount; - bool _wantSfxDebug; int32 _gameCycle; @@ -271,74 +172,10 @@ public: bool _stepOneCycle; #endif - int32 initBackground(int32 res, int32 new_palette); - #if RIGHT_CLICK_CLEARS_LUGGAGE bool heldIsInInventory(); #endif - int menuClick(int menu_items); - - void addMenuObject(MenuObject *obj); - void buildMenu(); - void buildSystemMenu(); - - // _thisScreen describes the current back buffer and its in-game scroll - // positions, etc. - - ScreenInfo _thisScreen; - - uint32 _curMouse; - MouseUnit _mouseList[TOTAL_mouse_list]; - - // Set by checkMouseList() - uint32 _mouseTouching; - uint32 _oldMouseTouching; - - uint32 _menuSelectedPos; - - // If it's NORMAL_MOUSE_ID (ie. normal pointer) then it's over a floor - // area (or hidden hot-zone) - - uint32 _mousePointerRes; - - uint32 _mouseMode; - bool _examiningMenuIcon; - - bool _mouseStatus; // Human 0 on/1 off - bool _mouseModeLocked; // 0 not !0 mode cannot be changed from - // normal mouse to top menu (i.e. when - // carrying big objects) - uint32 _realLuggageItem; // Last minute for pause mode - uint32 _currentLuggageResource; - uint32 _oldButton; // For the re-click stuff - must be - // the same button you see - uint32 _buttonClick; - uint32 _pointerTextBlocNo; - uint32 _playerActivityDelay; // Player activity delay counter - - void resetMouseList(); - - void normalMouse(); - void menuMouse(); - void dragMouse(); - void systemMenuMouse(); - - void mouseOnOff(); - uint32 checkMouseList(); - void mouseEngine(); - - void setMouse(uint32 res); - void setLuggage(uint32 res); - - void clearPointerText(); - - void createPointerText(uint32 text_id, uint32 pointer_res); - void monitorPlayerActivity(); - void noHuman(); - - void registerMouse(ObjectMouse *ob_mouse); - byte *fetchPalette(byte *screenFile); ScreenHeader *fetchScreenHeader(byte *screenFile); LayerHeader *fetchLayerHeader(byte *screenFile, uint16 layerNo); @@ -395,10 +232,6 @@ public: uint32 restoreFromBuffer(byte *buffer, uint32 size); uint32 findBufferSize(); - uint8 _scrollFraction; - - void setScrolling(); - bool _gamePaused; bool _graphicsLevelFudged; |