X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Fgame.c;h=fada15db70f1733e76a78b67ac8cfdfea807e05f;hp=7f575ebb983b2c7eddbbfc1621da26353819becc;hb=3ae3dff29ac1a6022b1e5af414ba2c99391148c8;hpb=a6e8cf77120ad2601b878278bc750fd695c6fbbd diff --git a/src/game.c b/src/game.c index 7f575ebb..fada15db 100644 --- a/src/game.c +++ b/src/game.c @@ -560,10 +560,10 @@ void InitGame() SBY_Lower = lev_fieldy - SCR_FIELDY + 1; } - if (lev_fieldx < SCR_FIELDX) + if (lev_fieldx + (SBX_Left == -1 ? 2 : 0) <= SCR_FIELDX) SBX_Left = SBX_Right = -1 * (SCR_FIELDX - lev_fieldx) / 2; - if (lev_fieldy < SCR_FIELDY) + if (lev_fieldy + (SBY_Upper == -1 ? 2 : 0) <= SCR_FIELDY) SBY_Upper = SBY_Lower = -1 * (SCR_FIELDY - lev_fieldy) / 2; scroll_x = SBX_Left; @@ -617,6 +617,7 @@ void InitGame() game_gadget[SOUND_CTRL_ID_LOOPS]->checked = setup.sound_loops; game_gadget[SOUND_CTRL_ID_SIMPLE]->checked = setup.sound_simple; MapGameButtons(); + MapTapeButtons(); #endif XCopyArea(display, drawto, pix[PIX_DB_DOOR], gc, @@ -1075,6 +1076,7 @@ void Explode(int ex, int ey, int phase, int mode) int num_phase = 9, delay = 2; int last_phase = num_phase * delay; int half_phase = (num_phase / 2) * delay; + int first_phase_after_start = EX_PHASE_START + 1; if (phase == EX_PHASE_START) /* initialize 'Store[][]' field */ { @@ -1189,9 +1191,20 @@ void Explode(int ex, int ey, int phase, int mode) x = ex; y = ey; - Frame[x][y] = (phase