{ LEVEL_FILE_TYPE_DX, "DX" },
{ LEVEL_FILE_TYPE_SB, "SB" },
{ LEVEL_FILE_TYPE_DC, "DC" },
+ { LEVEL_FILE_TYPE_MM, "MM" },
+ { LEVEL_FILE_TYPE_MM, "DF" },
{ -1, NULL },
};
if (fileExists(lfi->filename))
return;
}
+ else if (leveldir_current->level_filetype != NULL)
+ {
+ int filetype = getFiletypeFromID(leveldir_current->level_filetype);
+
+ /* check for specified native level file with standard file name */
+ setLevelFileInfo_FormatLevelFilename(lfi, filetype,
+ "%03d.%s", nr, LEVELFILE_EXTENSION);
+ if (fileExists(lfi->filename))
+ return;
+ }
/* check for native Rocks'n'Diamonds level file */
setLevelFileInfo_FormatLevelFilename(lfi, LEVEL_FILE_TYPE_RND,
level_mm->encoding_16bit_field = level->encoding_16bit_field;
level_mm->fieldx = MIN(level->fieldx, MM_MAX_PLAYFIELD_WIDTH);
- level_mm->fieldy = MIN(level->fieldx, MM_MAX_PLAYFIELD_HEIGHT);
+ level_mm->fieldy = MIN(level->fieldy, MM_MAX_PLAYFIELD_HEIGHT);
level_mm->time = level->time;
level_mm->kettles_needed = level->gems_needed;
level_mm->amoeba_speed = level->amoeba_speed;
level_mm->time_fuse = 0;
- for (y = 0; y < level_mm->fieldx; y++)
- for (x = 0; x < level_mm->fieldy; x++)
+ for (x = 0; x < level->fieldx; x++)
+ for (y = 0; y < level->fieldy; y++)
level_mm->field[x][y] = map_element_RND_to_MM(level->field[x][y]);
}
level->encoding_16bit_field = level_mm->encoding_16bit_field;
level->fieldx = MIN(level_mm->fieldx, MAX_LEV_FIELDX);
- level->fieldy = MIN(level_mm->fieldx, MAX_LEV_FIELDY);
+ level->fieldy = MIN(level_mm->fieldy, MAX_LEV_FIELDY);
level->time = level_mm->time;
level->gems_needed = level_mm->kettles_needed;
level->amoeba_speed = level_mm->amoeba_speed;
- for (y = 0; y < level->fieldx; y++)
- for (x = 0; x < level->fieldy; x++)
+ for (x = 0; x < level->fieldx; x++)
+ for (y = 0; y < level->fieldy; y++)
level->field[x][y] = map_element_MM_to_RND(level_mm->field[x][y]);
}
{ TYPE_SWITCH, &seci.el_sp, "editor.cascade.el_sp" },
{ TYPE_SWITCH, &seci.el_dc, "editor.cascade.el_dc" },
{ TYPE_SWITCH, &seci.el_dx, "editor.cascade.el_dx" },
+ { TYPE_SWITCH, &seci.el_mm, "editor.cascade.el_mm" },
+ { TYPE_SWITCH, &seci.el_df, "editor.cascade.el_df" },
{ TYPE_SWITCH, &seci.el_chars, "editor.cascade.el_chars" },
{ TYPE_SWITCH, &seci.el_steel_chars, "editor.cascade.el_steel_chars" },
{ TYPE_SWITCH, &seci.el_ce, "editor.cascade.el_ce" },
si->editor.el_supaplex = TRUE;
si->editor.el_diamond_caves = TRUE;
si->editor.el_dx_boulderdash = TRUE;
+
+ si->editor.el_mirror_magic = TRUE;
+ si->editor.el_deflektor = TRUE;
+
si->editor.el_chars = TRUE;
si->editor.el_steel_chars = TRUE;
si->editor_cascade.el_dc = TRUE;
si->editor_cascade.el_dx = TRUE;
+ si->editor_cascade.el_mm = TRUE;
+ si->editor_cascade.el_df = TRUE;
+
si->editor_cascade.el_chars = FALSE;
si->editor_cascade.el_steel_chars = FALSE;
si->editor_cascade.el_ce = FALSE;