projects
/
rocksndiamonds.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
added using command line level identifier/nr for single tape tests/uploads
[rocksndiamonds.git]
/
src
/
tape.c
diff --git
a/src/tape.c
b/src/tape.c
index 69356b0bfcf5b0e1a45eda034a16818197ef9a55..0fc6c782478d68746c997e2625359ab2f9900cfe 100644
(file)
--- a/
src/tape.c
+++ b/
src/tape.c
@@
-1587,11
+1587,20
@@
static int AutoPlayTapesExt(boolean initialize)
if (tape.no_valid_file)
Fail("cannot load tape file '%s'", autoplay.tape_filename);
if (tape.no_valid_file)
Fail("cannot load tape file '%s'", autoplay.tape_filename);
- if (tape.no_info_chunk)
+ if (tape.no_info_chunk
&& !options.identifier
)
Fail("cannot get levelset from tape file '%s'", autoplay.tape_filename);
Fail("cannot get levelset from tape file '%s'", autoplay.tape_filename);
+ if (tape.no_info_chunk && !options.level_nr)
+ Fail("cannot get level nr from tape file '%s'", autoplay.tape_filename);
+
global.autoplay_leveldir = tape.level_identifier;
global.autoplay_leveldir = tape.level_identifier;
+ if (options.identifier != NULL)
+ global.autoplay_leveldir = options.identifier;
+
+ if (options.level_nr != NULL)
+ tape.level_nr = atoi(options.level_nr);
+
if (tape.level_nr >= 0 && tape.level_nr < MAX_TAPES_PER_SET)
global.autoplay_level[tape.level_nr] = TRUE;
if (tape.level_nr >= 0 && tape.level_nr < MAX_TAPES_PER_SET)
global.autoplay_level[tape.level_nr] = TRUE;
@@
-1792,7
+1801,8
@@
static int AutoPlayTapesExt(boolean initialize)
getDefaultSolutionTapeFilename(level_nr));
boolean correct_info_chunk =
getDefaultSolutionTapeFilename(level_nr));
boolean correct_info_chunk =
- (strEqual(leveldir_current->identifier, tape.level_identifier) &&
+ (!tape.no_info_chunk &&
+ strEqual(leveldir_current->identifier, tape.level_identifier) &&
level_nr == tape.level_nr);
if (!correct_info_chunk)
level_nr == tape.level_nr);
if (!correct_info_chunk)