25 #include "common/scummsys.h" 26 #include "common/array.h" 27 #include "mads/msurface.h" 28 #include "mads/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
79 void setArea(
int width,
int height,
int maxWidth,
int maxHeight);
108 void merge(
int startIndex,
int count);
110 bool intersects(
int idx1,
int idx2);
111 void mergeAreas(
int idx1,
int idx2);
134 ScrCategory _category;
148 InputMode _inputMode;
153 ScrCategory _category;
173 void check(
bool scanFlag);
183 void elementHighlighted();
200 void setActive(ScrCategory category,
int descId,
bool active);
213 void panTransition(
MSurface &newScreen, byte *palData,
int entrySide,
215 ThroughBlack throughBlack,
bool setPalette,
int numTicks);
217 void swapForeground(byte newPalette[PALETTE_SIZE], byte *paletteMap);
219 void swapPalette(
const byte palData[PALETTE_SIZE], byte swapTable[PALETTE_COUNT],
bool foreground);
236 void update()
override;
241 void transition(ScreenTransition transitionType,
bool surfaceFlag);
251 void resetClipBounds();
Definition: msurface.h:55
~Screen() override
Definition: screen.h:231
T & operator[](size_type idx)
Definition: array.h:273
ScreenObject & operator[](int idx)
Definition: screen.h:189
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:256
void setTextDisplay(const TextDisplay *textDisplay)
int16 x
Definition: rect.h:46
Definition: messages.h:134
int16 y
Definition: rect.h:47
Definition: msurface.h:172
Definition: user_interface.h:46
void setUISlot(const UISlot *slot)