X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Ftools.c;h=d56532d189d8143d7c4ea734a624d615aad68114;hb=8fdd23c078934ae797980a824fd145903c84cae7;hp=a4cabfdaddd20b15192ed0c13287a84ec14ea1ff;hpb=bd7e53746a73c5405f8918cf835820b3aac349b7;p=rocksndiamonds.git diff --git a/src/tools.c b/src/tools.c index a4cabfda..d56532d1 100644 --- a/src/tools.c +++ b/src/tools.c @@ -7166,7 +7166,7 @@ bd_object_mapping_list[] = }, { O_EXPLODE_1, FALSE, - EL_DEFAULT, ACTION_EXPLODING, -1 + EL_BDX_DEFAULT, ACTION_EXPLODING, -1 }, { O_EXPLODE_2, TRUE, @@ -7174,7 +7174,7 @@ bd_object_mapping_list[] = }, { O_EXPLODE_2, FALSE, - EL_DEFAULT, ACTION_EXPLODING, -1 + EL_BDX_DEFAULT, ACTION_EXPLODING, -1 }, { O_EXPLODE_3, TRUE, @@ -7182,7 +7182,7 @@ bd_object_mapping_list[] = }, { O_EXPLODE_3, FALSE, - EL_DEFAULT, ACTION_EXPLODING, -1 + EL_BDX_DEFAULT, ACTION_EXPLODING, -1 }, { O_EXPLODE_4, TRUE, @@ -7190,7 +7190,7 @@ bd_object_mapping_list[] = }, { O_EXPLODE_4, FALSE, - EL_DEFAULT, ACTION_EXPLODING, -1 + EL_BDX_DEFAULT, ACTION_EXPLODING, -1 }, { O_EXPLODE_5, TRUE, @@ -7198,7 +7198,7 @@ bd_object_mapping_list[] = }, { O_EXPLODE_5, FALSE, - EL_DEFAULT, ACTION_EXPLODING, -1 + EL_BDX_DEFAULT, ACTION_EXPLODING, -1 }, { O_PRE_STONE_1, TRUE, @@ -11215,6 +11215,26 @@ void InitGraphicInfo_EM(void) } } +static void CheckSaveEngineSnapshot_BD(boolean frame_max, + boolean player_moving, + boolean player_snapping) +{ + if (frame_max) + { + if (!local_player->was_waiting) + { + if (!CheckSaveEngineSnapshotToList()) + return; + + local_player->was_waiting = TRUE; + } + } + else if (player_moving || player_snapping) + { + local_player->was_waiting = FALSE; + } +} + static void CheckSaveEngineSnapshot_EM(int frame, boolean any_player_moving, boolean any_player_snapping, @@ -11272,6 +11292,19 @@ static void CheckSaveEngineSnapshot_MM(boolean element_clicked, } } +boolean CheckSingleStepMode_BD(boolean frame_max, + boolean player_moving, + boolean player_snapping) +{ + if (tape.single_step && tape.recording && !tape.pausing) + if (frame_max && FrameCounter > 6) + TapeTogglePause(TAPE_TOGGLE_AUTOMATIC); + + CheckSaveEngineSnapshot_BD(frame_max, player_moving, player_snapping); + + return tape.pausing; +} + boolean CheckSingleStepMode_EM(int frame, boolean any_player_moving, boolean any_player_snapping,