X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fgame.c;h=78b950c28033f86c51620e6341ab11c62863561b;hb=20e58eb6573a45a41c25958e17e8d9c20f738edc;hp=fcaedf73e391e6c0882991de5811ecfc1e1968c7;hpb=78ec772d11cb8823d8dca05c227b472da8708a07;p=rocksndiamonds.git diff --git a/src/game.c b/src/game.c index fcaedf73..78b950c2 100644 --- a/src/game.c +++ b/src/game.c @@ -550,9 +550,6 @@ void InitGame() emulate_sb ? EMU_SOKOBAN : emulate_sp ? EMU_SUPAPLEX : EMU_NONE); - /* determine border element for this level */ - SetBorderElement(); - if (BorderElement == EL_LEERRAUM) { SBX_Left = 0; @@ -591,12 +588,29 @@ void InitGame() DrawAllPlayers(); FadeToFront(); + +#if 1 + + if (setup.soft_scrolling) + XCopyArea(display, fieldbuffer, backbuffer, gc, + FX, FY, SXSIZE, SYSIZE, SX, SY); + + redraw_mask |= REDRAW_FROM_BACKBUFFER; + +#endif + + /* copy default game door content to main double buffer */ XCopyArea(display, pix[PIX_DOOR], drawto, gc, DOOR_GFX_PAGEX5, DOOR_GFX_PAGEY1, DXSIZE, DYSIZE, DX, DY); - DrawText(DX + XX_LEVEL, DY + YY_LEVEL, - int2str(level_nr, 2), FS_SMALL, FC_YELLOW); + if (level_nr < 100) + DrawText(DX + XX_LEVEL, DY + YY_LEVEL, + int2str(level_nr, 2), FS_SMALL, FC_YELLOW); + else + DrawText(DX + XX_LEVEL - 1, DY + YY_LEVEL + 1, + int2str(level_nr, 3), FS_SMALL, FC_SPECIAL3); + DrawText(DX + XX_EMERALDS, DY + YY_EMERALDS, int2str(local_player->gems_still_needed,3), FS_SMALL, FC_YELLOW); DrawText(DX + XX_DYNAMITE, DY + YY_DYNAMITE,