static void RedrawDrawingElements();
static void DrawDrawingWindowExt(boolean);
static void DrawDrawingWindow();
-static void DrawDrawingWindow_PlayfieldOnly();
static void DrawLevelInfoWindow();
static void DrawPropertiesWindow();
static void DrawPaletteWindow();
EL_NUT,
EL_BOMB,
- EL_WALL_EMERALD,
- EL_WALL_DIAMOND,
- EL_DYNAMITE,
- EL_DYNAMITE_ACTIVE,
+ EL_EM_DYNAMITE,
+ EL_EM_DYNAMITE_ACTIVE,
+ EL_EM_EXIT_CLOSED,
+ EL_EM_EXIT_OPEN,
- EL_YAMYAM,
+ EL_YAMYAM_UP,
EL_BUG_UP,
EL_SPACESHIP_UP,
EL_ROBOT,
EL_EM_GATE_2_GRAY,
EL_EM_GATE_3_GRAY,
EL_EM_GATE_4_GRAY,
-
- EL_EM_EXIT_CLOSED,
- EL_EM_EXIT_OPEN,
- EL_EM_STEEL_EXIT_CLOSED,
- EL_EM_STEEL_EXIT_OPEN,
};
static int *editor_hl_emerald_mine_ptr = editor_hl_emerald_mine;
static int *editor_el_emerald_mine_ptr = editor_el_emerald_mine;
EL_EMC_LENSES,
EL_EMC_MAGNIFIER,
- EL_EM_DYNAMITE,
- EL_EM_DYNAMITE_ACTIVE,
+ EL_EMPTY,
+ EL_EMPTY,
EL_BALLOON,
EL_YAMYAM_UP,
static int editor_el_rnd[] =
{
+ EL_DYNAMITE, /* RND */
+ EL_DYNAMITE_ACTIVE, /* RND */
+ EL_EMPTY,
+ EL_EMPTY,
+
EL_KEY_1,
EL_KEY_2,
EL_KEY_3,
EL_PACMAN_LEFT,
EL_DARK_YAMYAM,
EL_PACMAN_RIGHT,
- EL_EMPTY,
+ EL_YAMYAM, /* RND */
EL_BLACK_ORB,
EL_PACMAN_DOWN,
static int editor_el_diamond_caves[] =
{
+ EL_EM_STEEL_EXIT_CLOSED, /* DC2 */
+ EL_EM_STEEL_EXIT_OPEN, /* DC2 */
+ EL_WALL_EMERALD, /* DC2 */
+ EL_WALL_DIAMOND, /* DC2 */
+
EL_PEARL,
EL_CRYSTAL,
EL_WALL_PEARL,
level.changed = FALSE;
}
-static void DrawEditModeWindow()
+static void DrawEditModeWindowExt(boolean remap_toolbox_gadgets)
{
- ModifyEditorElementList();
- RedrawDrawingElements();
+ if (remap_toolbox_gadgets)
+ {
+ ModifyEditorElementList();
+ RedrawDrawingElements();
+ }
if (edit_mode == ED_MODE_INFO)
DrawLevelInfoWindow();
else if (edit_mode == ED_MODE_PALETTE)
DrawPaletteWindow();
else /* edit_mode == ED_MODE_DRAWING */
- DrawDrawingWindow();
+ DrawDrawingWindowExt(remap_toolbox_gadgets);
+}
+
+static void DrawEditModeWindow()
+{
+ DrawEditModeWindowExt(TRUE);
+}
+
+static void DrawEditModeWindow_PlayfieldOnly()
+{
+ DrawEditModeWindowExt(FALSE);
}
static void ChangeEditModeWindow(int new_edit_mode)
void InitZoomLevelSettings(int zoom_tilesize)
{
- if (zoom_tilesize == -1)
+ static int last_game_engine_type = GAME_ENGINE_TYPE_UNKNOWN;
+
+ if (zoom_tilesize == -1 && level.game_engine_type != last_game_engine_type)
{
ed_tilesize = setup.auto_setup.editor_zoom_tilesize;
ed_tilesize_default = DEFAULT_EDITOR_TILESIZE;
}
}
+ last_game_engine_type = level.game_engine_type;
+
// limit zoom tilesize by upper and lower bound
ed_tilesize = MIN(MAX(MICRO_TILESIZE, ed_tilesize), TILESIZE);
UnmapAllGadgets();
- DrawDrawingWindow_PlayfieldOnly();
+ DrawEditModeWindow_PlayfieldOnly();
DrawMaskedBorder(fade_mask);
DrawDrawingWindowExt(TRUE);
}
-static void DrawDrawingWindow_PlayfieldOnly()
-{
- DrawDrawingWindowExt(FALSE);
-}
-
static int getTabulatorBarWidth()
{
struct GadgetInfo *gd_gi1 = level_editor_gadget[GADGET_ID_PROPERTIES_INFO];