25 #include "made/resource.h" 27 #include "common/rect.h" 29 #include "graphics/cursor.h" 39 int16 textColor, outlineColor;
51 int16 index, xofs, yofs;
57 static const byte defaultMouseCursor[256] = {
58 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
59 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0,
60 0, 0, 0, 0, 0, 0, 0, 1, 15, 15, 1, 0, 0, 0, 0, 0,
61 0, 0, 0, 0, 0, 0, 0, 1, 15, 15, 1, 0, 0, 0, 0, 0,
62 0, 0, 0, 0, 0, 0, 0, 1, 15, 15, 1, 0, 0, 0, 0, 0,
63 0, 1, 1, 1, 1, 1, 1, 1, 15, 15, 1, 0, 0, 0, 0, 0,
64 1, 1, 15, 1, 15, 1, 15, 1, 15, 15, 1, 0, 0, 0, 0, 0,
65 1, 15, 15, 1, 15, 1, 15, 1, 15, 15, 1, 0, 0, 0, 0, 0,
66 1, 15, 15, 15, 15, 15, 15, 15, 15, 15, 1, 0, 1, 1, 1, 0,
67 1, 15, 15, 15, 15, 15, 15, 15, 15, 15, 1, 1, 15, 15, 15, 1,
68 1, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 1, 1, 1,
69 1, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 1, 1, 0, 0,
70 1, 1, 15, 15, 15, 15, 15, 15, 15, 15, 15, 1, 1, 0, 0, 0,
71 0, 1, 1, 15, 15, 15, 15, 15, 15, 15, 1, 1, 0, 0, 0, 0,
72 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0,
73 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
83 void drawSurface(
Graphics::Surface *sourceSurface,
int x,
int y, int16 flipX, int16 flipY, int16 mask,
const ClipInfo &clipInfo);
85 void setRGBPalette(byte *palRGB,
int start = 0,
int count = 256);
86 bool isPaletteLocked() {
return _paletteLock; }
87 void setPaletteLock(
bool lock) { _paletteLock = lock; }
88 bool isScreenLocked() {
return _screenLock; }
89 void setScreenLock(
bool lock) { _screenLock = lock; }
90 void setVisualEffectNum(
int visualEffectNum) { _visualEffectNum = visualEffectNum; }
92 void setClipArea(uint16 x1, uint16 y1, uint16 x2, uint16 y2) {
96 void setExcludeArea(uint16 x1, uint16 y1, uint16 x2, uint16 y2);
98 void setClip(int16 clip) { _clip = clip; }
99 void setExclude(int16 exclude) { _exclude = exclude; }
100 void setGround(int16 ground) { _ground = ground; }
101 void setMask(int16 mask) { _mask = mask; }
103 void setTextColor(int16 color) { _textColor = color; }
106 _textRect = textRect;
107 _textX = _textRect.
left;
108 _textY = _textRect.top;
112 textRect = _textRect;
115 void setOutlineColor(int16 color) {
116 _outlineColor = color;
117 _dropShadowColor = -1;
120 void setDropShadowColor(int16 color) {
122 _dropShadowColor = color;
125 void setTextXY(int16 x, int16 y) {
131 _textX = _textRect.
left;
132 _textY = _textRect.top;
135 void setQueueNextText(
bool value) { _queueNextText = value; }
136 void setVoiceTimeText(
bool value) { _voiceTimeText = value; }
138 uint16 updateChannel(uint16 channelIndex);
139 void deleteChannel(uint16 channelIndex);
140 int16 getChannelType(uint16 channelIndex);
141 int16 getChannelState(uint16 channelIndex);
142 void setChannelState(uint16 channelIndex, int16 state);
143 uint16 setChannelLocation(uint16 channelIndex, int16 x, int16 y);
144 uint16 setChannelContent(uint16 channelIndex, uint16 index);
145 void setChannelUseMask(uint16 channelIndex);
146 void drawSpriteChannels(
const ClipInfo &clipInfo, int16 includeStateMask, int16 excludeStateMask);
147 void updateSprites();
148 void clearChannels();
150 uint16 drawFlex(uint16 flexIndex, int16 x, int16 y, int16 flipX, int16 flipY, int16 mask,
const ClipInfo &clipInfo);
152 void drawAnimFrame(uint16 animIndex, int16 x, int16 y, int16 frameNum, int16 flipX, int16 flipY,
const ClipInfo &clipInfo);
154 uint16 drawPic(uint16 index, int16 x, int16 y, int16 flipX, int16 flipY);
155 uint16 drawMask(uint16 index, int16 x, int16 y);
157 uint16 drawAnimPic(uint16 animIndex, int16 x, int16 y, int16 frameNum, int16 flipX, int16 flipY);
159 void addSprite(uint16 spriteIndex);
161 uint16 drawSprite(uint16 flexIndex, int16 x, int16 y);
162 uint16 placeSprite(uint16 channelIndex, uint16 flexIndex, int16 x, int16 y);
164 uint16 placeAnim(uint16 channelIndex, uint16 animIndex, int16 x, int16 y, int16 frameNum);
165 int16 setAnimFrame(uint16 channelIndex, int16 frameNum);
166 int16 getAnimFrame(uint16 channelIndex);
168 uint16 placeText(uint16 channelIndex, uint16 textObjectIndex, int16 x, int16 y, uint16 fontNum, int16 textColor, int16 outlineColor);
170 void voiceChannelText(
const char *text, uint16 channelIndex);
174 void flash(
int count);
176 void setFont(int16 fontNum);
177 void printChar(uint c, int16 x, int16 y, byte color);
178 void printText(
const char *text);
179 void printTextEx(
const char *text, int16 x, int16 y, int16 fontNum, int16 textColor, int16 outlineColor,
const ClipInfo &clipInfo);
180 void printObjectText(int16 objectIndex, int16 x, int16 y, int16 fontNum, int16 textColor, int16 outlineColor,
const ClipInfo &clipInfo);
181 int16 getTextWidth(int16 fontNum,
const char *text);
186 void showWorkScreen();
187 void copyRectToScreen(
const void *buf,
int pitch,
int x,
int y,
int w,
int h);
188 void updateScreenAndWait(
int delay);
190 int16 addToSpriteList(int16 index, int16 xofs, int16 yofs);
192 void clearSpriteList();
195 void setDefaultMouseCursor();
204 byte *_palette, *_newPalette;
205 int _paletteColorCount, _oldPaletteColorCount;
206 bool _paletteInitialized, _needPalette;
209 int16 _dropShadowColor;
211 int16 _textX, _textY;
213 int16 _currentFontNum;
217 int16 _clip, _exclude, _ground, _mask;
218 int _visualEffectNum;
221 ClipInfo _clipArea, _backgroundScreenDrawCtx, _workScreenDrawCtx, _maskDrawCtx;
224 bool _excludeClipAreaEnabled[4];
226 uint16 _channelsUsedCount;
T left
Definition: rect.h:170
Definition: screenfx.h:42
Definition: resource.h:150