25 #include "common/scummsys.h" 26 #include "common/array.h" 27 #include "mads/core/msurface.h" 28 #include "mads/core/action.h" 32 #define MADS_SCREEN_WIDTH 320 33 #define MADS_SCREEN_HEIGHT 200 39 enum ScreenTransition {
41 kTransitionFadeIn, kTransitionFadeOutIn,
42 kTransitionBoxInBottomLeft, kTransitionBoxInBottomRight,
43 kTransitionBoxInTopLeft, kTransitionBoxInTopRight,
44 kTransitionPanLeftToRight, kTransitionPanRightToLeft,
45 kTransitionCircleIn1, kTransitionCircleIn2,
46 kTransitionCircleIn3, kTransitionCircleIn4,
47 kVertTransition1, kVertTransition2, kVertTransition3,
48 kVertTransition4, kVertTransition5, kVertTransition6,
49 kVertTransition7, kNullPaletteCopy
53 kInputBuildingSentences = 0,
54 kInputConversation = 1,
55 kInputLimitedSentences = 2
63 class RexNebularEngine;
80 void setArea(
int width,
int height,
int maxWidth,
int maxHeight);
109 void merge(
int startIndex,
int count);
111 bool intersects(
int idx1,
int idx2);
112 void mergeAreas(
int idx1,
int idx2);
135 ScrCategory _category;
149 InputMode _inputMode;
154 ScrCategory _category;
174 void check(
bool scanFlag);
184 void elementHighlighted();
201 void setActive(ScrCategory category,
int descId,
bool active);
214 void panTransition(
MSurface &newScreen, byte *palData,
int entrySide,
216 ThroughBlack throughBlack,
bool setPalette,
int numTicks);
218 void swapForeground(byte newPalette[PALETTE_SIZE], byte *paletteMap);
220 void swapPalette(
const byte palData[PALETTE_SIZE], byte swapTable[PALETTE_COUNT],
bool foreground);
237 void update()
override;
242 void transition(ScreenTransition transitionType,
bool surfaceFlag);
252 void resetClipBounds();
Definition: msurface.h:55
~Screen() override
Definition: screen.h:232
T & operator[](size_type idx)
Definition: array.h:274
ScreenObject & operator[](int idx)
Definition: screen.h:190
Definition: serializer.h:79
Out copy(In first, In last, Out dst)
Definition: algorithm.h:52
Definition: sprites.h:133
void setSpriteSlot(const SpriteSlot *spriteSlot)
const Common::Rect getClipBounds() const
Definition: screen.h:257
void setTextDisplay(const TextDisplay *textDisplay)
Definition: messages.h:134
Definition: msurface.h:172
Definition: user_interface.h:46
void setUISlot(const UISlot *slot)