X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fgame_em%2Fgame.c;h=cb7a1cbfc09f7b9a4995535ce36c75368b53d0dd;hb=92ae204856b3b41863f4244dd75cc5c7268f034d;hp=491c290d7a68119a44bdada97268118e798e3b91;hpb=a0f9dd84ca26309a8ab518caed02a0ce7debd4e2;p=rocksndiamonds.git diff --git a/src/game_em/game.c b/src/game_em/game.c index 491c290d..cb7a1cbf 100644 --- a/src/game_em/game.c +++ b/src/game_em/game.c @@ -75,12 +75,14 @@ void InitGameEngine_EM(void) { prepare_em_level(); + logic_init(); + game_initscreen(); RedrawPlayfield_EM(FALSE); } -void GameActions_EM(byte action[MAX_PLAYERS], boolean warp_mode) +void GameActions_EM(byte action[MAX_PLAYERS]) { int i; boolean any_player_dropping = FALSE; @@ -106,8 +108,13 @@ void GameActions_EM(byte action[MAX_PLAYERS], boolean warp_mode) ply[i].dynamite_cnt < 5) any_player_dropping = TRUE; - CheckSingleStepMode_EM(action, frame, game_em.any_player_moving, - game_em.any_player_snapping, any_player_dropping); + boolean single_step_mode_paused = + CheckSingleStepMode_EM(action, frame, game_em.any_player_moving, + game_em.any_player_snapping, any_player_dropping); + + // draw wrapping around before going to single step pause mode + if (single_step_mode_paused && logic_check_wrap()) + logic_move(); RedrawPlayfield_EM(FALSE); }