GADGET_ID_RANDOM_QUANTITY,
GADGET_ID_RANDOM_RESTRICTED,
GADGET_ID_BD_INTERMISSION,
+ GADGET_ID_BD_PAL_TIMING,
GADGET_ID_STICK_ELEMENT,
GADGET_ID_EM_SLIPPERY_GEMS,
GADGET_ID_EM_EXPLODES_BY_FIRE,
ED_CHECKBUTTON_ID_CUSTOM_USE_TEMPLATE_3,
ED_CHECKBUTTON_ID_CUSTOM_USE_TEMPLATE_2,
ED_CHECKBUTTON_ID_BD_INTERMISSION,
+ ED_CHECKBUTTON_ID_BD_PAL_TIMING,
ED_CHECKBUTTON_ID_STICK_ELEMENT,
ED_CHECKBUTTON_ID_EM_SLIPPERY_GEMS,
ED_CHECKBUTTON_ID_EM_EXPLODES_BY_FIRE,
#define ED_CHECKBUTTON_ID_EDITOR_LAST ED_CHECKBUTTON_ID_CUSTOM_USE_TEMPLATE_2
#define ED_CHECKBUTTON_ID_ENGINE_FIRST ED_CHECKBUTTON_ID_BD_INTERMISSION
-#define ED_CHECKBUTTON_ID_ENGINE_LAST ED_CHECKBUTTON_ID_BD_INTERMISSION
+#define ED_CHECKBUTTON_ID_ENGINE_LAST ED_CHECKBUTTON_ID_BD_PAL_TIMING
#define ED_CHECKBUTTON_ID_CUSTOM1_FIRST ED_CHECKBUTTON_ID_CUSTOM_USE_GRAPHIC
#define ED_CHECKBUTTON_ID_CUSTOM1_LAST ED_CHECKBUTTON_ID_CUSTOM_INDESTRUCTIBLE
"Boulder Dash game engine settings:", NULL,
"intermission", "level is an intermission level"
},
+ {
+ ED_CHECKBUTTON_ID_BD_PAL_TIMING,
+ ED_LEVEL_SETTINGS_XPOS(0), ED_LEVEL_SETTINGS_YPOS(1),
+ GADGET_ID_BD_PAL_TIMING, GADGET_ID_NONE,
+ &level.bd_pal_timing,
+ NULL, NULL,
+ "PAL timing", "use slower timer (like PAL C64)"
+ },
// ---------- element settings: configure (various elements) ----------------
&li.bd_intermission, FALSE
},
+ {
+ -1, -1,
+ TYPE_BOOLEAN, CONF_VALUE_8_BIT(15),
+ &li.bd_pal_timing, FALSE
+ },
+
{
-1, -1,
-1, -1,
cave->level_speed[0] = 160; // set cave speed
+ cave->pal_timing = level->bd_pal_timing;
cave->intermission = level->bd_intermission;
cave->diagonal_movements = level->bd_diagonal_movements;
level->score[SC_EMERALD] = cave->diamond_value;
level->score[SC_DIAMOND_EXTRA] = cave->extra_diamond_value;
+ level->bd_pal_timing = cave->pal_timing;
level->bd_intermission = cave->intermission;
level->bd_diagonal_movements = cave->diagonal_movements;
int initial_inventory_size[MAX_PLAYERS];
int initial_inventory_content[MAX_PLAYERS][MAX_INITIAL_INVENTORY_SIZE];
+ boolean bd_pal_timing; // BD engine special timing
boolean bd_intermission; // BD level is intermission
boolean bd_diagonal_movements; // BD style diagonal movements
boolean em_slippery_gems; // EM style "gems slip from wall" behaviour