- case EL_LEERRAUM: return -1;
- case EL_ERDREICH: return GFX_ERDREICH;
- case EL_MAUERWERK: return GFX_MAUERWERK;
- case EL_FELSBODEN: return GFX_FELSBODEN;
- case EL_FELSBROCKEN: return GFX_FELSBROCKEN;
- case EL_SCHLUESSEL: return GFX_SCHLUESSEL;
- case EL_EDELSTEIN: return GFX_EDELSTEIN;
- case EL_AUSGANG_ZU: return GFX_AUSGANG_ZU;
- case EL_AUSGANG_ACT: return GFX_AUSGANG_ACT;
- case EL_AUSGANG_AUF: return GFX_AUSGANG_AUF;
- case EL_SPIELFIGUR: return GFX_SPIELFIGUR;
- case EL_SPIELER1: return GFX_SPIELER1;
- case EL_SPIELER2: return GFX_SPIELER2;
- case EL_SPIELER3: return GFX_SPIELER3;
- case EL_SPIELER4: return GFX_SPIELER4;
- case EL_KAEFER: return GFX_KAEFER;
- case EL_KAEFER_RIGHT: return GFX_KAEFER_RIGHT;
- case EL_KAEFER_UP: return GFX_KAEFER_UP;
- case EL_KAEFER_LEFT: return GFX_KAEFER_LEFT;
- case EL_KAEFER_DOWN: return GFX_KAEFER_DOWN;
- case EL_FLIEGER: return GFX_FLIEGER;
- case EL_FLIEGER_RIGHT: return GFX_FLIEGER_RIGHT;
- case EL_FLIEGER_UP: return GFX_FLIEGER_UP;
- case EL_FLIEGER_LEFT: return GFX_FLIEGER_LEFT;
- case EL_FLIEGER_DOWN: return GFX_FLIEGER_DOWN;
- case EL_BUTTERFLY: return GFX_BUTTERFLY;
- case EL_BUTTERFLY_RIGHT: return GFX_BUTTERFLY_RIGHT;
- case EL_BUTTERFLY_UP: return GFX_BUTTERFLY_UP;
- case EL_BUTTERFLY_LEFT: return GFX_BUTTERFLY_LEFT;
- case EL_BUTTERFLY_DOWN: return GFX_BUTTERFLY_DOWN;
- case EL_FIREFLY: return GFX_FIREFLY;
- case EL_FIREFLY_RIGHT: return GFX_FIREFLY_RIGHT;
- case EL_FIREFLY_UP: return GFX_FIREFLY_UP;
- case EL_FIREFLY_LEFT: return GFX_FIREFLY_LEFT;
- case EL_FIREFLY_DOWN: return GFX_FIREFLY_DOWN;
- case EL_MAMPFER: return GFX_MAMPFER;
- case EL_ROBOT: return GFX_ROBOT;
- case EL_BETON: return GFX_BETON;
- case EL_DIAMANT: return GFX_DIAMANT;
- case EL_MORAST_LEER: return GFX_MORAST_LEER;
- case EL_MORAST_VOLL: return GFX_MORAST_VOLL;
- case EL_QUICKSAND_EMPTYING: return GFX_MORAST_LEER;
- case EL_TROPFEN: return GFX_TROPFEN;
- case EL_BOMBE: return GFX_BOMBE;
- case EL_MAGIC_WALL_OFF: return GFX_MAGIC_WALL_OFF;
- case EL_MAGIC_WALL_EMPTY: return GFX_MAGIC_WALL_EMPTY;
- case EL_MAGIC_WALL_EMPTYING:return GFX_MAGIC_WALL_EMPTY;
- case EL_MAGIC_WALL_FULL: return GFX_MAGIC_WALL_FULL;
- case EL_MAGIC_WALL_DEAD: return GFX_MAGIC_WALL_DEAD;
- case EL_SALZSAEURE: return GFX_SALZSAEURE;
- case EL_AMOEBE_TOT: return GFX_AMOEBE_TOT;
- case EL_AMOEBE_NASS: return GFX_AMOEBE_NASS;
- case EL_AMOEBE_NORM: return GFX_AMOEBE_NORM;
- case EL_AMOEBE_VOLL: return GFX_AMOEBE_VOLL;
- case EL_AMOEBE_BD: return GFX_AMOEBE_BD;
- case EL_AMOEBA2DIAM: return GFX_AMOEBA2DIAM;
- case EL_AMOEBA_DRIPPING: return GFX_AMOEBE_NASS;
- case EL_KOKOSNUSS: return GFX_KOKOSNUSS;
- case EL_LIFE: return GFX_LIFE;
- case EL_LIFE_ASYNC: return GFX_LIFE_ASYNC;
- case EL_DYNAMITE_ACTIVE: return GFX_DYNAMIT;
- case EL_BADEWANNE: return GFX_BADEWANNE;
- case EL_BADEWANNE1: return GFX_BADEWANNE1;
- case EL_BADEWANNE2: return GFX_BADEWANNE2;
- case EL_BADEWANNE3: return GFX_BADEWANNE3;
- case EL_BADEWANNE4: return GFX_BADEWANNE4;
- case EL_BADEWANNE5: return GFX_BADEWANNE5;
- case EL_ABLENK_AUS: return GFX_ABLENK_AUS;
- case EL_ABLENK_EIN: return GFX_ABLENK_EIN;
- case EL_SCHLUESSEL1: return GFX_SCHLUESSEL1;
- case EL_SCHLUESSEL2: return GFX_SCHLUESSEL2;
- case EL_SCHLUESSEL3: return GFX_SCHLUESSEL3;
- case EL_SCHLUESSEL4: return GFX_SCHLUESSEL4;
- case EL_PFORTE1: return GFX_PFORTE1;
- case EL_PFORTE2: return GFX_PFORTE2;
- case EL_PFORTE3: return GFX_PFORTE3;
- case EL_PFORTE4: return GFX_PFORTE4;
- case EL_PFORTE1X: return GFX_PFORTE1X;
- case EL_PFORTE2X: return GFX_PFORTE2X;
- case EL_PFORTE3X: return GFX_PFORTE3X;
- case EL_PFORTE4X: return GFX_PFORTE4X;
- case EL_DYNAMITE_INACTIVE: return GFX_DYNAMIT_AUS;
- case EL_PACMAN: return GFX_PACMAN;
- case EL_PACMAN_RIGHT: return GFX_PACMAN_RIGHT;
- case EL_PACMAN_UP: return GFX_PACMAN_UP;
- case EL_PACMAN_LEFT: return GFX_PACMAN_LEFT;
- case EL_PACMAN_DOWN: return GFX_PACMAN_DOWN;
- case EL_UNSICHTBAR: return GFX_UNSICHTBAR;
- case EL_ERZ_EDEL: return GFX_ERZ_EDEL;
- case EL_ERZ_DIAM: return GFX_ERZ_DIAM;
- case EL_BIRNE_AUS: return GFX_BIRNE_AUS;
- case EL_BIRNE_EIN: return GFX_BIRNE_EIN;
- case EL_ZEIT_VOLL: return GFX_ZEIT_VOLL;
- case EL_ZEIT_LEER: return GFX_ZEIT_LEER;
- case EL_MAUER_LEBT: return GFX_MAUER_LEBT;
- case EL_MAUER_X: return GFX_MAUER_X;
- case EL_MAUER_Y: return GFX_MAUER_Y;
- case EL_MAUER_XY: return GFX_MAUER_XY;
- case EL_EDELSTEIN_BD: return GFX_EDELSTEIN_BD;
- case EL_EDELSTEIN_GELB: return GFX_EDELSTEIN_GELB;
- case EL_EDELSTEIN_ROT: return GFX_EDELSTEIN_ROT;
- case EL_EDELSTEIN_LILA: return GFX_EDELSTEIN_LILA;
- case EL_ERZ_EDEL_BD: return GFX_ERZ_EDEL_BD;
- case EL_ERZ_EDEL_GELB: return GFX_ERZ_EDEL_GELB;
- case EL_ERZ_EDEL_ROT: return GFX_ERZ_EDEL_ROT;
- case EL_ERZ_EDEL_LILA: return GFX_ERZ_EDEL_LILA;
- case EL_MAMPFER2: return GFX_MAMPFER2;
- case EL_MAGIC_WALL_BD_OFF: return GFX_MAGIC_WALL_BD_OFF;
- case EL_MAGIC_WALL_BD_EMPTY:return GFX_MAGIC_WALL_BD_EMPTY;
- case EL_MAGIC_WALL_BD_EMPTYING:return GFX_MAGIC_WALL_BD_EMPTY;
- case EL_MAGIC_WALL_BD_FULL: return GFX_MAGIC_WALL_BD_FULL;
- case EL_MAGIC_WALL_BD_DEAD: return GFX_MAGIC_WALL_BD_DEAD;
- case EL_DYNABOMB_ACTIVE_1: return GFX_DYNABOMB;
- case EL_DYNABOMB_ACTIVE_2: return GFX_DYNABOMB;
- case EL_DYNABOMB_ACTIVE_3: return GFX_DYNABOMB;
- case EL_DYNABOMB_ACTIVE_4: return GFX_DYNABOMB;
- case EL_DYNABOMB_NR: return GFX_DYNABOMB_NR;
- case EL_DYNABOMB_SZ: return GFX_DYNABOMB_SZ;
- case EL_DYNABOMB_XL: return GFX_DYNABOMB_XL;
- case EL_SOKOBAN_OBJEKT: return GFX_SOKOBAN_OBJEKT;
- case EL_SOKOBAN_FELD_LEER: return GFX_SOKOBAN_FELD_LEER;
- case EL_SOKOBAN_FELD_VOLL: return GFX_SOKOBAN_FELD_VOLL;
- case EL_MOLE: return GFX_MOLE;
- case EL_PINGUIN: return GFX_PINGUIN;
- case EL_SCHWEIN: return GFX_SCHWEIN;
- case EL_DRACHE: return GFX_DRACHE;
- case EL_SONDE: return GFX_SONDE;
- case EL_PFEIL_LEFT: return GFX_PFEIL_LEFT;
- case EL_PFEIL_RIGHT: return GFX_PFEIL_RIGHT;
- case EL_PFEIL_UP: return GFX_PFEIL_UP;
- case EL_PFEIL_DOWN: return GFX_PFEIL_DOWN;
- case EL_SPEED_PILL: return GFX_SPEED_PILL;
- case EL_SP_TERMINAL_ACTIVE: return GFX_SP_TERMINAL;
- case EL_SP_BUG_ACTIVE: return GFX_SP_BUG_ACTIVE;
- case EL_SP_ZONK: return GFX_SP_ZONK;
- /* ^^^^^^^^^^ non-standard position in supaplex graphic set! */
- case EL_INVISIBLE_STEEL: return GFX_INVISIBLE_STEEL;
- case EL_BLACK_ORB: return GFX_BLACK_ORB;
- case EL_EM_GATE_1: return GFX_EM_GATE_1;
- case EL_EM_GATE_2: return GFX_EM_GATE_2;
- case EL_EM_GATE_3: return GFX_EM_GATE_3;
- case EL_EM_GATE_4: return GFX_EM_GATE_4;
- case EL_EM_GATE_1X: return GFX_EM_GATE_1X;
- case EL_EM_GATE_2X: return GFX_EM_GATE_2X;
- case EL_EM_GATE_3X: return GFX_EM_GATE_3X;
- case EL_EM_GATE_4X: return GFX_EM_GATE_4X;
- case EL_EM_KEY_1_FILE: return GFX_EM_KEY_1;
- case EL_EM_KEY_2_FILE: return GFX_EM_KEY_2;
- case EL_EM_KEY_3_FILE: return GFX_EM_KEY_3;
- case EL_EM_KEY_4_FILE: return GFX_EM_KEY_4;
- case EL_EM_KEY_1: return GFX_EM_KEY_1;
- case EL_EM_KEY_2: return GFX_EM_KEY_2;
- case EL_EM_KEY_3: return GFX_EM_KEY_3;
- case EL_EM_KEY_4: return GFX_EM_KEY_4;
- case EL_PEARL: return GFX_PEARL;
- case EL_CRYSTAL: return GFX_CRYSTAL;
- case EL_WALL_PEARL: return GFX_WALL_PEARL;
- case EL_WALL_CRYSTAL: return GFX_WALL_CRYSTAL;
- case EL_DOOR_WHITE: return GFX_DOOR_WHITE;
- case EL_DOOR_WHITE_GRAY: return GFX_DOOR_WHITE_GRAY;
- case EL_KEY_WHITE: return GFX_KEY_WHITE;
- case EL_SHIELD_PASSIVE: return GFX_SHIELD_PASSIVE;
- case EL_SHIELD_ACTIVE: return GFX_SHIELD_ACTIVE;
- case EL_EXTRA_TIME: return GFX_EXTRA_TIME;
- case EL_SWITCHGATE_OPEN: return GFX_SWITCHGATE_OPEN;
- case EL_SWITCHGATE_CLOSED: return GFX_SWITCHGATE_CLOSED;
- case EL_SWITCHGATE_SWITCH_1:return GFX_SWITCHGATE_SWITCH_1;
- case EL_SWITCHGATE_SWITCH_2:return GFX_SWITCHGATE_SWITCH_2;
- case EL_BELT1_LEFT: return GFX_BELT1_LEFT;
- case EL_BELT1_MIDDLE: return GFX_BELT1_MIDDLE;
- case EL_BELT1_RIGHT: return GFX_BELT1_RIGHT;
- case EL_BELT1_SWITCH_LEFT: return GFX_BELT1_SWITCH_LEFT;
- case EL_BELT1_SWITCH_MIDDLE:return GFX_BELT1_SWITCH_MIDDLE;
- case EL_BELT1_SWITCH_RIGHT: return GFX_BELT1_SWITCH_RIGHT;
- case EL_BELT2_LEFT: return GFX_BELT2_LEFT;
- case EL_BELT2_MIDDLE: return GFX_BELT2_MIDDLE;
- case EL_BELT2_RIGHT: return GFX_BELT2_RIGHT;
- case EL_BELT2_SWITCH_LEFT: return GFX_BELT2_SWITCH_LEFT;
- case EL_BELT2_SWITCH_MIDDLE:return GFX_BELT2_SWITCH_MIDDLE;
- case EL_BELT2_SWITCH_RIGHT: return GFX_BELT2_SWITCH_RIGHT;
- case EL_BELT3_LEFT: return GFX_BELT3_LEFT;
- case EL_BELT3_MIDDLE: return GFX_BELT3_MIDDLE;
- case EL_BELT3_RIGHT: return GFX_BELT3_RIGHT;
- case EL_BELT3_SWITCH_LEFT: return GFX_BELT3_SWITCH_LEFT;
- case EL_BELT3_SWITCH_MIDDLE:return GFX_BELT3_SWITCH_MIDDLE;
- case EL_BELT3_SWITCH_RIGHT: return GFX_BELT3_SWITCH_RIGHT;
- case EL_BELT4_LEFT: return GFX_BELT4_LEFT;
- case EL_BELT4_MIDDLE: return GFX_BELT4_MIDDLE;
- case EL_BELT4_RIGHT: return GFX_BELT4_RIGHT;
- case EL_BELT4_SWITCH_LEFT: return GFX_BELT4_SWITCH_LEFT;
- case EL_BELT4_SWITCH_MIDDLE:return GFX_BELT4_SWITCH_MIDDLE;
- case EL_BELT4_SWITCH_RIGHT: return GFX_BELT4_SWITCH_RIGHT;
- case EL_LANDMINE: return GFX_LANDMINE;
- case EL_ENVELOPE: return GFX_ENVELOPE;
- case EL_LIGHT_SWITCH_OFF: return GFX_LIGHT_SWITCH_OFF;
- case EL_LIGHT_SWITCH_ON: return GFX_LIGHT_SWITCH_ON;
- case EL_SIGN_EXCLAMATION: return GFX_SIGN_EXCLAMATION;
- case EL_SIGN_RADIOACTIVITY: return GFX_SIGN_RADIOACTIVITY;
- case EL_SIGN_STOP: return GFX_SIGN_STOP;
- case EL_SIGN_WHEELCHAIR: return GFX_SIGN_WHEELCHAIR;
- case EL_SIGN_PARKING: return GFX_SIGN_PARKING;
- case EL_SIGN_ONEWAY: return GFX_SIGN_ONEWAY;
- case EL_SIGN_HEART: return GFX_SIGN_HEART;
- case EL_SIGN_TRIANGLE: return GFX_SIGN_TRIANGLE;
- case EL_SIGN_ROUND: return GFX_SIGN_ROUND;
- case EL_SIGN_EXIT: return GFX_SIGN_EXIT;
- case EL_SIGN_YINYANG: return GFX_SIGN_YINYANG;
- case EL_SIGN_OTHER: return GFX_SIGN_OTHER;
- case EL_MOLE_LEFT: return GFX_MOLE_LEFT;
- case EL_MOLE_RIGHT: return GFX_MOLE_RIGHT;
- case EL_MOLE_UP: return GFX_MOLE_UP;
- case EL_MOLE_DOWN: return GFX_MOLE_DOWN;
- case EL_STEEL_SLANTED: return GFX_STEEL_SLANTED;
- case EL_SAND_INVISIBLE: return GFX_SAND_INVISIBLE;
- case EL_DX_UNKNOWN_15: return GFX_DX_UNKNOWN_15;
- case EL_DX_UNKNOWN_42: return GFX_DX_UNKNOWN_42;
- case EL_TIMEGATE_OPEN: return GFX_TIMEGATE_OPEN;
- case EL_TIMEGATE_CLOSED: return GFX_TIMEGATE_CLOSED;
- case EL_TIMEGATE_SWITCH_ON: return GFX_TIMEGATE_SWITCH;
- case EL_TIMEGATE_SWITCH_OFF:return GFX_TIMEGATE_SWITCH;
- case EL_BALLOON: return GFX_BALLOON;
- case EL_BALLOON_SEND_LEFT: return GFX_BALLOON_SEND_LEFT;
- case EL_BALLOON_SEND_RIGHT: return GFX_BALLOON_SEND_RIGHT;
- case EL_BALLOON_SEND_UP: return GFX_BALLOON_SEND_UP;
- case EL_BALLOON_SEND_DOWN: return GFX_BALLOON_SEND_DOWN;
- case EL_BALLOON_SEND_ANY: return GFX_BALLOON_SEND_ANY;
- case EL_EMC_STEEL_WALL_1: return GFX_EMC_STEEL_WALL_1;
- case EL_EMC_STEEL_WALL_2: return GFX_EMC_STEEL_WALL_2;
- case EL_EMC_STEEL_WALL_3: return GFX_EMC_STEEL_WALL_3;
- case EL_EMC_STEEL_WALL_4: return GFX_EMC_STEEL_WALL_4;
- case EL_EMC_WALL_1: return GFX_EMC_WALL_1;
- case EL_EMC_WALL_2: return GFX_EMC_WALL_2;
- case EL_EMC_WALL_3: return GFX_EMC_WALL_3;
- case EL_EMC_WALL_4: return GFX_EMC_WALL_4;
- case EL_EMC_WALL_5: return GFX_EMC_WALL_5;
- case EL_EMC_WALL_6: return GFX_EMC_WALL_6;
- case EL_EMC_WALL_7: return GFX_EMC_WALL_7;
- case EL_EMC_WALL_8: return GFX_EMC_WALL_8;
- case EL_TUBE_CROSS: return GFX_TUBE_CROSS;
- case EL_TUBE_VERTICAL: return GFX_TUBE_VERTICAL;
- case EL_TUBE_HORIZONTAL: return GFX_TUBE_HORIZONTAL;
- case EL_TUBE_VERT_LEFT: return GFX_TUBE_VERT_LEFT;
- case EL_TUBE_VERT_RIGHT: return GFX_TUBE_VERT_RIGHT;
- case EL_TUBE_HORIZ_UP: return GFX_TUBE_HORIZ_UP;
- case EL_TUBE_HORIZ_DOWN: return GFX_TUBE_HORIZ_DOWN;
- case EL_TUBE_LEFT_UP: return GFX_TUBE_LEFT_UP;
- case EL_TUBE_LEFT_DOWN: return GFX_TUBE_LEFT_DOWN;
- case EL_TUBE_RIGHT_UP: return GFX_TUBE_RIGHT_UP;
- case EL_TUBE_RIGHT_DOWN: return GFX_TUBE_RIGHT_DOWN;
- case EL_SPRING: return GFX_SPRING;
- case EL_SPRING_MOVING: return GFX_SPRING;
- case EL_TRAP_INACTIVE: return GFX_TRAP_INACTIVE;
- case EL_TRAP_ACTIVE: return GFX_TRAP_ACTIVE;
- case EL_BD_WALL: return GFX_BD_WALL;
- case EL_BD_ROCK: return GFX_BD_ROCK;
- case EL_DX_SUPABOMB: return GFX_DX_SUPABOMB;
- case EL_SP_MURPHY_CLONE: return GFX_SP_MURPHY_CLONE;
-
- default:
- {
- if (IS_CHAR(element))
- return GFX_CHAR_START + (element - EL_CHAR_START);
- else if (element >= EL_SP_START && element <= EL_SP_END)
- {
- int nr_element = element - EL_SP_START;
- int gfx_per_line = 8;
- int nr_graphic =
- (nr_element / gfx_per_line) * SP_PER_LINE +
- (nr_element % gfx_per_line);
-
- return GFX_START_ROCKSSP + nr_graphic;
- }
- else
- return -1;
- }
+ Xblank, TRUE, FALSE,
+ EL_EMPTY, -1, -1
+ },
+ {
+ Yacid_splash_eB, FALSE, FALSE,
+ EL_ACID_SPLASH_RIGHT, -1, -1
+ },
+ {
+ Yacid_splash_wB, FALSE, FALSE,
+ EL_ACID_SPLASH_LEFT, -1, -1
+ },
+
+#ifdef EM_ENGINE_BAD_ROLL
+ {
+ Xstone_force_e, FALSE, FALSE,
+ EL_ROCK, -1, MV_BIT_RIGHT
+ },
+ {
+ Xstone_force_w, FALSE, FALSE,
+ EL_ROCK, -1, MV_BIT_LEFT
+ },
+ {
+ Xnut_force_e, FALSE, FALSE,
+ EL_NUT, -1, MV_BIT_RIGHT
+ },
+ {
+ Xnut_force_w, FALSE, FALSE,
+ EL_NUT, -1, MV_BIT_LEFT
+ },
+ {
+ Xspring_force_e, FALSE, FALSE,
+ EL_SPRING, -1, MV_BIT_RIGHT
+ },
+ {
+ Xspring_force_w, FALSE, FALSE,
+ EL_SPRING, -1, MV_BIT_LEFT
+ },
+ {
+ Xemerald_force_e, FALSE, FALSE,
+ EL_EMERALD, -1, MV_BIT_RIGHT
+ },
+ {
+ Xemerald_force_w, FALSE, FALSE,
+ EL_EMERALD, -1, MV_BIT_LEFT
+ },
+ {
+ Xdiamond_force_e, FALSE, FALSE,
+ EL_DIAMOND, -1, MV_BIT_RIGHT
+ },
+ {
+ Xdiamond_force_w, FALSE, FALSE,
+ EL_DIAMOND, -1, MV_BIT_LEFT
+ },
+ {
+ Xbomb_force_e, FALSE, FALSE,
+ EL_BOMB, -1, MV_BIT_RIGHT
+ },
+ {
+ Xbomb_force_w, FALSE, FALSE,
+ EL_BOMB, -1, MV_BIT_LEFT
+ },
+#endif /* EM_ENGINE_BAD_ROLL */
+
+ {
+ Xstone, TRUE, FALSE,
+ EL_ROCK, -1, -1
+ },
+ {
+ Xstone_pause, FALSE, FALSE,
+ EL_ROCK, -1, -1
+ },
+ {
+ Xstone_fall, FALSE, FALSE,
+ EL_ROCK, -1, -1
+ },
+ {
+ Ystone_s, FALSE, FALSE,
+ EL_ROCK, ACTION_FALLING, -1
+ },
+ {
+ Ystone_sB, FALSE, TRUE,
+ EL_ROCK, ACTION_FALLING, -1
+ },
+ {
+ Ystone_e, FALSE, FALSE,
+ EL_ROCK, ACTION_MOVING, MV_BIT_RIGHT
+ },
+ {
+ Ystone_eB, FALSE, TRUE,
+ EL_ROCK, ACTION_MOVING, MV_BIT_RIGHT
+ },
+ {
+ Ystone_w, FALSE, FALSE,
+ EL_ROCK, ACTION_MOVING, MV_BIT_LEFT
+ },
+ {
+ Ystone_wB, FALSE, TRUE,
+ EL_ROCK, ACTION_MOVING, MV_BIT_LEFT
+ },
+ {
+ Xnut, TRUE, FALSE,
+ EL_NUT, -1, -1
+ },
+ {
+ Xnut_pause, FALSE, FALSE,
+ EL_NUT, -1, -1
+ },
+ {
+ Xnut_fall, FALSE, FALSE,
+ EL_NUT, -1, -1
+ },
+ {
+ Ynut_s, FALSE, FALSE,
+ EL_NUT, ACTION_FALLING, -1
+ },
+ {
+ Ynut_sB, FALSE, TRUE,
+ EL_NUT, ACTION_FALLING, -1
+ },
+ {
+ Ynut_e, FALSE, FALSE,
+ EL_NUT, ACTION_MOVING, MV_BIT_RIGHT
+ },
+ {
+ Ynut_eB, FALSE, TRUE,
+ EL_NUT, ACTION_MOVING, MV_BIT_RIGHT
+ },
+ {
+ Ynut_w, FALSE, FALSE,
+ EL_NUT, ACTION_MOVING, MV_BIT_LEFT
+ },
+ {
+ Ynut_wB, FALSE, TRUE,
+ EL_NUT, ACTION_MOVING, MV_BIT_LEFT
+ },
+ {
+ Xbug_n, TRUE, FALSE,
+ EL_BUG_UP, -1, -1
+ },
+ {
+ Xbug_e, TRUE, FALSE,
+ EL_BUG_RIGHT, -1, -1
+ },
+ {
+ Xbug_s, TRUE, FALSE,
+ EL_BUG_DOWN, -1, -1
+ },
+ {
+ Xbug_w, TRUE, FALSE,
+ EL_BUG_LEFT, -1, -1
+ },
+ {
+ Xbug_gon, FALSE, FALSE,
+ EL_BUG_UP, -1, -1
+ },
+ {
+ Xbug_goe, FALSE, FALSE,
+ EL_BUG_RIGHT, -1, -1
+ },
+ {
+ Xbug_gos, FALSE, FALSE,
+ EL_BUG_DOWN, -1, -1
+ },
+ {
+ Xbug_gow, FALSE, FALSE,
+ EL_BUG_LEFT, -1, -1
+ },
+ {
+ Ybug_n, FALSE, FALSE,
+ EL_BUG, ACTION_MOVING, MV_BIT_UP
+ },
+ {
+ Ybug_nB, FALSE, TRUE,
+ EL_BUG, ACTION_MOVING, MV_BIT_UP
+ },
+ {
+ Ybug_e, FALSE, FALSE,
+ EL_BUG, ACTION_MOVING, MV_BIT_RIGHT
+ },
+ {
+ Ybug_eB, FALSE, TRUE,
+ EL_BUG, ACTION_MOVING, MV_BIT_RIGHT
+ },
+ {
+ Ybug_s, FALSE, FALSE,
+ EL_BUG, ACTION_MOVING, MV_BIT_DOWN
+ },
+ {
+ Ybug_sB, FALSE, TRUE,
+ EL_BUG, ACTION_MOVING, MV_BIT_DOWN
+ },
+ {
+ Ybug_w, FALSE, FALSE,
+ EL_BUG, ACTION_MOVING, MV_BIT_LEFT
+ },
+ {
+ Ybug_wB, FALSE, TRUE,
+ EL_BUG, ACTION_MOVING, MV_BIT_LEFT
+ },
+ {
+ Ybug_w_n, FALSE, FALSE,
+ EL_BUG, ACTION_TURNING_FROM_LEFT, MV_BIT_UP
+ },
+ {
+ Ybug_n_e, FALSE, FALSE,
+ EL_BUG, ACTION_TURNING_FROM_UP, MV_BIT_RIGHT
+ },
+ {
+ Ybug_e_s, FALSE, FALSE,
+ EL_BUG, ACTION_TURNING_FROM_RIGHT, MV_BIT_DOWN
+ },
+ {
+ Ybug_s_w, FALSE, FALSE,
+ EL_BUG, ACTION_TURNING_FROM_DOWN, MV_BIT_LEFT
+ },
+ {
+ Ybug_e_n, FALSE, FALSE,
+ EL_BUG, ACTION_TURNING_FROM_RIGHT, MV_BIT_UP
+ },
+ {
+ Ybug_s_e, FALSE, FALSE,
+ EL_BUG, ACTION_TURNING_FROM_DOWN, MV_BIT_RIGHT
+ },
+ {
+ Ybug_w_s, FALSE, FALSE,
+ EL_BUG, ACTION_TURNING_FROM_LEFT, MV_BIT_DOWN
+ },
+ {
+ Ybug_n_w, FALSE, FALSE,
+ EL_BUG, ACTION_TURNING_FROM_UP, MV_BIT_LEFT
+ },
+ {
+ Ybug_stone, FALSE, FALSE,
+ EL_BUG, ACTION_SMASHED_BY_ROCK, -1
+ },
+ {
+ Ybug_spring, FALSE, FALSE,
+ EL_BUG, ACTION_SMASHED_BY_SPRING, -1
+ },
+ {
+ Xtank_n, TRUE, FALSE,
+ EL_SPACESHIP_UP, -1, -1
+ },
+ {
+ Xtank_e, TRUE, FALSE,
+ EL_SPACESHIP_RIGHT, -1, -1
+ },
+ {
+ Xtank_s, TRUE, FALSE,
+ EL_SPACESHIP_DOWN, -1, -1
+ },
+ {
+ Xtank_w, TRUE, FALSE,
+ EL_SPACESHIP_LEFT, -1, -1
+ },
+ {
+ Xtank_gon, FALSE, FALSE,
+ EL_SPACESHIP_UP, -1, -1
+ },
+ {
+ Xtank_goe, FALSE, FALSE,
+ EL_SPACESHIP_RIGHT, -1, -1
+ },
+ {
+ Xtank_gos, FALSE, FALSE,
+ EL_SPACESHIP_DOWN, -1, -1
+ },
+ {
+ Xtank_gow, FALSE, FALSE,
+ EL_SPACESHIP_LEFT, -1, -1
+ },
+ {
+ Ytank_n, FALSE, FALSE,
+ EL_SPACESHIP, ACTION_MOVING, MV_BIT_UP
+ },
+ {
+ Ytank_nB, FALSE, TRUE,
+ EL_SPACESHIP, ACTION_MOVING, MV_BIT_UP
+ },
+ {
+ Ytank_e, FALSE, FALSE,
+ EL_SPACESHIP, ACTION_MOVING, MV_BIT_RIGHT
+ },
+ {
+ Ytank_eB, FALSE, TRUE,
+ EL_SPACESHIP, ACTION_MOVING, MV_BIT_RIGHT
+ },
+ {
+ Ytank_s, FALSE, FALSE,
+ EL_SPACESHIP, ACTION_MOVING, MV_BIT_DOWN
+ },
+ {
+ Ytank_sB, FALSE, TRUE,
+ EL_SPACESHIP, ACTION_MOVING, MV_BIT_DOWN
+ },
+ {
+ Ytank_w, FALSE, FALSE,
+ EL_SPACESHIP, ACTION_MOVING, MV_BIT_LEFT
+ },
+ {
+ Ytank_wB, FALSE, TRUE,
+ EL_SPACESHIP, ACTION_MOVING, MV_BIT_LEFT
+ },
+ {
+ Ytank_w_n, FALSE, FALSE,
+ EL_SPACESHIP, ACTION_TURNING_FROM_LEFT, MV_BIT_UP
+ },
+ {
+ Ytank_n_e, FALSE, FALSE,
+ EL_SPACESHIP, ACTION_TURNING_FROM_UP, MV_BIT_RIGHT
+ },
+ {
+ Ytank_e_s, FALSE, FALSE,
+ EL_SPACESHIP, ACTION_TURNING_FROM_RIGHT, MV_BIT_DOWN
+ },
+ {
+ Ytank_s_w, FALSE, FALSE,
+ EL_SPACESHIP, ACTION_TURNING_FROM_DOWN, MV_BIT_LEFT
+ },
+ {
+ Ytank_e_n, FALSE, FALSE,
+ EL_SPACESHIP, ACTION_TURNING_FROM_RIGHT, MV_BIT_UP
+ },
+ {
+ Ytank_s_e, FALSE, FALSE,
+ EL_SPACESHIP, ACTION_TURNING_FROM_DOWN, MV_BIT_RIGHT
+ },
+ {
+ Ytank_w_s, FALSE, FALSE,
+ EL_SPACESHIP, ACTION_TURNING_FROM_LEFT, MV_BIT_DOWN
+ },
+ {
+ Ytank_n_w, FALSE, FALSE,
+ EL_SPACESHIP, ACTION_TURNING_FROM_UP, MV_BIT_LEFT
+ },
+ {
+ Ytank_stone, FALSE, FALSE,
+ EL_SPACESHIP, ACTION_SMASHED_BY_ROCK, -1
+ },
+ {
+ Ytank_spring, FALSE, FALSE,
+ EL_SPACESHIP, ACTION_SMASHED_BY_SPRING, -1
+ },
+ {
+ Xandroid, TRUE, FALSE,
+ EL_EMC_ANDROID, ACTION_ACTIVE, -1
+ },
+ {
+ Xandroid_1_n, FALSE, FALSE,
+ EL_EMC_ANDROID, ACTION_ACTIVE, MV_BIT_UP
+ },
+ {
+ Xandroid_2_n, FALSE, FALSE,
+ EL_EMC_ANDROID, ACTION_ACTIVE, MV_BIT_UP
+ },
+ {
+ Xandroid_1_e, FALSE, FALSE,
+ EL_EMC_ANDROID, ACTION_ACTIVE, MV_BIT_RIGHT
+ },
+ {
+ Xandroid_2_e, FALSE, FALSE,
+ EL_EMC_ANDROID, ACTION_ACTIVE, MV_BIT_RIGHT
+ },
+ {
+ Xandroid_1_w, FALSE, FALSE,
+ EL_EMC_ANDROID, ACTION_ACTIVE, MV_BIT_LEFT
+ },
+ {
+ Xandroid_2_w, FALSE, FALSE,
+ EL_EMC_ANDROID, ACTION_ACTIVE, MV_BIT_LEFT
+ },
+ {
+ Xandroid_1_s, FALSE, FALSE,
+ EL_EMC_ANDROID, ACTION_ACTIVE, MV_BIT_DOWN
+ },
+ {
+ Xandroid_2_s, FALSE, FALSE,
+ EL_EMC_ANDROID, ACTION_ACTIVE, MV_BIT_DOWN
+ },
+ {
+ Yandroid_n, FALSE, FALSE,
+ EL_EMC_ANDROID, ACTION_MOVING, MV_BIT_UP
+ },
+ {
+ Yandroid_nB, FALSE, TRUE,
+ EL_EMC_ANDROID, ACTION_MOVING, MV_BIT_UP
+ },
+ {
+ Yandroid_ne, FALSE, FALSE,
+ EL_EMC_ANDROID, ACTION_TURNING_FROM_UP, MV_BIT_RIGHT
+ },
+ {
+ Yandroid_neB, FALSE, TRUE,
+ EL_EMC_ANDROID, ACTION_TURNING_FROM_UP, MV_BIT_RIGHT
+ },
+ {
+ Yandroid_e, FALSE, FALSE,
+ EL_EMC_ANDROID, ACTION_MOVING, MV_BIT_RIGHT
+ },
+ {
+ Yandroid_eB, FALSE, TRUE,
+ EL_EMC_ANDROID, ACTION_MOVING, MV_BIT_RIGHT
+ },
+ {
+ Yandroid_se, FALSE, FALSE,
+ EL_EMC_ANDROID, ACTION_TURNING_FROM_DOWN, MV_BIT_RIGHT
+ },
+ {
+ Yandroid_seB, FALSE, TRUE,
+ EL_EMC_ANDROID, ACTION_TURNING_FROM_DOWN, MV_BIT_RIGHT
+ },
+ {
+ Yandroid_s, FALSE, FALSE,
+ EL_EMC_ANDROID, ACTION_MOVING, MV_BIT_DOWN
+ },
+ {
+ Yandroid_sB, FALSE, TRUE,
+ EL_EMC_ANDROID, ACTION_MOVING, MV_BIT_DOWN
+ },
+ {
+ Yandroid_sw, FALSE, FALSE,
+ EL_EMC_ANDROID, ACTION_TURNING_FROM_DOWN, MV_BIT_LEFT
+ },
+ {
+ Yandroid_swB, FALSE, TRUE,
+ EL_EMC_ANDROID, ACTION_TURNING_FROM_DOWN, MV_BIT_LEFT
+ },
+ {
+ Yandroid_w, FALSE, FALSE,
+ EL_EMC_ANDROID, ACTION_MOVING, MV_BIT_LEFT
+ },
+ {
+ Yandroid_wB, FALSE, TRUE,
+ EL_EMC_ANDROID, ACTION_MOVING, MV_BIT_LEFT
+ },
+ {
+ Yandroid_nw, FALSE, FALSE,
+ EL_EMC_ANDROID, ACTION_TURNING_FROM_UP, MV_BIT_LEFT
+ },
+ {
+ Yandroid_nwB, FALSE, TRUE,
+ EL_EMC_ANDROID, ACTION_TURNING_FROM_UP, MV_BIT_LEFT
+ },
+ {
+ Xspring, TRUE, FALSE,
+ EL_SPRING, -1, -1
+ },
+ {
+ Xspring_pause, FALSE, FALSE,
+ EL_SPRING, -1, -1
+ },
+ {
+ Xspring_e, FALSE, FALSE,
+ EL_SPRING, -1, -1
+ },
+ {
+ Xspring_w, FALSE, FALSE,
+ EL_SPRING, -1, -1
+ },
+ {
+ Xspring_fall, FALSE, FALSE,
+ EL_SPRING, -1, -1
+ },
+ {
+ Yspring_s, FALSE, FALSE,
+ EL_SPRING, ACTION_FALLING, -1
+ },
+ {
+ Yspring_sB, FALSE, TRUE,
+ EL_SPRING, ACTION_FALLING, -1
+ },
+ {
+ Yspring_e, FALSE, FALSE,
+ EL_SPRING, ACTION_MOVING, MV_BIT_RIGHT
+ },
+ {
+ Yspring_eB, FALSE, TRUE,
+ EL_SPRING, ACTION_MOVING, MV_BIT_RIGHT
+ },
+ {
+ Yspring_w, FALSE, FALSE,
+ EL_SPRING, ACTION_MOVING, MV_BIT_LEFT
+ },
+ {
+ Yspring_wB, FALSE, TRUE,
+ EL_SPRING, ACTION_MOVING, MV_BIT_LEFT
+ },
+ {
+ Yspring_kill_e, FALSE, FALSE,
+ EL_ROBOT, ACTION_SLURPED_BY_SPRING, MV_BIT_RIGHT
+ },
+ {
+ Yspring_kill_eB, FALSE, TRUE,
+ EL_ROBOT, ACTION_SLURPED_BY_SPRING, MV_BIT_RIGHT
+ },
+ {
+ Yspring_kill_w, FALSE, FALSE,
+ EL_ROBOT, ACTION_SLURPED_BY_SPRING, MV_BIT_LEFT
+ },
+ {
+ Yspring_kill_wB, FALSE, TRUE,
+ EL_ROBOT, ACTION_SLURPED_BY_SPRING, MV_BIT_LEFT
+ },
+ {
+ Xeater_n, TRUE, FALSE,
+ EL_YAMYAM, -1, -1
+ },
+ {
+ Xeater_e, FALSE, FALSE,
+ EL_YAMYAM, -1, -1
+ },
+ {
+ Xeater_w, FALSE, FALSE,
+ EL_YAMYAM, -1, -1
+ },
+ {
+ Xeater_s, FALSE, FALSE,
+ EL_YAMYAM, -1, -1
+ },
+ {
+ Yeater_n, FALSE, FALSE,
+ EL_YAMYAM, ACTION_MOVING, MV_BIT_UP
+ },
+ {
+ Yeater_nB, FALSE, TRUE,
+ EL_YAMYAM, ACTION_MOVING, MV_BIT_UP
+ },
+ {
+ Yeater_e, FALSE, FALSE,
+ EL_YAMYAM, ACTION_MOVING, MV_BIT_RIGHT
+ },
+ {
+ Yeater_eB, FALSE, TRUE,
+ EL_YAMYAM, ACTION_MOVING, MV_BIT_RIGHT
+ },
+ {
+ Yeater_s, FALSE, FALSE,
+ EL_YAMYAM, ACTION_MOVING, MV_BIT_DOWN
+ },
+ {
+ Yeater_sB, FALSE, TRUE,
+ EL_YAMYAM, ACTION_MOVING, MV_BIT_DOWN
+ },
+ {
+ Yeater_w, FALSE, FALSE,
+ EL_YAMYAM, ACTION_MOVING, MV_BIT_LEFT
+ },
+ {
+ Yeater_wB, FALSE, TRUE,
+ EL_YAMYAM, ACTION_MOVING, MV_BIT_LEFT
+ },
+ {
+ Yeater_stone, FALSE, FALSE,
+ EL_YAMYAM, ACTION_SMASHED_BY_ROCK, -1
+ },
+ {
+ Yeater_spring, FALSE, FALSE,
+ EL_YAMYAM, ACTION_SMASHED_BY_SPRING, -1
+ },
+ {
+ Xalien, TRUE, FALSE,
+ EL_ROBOT, -1, -1
+ },
+ {
+ Xalien_pause, FALSE, FALSE,
+ EL_ROBOT, -1, -1
+ },
+ {
+ Yalien_n, FALSE, FALSE,
+ EL_ROBOT, ACTION_MOVING, MV_BIT_UP
+ },
+ {
+ Yalien_nB, FALSE, TRUE,
+ EL_ROBOT, ACTION_MOVING, MV_BIT_UP
+ },
+ {
+ Yalien_e, FALSE, FALSE,
+ EL_ROBOT, ACTION_MOVING, MV_BIT_RIGHT
+ },
+ {
+ Yalien_eB, FALSE, TRUE,
+ EL_ROBOT, ACTION_MOVING, MV_BIT_RIGHT
+ },
+ {
+ Yalien_s, FALSE, FALSE,
+ EL_ROBOT, ACTION_MOVING, MV_BIT_DOWN
+ },
+ {
+ Yalien_sB, FALSE, TRUE,
+ EL_ROBOT, ACTION_MOVING, MV_BIT_DOWN
+ },
+ {
+ Yalien_w, FALSE, FALSE,
+ EL_ROBOT, ACTION_MOVING, MV_BIT_LEFT
+ },
+ {
+ Yalien_wB, FALSE, TRUE,
+ EL_ROBOT, ACTION_MOVING, MV_BIT_LEFT
+ },
+ {
+ Yalien_stone, FALSE, FALSE,
+ EL_ROBOT, ACTION_SMASHED_BY_ROCK, -1
+ },
+ {
+ Yalien_spring, FALSE, FALSE,
+ EL_ROBOT, ACTION_SMASHED_BY_SPRING, -1
+ },
+ {
+ Xemerald, TRUE, FALSE,
+ EL_EMERALD, -1, -1
+ },
+ {
+ Xemerald_pause, FALSE, FALSE,
+ EL_EMERALD, -1, -1
+ },
+ {
+ Xemerald_fall, FALSE, FALSE,
+ EL_EMERALD, -1, -1
+ },
+ {
+ Xemerald_shine, FALSE, FALSE,
+ EL_EMERALD, ACTION_TWINKLING, -1
+ },
+ {
+ Yemerald_s, FALSE, FALSE,
+ EL_EMERALD, ACTION_FALLING, -1
+ },
+ {
+ Yemerald_sB, FALSE, TRUE,
+ EL_EMERALD, ACTION_FALLING, -1
+ },
+ {
+ Yemerald_e, FALSE, FALSE,
+ EL_EMERALD, ACTION_MOVING, MV_BIT_RIGHT
+ },
+ {
+ Yemerald_eB, FALSE, TRUE,
+ EL_EMERALD, ACTION_MOVING, MV_BIT_RIGHT
+ },
+ {
+ Yemerald_w, FALSE, FALSE,
+ EL_EMERALD, ACTION_MOVING, MV_BIT_LEFT
+ },
+ {
+ Yemerald_wB, FALSE, TRUE,
+ EL_EMERALD, ACTION_MOVING, MV_BIT_LEFT
+ },
+ {
+ Yemerald_eat, FALSE, FALSE,
+ EL_EMERALD, ACTION_COLLECTING, -1
+ },
+ {
+ Yemerald_stone, FALSE, FALSE,
+ EL_NUT, ACTION_BREAKING, -1
+ },
+ {
+ Xdiamond, TRUE, FALSE,
+ EL_DIAMOND, -1, -1
+ },
+ {
+ Xdiamond_pause, FALSE, FALSE,
+ EL_DIAMOND, -1, -1
+ },
+ {
+ Xdiamond_fall, FALSE, FALSE,
+ EL_DIAMOND, -1, -1
+ },
+ {
+ Xdiamond_shine, FALSE, FALSE,
+ EL_DIAMOND, ACTION_TWINKLING, -1
+ },
+ {
+ Ydiamond_s, FALSE, FALSE,
+ EL_DIAMOND, ACTION_FALLING, -1
+ },
+ {
+ Ydiamond_sB, FALSE, TRUE,
+ EL_DIAMOND, ACTION_FALLING, -1
+ },
+ {
+ Ydiamond_e, FALSE, FALSE,
+ EL_DIAMOND, ACTION_MOVING, MV_BIT_RIGHT
+ },
+ {
+ Ydiamond_eB, FALSE, TRUE,
+ EL_DIAMOND, ACTION_MOVING, MV_BIT_RIGHT
+ },
+ {
+ Ydiamond_w, FALSE, FALSE,
+ EL_DIAMOND, ACTION_MOVING, MV_BIT_LEFT
+ },
+ {
+ Ydiamond_wB, FALSE, TRUE,
+ EL_DIAMOND, ACTION_MOVING, MV_BIT_LEFT
+ },
+ {
+ Ydiamond_eat, FALSE, FALSE,
+ EL_DIAMOND, ACTION_COLLECTING, -1
+ },
+ {
+ Ydiamond_stone, FALSE, FALSE,
+ EL_DIAMOND, ACTION_SMASHED_BY_ROCK, -1
+ },
+ {
+ Xdrip_fall, TRUE, FALSE,
+ EL_AMOEBA_DROP, -1, -1
+ },
+ {
+ Xdrip_stretch, FALSE, FALSE,
+ EL_AMOEBA_DROP, ACTION_FALLING, -1
+ },
+ {
+ Xdrip_stretchB, FALSE, TRUE,
+ EL_AMOEBA_DROP, ACTION_FALLING, -1
+ },
+ {
+ Xdrip_eat, FALSE, FALSE,
+ EL_AMOEBA_DROP, ACTION_GROWING, -1
+ },
+ {
+ Ydrip_s1, FALSE, FALSE,
+ EL_AMOEBA_DROP, ACTION_FALLING, -1
+ },
+ {
+ Ydrip_s1B, FALSE, TRUE,
+ EL_AMOEBA_DROP, ACTION_FALLING, -1
+ },
+ {
+ Ydrip_s2, FALSE, FALSE,
+ EL_AMOEBA_DROP, ACTION_FALLING, -1
+ },
+ {
+ Ydrip_s2B, FALSE, TRUE,
+ EL_AMOEBA_DROP, ACTION_FALLING, -1
+ },
+ {
+ Xbomb, TRUE, FALSE,
+ EL_BOMB, -1, -1
+ },
+ {
+ Xbomb_pause, FALSE, FALSE,
+ EL_BOMB, -1, -1
+ },
+ {
+ Xbomb_fall, FALSE, FALSE,
+ EL_BOMB, -1, -1
+ },
+ {
+ Ybomb_s, FALSE, FALSE,
+ EL_BOMB, ACTION_FALLING, -1
+ },
+ {
+ Ybomb_sB, FALSE, TRUE,
+ EL_BOMB, ACTION_FALLING, -1
+ },
+ {
+ Ybomb_e, FALSE, FALSE,
+ EL_BOMB, ACTION_MOVING, MV_BIT_RIGHT
+ },
+ {
+ Ybomb_eB, FALSE, TRUE,
+ EL_BOMB, ACTION_MOVING, MV_BIT_RIGHT
+ },
+ {
+ Ybomb_w, FALSE, FALSE,
+ EL_BOMB, ACTION_MOVING, MV_BIT_LEFT
+ },
+ {
+ Ybomb_wB, FALSE, TRUE,
+ EL_BOMB, ACTION_MOVING, MV_BIT_LEFT
+ },
+ {
+ Ybomb_eat, FALSE, FALSE,
+ EL_BOMB, ACTION_ACTIVATING, -1
+ },
+ {
+ Xballoon, TRUE, FALSE,
+ EL_BALLOON, -1, -1
+ },
+ {
+ Yballoon_n, FALSE, FALSE,
+ EL_BALLOON, ACTION_MOVING, MV_BIT_UP
+ },
+ {
+ Yballoon_nB, FALSE, TRUE,
+ EL_BALLOON, ACTION_MOVING, MV_BIT_UP
+ },
+ {
+ Yballoon_e, FALSE, FALSE,
+ EL_BALLOON, ACTION_MOVING, MV_BIT_RIGHT
+ },
+ {
+ Yballoon_eB, FALSE, TRUE,
+ EL_BALLOON, ACTION_MOVING, MV_BIT_RIGHT
+ },
+ {
+ Yballoon_s, FALSE, FALSE,
+ EL_BALLOON, ACTION_MOVING, MV_BIT_DOWN
+ },
+ {
+ Yballoon_sB, FALSE, TRUE,
+ EL_BALLOON, ACTION_MOVING, MV_BIT_DOWN
+ },
+ {
+ Yballoon_w, FALSE, FALSE,
+ EL_BALLOON, ACTION_MOVING, MV_BIT_LEFT
+ },
+ {
+ Yballoon_wB, FALSE, TRUE,
+ EL_BALLOON, ACTION_MOVING, MV_BIT_LEFT
+ },
+ {
+ Xgrass, TRUE, FALSE,
+ EL_EMC_GRASS, -1, -1
+ },
+ {
+ Ygrass_nB, FALSE, FALSE,
+ EL_EMC_GRASS, ACTION_DIGGING, MV_BIT_UP
+ },
+ {
+ Ygrass_eB, FALSE, FALSE,
+ EL_EMC_GRASS, ACTION_DIGGING, MV_BIT_RIGHT
+ },
+ {
+ Ygrass_sB, FALSE, FALSE,
+ EL_EMC_GRASS, ACTION_DIGGING, MV_BIT_DOWN
+ },
+ {
+ Ygrass_wB, FALSE, FALSE,
+ EL_EMC_GRASS, ACTION_DIGGING, MV_BIT_LEFT
+ },
+ {
+ Xdirt, TRUE, FALSE,
+ EL_SAND, -1, -1
+ },
+ {
+ Ydirt_nB, FALSE, FALSE,
+ EL_SAND, ACTION_DIGGING, MV_BIT_UP
+ },
+ {
+ Ydirt_eB, FALSE, FALSE,
+ EL_SAND, ACTION_DIGGING, MV_BIT_RIGHT
+ },
+ {
+ Ydirt_sB, FALSE, FALSE,
+ EL_SAND, ACTION_DIGGING, MV_BIT_DOWN
+ },
+ {
+ Ydirt_wB, FALSE, FALSE,
+ EL_SAND, ACTION_DIGGING, MV_BIT_LEFT
+ },
+ {
+ Xacid_ne, TRUE, FALSE,
+ EL_ACID_POOL_TOPRIGHT, -1, -1
+ },
+ {
+ Xacid_se, TRUE, FALSE,
+ EL_ACID_POOL_BOTTOMRIGHT, -1, -1
+ },
+ {
+ Xacid_s, TRUE, FALSE,
+ EL_ACID_POOL_BOTTOM, -1, -1
+ },
+ {
+ Xacid_sw, TRUE, FALSE,
+ EL_ACID_POOL_BOTTOMLEFT, -1, -1
+ },
+ {
+ Xacid_nw, TRUE, FALSE,
+ EL_ACID_POOL_TOPLEFT, -1, -1
+ },
+ {
+ Xacid_1, TRUE, FALSE,
+ EL_ACID, -1, -1
+ },
+ {
+ Xacid_2, FALSE, FALSE,
+ EL_ACID, -1, -1
+ },
+ {
+ Xacid_3, FALSE, FALSE,
+ EL_ACID, -1, -1
+ },
+ {
+ Xacid_4, FALSE, FALSE,
+ EL_ACID, -1, -1
+ },
+ {
+ Xacid_5, FALSE, FALSE,
+ EL_ACID, -1, -1
+ },
+ {
+ Xacid_6, FALSE, FALSE,
+ EL_ACID, -1, -1
+ },
+ {
+ Xacid_7, FALSE, FALSE,
+ EL_ACID, -1, -1
+ },
+ {
+ Xacid_8, FALSE, FALSE,
+ EL_ACID, -1, -1
+ },
+ {
+ Xball_1, TRUE, FALSE,
+ EL_EMC_MAGIC_BALL, -1, -1
+ },
+ {
+ Xball_1B, FALSE, FALSE,
+ EL_EMC_MAGIC_BALL, ACTION_ACTIVE, -1
+ },
+ {
+ Xball_2, FALSE, FALSE,
+ EL_EMC_MAGIC_BALL, ACTION_ACTIVE, -1
+ },
+ {
+ Xball_2B, FALSE, FALSE,
+ EL_EMC_MAGIC_BALL, ACTION_ACTIVE, -1
+ },
+ {
+ Yball_eat, FALSE, FALSE,
+ EL_EMC_MAGIC_BALL, ACTION_DROPPING, -1
+ },
+ {
+ Ykey_1_eat, FALSE, FALSE,
+ EL_EM_KEY_1, ACTION_COLLECTING, -1
+ },
+ {
+ Ykey_2_eat, FALSE, FALSE,
+ EL_EM_KEY_2, ACTION_COLLECTING, -1
+ },
+ {
+ Ykey_3_eat, FALSE, FALSE,
+ EL_EM_KEY_3, ACTION_COLLECTING, -1
+ },
+ {
+ Ykey_4_eat, FALSE, FALSE,
+ EL_EM_KEY_4, ACTION_COLLECTING, -1
+ },
+ {
+ Ykey_5_eat, FALSE, FALSE,
+ EL_EMC_KEY_5, ACTION_COLLECTING, -1
+ },
+ {
+ Ykey_6_eat, FALSE, FALSE,
+ EL_EMC_KEY_6, ACTION_COLLECTING, -1
+ },
+ {
+ Ykey_7_eat, FALSE, FALSE,
+ EL_EMC_KEY_7, ACTION_COLLECTING, -1
+ },
+ {
+ Ykey_8_eat, FALSE, FALSE,
+ EL_EMC_KEY_8, ACTION_COLLECTING, -1
+ },
+ {
+ Ylenses_eat, FALSE, FALSE,
+ EL_EMC_LENSES, ACTION_COLLECTING, -1
+ },
+ {
+ Ymagnify_eat, FALSE, FALSE,
+ EL_EMC_MAGNIFIER, ACTION_COLLECTING, -1
+ },
+ {
+ Ygrass_eat, FALSE, FALSE,
+ EL_EMC_GRASS, ACTION_SNAPPING, -1
+ },
+ {
+ Ydirt_eat, FALSE, FALSE,
+ EL_SAND, ACTION_SNAPPING, -1
+ },
+ {
+ Xgrow_ns, TRUE, FALSE,
+ EL_EXPANDABLE_WALL_VERTICAL, -1, -1
+ },
+ {
+ Ygrow_ns_eat, FALSE, FALSE,
+ EL_EXPANDABLE_WALL_VERTICAL, ACTION_GROWING, -1
+ },
+ {
+ Xgrow_ew, TRUE, FALSE,
+ EL_EXPANDABLE_WALL_HORIZONTAL, -1, -1
+ },
+ {
+ Ygrow_ew_eat, FALSE, FALSE,
+ EL_EXPANDABLE_WALL_HORIZONTAL, ACTION_GROWING, -1
+ },
+ {
+ Xwonderwall, TRUE, FALSE,
+ EL_MAGIC_WALL, -1, -1
+ },
+ {
+ XwonderwallB, FALSE, FALSE,
+ EL_MAGIC_WALL, ACTION_ACTIVE, -1
+ },
+ {
+ Xamoeba_1, TRUE, FALSE,
+ EL_AMOEBA_DRY, ACTION_OTHER, -1
+ },
+ {
+ Xamoeba_2, FALSE, FALSE,
+ EL_AMOEBA_DRY, ACTION_OTHER, -1
+ },
+ {
+ Xamoeba_3, FALSE, FALSE,
+ EL_AMOEBA_DRY, ACTION_OTHER, -1
+ },
+ {
+ Xamoeba_4, FALSE, FALSE,
+ EL_AMOEBA_DRY, ACTION_OTHER, -1
+ },
+ {
+ Xamoeba_5, TRUE, FALSE,
+ EL_AMOEBA_WET, ACTION_OTHER, -1
+ },
+ {
+ Xamoeba_6, FALSE, FALSE,
+ EL_AMOEBA_WET, ACTION_OTHER, -1
+ },
+ {
+ Xamoeba_7, FALSE, FALSE,
+ EL_AMOEBA_WET, ACTION_OTHER, -1
+ },
+ {
+ Xamoeba_8, FALSE, FALSE,
+ EL_AMOEBA_WET, ACTION_OTHER, -1
+ },
+ {
+ Xdoor_1, TRUE, FALSE,
+ EL_EM_GATE_1, -1, -1
+ },
+ {
+ Xdoor_2, TRUE, FALSE,
+ EL_EM_GATE_2, -1, -1
+ },
+ {
+ Xdoor_3, TRUE, FALSE,
+ EL_EM_GATE_3, -1, -1
+ },
+ {
+ Xdoor_4, TRUE, FALSE,
+ EL_EM_GATE_4, -1, -1
+ },
+ {
+ Xdoor_5, TRUE, FALSE,
+ EL_EMC_GATE_5, -1, -1
+ },
+ {
+ Xdoor_6, TRUE, FALSE,
+ EL_EMC_GATE_6, -1, -1
+ },
+ {
+ Xdoor_7, TRUE, FALSE,
+ EL_EMC_GATE_7, -1, -1
+ },
+ {
+ Xdoor_8, TRUE, FALSE,
+ EL_EMC_GATE_8, -1, -1
+ },
+ {
+ Xkey_1, TRUE, FALSE,
+ EL_EM_KEY_1, -1, -1
+ },
+ {
+ Xkey_2, TRUE, FALSE,
+ EL_EM_KEY_2, -1, -1
+ },
+ {
+ Xkey_3, TRUE, FALSE,
+ EL_EM_KEY_3, -1, -1
+ },
+ {
+ Xkey_4, TRUE, FALSE,
+ EL_EM_KEY_4, -1, -1
+ },
+ {
+ Xkey_5, TRUE, FALSE,
+ EL_EMC_KEY_5, -1, -1
+ },
+ {
+ Xkey_6, TRUE, FALSE,
+ EL_EMC_KEY_6, -1, -1
+ },
+ {
+ Xkey_7, TRUE, FALSE,
+ EL_EMC_KEY_7, -1, -1
+ },
+ {
+ Xkey_8, TRUE, FALSE,
+ EL_EMC_KEY_8, -1, -1
+ },
+ {
+ Xwind_n, TRUE, FALSE,
+ EL_BALLOON_SWITCH_UP, -1, -1
+ },
+ {
+ Xwind_e, TRUE, FALSE,
+ EL_BALLOON_SWITCH_RIGHT, -1, -1
+ },
+ {
+ Xwind_s, TRUE, FALSE,
+ EL_BALLOON_SWITCH_DOWN, -1, -1
+ },
+ {
+ Xwind_w, TRUE, FALSE,
+ EL_BALLOON_SWITCH_LEFT, -1, -1
+ },
+ {
+ Xwind_nesw, TRUE, FALSE,
+ EL_BALLOON_SWITCH_ANY, -1, -1
+ },
+ {
+ Xwind_stop, TRUE, FALSE,
+ EL_BALLOON_SWITCH_NONE, -1, -1
+ },
+ {
+ Xexit, TRUE, FALSE,
+ EL_EXIT_CLOSED, -1, -1
+ },
+ {
+ Xexit_1, TRUE, FALSE,
+ EL_EXIT_OPEN, -1, -1
+ },
+ {
+ Xexit_2, FALSE, FALSE,
+ EL_EXIT_OPEN, -1, -1
+ },
+ {
+ Xexit_3, FALSE, FALSE,
+ EL_EXIT_OPEN, -1, -1
+ },
+ {
+ Xdynamite, TRUE, FALSE,
+ EL_DYNAMITE, -1, -1
+ },
+ {
+ Ydynamite_eat, FALSE, FALSE,
+ EL_DYNAMITE, ACTION_COLLECTING, -1
+ },
+ {
+ Xdynamite_1, TRUE, FALSE,
+ EL_DYNAMITE_ACTIVE, -1, -1
+ },
+ {
+ Xdynamite_2, FALSE, FALSE,
+ EL_DYNAMITE_ACTIVE, -1, -1
+ },
+ {
+ Xdynamite_3, FALSE, FALSE,
+ EL_DYNAMITE_ACTIVE, -1, -1
+ },
+ {
+ Xdynamite_4, FALSE, FALSE,
+ EL_DYNAMITE_ACTIVE, -1, -1
+ },
+ {
+ Xbumper, TRUE, FALSE,
+ EL_EMC_SPRING_BUMPER, -1, -1
+ },
+ {
+ XbumperB, FALSE, FALSE,
+ EL_EMC_SPRING_BUMPER, ACTION_ACTIVE, -1
+ },
+ {
+ Xwheel, TRUE, FALSE,
+ EL_ROBOT_WHEEL, -1, -1
+ },
+ {
+ XwheelB, FALSE, FALSE,
+ EL_ROBOT_WHEEL, ACTION_ACTIVE, -1
+ },
+ {
+ Xswitch, TRUE, FALSE,
+ EL_EMC_MAGIC_BALL_SWITCH, -1, -1
+ },
+ {
+ XswitchB, FALSE, FALSE,
+ EL_EMC_MAGIC_BALL_SWITCH, ACTION_ACTIVE, -1
+ },
+ {
+ Xsand, TRUE, FALSE,
+ EL_QUICKSAND_EMPTY, -1, -1
+ },
+ {
+ Xsand_stone, TRUE, FALSE,
+ EL_QUICKSAND_FULL, -1, -1
+ },
+ {
+ Xsand_stonein_1, FALSE, FALSE,
+ EL_ROCK, ACTION_FILLING, -1
+ },
+ {
+ Xsand_stonein_2, FALSE, FALSE,
+ EL_ROCK, ACTION_FILLING, -1
+ },
+ {
+ Xsand_stonein_3, FALSE, FALSE,
+ EL_ROCK, ACTION_FILLING, -1
+ },
+ {
+ Xsand_stonein_4, FALSE, FALSE,
+ EL_ROCK, ACTION_FILLING, -1
+ },
+ {
+ Xsand_stonesand_1, FALSE, FALSE,
+ EL_QUICKSAND_FULL, -1, -1
+ },
+ {
+ Xsand_stonesand_2, FALSE, FALSE,
+ EL_QUICKSAND_FULL, -1, -1
+ },
+ {
+ Xsand_stonesand_3, FALSE, FALSE,
+ EL_QUICKSAND_FULL, -1, -1
+ },
+ {
+ Xsand_stonesand_4, FALSE, FALSE,
+ EL_QUICKSAND_FULL, -1, -1
+ },
+ {
+ Xsand_stoneout_1, FALSE, FALSE,
+ EL_ROCK, ACTION_EMPTYING, -1
+ },
+ {
+ Xsand_stoneout_2, FALSE, FALSE,
+ EL_ROCK, ACTION_EMPTYING, -1
+ },
+ {
+ Xsand_sandstone_1, FALSE, FALSE,
+ EL_QUICKSAND_FULL, -1, -1
+ },
+ {
+ Xsand_sandstone_2, FALSE, FALSE,
+ EL_QUICKSAND_FULL, -1, -1
+ },
+ {
+ Xsand_sandstone_3, FALSE, FALSE,
+ EL_QUICKSAND_FULL, -1, -1
+ },
+ {
+ Xsand_sandstone_4, FALSE, FALSE,
+ EL_QUICKSAND_FULL, -1, -1
+ },
+ {
+ Xplant, TRUE, FALSE,
+ EL_EMC_PLANT, -1, -1
+ },
+ {
+ Yplant, FALSE, FALSE,
+ EL_EMC_PLANT, -1, -1
+ },
+ {
+ Xlenses, TRUE, FALSE,
+ EL_EMC_LENSES, -1, -1
+ },
+ {
+ Xmagnify, TRUE, FALSE,
+ EL_EMC_MAGNIFIER, -1, -1
+ },
+ {
+ Xdripper, TRUE, FALSE,
+ EL_EMC_DRIPPER, -1, -1
+ },
+ {
+ XdripperB, FALSE, FALSE,
+ EL_EMC_DRIPPER, ACTION_ACTIVE, -1
+ },
+ {
+ Xfake_blank, TRUE, FALSE,
+ EL_INVISIBLE_WALL, -1, -1
+ },
+ {
+ Xfake_blankB, FALSE, FALSE,
+ EL_INVISIBLE_WALL, ACTION_ACTIVE, -1
+ },
+ {
+ Xfake_grass, TRUE, FALSE,
+ EL_EMC_FAKE_GRASS, -1, -1
+ },
+ {
+ Xfake_grassB, FALSE, FALSE,
+ EL_EMC_FAKE_GRASS, ACTION_ACTIVE, -1
+ },
+ {
+ Xfake_door_1, TRUE, FALSE,
+ EL_EM_GATE_1_GRAY, -1, -1
+ },
+ {
+ Xfake_door_2, TRUE, FALSE,
+ EL_EM_GATE_2_GRAY, -1, -1
+ },
+ {
+ Xfake_door_3, TRUE, FALSE,
+ EL_EM_GATE_3_GRAY, -1, -1
+ },
+ {
+ Xfake_door_4, TRUE, FALSE,
+ EL_EM_GATE_4_GRAY, -1, -1
+ },
+ {
+ Xfake_door_5, TRUE, FALSE,
+ EL_EMC_GATE_5_GRAY, -1, -1
+ },
+ {
+ Xfake_door_6, TRUE, FALSE,
+ EL_EMC_GATE_6_GRAY, -1, -1
+ },
+ {
+ Xfake_door_7, TRUE, FALSE,
+ EL_EMC_GATE_7_GRAY, -1, -1
+ },
+ {
+ Xfake_door_8, TRUE, FALSE,
+ EL_EMC_GATE_8_GRAY, -1, -1
+ },
+ {
+ Xfake_acid_1, TRUE, FALSE,
+ EL_EMC_FAKE_ACID, -1, -1
+ },
+ {
+ Xfake_acid_2, FALSE, FALSE,
+ EL_EMC_FAKE_ACID, -1, -1
+ },
+ {
+ Xfake_acid_3, FALSE, FALSE,
+ EL_EMC_FAKE_ACID, -1, -1
+ },
+ {
+ Xfake_acid_4, FALSE, FALSE,
+ EL_EMC_FAKE_ACID, -1, -1
+ },
+ {
+ Xfake_acid_5, FALSE, FALSE,
+ EL_EMC_FAKE_ACID, -1, -1
+ },
+ {
+ Xfake_acid_6, FALSE, FALSE,
+ EL_EMC_FAKE_ACID, -1, -1
+ },
+ {
+ Xfake_acid_7, FALSE, FALSE,
+ EL_EMC_FAKE_ACID, -1, -1
+ },
+ {
+ Xfake_acid_8, FALSE, FALSE,
+ EL_EMC_FAKE_ACID, -1, -1
+ },
+ {
+ Xsteel_1, TRUE, FALSE,
+ EL_STEELWALL, -1, -1
+ },
+ {
+ Xsteel_2, TRUE, FALSE,
+ EL_EMC_STEELWALL_2, -1, -1
+ },
+ {
+ Xsteel_3, TRUE, FALSE,
+ EL_EMC_STEELWALL_3, -1, -1
+ },
+ {
+ Xsteel_4, TRUE, FALSE,
+ EL_EMC_STEELWALL_4, -1, -1
+ },
+ {
+ Xwall_1, TRUE, FALSE,
+ EL_WALL, -1, -1
+ },
+ {
+ Xwall_2, TRUE, FALSE,
+ EL_EMC_WALL_14, -1, -1
+ },
+ {
+ Xwall_3, TRUE, FALSE,
+ EL_EMC_WALL_15, -1, -1
+ },
+ {
+ Xwall_4, TRUE, FALSE,
+ EL_EMC_WALL_16, -1, -1
+ },
+ {
+ Xround_wall_1, TRUE, FALSE,
+ EL_WALL_SLIPPERY, -1, -1
+ },
+ {
+ Xround_wall_2, TRUE, FALSE,
+ EL_EMC_WALL_SLIPPERY_2, -1, -1
+ },
+ {
+ Xround_wall_3, TRUE, FALSE,
+ EL_EMC_WALL_SLIPPERY_3, -1, -1
+ },
+ {
+ Xround_wall_4, TRUE, FALSE,
+ EL_EMC_WALL_SLIPPERY_4, -1, -1
+ },
+ {
+ Xdecor_1, TRUE, FALSE,
+ EL_EMC_WALL_8, -1, -1
+ },
+ {
+ Xdecor_2, TRUE, FALSE,
+ EL_EMC_WALL_6, -1, -1
+ },
+ {
+ Xdecor_3, TRUE, FALSE,
+ EL_EMC_WALL_4, -1, -1
+ },
+ {
+ Xdecor_4, TRUE, FALSE,
+ EL_EMC_WALL_7, -1, -1
+ },
+ {
+ Xdecor_5, TRUE, FALSE,
+ EL_EMC_WALL_5, -1, -1
+ },
+ {
+ Xdecor_6, TRUE, FALSE,
+ EL_EMC_WALL_9, -1, -1
+ },
+ {
+ Xdecor_7, TRUE, FALSE,
+ EL_EMC_WALL_10, -1, -1
+ },
+ {
+ Xdecor_8, TRUE, FALSE,
+ EL_EMC_WALL_1, -1, -1
+ },
+ {
+ Xdecor_9, TRUE, FALSE,
+ EL_EMC_WALL_2, -1, -1
+ },
+ {
+ Xdecor_10, TRUE, FALSE,
+ EL_EMC_WALL_3, -1, -1
+ },
+ {
+ Xdecor_11, TRUE, FALSE,
+ EL_EMC_WALL_11, -1, -1
+ },
+ {
+ Xdecor_12, TRUE, FALSE,
+ EL_EMC_WALL_12, -1, -1
+ },
+ {
+ Xalpha_0, TRUE, FALSE,
+ EL_CHAR('0'), -1, -1
+ },
+ {
+ Xalpha_1, TRUE, FALSE,
+ EL_CHAR('1'), -1, -1
+ },
+ {
+ Xalpha_2, TRUE, FALSE,
+ EL_CHAR('2'), -1, -1
+ },
+ {
+ Xalpha_3, TRUE, FALSE,
+ EL_CHAR('3'), -1, -1
+ },
+ {
+ Xalpha_4, TRUE, FALSE,
+ EL_CHAR('4'), -1, -1
+ },
+ {
+ Xalpha_5, TRUE, FALSE,
+ EL_CHAR('5'), -1, -1
+ },
+ {
+ Xalpha_6, TRUE, FALSE,
+ EL_CHAR('6'), -1, -1
+ },
+ {
+ Xalpha_7, TRUE, FALSE,
+ EL_CHAR('7'), -1, -1
+ },
+ {
+ Xalpha_8, TRUE, FALSE,
+ EL_CHAR('8'), -1, -1
+ },
+ {
+ Xalpha_9, TRUE, FALSE,
+ EL_CHAR('9'), -1, -1
+ },
+ {
+ Xalpha_excla, TRUE, FALSE,
+ EL_CHAR('!'), -1, -1
+ },
+ {
+ Xalpha_quote, TRUE, FALSE,
+ EL_CHAR('"'), -1, -1
+ },
+ {
+ Xalpha_comma, TRUE, FALSE,
+ EL_CHAR(','), -1, -1
+ },
+ {
+ Xalpha_minus, TRUE, FALSE,
+ EL_CHAR('-'), -1, -1
+ },
+ {
+ Xalpha_perio, TRUE, FALSE,
+ EL_CHAR('.'), -1, -1
+ },
+ {
+ Xalpha_colon, TRUE, FALSE,
+ EL_CHAR(':'), -1, -1
+ },
+ {
+ Xalpha_quest, TRUE, FALSE,
+ EL_CHAR('?'), -1, -1
+ },
+ {
+ Xalpha_a, TRUE, FALSE,
+ EL_CHAR('A'), -1, -1
+ },
+ {
+ Xalpha_b, TRUE, FALSE,
+ EL_CHAR('B'), -1, -1
+ },
+ {
+ Xalpha_c, TRUE, FALSE,
+ EL_CHAR('C'), -1, -1
+ },
+ {
+ Xalpha_d, TRUE, FALSE,
+ EL_CHAR('D'), -1, -1
+ },
+ {
+ Xalpha_e, TRUE, FALSE,
+ EL_CHAR('E'), -1, -1
+ },
+ {
+ Xalpha_f, TRUE, FALSE,
+ EL_CHAR('F'), -1, -1
+ },
+ {
+ Xalpha_g, TRUE, FALSE,
+ EL_CHAR('G'), -1, -1
+ },
+ {
+ Xalpha_h, TRUE, FALSE,
+ EL_CHAR('H'), -1, -1
+ },
+ {
+ Xalpha_i, TRUE, FALSE,
+ EL_CHAR('I'), -1, -1
+ },
+ {
+ Xalpha_j, TRUE, FALSE,
+ EL_CHAR('J'), -1, -1
+ },
+ {
+ Xalpha_k, TRUE, FALSE,
+ EL_CHAR('K'), -1, -1
+ },
+ {
+ Xalpha_l, TRUE, FALSE,
+ EL_CHAR('L'), -1, -1
+ },
+ {
+ Xalpha_m, TRUE, FALSE,
+ EL_CHAR('M'), -1, -1
+ },
+ {
+ Xalpha_n, TRUE, FALSE,
+ EL_CHAR('N'), -1, -1
+ },
+ {
+ Xalpha_o, TRUE, FALSE,
+ EL_CHAR('O'), -1, -1
+ },
+ {
+ Xalpha_p, TRUE, FALSE,
+ EL_CHAR('P'), -1, -1
+ },
+ {
+ Xalpha_q, TRUE, FALSE,
+ EL_CHAR('Q'), -1, -1
+ },
+ {
+ Xalpha_r, TRUE, FALSE,
+ EL_CHAR('R'), -1, -1
+ },
+ {
+ Xalpha_s, TRUE, FALSE,
+ EL_CHAR('S'), -1, -1
+ },
+ {
+ Xalpha_t, TRUE, FALSE,
+ EL_CHAR('T'), -1, -1
+ },
+ {
+ Xalpha_u, TRUE, FALSE,
+ EL_CHAR('U'), -1, -1
+ },
+ {
+ Xalpha_v, TRUE, FALSE,
+ EL_CHAR('V'), -1, -1
+ },
+ {
+ Xalpha_w, TRUE, FALSE,
+ EL_CHAR('W'), -1, -1
+ },
+ {
+ Xalpha_x, TRUE, FALSE,
+ EL_CHAR('X'), -1, -1
+ },
+ {
+ Xalpha_y, TRUE, FALSE,
+ EL_CHAR('Y'), -1, -1
+ },
+ {
+ Xalpha_z, TRUE, FALSE,
+ EL_CHAR('Z'), -1, -1
+ },
+ {
+ Xalpha_arrow_e, TRUE, FALSE,
+ EL_CHAR('>'), -1, -1
+ },
+ {
+ Xalpha_arrow_w, TRUE, FALSE,
+ EL_CHAR('<'), -1, -1
+ },
+ {
+ Xalpha_copyr, TRUE, FALSE,
+ EL_CHAR('©'), -1, -1
+ },
+ {
+ Xalpha_copyr, TRUE, FALSE,
+ EL_CHAR('©'), -1, -1
+ },
+
+ {
+ Xboom_bug, FALSE, FALSE,
+ EL_BUG, ACTION_EXPLODING, -1
+ },
+ {
+ Xboom_bomb, FALSE, FALSE,
+ EL_BOMB, ACTION_EXPLODING, -1
+ },
+ {
+ Xboom_android, FALSE, FALSE,
+ EL_EMC_ANDROID, ACTION_OTHER, -1
+ },
+ {
+ Xboom_1, FALSE, FALSE,
+ EL_DEFAULT, ACTION_EXPLODING, -1
+ },
+ {
+ Xboom_2, FALSE, FALSE,
+ EL_DEFAULT, ACTION_EXPLODING, -1
+ },
+ {
+ Znormal, FALSE, FALSE,
+ EL_EMPTY, -1, -1
+ },
+ {
+ Zdynamite, FALSE, FALSE,
+ EL_EMPTY, -1, -1
+ },
+ {
+ Zplayer, FALSE, FALSE,
+ EL_EMPTY, -1, -1
+ },
+ {
+ ZBORDER, FALSE, FALSE,
+ EL_EMPTY, -1, -1
+ },
+
+ {
+ -1, FALSE, FALSE,
+ -1, -1, -1
+ }
+};
+
+static struct Mapping_EM_to_RND_player
+{
+ int action_em;
+ int player_nr;
+
+ int element_rnd;
+ int action;
+ int direction;
+}
+em_player_mapping_list[] =
+{
+ {
+ SPR_walk + 0, 0,
+ EL_PLAYER_1, ACTION_MOVING, MV_BIT_UP,
+ },
+ {
+ SPR_walk + 1, 0,
+ EL_PLAYER_1, ACTION_MOVING, MV_BIT_RIGHT,
+ },
+ {
+ SPR_walk + 2, 0,
+ EL_PLAYER_1, ACTION_MOVING, MV_BIT_DOWN,
+ },
+ {
+ SPR_walk + 3, 0,
+ EL_PLAYER_1, ACTION_MOVING, MV_BIT_LEFT,
+ },
+ {
+ SPR_push + 0, 0,
+ EL_PLAYER_1, ACTION_PUSHING, MV_BIT_UP,
+ },
+ {
+ SPR_push + 1, 0,
+ EL_PLAYER_1, ACTION_PUSHING, MV_BIT_RIGHT,
+ },
+ {
+ SPR_push + 2, 0,
+ EL_PLAYER_1, ACTION_PUSHING, MV_BIT_DOWN,
+ },
+ {
+ SPR_push + 3, 0,
+ EL_PLAYER_1, ACTION_PUSHING, MV_BIT_LEFT,
+ },
+ {
+ SPR_spray + 0, 0,
+ EL_PLAYER_1, ACTION_SNAPPING, MV_BIT_UP,
+ },
+ {
+ SPR_spray + 1, 0,
+ EL_PLAYER_1, ACTION_SNAPPING, MV_BIT_RIGHT,
+ },
+ {
+ SPR_spray + 2, 0,
+ EL_PLAYER_1, ACTION_SNAPPING, MV_BIT_DOWN,
+ },
+ {
+ SPR_spray + 3, 0,
+ EL_PLAYER_1, ACTION_SNAPPING, MV_BIT_LEFT,
+ },
+ {
+ SPR_walk + 0, 1,
+ EL_PLAYER_2, ACTION_MOVING, MV_BIT_UP,
+ },
+ {
+ SPR_walk + 1, 1,
+ EL_PLAYER_2, ACTION_MOVING, MV_BIT_RIGHT,
+ },
+ {
+ SPR_walk + 2, 1,
+ EL_PLAYER_2, ACTION_MOVING, MV_BIT_DOWN,
+ },
+ {
+ SPR_walk + 3, 1,
+ EL_PLAYER_2, ACTION_MOVING, MV_BIT_LEFT,
+ },
+ {
+ SPR_push + 0, 1,
+ EL_PLAYER_2, ACTION_PUSHING, MV_BIT_UP,
+ },
+ {
+ SPR_push + 1, 1,
+ EL_PLAYER_2, ACTION_PUSHING, MV_BIT_RIGHT,
+ },
+ {
+ SPR_push + 2, 1,
+ EL_PLAYER_2, ACTION_PUSHING, MV_BIT_DOWN,
+ },
+ {
+ SPR_push + 3, 1,
+ EL_PLAYER_2, ACTION_PUSHING, MV_BIT_LEFT,
+ },
+ {
+ SPR_spray + 0, 1,
+ EL_PLAYER_2, ACTION_SNAPPING, MV_BIT_UP,
+ },
+ {
+ SPR_spray + 1, 1,
+ EL_PLAYER_2, ACTION_SNAPPING, MV_BIT_RIGHT,
+ },
+ {
+ SPR_spray + 2, 1,
+ EL_PLAYER_2, ACTION_SNAPPING, MV_BIT_DOWN,
+ },
+ {
+ SPR_spray + 3, 1,
+ EL_PLAYER_2, ACTION_SNAPPING, MV_BIT_LEFT,
+ },
+ {
+ SPR_still, 0,
+ EL_PLAYER_1, ACTION_DEFAULT, -1,
+ },
+ {
+ SPR_still, 1,
+ EL_PLAYER_2, ACTION_DEFAULT, -1,
+ },
+
+ {
+ -1, -1,
+ -1, -1, -1