#define CHUNK_SIZE_NONE -1 /* do not write chunk size */
#define FILE_VERS_CHUNK_SIZE 8 /* size of file version chunk */
#define LEVEL_HEADER_SIZE 80 /* size of level file header */
-#define LEVEL_HEADER_UNUSED 8 /* unused level header bytes */
+#define LEVEL_HEADER_UNUSED 7 /* unused level header bytes */
#define LEVEL_CHUNK_CNT2_SIZE 160 /* size of level CNT2 chunk */
#define LEVEL_CHUNK_CNT2_UNUSED 11 /* unused CNT2 chunk bytes */
#define LEVEL_CHUNK_CNT3_HEADER 16 /* size of level CNT3 header */
level->use_spring_bug = FALSE;
- level->can_move_into_acid = ~0; /* everything can move into acid */
+ level->can_move_into_acid_bits = ~0; /* everything can move into acid */
+
+ level->use_step_counter = FALSE;
level->use_custom_template = FALSE;
level->use_spring_bug = (getFile8Bit(file) == 1 ? TRUE : FALSE);
- level->can_move_into_acid = getFile16BitBE(file);
+ level->can_move_into_acid_bits = getFile16BitBE(file);
+
+ level->use_step_counter = (getFile8Bit(file) == 1 ? TRUE : FALSE);
ReadUnusedBytesFromFile(file, LEVEL_HEADER_UNUSED);
{
int i, j;
- level->can_move_into_acid = 0; /* nothing can move into acid */
+ level->can_move_into_acid_bits = 0; /* nothing can move into acid */
setMoveIntoAcidProperty(level, EL_ROBOT, TRUE);
setMoveIntoAcidProperty(level, EL_SATELLITE, TRUE);
putFile8Bit(file, (level->use_spring_bug ? 1 : 0));
- putFile16BitBE(file, level->can_move_into_acid);
+ putFile16BitBE(file, level->can_move_into_acid_bits);
+
+ putFile8Bit(file, (level->use_step_counter ? 1 : 0));
WriteUnusedBytesToFile(file, LEVEL_HEADER_UNUSED);
}
printf("Player blocks last field: %s\n", (level->block_last_field ? "yes" : "no"));
printf("SP player blocks last field: %s\n", (level->sp_block_last_field ? "yes" : "no"));
printf("use spring bug: %s\n", (level->use_spring_bug ? "yes" : "no"));
+ printf("use step counter: %s\n", (level->use_step_counter ? "yes" : "no"));
printf_line("-", 79);
}