projects
/
rocksndiamonds.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fixed wording of some request texts
[rocksndiamonds.git]
/
src
/
tape.c
diff --git
a/src/tape.c
b/src/tape.c
index 3fb22a8d598369b9f6fbb3791fa8c33317c52829..71f707ced8a8ed3e1ade522fbb0940379c54f387 100644
(file)
--- a/
src/tape.c
+++ b/
src/tape.c
@@
-664,6
+664,7
@@
void TapeErase(void)
tape.level_nr = level_nr;
tape.pos[tape.counter].delay = 0;
tape.changed = TRUE;
tape.level_nr = level_nr;
tape.pos[tape.counter].delay = 0;
tape.changed = TRUE;
+ tape.solved = FALSE;
tape.random_seed = InitRND(level.random_seed);
tape.random_seed = InitRND(level.random_seed);
@@
-760,6
+761,7
@@
static void TapeAppendRecording(void)
// start recording
tape.recording = TRUE;
tape.changed = TRUE;
// start recording
tape.recording = TRUE;
tape.changed = TRUE;
+ tape.solved = FALSE;
// set current delay (for last played move)
tape.pos[tape.counter].delay = tape.delay_played;
// set current delay (for last played move)
tape.pos[tape.counter].delay = tape.delay_played;
@@
-992,16
+994,22
@@
byte *TapePlayAction(void)
TapeStopWarpForward();
TapeTogglePause(TAPE_TOGGLE_MANUAL);
TapeStopWarpForward();
TapeTogglePause(TAPE_TOGGLE_MANUAL);
+ if (setup.autorecord_after_replay)
+ TapeAppendRecording();
+
return NULL;
}
}
if (tape.counter >= tape.length) // end of tape reached
{
return NULL;
}
}
if (tape.counter >= tape.length) // end of tape reached
{
- if (
tape.warp_forward &&
!tape.auto_play)
+ if (!tape.auto_play)
{
TapeStopWarpForward();
TapeTogglePause(TAPE_TOGGLE_MANUAL);
{
TapeStopWarpForward();
TapeTogglePause(TAPE_TOGGLE_MANUAL);
+
+ if (setup.autorecord_after_replay)
+ TapeAppendRecording();
}
else
{
}
else
{
@@
-1179,7
+1187,7
@@
void TapeQuickSave(void)
{
if (game_status == GAME_MODE_MAIN)
{
{
if (game_status == GAME_MODE_MAIN)
{
- Request("No game that c
an
be saved!", REQ_CONFIRM);
+ Request("No game that c
ould
be saved!", REQ_CONFIRM);
return;
}
return;
}
@@
-1187,12
+1195,19
@@
void TapeQuickSave(void)
if (game_status != GAME_MODE_PLAYING)
return;
if (game_status != GAME_MODE_PLAYING)
return;
+ if (!tape.recording)
+ {
+ Request("No recording that could be saved!", REQ_CONFIRM);
+
+ return;
+ }
+
if (tape.recording)
TapeHaltRecording(); // prepare tape for saving on-the-fly
if (TAPE_IS_EMPTY(tape))
{
if (tape.recording)
TapeHaltRecording(); // prepare tape for saving on-the-fly
if (TAPE_IS_EMPTY(tape))
{
- Request("No tape that c
an
be saved!", REQ_CONFIRM);
+ Request("No tape that c
ould
be saved!", REQ_CONFIRM);
return;
}
return;
}