X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Ffiles.c;h=e0446de5604e47c9569087d904856e86b508b3d8;hb=a750ba6776fdfb711f5da2e6094c8010cd19645a;hp=51710b07c105d526806aa4b1276321d06dfed751;hpb=79411a5006963926966da0465fd46344a34a57fe;p=rocksndiamonds.git diff --git a/src/files.c b/src/files.c index 51710b07..e0446de5 100644 --- a/src/files.c +++ b/src/files.c @@ -58,7 +58,7 @@ static void setLevelInfoToDefaults() for(x=0; xauthor, ANONYMOUS_NAME) != 0) @@ -129,11 +129,15 @@ static void setLevelInfoToDefaults() static int checkLevelElement(int element) { - if (element >= EL_FIRST_RUNTIME) + if (element >= NUM_FILE_ELEMENTS) { Error(ERR_WARN, "invalid level element %d", element); - element = EL_CHAR_FRAGE; + element = EL_CHAR_QUESTION; } + else if (element == EL_PLAYER_OBSOLETE) + element = EL_PLAYER1; + else if (element == EL_KEY_OBSOLETE) + element = EL_KEY1; return element; } @@ -283,7 +287,7 @@ static int LoadLevel_CNT2(FILE *file, int chunk_size, struct LevelInfo *level) if (num_contents < 1 || num_contents > MAX_ELEMENT_CONTENTS) num_contents = STD_ELEMENT_CONTENTS; - if (element == EL_MAMPFER) + if (element == EL_YAMYAM) { level->num_yam_contents = num_contents; @@ -292,7 +296,7 @@ static int LoadLevel_CNT2(FILE *file, int chunk_size, struct LevelInfo *level) for(x=0; x<3; x++) level->yam_content[i][x][y] = content_array[i][x][y]; } - else if (element == EL_AMOEBE_BD) + else if (element == EL_BD_AMOEBA) { level->amoeba_content = content_array[0][0][0]; } @@ -501,13 +505,13 @@ static void SaveLevel_HEAD(FILE *file, struct LevelInfo *level) for(i=0; iencoding_16bit_yamyam ? EL_LEERRAUM : + fputc((level->encoding_16bit_yamyam ? EL_EMPTY : level->yam_content[i][x][y]), file); fputc(level->amoeba_speed, file); fputc(level->time_magic_wall, file); fputc(level->time_wheel, file); - fputc((level->encoding_16bit_amoeba ? EL_LEERRAUM : level->amoeba_content), + fputc((level->encoding_16bit_amoeba ? EL_EMPTY : level->amoeba_content), file); fputc((level->double_speed ? 1 : 0), file); fputc((level->gravity ? 1 : 0), file); @@ -530,7 +534,7 @@ static void SaveLevel_CONT(FILE *file, struct LevelInfo *level) { int i, x, y; - fputc(EL_MAMPFER, file); + fputc(EL_YAMYAM, file); fputc(level->num_yam_contents, file); fputc(0, file); fputc(0, file); @@ -563,7 +567,7 @@ static void SaveLevel_CNT2(FILE *file, struct LevelInfo *level, int element) int num_contents, content_xsize, content_ysize; int content_array[MAX_ELEMENT_CONTENTS][3][3]; - if (element == EL_MAMPFER) + if (element == EL_YAMYAM) { num_contents = level->num_yam_contents; content_xsize = 3; @@ -574,7 +578,7 @@ static void SaveLevel_CNT2(FILE *file, struct LevelInfo *level, int element) for(x=0; x<3; x++) content_array[i][x][y] = level->yam_content[i][x][y]; } - else if (element == EL_AMOEBE_BD) + else if (element == EL_BD_AMOEBA) { num_contents = 1; content_xsize = 1; @@ -583,7 +587,7 @@ static void SaveLevel_CNT2(FILE *file, struct LevelInfo *level, int element) for(i=0; iamoeba_content; } else @@ -666,13 +670,13 @@ void SaveLevel(int level_nr) level.num_yam_contents != STD_ELEMENT_CONTENTS) { putFileChunkBE(file, "CNT2", LEVEL_CHUNK_CNT2_SIZE); - SaveLevel_CNT2(file, &level, EL_MAMPFER); + SaveLevel_CNT2(file, &level, EL_YAMYAM); } if (level.encoding_16bit_amoeba) { putFileChunkBE(file, "CNT2", LEVEL_CHUNK_CNT2_SIZE); - SaveLevel_CNT2(file, &level, EL_AMOEBE_BD); + SaveLevel_CNT2(file, &level, EL_BD_AMOEBA); } fclose(file);