25 #include "common/scummsys.h" 26 #include "common/array.h" 27 #include "mads/nebular/core/msurface.h" 28 #include "mads/nebular/core/action.h" 33 #define MADS_SCREEN_WIDTH 320 34 #define MADS_SCREEN_HEIGHT 200 40 enum ScreenTransition {
42 kTransitionFadeIn, kTransitionFadeOutIn,
43 kTransitionBoxInBottomLeft, kTransitionBoxInBottomRight,
44 kTransitionBoxInTopLeft, kTransitionBoxInTopRight,
45 kTransitionPanLeftToRight, kTransitionPanRightToLeft,
46 kTransitionCircleIn1, kTransitionCircleIn2,
47 kTransitionCircleIn3, kTransitionCircleIn4,
48 kVertTransition1, kVertTransition2, kVertTransition3,
49 kVertTransition4, kVertTransition5, kVertTransition6,
50 kVertTransition7, kNullPaletteCopy
54 kInputBuildingSentences = 0,
55 kInputConversation = 1,
56 kInputLimitedSentences = 2
64 class RexNebularEngine;
81 void setArea(
int width,
int height,
int maxWidth,
int maxHeight);
110 void merge(
int startIndex,
int count);
112 bool intersects(
int idx1,
int idx2);
113 void mergeAreas(
int idx1,
int idx2);
136 ScrCategory _category;
150 InputMode _inputMode;
155 ScrCategory _category;
175 void check(
bool scanFlag);
185 void elementHighlighted();
202 void setActive(ScrCategory category,
int descId,
bool active);
215 void panTransition(
MSurface &newScreen, byte *palData,
int entrySide,
217 ThroughBlack throughBlack,
bool setPalette,
int numTicks);
219 void swapForeground(byte newPalette[PALETTE_SIZE], byte *paletteMap);
221 void swapPalette(
const byte palData[PALETTE_SIZE], byte swapTable[PALETTE_COUNT],
bool foreground);
239 void update()
override;
244 void transition(ScreenTransition transitionType,
bool surfaceFlag);
254 void resetClipBounds();
~Screen() override
Definition: screen.h:233
const Common::Rect getClipBounds() const
Definition: screen.h:259
Definition: messages.h:137
T & operator[](size_type idx)
Definition: array.h:274
void setUISlot(const UISlot *slot)
Definition: serializer.h:80
void setSpriteSlot(const SpriteSlot *spriteSlot)
Out copy(In first, In last, Out dst)
Definition: algorithm.h:52
Definition: msurface.h:56
Definition: sprites.h:134
void setTextDisplay(const TextDisplay *textDisplay)
ScreenObject & operator[](int idx)
Definition: screen.h:191
Definition: sound_manager.h:38
Definition: msurface.h:188
Definition: user_interface.h:49