SaveTapeExt(filename);
}
+static boolean SaveTapeRequest(char *msg, unsigned int req_state)
+{
+ return (!setup.ask_on_save_tape || Request(msg, req_state));
+}
+
static boolean SaveTapeCheckedExt(int nr, char *msg_replace, char *msg_saved,
unsigned int req_state_added)
{
boolean new_tape = !fileExists(filename);
boolean tape_saved = FALSE;
- if (new_tape || Request(msg_replace, REQ_ASK | req_state_added))
+ if (new_tape || SaveTapeRequest(msg_replace, REQ_ASK | req_state_added))
{
SaveTape(nr);
if (new_tape)
- Request(msg_saved, REQ_CONFIRM | req_state_added);
+ SaveTapeRequest(msg_saved, REQ_CONFIRM | req_state_added);
tape_saved = TRUE;
}
TYPE_SWITCH,
&setup.ask_on_escape_editor, "ask_on_escape_editor"
},
+ {
+ TYPE_SWITCH,
+ &setup.ask_on_save_tape, "ask_on_save_tape"
+ },
{
TYPE_SWITCH,
&setup.ask_on_game_over, "ask_on_game_over"
si->vsync_mode = getStringCopy(STR_VSYNC_MODE_DEFAULT);
si->ask_on_escape = TRUE;
si->ask_on_escape_editor = TRUE;
+ si->ask_on_save_tape = TRUE;
si->ask_on_game_over = TRUE;
si->ask_on_quit_game = TRUE;
si->ask_on_quit_program = TRUE;
char *vsync_mode;
boolean ask_on_escape;
boolean ask_on_escape_editor;
+ boolean ask_on_save_tape;
boolean ask_on_game_over;
boolean ask_on_quit_game;
boolean ask_on_quit_program;
{ TYPE_SWITCH, &setup.auto_play_next_level, "Auto-play Next Level:" },
{ TYPE_SWITCH, &setup.count_score_after_game, "Count Score After Game:" },
{ TYPE_SWITCH, &setup.show_scores_after_game, "Show Scores After Game:" },
+ { TYPE_YES_NO, &setup.ask_on_save_tape, "Ask on Save Tape:" },
{ TYPE_YES_NO, &setup.ask_on_game_over, "Ask on Game Over:" },
{ TYPE_YES_NO, &setup.ask_on_quit_game, "Ask on Quit Game:" },
{ TYPE_YES_NO, &setup.ask_on_quit_program, "Ask on Quit Program:" },