diff --git a/engines/hugo/display.cpp b/engines/hugo/display.cpp index e825070e83f..0c6ed083f14 100644 --- a/engines/hugo/display.cpp +++ b/engines/hugo/display.cpp @@ -139,17 +139,6 @@ void Screen::setBackgroundColor(long color) { // How??? Translate existing pixels in dib before objects rendered? } -// Write the supplied character in the supplied color to x,y pixel coords -void Screen::writeChar(int16 x, int16 y, char c, byte color) { - debugC(1, kDebugDisplay, "writeChar(%d, %d, %c, %d)", x, y, c, color); - - warning("STUB: writeChar()"); - // x = (int16)((long) x * config.cx / XPIX); - // y = (int16)((long) y * config.cy / YPIX); - // SetTextColor(hDC, GetPalIndex(color)); - // TextOut(hDC, x, y, &c, 1); -} - // Return the overlay state (Foreground/Background) of the currently // processed object by looking down the current column for an overlay // base bit set (in which case the object is foreground). diff --git a/engines/hugo/display.h b/engines/hugo/display.h index 0985e1b9fde..e315edbc927 100644 --- a/engines/hugo/display.h +++ b/engines/hugo/display.h @@ -58,7 +58,7 @@ public: void setBackgroundColor(long color); void shadowStr(int16 sx, int16 sy, char *s, byte color); void userHelp(); - void writeChar(int16 x, int16 y, char c, byte color); + void writeChr(int sx, int sy, byte color, char *local_fontdata); void writeStr(int16 sx, int16 sy, char *s, byte color); icondib_t &getIconBuffer() { @@ -96,7 +96,6 @@ private: overlayState_t findOvl(seq_t *seq_p, image_pt dst_p, uint16 y); void merge(rect_t *rectA, rect_t *rectB); int16 mergeLists(rect_t *list, rect_t *blist, int16 len, int16 blen, int16 bmax); - void writeChr(int sx, int sy, byte color, char *local_fontdata); int16 center(char *s); }; diff --git a/engines/hugo/intro.cpp b/engines/hugo/intro.cpp index c856985f478..2b4d910183a 100644 --- a/engines/hugo/intro.cpp +++ b/engines/hugo/intro.cpp @@ -109,9 +109,15 @@ bool intro_v3w::introPlay() { //TODO : Add proper check of story mode //#if STORY // SetBkMode(TRANSPARENT); + +// FIXME: This initialization shouldn't be there, as all the fonts should be loaded directly + _vm.screen().loadFont(0); + if (introTicks < introSize) { // Scale viewport x_intro,y_intro to screen (offsetting y) - _vm.screen().writeChar(_vm._introX[introTicks], _vm._introY[introTicks] - DIBOFF_Y, 'x', _TBRIGHTWHITE); + _vm.screen().writeStr(_vm._introX[introTicks], _vm._introY[introTicks] - DIBOFF_Y, "x", _TBRIGHTWHITE); + _vm.screen().displayBackground(); + // Text boxes at various times switch (introTicks) {