Index: game.c ================================================================== --- game.c +++ game.c @@ -733,16 +733,21 @@ inputs_count=0; number=replay_mark-replay_pos; goto replay; case '^-': // Delete move inputs_count=0; + if(solution_replay) { + screen_message("You cannot delete moves during the solution replay"); + return -3; + } if(replay_pos==replay_count) return 0; memmove(replay_list+replay_pos,replay_list+replay_pos+1,replay_count-replay_pos-1); replay_count--; if(replay_mark>replay_pos) replay_mark--; return 0; case '^+': // Insert moves + if(solution_replay) return 0; inputs_count=0; inserting^=1; return 0; case '^E': // Edit return main_options['r']?1:-2; @@ -774,10 +779,11 @@ return prev; case '^p': // Slow replay replay_time=replay_time?0:1; return 0; case '^s': // Toggle solution replay + inserting=0; if(replay_count) save_replay(); solution_replay^=1; if(replay_count) replay_count=0,begin_level(level_id); else load_replay(); return 1; case 'go': // Select level