X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fgame.c;h=f6e226bc7fcde6e693b7dc065d7596489b456564;hb=3d236f777bca55fef0f6b23122b6affd0f424249;hp=d79e9e13bddcca4a7e933b301d5343f70d71bd72;hpb=d32496fdd3867910a188acba0ac132f66c99306c;p=rocksndiamonds.git diff --git a/src/game.c b/src/game.c index d79e9e13..f6e226bc 100644 --- a/src/game.c +++ b/src/game.c @@ -2913,6 +2913,13 @@ void GameActions(byte player_action) } } + + if (tape.pausing || (tape.playing && !TapePlayDelay())) + return; + else if (tape.recording) + TapeRecordDelay(); + + if (tape.playing) recorded_player_action = TapePlayAction(); else @@ -2959,10 +2966,12 @@ void GameActions(byte player_action) ScrollScreen(NULL, SCROLL_GO_ON); + /* if (tape.pausing || (tape.playing && !TapePlayDelay())) return; else if (tape.recording) TapeRecordDelay(); + */ FrameCounter++; TimeFrames++; @@ -4023,7 +4032,8 @@ BOOL PlaceBomb(struct PlayerInfo *player) player->dynamite--; DrawText(DX_DYNAMITE, DY_DYNAMITE, int2str(local_player->dynamite, 3), FS_SMALL, FC_YELLOW); - DrawGraphicThruMask(SCREENX(jx),SCREENY(jy),GFX_DYNAMIT); + if (IN_SCR_FIELD(SCREENX(jx),SCREENY(jy))) + DrawGraphicThruMask(SCREENX(jx),SCREENY(jy),GFX_DYNAMIT); } else { @@ -4031,7 +4041,8 @@ BOOL PlaceBomb(struct PlayerInfo *player) Store2[jx][jy] = player->element_nr; /* for DynaExplode() */ MovDelay[jx][jy] = 96; player->dynabombs_left--; - DrawGraphicThruMask(SCREENX(jx),SCREENY(jy),GFX_DYNABOMB); + if (IN_SCR_FIELD(SCREENX(jx),SCREENY(jy))) + DrawGraphicThruMask(SCREENX(jx),SCREENY(jy),GFX_DYNABOMB); } return(TRUE);