X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Ftape.c;h=fb00fcd561e7fdc220ff2ac5b14422dcaf3f707d;hb=81cbb1611f72a0b338aac54f43e020555f5a28f0;hp=4efba84a76f7c05072ca49121845334cc744b940;hpb=6d73c8c86a15e02051dfba65e436d38e4ebc3a36;p=rocksndiamonds.git diff --git a/src/tape.c b/src/tape.c index 4efba84a..fb00fcd5 100644 --- a/src/tape.c +++ b/src/tape.c @@ -834,6 +834,8 @@ boolean TapeAddAction(byte action[MAX_TAPE_ACTIONS]) tape.pos[tape.counter].delay++; } + tape.changed = TRUE; + return TRUE; } @@ -1185,22 +1187,25 @@ static void TapeSingleStep(void) void TapeQuickSave(void) { - if (game_status == GAME_MODE_MAIN) + if (game_status != GAME_MODE_PLAYING) { - Request("No game that can be saved!", REQ_CONFIRM); + Request("No game that could be saved!", REQ_CONFIRM); return; } - if (game_status != GAME_MODE_PLAYING) + if (!tape.recording) + { + Request("No recording that could be saved!", REQ_CONFIRM); + return; + } - if (tape.recording) - TapeHaltRecording(); // prepare tape for saving on-the-fly + TapeHaltRecording(); // prepare tape for saving on-the-fly if (TAPE_IS_EMPTY(tape)) { - Request("No tape that can be saved!", REQ_CONFIRM); + Request("No tape that could be saved!", REQ_CONFIRM); return; }