24 #ifndef KYRA_SEQPLAYER_SEGACD_H 25 #define KYRA_SEQPLAYER_SEGACD_H 28 class SeekableReadStream;
29 class SeekableReadStreamEndian;
37 class SegaSequencePlayer {
39 SegaSequencePlayer(EoBEngine *vm, Screen_EoB *screen, SegaCDResource *res);
40 ~SegaSequencePlayer();
43 void pause(
bool togglePause);
46 void run(
const uint8 *data);
48 void animateWaterdeepScene();
49 void updateSpeechAnimations();
50 void updateSpeechAnimGraphics(
int animDrawOp);
62 const uint16 *tileData;
71 uint16 _waterdeepScene;
72 uint16 _playSpeechAnimation;
73 uint16 _speechAnimType;
74 uint16 _speechAnimDrawOps[14];
79 int _waterdeepSceneTimer, _speechAnimTimer;
80 uint16 _speechAnimNo, _speechAnimFrame;
84 uint8 *_scaleSrcBuffer;
85 uint8 *_scaleOutBuffer;
86 uint16 *_scaleStampMap;
87 uint16 *_scaleTraceVectors;
89 uint32 _debugResyncCnt;
91 DrawObject *_drawObjects;
95 SegaRenderer *_renderer;
96 SegaAnimator *_animator;
98 ScrollManager *_scrollManager;
104 SQOpcode(SegaSequencePlayer *sq,
const SQFunc::FuncType &func,
const char *dbgName) : SQFunc(sq, func), _msg(
Common::String::format(
" %s()", dbgName)) {}
105 ~SQOpcode()
override {}
106 void run(
const uint8 *arg) {
108 debugC(7, kDebugLevelSequence,
"%s", _msg.c_str());
109 if (SQFunc::isValid())
110 SQFunc::operator()(arg);
118 void s_initDrawObject(
const uint8 *pos);
119 void s_drawTileSet(
const uint8 *pos);
120 void s_loadTileDataSingle(
const uint8 *pos);
121 void s_drawTileSetCustom(
const uint8 *pos);
122 void s_drawTileSetCustomTopToBottom(
const uint8 *pos);
123 void s_fillRect(
const uint8 *pos);
124 void s_void(
const uint8*) {}
125 void s_initSprite(
const uint8 *pos);
126 void s_removeSprite(
const uint8 *pos);
127 void s_displayTextJp(
const uint8 *pos);
128 void s_fadeToNeutral(
const uint8 *pos);
129 void s_fadeToBlack(
const uint8 *pos);
130 void s_fadeToNeutral2(
const uint8 *pos);
131 void s_fadeToWhite(
const uint8 *pos);
132 void s_setPalette(
const uint8 *pos);
133 void s_vScroll(
const uint8 *pos);
134 void s_hScroll(
const uint8 *pos);
135 void s_paletteOps(
const uint8 *pos);
136 void s_initSpriteCustomCoords(
const uint8 *pos);
137 void s_fillRectWithPattern(
const uint8 *pos);
138 void s_loadTileDataSeries(
const uint8 *pos);
139 void s_drawTileSetSeries(
const uint8 *pos);
140 void s_initSpriteSeries(
const uint8 *pos);
141 void s_initSpriteCustom(
const uint8 *pos);
142 void s_drawTileSetCustomCoords(
const uint8 *pos);
143 void s_waitForPaletteFade(
const uint8*);
144 void s_clearSprites(
const uint8*);
145 void s_moveSprites2(
const uint8 *pos);
146 void s_moveSprites(
const uint8 *pos);
147 void s_moveMorphSprite(
const uint8 *pos);
148 void s_unpauseCD(
const uint8 *pos);
149 void s_toggleWaterDeepAnimations(
const uint8 *pos);
150 void s_assignSpeechAnimGraphics(
const uint8 *pos);
151 void s_toggleSpeechAnimation(
const uint8 *pos);
152 void s_orbZoomEffect(
const uint8*);
153 void s_stopCD(
const uint8*);
154 void s_playCD(
const uint8 *pos);
155 void s_displayTextEn(
const uint8 *pos);
156 void s_loadCustomPalettes(
const uint8 *pos);
157 void s_playSoundEffect(
const uint8 *pos);
160 const uint8 *_cdaTracks;
161 const uint8 *_wdAnimSprites;
162 const uint8 *_speechAnimData;
163 const uint16 *_wdDsX;
165 const uint16 *_patternTables[6];
void void void void void debugC(int level, uint32 debugChannel, MSVC_PRINTF const char *s,...) GCC_PRINTF(3
Definition: algorithm.h:29
Definition: detection.h:27