+ static int ep_has_content[] =
+ {
+ EL_MAMPFER,
+ EL_AMOEBE_NASS,
+ EL_AMOEBE_NORM,
+ EL_AMOEBE_VOLL,
+ EL_AMOEBE_BD
+ };
+ static int ep_has_content_num = sizeof(ep_has_content)/sizeof(int);
+
+ static int ep_eatable[] =
+ {
+ EL_ERDREICH,
+ EL_SP_BASE,
+ EL_SP_BUG,
+ EL_SAND_INVISIBLE
+ };
+ static int ep_eatable_num = sizeof(ep_eatable)/sizeof(int);
+
+ static int ep_sp_element[] =
+ {
+ EL_SP_EMPTY,
+ EL_SP_ZONK,
+ EL_SP_BASE,
+ EL_SP_MURPHY,
+ EL_SP_INFOTRON,
+ EL_SP_CHIP_SINGLE,
+ EL_SP_HARD_GRAY,
+ EL_SP_EXIT,
+ EL_SP_DISK_ORANGE,
+ EL_SP_PORT1_RIGHT,
+ EL_SP_PORT1_DOWN,
+ EL_SP_PORT1_LEFT,
+ EL_SP_PORT1_UP,
+ EL_SP_PORT2_RIGHT,
+ EL_SP_PORT2_DOWN,
+ EL_SP_PORT2_LEFT,
+ EL_SP_PORT2_UP,
+ EL_SP_SNIKSNAK,
+ EL_SP_DISK_YELLOW,
+ EL_SP_TERMINAL,
+ EL_SP_DISK_RED,
+ EL_SP_PORT_Y,
+ EL_SP_PORT_X,
+ EL_SP_PORT_XY,
+ EL_SP_ELECTRON,
+ EL_SP_BUG,
+ EL_SP_CHIP_LEFT,
+ EL_SP_CHIP_RIGHT,
+ EL_SP_HARD_BASE1,
+ EL_SP_HARD_GREEN,
+ EL_SP_HARD_BLUE,
+ EL_SP_HARD_RED,
+ EL_SP_HARD_YELLOW,
+ EL_SP_HARD_BASE2,
+ EL_SP_HARD_BASE3,
+ EL_SP_HARD_BASE4,
+ EL_SP_HARD_BASE5,
+ EL_SP_HARD_BASE6,
+ EL_SP_CHIP_UPPER,
+ EL_SP_CHIP_LOWER,
+ /* additional elements that appeared in newer Supaplex levels */
+ EL_UNSICHTBAR
+ };
+ static int ep_sp_element_num = sizeof(ep_sp_element)/sizeof(int);
+
+ static int ep_quick_gate[] =
+ {
+ EL_EM_GATE_1,
+ EL_EM_GATE_2,
+ EL_EM_GATE_3,
+ EL_EM_GATE_4,
+ EL_EM_GATE_1X,
+ EL_EM_GATE_2X,
+ EL_EM_GATE_3X,
+ EL_EM_GATE_4X,
+ EL_SP_PORT1_LEFT,
+ EL_SP_PORT2_LEFT,
+ EL_SP_PORT1_RIGHT,
+ EL_SP_PORT2_RIGHT,
+ EL_SP_PORT1_UP,
+ EL_SP_PORT2_UP,
+ EL_SP_PORT1_DOWN,
+ EL_SP_PORT2_DOWN,
+ EL_SP_PORT_X,
+ EL_SP_PORT_Y,
+ EL_SP_PORT_XY,
+ EL_SWITCHGATE_OPEN,
+ EL_TIMEGATE_OPEN
+ };
+ static int ep_quick_gate_num = sizeof(ep_quick_gate)/sizeof(int);
+
+ static int ep_over_player[] =
+ {
+ EL_SP_PORT1_LEFT,
+ EL_SP_PORT2_LEFT,
+ EL_SP_PORT1_RIGHT,
+ EL_SP_PORT2_RIGHT,
+ EL_SP_PORT1_UP,
+ EL_SP_PORT2_UP,
+ EL_SP_PORT1_DOWN,
+ EL_SP_PORT2_DOWN,
+ EL_SP_PORT_X,
+ EL_SP_PORT_Y,
+ EL_SP_PORT_XY
+ };
+ static int ep_over_player_num = sizeof(ep_over_player)/sizeof(int);
+
+ static int ep_active_bomb[] =
+ {
+ EL_DYNAMITE_ACTIVE,
+ EL_DYNABOMB_ACTIVE_1,
+ EL_DYNABOMB_ACTIVE_2,
+ EL_DYNABOMB_ACTIVE_3,
+ EL_DYNABOMB_ACTIVE_4
+ };
+ static int ep_active_bomb_num = sizeof(ep_active_bomb)/sizeof(int);
+
+ static int ep_belt[] =
+ {
+ EL_BELT1_LEFT,
+ EL_BELT1_MIDDLE,
+ EL_BELT1_RIGHT,
+ EL_BELT2_LEFT,
+ EL_BELT2_MIDDLE,
+ EL_BELT2_RIGHT,
+ EL_BELT3_LEFT,
+ EL_BELT3_MIDDLE,
+ EL_BELT3_RIGHT,
+ EL_BELT4_LEFT,
+ EL_BELT4_MIDDLE,
+ EL_BELT4_RIGHT,
+ };
+ static int ep_belt_num = sizeof(ep_belt)/sizeof(int);
+
+ static int ep_belt_switch[] =
+ {
+ EL_BELT1_SWITCH_LEFT,
+ EL_BELT1_SWITCH_MIDDLE,
+ EL_BELT1_SWITCH_RIGHT,
+ EL_BELT2_SWITCH_LEFT,
+ EL_BELT2_SWITCH_MIDDLE,
+ EL_BELT2_SWITCH_RIGHT,
+ EL_BELT3_SWITCH_LEFT,
+ EL_BELT3_SWITCH_MIDDLE,
+ EL_BELT3_SWITCH_RIGHT,
+ EL_BELT4_SWITCH_LEFT,
+ EL_BELT4_SWITCH_MIDDLE,
+ EL_BELT4_SWITCH_RIGHT,
+ };
+ static int ep_belt_switch_num = sizeof(ep_belt_switch)/sizeof(int);
+
+ static long ep1_bit[] =