X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Finit.c;h=8c391363250de573fbed086afb9b39ed25c448a5;hb=aff866268cfa75327030bedcbf64a507fdc3fac2;hp=9b553f1e419672c5990263cd805a235cb1ba70cf;hpb=8afc6199767a6fcb7451efd2b3d5b070f6c99efb;p=rocksndiamonds.git diff --git a/src/init.c b/src/init.c index 9b553f1e..8c391363 100644 --- a/src/init.c +++ b/src/init.c @@ -556,7 +556,7 @@ void InitGadgets() void InitElementInfo() { - int i; + int i, j; static struct { @@ -565,31 +565,31 @@ void InitElementInfo() } element_to_graphic[] = { - { EL_LEERRAUM, GFX_LEERRAUM }, - { EL_ERDREICH, GFX_ERDREICH }, - { EL_MAUERWERK, GFX_MAUERWERK }, - { EL_FELSBODEN, GFX_FELSBODEN }, - { EL_FELSBROCKEN, GFX_FELSBROCKEN }, - { EL_SCHLUESSEL, GFX_SCHLUESSEL }, - { EL_EDELSTEIN, GFX_EDELSTEIN }, - { EL_AUSGANG_ZU, GFX_AUSGANG_ZU }, + { EL_EMPTY, GFX_LEERRAUM }, + { EL_SAND, GFX_ERDREICH }, + { EL_WALL, GFX_MAUERWERK }, + { EL_WALL_CRUMBLED, GFX_FELSBODEN }, + { EL_ROCK, GFX_FELSBROCKEN }, + { EL_KEY, GFX_SCHLUESSEL }, + { EL_EMERALD, GFX_EDELSTEIN }, + { EL_EXIT_CLOSED, GFX_AUSGANG_ZU }, { EL_AUSGANG_ACT, GFX_AUSGANG_ACT }, - { EL_AUSGANG_AUF, GFX_AUSGANG_AUF }, - { EL_SPIELFIGUR, GFX_SPIELFIGUR }, + { EL_EXIT_OPEN, GFX_AUSGANG_AUF }, + { EL_PLAYER, GFX_SPIELFIGUR }, { EL_SPIELER1, GFX_SPIELER1 }, { EL_SPIELER2, GFX_SPIELER2 }, { EL_SPIELER3, GFX_SPIELER3 }, { EL_SPIELER4, GFX_SPIELER4 }, - { EL_KAEFER, GFX_KAEFER }, - { EL_KAEFER_RIGHT, GFX_KAEFER_RIGHT }, - { EL_KAEFER_UP, GFX_KAEFER_UP }, - { EL_KAEFER_LEFT, GFX_KAEFER_LEFT }, - { EL_KAEFER_DOWN, GFX_KAEFER_DOWN }, - { EL_FLIEGER, GFX_FLIEGER }, - { EL_FLIEGER_RIGHT, GFX_FLIEGER_RIGHT }, - { EL_FLIEGER_UP, GFX_FLIEGER_UP }, - { EL_FLIEGER_LEFT, GFX_FLIEGER_LEFT }, - { EL_FLIEGER_DOWN, GFX_FLIEGER_DOWN }, + { EL_BUG, GFX_KAEFER }, + { EL_BUG_RIGHT, GFX_KAEFER_RIGHT }, + { EL_BUG_UP, GFX_KAEFER_UP }, + { EL_BUG_LEFT, GFX_KAEFER_LEFT }, + { EL_BUG_DOWN, GFX_KAEFER_DOWN }, + { EL_SPACESHIP, GFX_FLIEGER }, + { EL_SPACESHIP_RIGHT, GFX_FLIEGER_RIGHT }, + { EL_SPACESHIP_UP, GFX_FLIEGER_UP }, + { EL_SPACESHIP_LEFT, GFX_FLIEGER_LEFT }, + { EL_SPACESHIP_DOWN, GFX_FLIEGER_DOWN }, { EL_BUTTERFLY, GFX_BUTTERFLY }, { EL_BUTTERFLY_RIGHT, GFX_BUTTERFLY_RIGHT }, { EL_BUTTERFLY_UP, GFX_BUTTERFLY_UP }, @@ -600,78 +600,78 @@ void InitElementInfo() { EL_FIREFLY_UP, GFX_FIREFLY_UP }, { EL_FIREFLY_LEFT, GFX_FIREFLY_LEFT }, { EL_FIREFLY_DOWN, GFX_FIREFLY_DOWN }, - { EL_MAMPFER, GFX_MAMPFER }, + { EL_YAMYAM, GFX_MAMPFER }, { EL_ROBOT, GFX_ROBOT }, - { EL_BETON, GFX_BETON }, - { EL_DIAMANT, GFX_DIAMANT }, - { EL_MORAST_LEER, GFX_MORAST_LEER }, - { EL_MORAST_VOLL, GFX_MORAST_VOLL }, + { EL_STEELWALL, GFX_BETON }, + { EL_DIAMOND, GFX_DIAMANT }, + { EL_QUICKSAND_EMPTY, GFX_MORAST_LEER }, + { EL_QUICKSAND_FULL, GFX_MORAST_VOLL }, { EL_QUICKSAND_EMPTYING, GFX_MORAST_LEER }, - { EL_TROPFEN, GFX_TROPFEN }, - { EL_BOMBE, GFX_BOMBE }, - { EL_MAGIC_WALL_OFF, GFX_MAGIC_WALL_OFF }, + { EL_AMOEBA_DROP, GFX_TROPFEN }, + { EL_BOMB, GFX_BOMBE }, + { EL_MAGIC_WALL, GFX_MAGIC_WALL_OFF }, { EL_MAGIC_WALL_EMPTY, GFX_MAGIC_WALL_EMPTY }, { EL_MAGIC_WALL_EMPTYING, GFX_MAGIC_WALL_EMPTY }, { EL_MAGIC_WALL_FULL, GFX_MAGIC_WALL_FULL }, { EL_MAGIC_WALL_DEAD, GFX_MAGIC_WALL_DEAD }, - { EL_SALZSAEURE, GFX_SALZSAEURE }, - { EL_AMOEBE_TOT, GFX_AMOEBE_TOT }, - { EL_AMOEBE_NASS, GFX_AMOEBE_NASS }, - { EL_AMOEBE_NORM, GFX_AMOEBE_NORM }, - { EL_AMOEBE_VOLL, GFX_AMOEBE_VOLL }, - { EL_AMOEBE_BD, GFX_AMOEBE_BD }, + { EL_ACID, GFX_SALZSAEURE }, + { EL_AMOEBA_DEAD, GFX_AMOEBE_TOT }, + { EL_AMOEBA_WET, GFX_AMOEBE_NASS }, + { EL_AMOEBA_DRY, GFX_AMOEBE_NORM }, + { EL_AMOEBA_FULL, GFX_AMOEBE_VOLL }, + { EL_BD_AMOEBA, GFX_AMOEBE_BD }, { EL_AMOEBA2DIAM, GFX_AMOEBA2DIAM }, { EL_AMOEBA_DRIPPING, GFX_AMOEBE_NASS }, - { EL_KOKOSNUSS, GFX_KOKOSNUSS }, - { EL_LIFE, GFX_LIFE }, - { EL_LIFE_ASYNC, GFX_LIFE_ASYNC }, + { EL_NUT, GFX_KOKOSNUSS }, + { EL_GAMEOFLIFE, GFX_LIFE }, + { EL_BIOMAZE, GFX_LIFE_ASYNC }, { EL_DYNAMITE_ACTIVE, GFX_DYNAMIT }, { EL_BADEWANNE, GFX_BADEWANNE }, - { EL_BADEWANNE1, GFX_BADEWANNE1 }, - { EL_BADEWANNE2, GFX_BADEWANNE2 }, - { EL_BADEWANNE3, GFX_BADEWANNE3 }, - { EL_BADEWANNE4, GFX_BADEWANNE4 }, - { EL_BADEWANNE5, GFX_BADEWANNE5 }, - { EL_ABLENK_AUS, GFX_ABLENK_AUS }, - { EL_ABLENK_EIN, GFX_ABLENK_EIN }, - { EL_SCHLUESSEL1, GFX_SCHLUESSEL1 }, - { EL_SCHLUESSEL2, GFX_SCHLUESSEL2 }, - { EL_SCHLUESSEL3, GFX_SCHLUESSEL3 }, - { EL_SCHLUESSEL4, GFX_SCHLUESSEL4 }, - { EL_PFORTE1, GFX_PFORTE1 }, - { EL_PFORTE2, GFX_PFORTE2 }, - { EL_PFORTE3, GFX_PFORTE3 }, - { EL_PFORTE4, GFX_PFORTE4 }, - { EL_PFORTE1X, GFX_PFORTE1X }, - { EL_PFORTE2X, GFX_PFORTE2X }, - { EL_PFORTE3X, GFX_PFORTE3X }, - { EL_PFORTE4X, GFX_PFORTE4X }, - { EL_DYNAMITE_INACTIVE, GFX_DYNAMIT_AUS }, + { EL_ACIDPOOL_TOPLEFT, GFX_BADEWANNE1 }, + { EL_ACIDPOOL_TOPRIGHT, GFX_BADEWANNE2 }, + { EL_ACIDPOOL_BOTTOMLEFT, GFX_BADEWANNE3 }, + { EL_ACIDPOOL_BOTTOM, GFX_BADEWANNE4 }, + { EL_ACIDPOOL_BOTTOMRIGHT, GFX_BADEWANNE5 }, + { EL_ROBOT_WHEEL, GFX_ABLENK_AUS }, + { EL_ROBOT_WHEEL_ACTIVE, GFX_ABLENK_EIN }, + { EL_KEY1, GFX_SCHLUESSEL1 }, + { EL_KEY2, GFX_SCHLUESSEL2 }, + { EL_KEY3, GFX_SCHLUESSEL3 }, + { EL_KEY4, GFX_SCHLUESSEL4 }, + { EL_GATE1, GFX_PFORTE1 }, + { EL_GATE2, GFX_PFORTE2 }, + { EL_GATE3, GFX_PFORTE3 }, + { EL_GATE4, GFX_PFORTE4 }, + { EL_GATE1_GRAY, GFX_PFORTE1X }, + { EL_GATE2_GRAY, GFX_PFORTE2X }, + { EL_GATE3_GRAY, GFX_PFORTE3X }, + { EL_GATE4_GRAY, GFX_PFORTE4X }, + { EL_DYNAMITE, GFX_DYNAMIT_AUS }, { EL_PACMAN, GFX_PACMAN }, { EL_PACMAN_RIGHT, GFX_PACMAN_RIGHT }, { EL_PACMAN_UP, GFX_PACMAN_UP }, { EL_PACMAN_LEFT, GFX_PACMAN_LEFT }, { EL_PACMAN_DOWN, GFX_PACMAN_DOWN }, - { EL_UNSICHTBAR, GFX_UNSICHTBAR }, - { EL_ERZ_EDEL, GFX_ERZ_EDEL }, - { EL_ERZ_DIAM, GFX_ERZ_DIAM }, - { EL_BIRNE_AUS, GFX_BIRNE_AUS }, - { EL_BIRNE_EIN, GFX_BIRNE_EIN }, - { EL_ZEIT_VOLL, GFX_ZEIT_VOLL }, - { EL_ZEIT_LEER, GFX_ZEIT_LEER }, + { EL_INVISIBLE_WALL, GFX_UNSICHTBAR }, + { EL_WALL_EMERALD, GFX_ERZ_EDEL }, + { EL_WALL_DIAMOND, GFX_ERZ_DIAM }, + { EL_LAMP, GFX_BIRNE_AUS }, + { EL_LAMP_ACTIVE, GFX_BIRNE_EIN }, + { EL_TIME_ORB_FULL, GFX_ZEIT_VOLL }, + { EL_TIME_ORB_EMPTY, GFX_ZEIT_LEER }, { EL_MAUER_LEBT, GFX_MAUER_LEBT }, { EL_MAUER_X, GFX_MAUER_X }, { EL_MAUER_Y, GFX_MAUER_Y }, { EL_MAUER_XY, GFX_MAUER_XY }, { EL_EDELSTEIN_BD, GFX_EDELSTEIN_BD }, - { EL_EDELSTEIN_GELB, GFX_EDELSTEIN_GELB }, - { EL_EDELSTEIN_ROT, GFX_EDELSTEIN_ROT }, - { EL_EDELSTEIN_LILA, GFX_EDELSTEIN_LILA }, - { EL_ERZ_EDEL_BD, GFX_ERZ_EDEL_BD }, - { EL_ERZ_EDEL_GELB, GFX_ERZ_EDEL_GELB }, - { EL_ERZ_EDEL_ROT, GFX_ERZ_EDEL_ROT }, - { EL_ERZ_EDEL_LILA, GFX_ERZ_EDEL_LILA }, - { EL_MAMPFER2, GFX_MAMPFER2 }, + { EL_EDELSTEIN_YELLOW, GFX_EDELSTEIN_GELB }, + { EL_EDELSTEIN_RED, GFX_EDELSTEIN_ROT }, + { EL_EDELSTEIN_PURPLE, GFX_EDELSTEIN_LILA }, + { EL_WALL_BD_DIAMOND, GFX_ERZ_EDEL_BD }, + { EL_WALL_EMERALD_YELLOW, GFX_ERZ_EDEL_GELB }, + { EL_WALL_EMERALD_RED, GFX_ERZ_EDEL_ROT }, + { EL_WALL_EMERALD_PURPLE, GFX_ERZ_EDEL_LILA }, + { EL_DARK_YAMYAM, GFX_MAMPFER2 }, { EL_MAGIC_WALL_BD_OFF, GFX_MAGIC_WALL_BD_OFF }, { EL_MAGIC_WALL_BD_EMPTY, GFX_MAGIC_WALL_BD_EMPTY }, { EL_MAGIC_WALL_BD_EMPTYING, GFX_MAGIC_WALL_BD_EMPTY }, @@ -706,10 +706,10 @@ void InitElementInfo() { EL_EM_GATE_2, GFX_EM_GATE_2 }, { EL_EM_GATE_3, GFX_EM_GATE_3 }, { EL_EM_GATE_4, GFX_EM_GATE_4 }, - { EL_EM_GATE_1X, GFX_EM_GATE_1X }, - { EL_EM_GATE_2X, GFX_EM_GATE_2X }, - { EL_EM_GATE_3X, GFX_EM_GATE_3X }, - { EL_EM_GATE_4X, GFX_EM_GATE_4X }, + { EL_EM_GATE1_GRAY, GFX_EM_GATE_1X }, + { EL_EM_GATE2_GRAY, GFX_EM_GATE_2X }, + { EL_EM_GATE3_GRAY, GFX_EM_GATE_3X }, + { EL_EM_GATE4_GRAY, GFX_EM_GATE_4X }, { EL_EM_KEY_1_FILE, GFX_EM_KEY_1 }, { EL_EM_KEY_2_FILE, GFX_EM_KEY_2 }, { EL_EM_KEY_3_FILE, GFX_EM_KEY_3 }, @@ -824,12 +824,101 @@ void InitElementInfo() { -1, -1 } }; + static struct + { + int element; + int graphic_left; + int graphic_right; + int graphic_up; + int graphic_down; + } + element_to_direction_graphic[] = + { + { + EL_SPACESHIP, + IMG_SPACESHIP_LEFT, IMG_SPACESHIP_RIGHT, + IMG_SPACESHIP_UP, IMG_SPACESHIP_DOWN + }, + { + EL_BUG, + IMG_BUG_LEFT, IMG_BUG_RIGHT, + IMG_BUG_UP, IMG_BUG_DOWN + }, + { + EL_PACMAN, + IMG_PACMAN_LEFT, IMG_PACMAN_RIGHT, + IMG_PACMAN_UP, IMG_PACMAN_DOWN + }, + { + EL_SPIELER1, + IMG_PLAYER1_LEFT, IMG_PLAYER1_RIGHT, + IMG_PLAYER1_UP, IMG_PLAYER1_DOWN + }, + { + EL_SPIELER2, + IMG_PLAYER2_LEFT, IMG_PLAYER2_RIGHT, + IMG_PLAYER2_UP, IMG_PLAYER2_DOWN + }, + { + EL_SPIELER3, + IMG_PLAYER3_LEFT, IMG_PLAYER3_RIGHT, + IMG_PLAYER3_UP, IMG_PLAYER3_DOWN + }, + { + EL_SPIELER4, + IMG_PLAYER4_LEFT, IMG_PLAYER4_RIGHT, + IMG_PLAYER4_UP, IMG_PLAYER4_DOWN + }, + { + EL_SCHWEIN, + IMG_PIG_LEFT, IMG_PIG_RIGHT, + IMG_PIG_UP, IMG_PIG_DOWN + }, + { + EL_DRACHE, + IMG_DRAGON_LEFT, IMG_DRAGON_RIGHT, + IMG_DRAGON_UP, IMG_DRAGON_DOWN + }, + { + EL_MOLE, + IMG_MOLE_LEFT, IMG_MOLE_RIGHT, + IMG_MOLE_UP, IMG_MOLE_DOWN + }, + { + EL_PINGUIN, + IMG_PENGUIN_LEFT, IMG_PENGUIN_RIGHT, + IMG_PENGUIN_UP, IMG_PENGUIN_DOWN + }, + { + EL_SP_MURPHY, + IMG_SP_MURPHY_LEFT, IMG_SP_MURPHY_RIGHT, + IMG_SP_MURPHY_UP, IMG_SP_MURPHY_DOWN + }, + { + EL_SP_SNIKSNAK, + IMG_SP_SNIKSNAK_LEFT, IMG_SP_SNIKSNAK_RIGHT, + IMG_SP_SNIKSNAK_UP, IMG_SP_SNIKSNAK_DOWN + }, + { + -1, + -1, -1, + -1, -1 + } + }; + /* always start with reliable default values */ for(i=0; i -1) + { + int element = element_to_direction_graphic[i].element; + + element_info[element].direction_graphic[GFX_ACTION_DEFAULT][MV_BIT_LEFT] = + element_to_direction_graphic[i].graphic_left; + element_info[element].direction_graphic[GFX_ACTION_DEFAULT][MV_BIT_RIGHT] = + element_to_direction_graphic[i].graphic_right; + element_info[element].direction_graphic[GFX_ACTION_DEFAULT][MV_BIT_UP] = + element_to_direction_graphic[i].graphic_up; + element_info[element].direction_graphic[GFX_ACTION_DEFAULT][MV_BIT_DOWN] = + element_to_direction_graphic[i].graphic_down; + + element_info[element].has_direction_graphic[GFX_ACTION_DEFAULT] = TRUE; i++; } } @@ -877,22 +986,36 @@ static void InitGraphicInfo() /* always start with reliable default values */ new_graphic_info[i].bitmap = getBitmapFromImageID(i); - new_graphic_info[i].src_x = parameter[GFXARG_XPOS] * TILEX; - new_graphic_info[i].src_y = parameter[GFXARG_YPOS] * TILEY; - new_graphic_info[i].anim_frames = parameter[GFXARG_FRAMES]; - new_graphic_info[i].anim_delay = parameter[GFXARG_DELAY]; - new_graphic_info[i].anim_vertical = parameter[GFXARG_VERTICAL]; - new_graphic_info[i].anim_mode = - (parameter[GFXARG_PINGPONG] ? ANIM_PINGPONG : - parameter[GFXARG_REVERSE] ? ANIM_REVERSE : ANIM_NORMAL); + new_graphic_info[i].src_x = parameter[GFX_ARG_XPOS] * TILEX; + new_graphic_info[i].src_y = parameter[GFX_ARG_YPOS] * TILEY; + new_graphic_info[i].anim_frames = parameter[GFX_ARG_FRAMES]; + + new_graphic_info[i].anim_delay = parameter[GFX_ARG_DELAY]; if (new_graphic_info[i].anim_delay == 0) /* delay must be at least 1 */ new_graphic_info[i].anim_delay = 1; + + /* basically, animation can be either normal or reverse direction */ + if (parameter[GFX_ARG_REVERSE]) + new_graphic_info[i].anim_mode = ANIM_REVERSE; + else + new_graphic_info[i].anim_mode = ANIM_NORMAL; + + /* additionally, animation can be either pingpong or pingpong2 layout */ + if (parameter[GFX_ARG_PINGPONG]) + new_graphic_info[i].anim_mode |= ANIM_PINGPONG; + else if (parameter[GFX_ARG_PINGPONG2]) + new_graphic_info[i].anim_mode |= ANIM_PINGPONG2; + + /* animation synchronized with global frame counter, not move position */ + new_graphic_info[i].anim_global_sync = parameter[GFX_ARG_GLOBAL_SYNC]; + + new_graphic_info[i].anim_vertical = parameter[GFX_ARG_VERTICAL]; } #if 0 - printf("D> %d\n", image_files[GFX_BD_DIAMOND].parameter[GFXARG_NUM_FRAMES]); - printf("W> %d\n", image_files[GFX_ROBOT_WHEEL].parameter[GFXARG_NUM_FRAMES]); + printf("D> %d\n", image_files[GFX_BD_DIAMOND].parameter[GFX_ARG_NUM_FRAMES]); + printf("W> %d\n", image_files[GFX_ROBOT_WHEEL].parameter[GFX_ARG_NUM_FRAMES]); graphic_info[GFX_ABLENK].bitmap = getBitmapFromImageID(GFX_ROBOT_WHEEL); graphic_info[GFX_ABLENK].src_x = 0; @@ -924,29 +1047,29 @@ void InitElementProperties() static int ep_amoebalive[] = { - EL_AMOEBE_NASS, - EL_AMOEBE_NORM, - EL_AMOEBE_VOLL, - EL_AMOEBE_BD + EL_AMOEBA_WET, + EL_AMOEBA_DRY, + EL_AMOEBA_FULL, + EL_BD_AMOEBA }; static int ep_amoebalive_num = SIZEOF_ARRAY_INT(ep_amoebalive); static int ep_amoeboid[] = { - EL_AMOEBE_TOT, - EL_AMOEBE_NASS, - EL_AMOEBE_NORM, - EL_AMOEBE_VOLL, - EL_AMOEBE_BD + EL_AMOEBA_DEAD, + EL_AMOEBA_WET, + EL_AMOEBA_DRY, + EL_AMOEBA_FULL, + EL_BD_AMOEBA }; static int ep_amoeboid_num = SIZEOF_ARRAY_INT(ep_amoeboid); static int ep_schluessel[] = { - EL_SCHLUESSEL1, - EL_SCHLUESSEL2, - EL_SCHLUESSEL3, - EL_SCHLUESSEL4, + EL_KEY1, + EL_KEY2, + EL_KEY3, + EL_KEY4, EL_EM_KEY_1, EL_EM_KEY_2, EL_EM_KEY_3, @@ -956,14 +1079,14 @@ void InitElementProperties() static int ep_pforte[] = { - EL_PFORTE1, - EL_PFORTE2, - EL_PFORTE3, - EL_PFORTE4, - EL_PFORTE1X, - EL_PFORTE2X, - EL_PFORTE3X, - EL_PFORTE4X, + EL_GATE1, + EL_GATE2, + EL_GATE3, + EL_GATE4, + EL_GATE1_GRAY, + EL_GATE2_GRAY, + EL_GATE3_GRAY, + EL_GATE4_GRAY, EL_EM_GATE_1, EL_EM_GATE_2, EL_EM_GATE_3, @@ -996,27 +1119,27 @@ void InitElementProperties() static int ep_solid[] = { - EL_BETON, - EL_MAUERWERK, + EL_STEELWALL, + EL_WALL, EL_MAUER_LEBT, EL_MAUER_X, EL_MAUER_Y, EL_MAUER_XY, EL_BD_WALL, - EL_FELSBODEN, - EL_AUSGANG_ZU, + EL_WALL_CRUMBLED, + EL_EXIT_CLOSED, EL_AUSGANG_ACT, - EL_AUSGANG_AUF, - EL_AMOEBE_TOT, - EL_AMOEBE_NASS, - EL_AMOEBE_NORM, - EL_AMOEBE_VOLL, - EL_AMOEBE_BD, - EL_MORAST_VOLL, - EL_MORAST_LEER, + EL_EXIT_OPEN, + EL_AMOEBA_DEAD, + EL_AMOEBA_WET, + EL_AMOEBA_DRY, + EL_AMOEBA_FULL, + EL_BD_AMOEBA, + EL_QUICKSAND_FULL, + EL_QUICKSAND_EMPTY, EL_QUICKSAND_FILLING, EL_QUICKSAND_EMPTYING, - EL_MAGIC_WALL_OFF, + EL_MAGIC_WALL, EL_MAGIC_WALL_EMPTY, EL_MAGIC_WALL_EMPTYING, EL_MAGIC_WALL_FILLING, @@ -1028,13 +1151,13 @@ void InitElementProperties() EL_MAGIC_WALL_BD_FULL, EL_MAGIC_WALL_BD_FILLING, EL_MAGIC_WALL_BD_DEAD, - EL_LIFE, - EL_LIFE_ASYNC, - EL_BADEWANNE1, - EL_BADEWANNE2, - EL_BADEWANNE3, - EL_BADEWANNE4, - EL_BADEWANNE5, + EL_GAMEOFLIFE, + EL_BIOMAZE, + EL_ACIDPOOL_TOPLEFT, + EL_ACIDPOOL_TOPRIGHT, + EL_ACIDPOOL_BOTTOMLEFT, + EL_ACIDPOOL_BOTTOM, + EL_ACIDPOOL_BOTTOMRIGHT, EL_SP_CHIP_SINGLE, EL_SP_CHIP_LEFT, EL_SP_CHIP_RIGHT, @@ -1101,14 +1224,14 @@ void InitElementProperties() EL_CRYSTAL, EL_WALL_PEARL, EL_WALL_CRYSTAL, - EL_PFORTE1, - EL_PFORTE2, - EL_PFORTE3, - EL_PFORTE4, - EL_PFORTE1X, - EL_PFORTE2X, - EL_PFORTE3X, - EL_PFORTE4X, + EL_GATE1, + EL_GATE2, + EL_GATE3, + EL_GATE4, + EL_GATE1_GRAY, + EL_GATE2_GRAY, + EL_GATE3_GRAY, + EL_GATE4_GRAY, EL_EM_GATE_1, EL_EM_GATE_2, EL_EM_GATE_3, @@ -1141,13 +1264,13 @@ void InitElementProperties() static int ep_massive[] = { - EL_BETON, - EL_SALZSAEURE, - EL_BADEWANNE1, - EL_BADEWANNE2, - EL_BADEWANNE3, - EL_BADEWANNE4, - EL_BADEWANNE5, + EL_STEELWALL, + EL_ACID, + EL_ACIDPOOL_TOPLEFT, + EL_ACIDPOOL_TOPRIGHT, + EL_ACIDPOOL_BOTTOMLEFT, + EL_ACIDPOOL_BOTTOM, + EL_ACIDPOOL_BOTTOMRIGHT, EL_SP_HARD_GRAY, EL_SP_HARD_GREEN, EL_SP_HARD_BLUE, @@ -1192,14 +1315,14 @@ void InitElementProperties() EL_EMC_STEEL_WALL_3, EL_EMC_STEEL_WALL_4, EL_CRYSTAL, - EL_PFORTE1, - EL_PFORTE2, - EL_PFORTE3, - EL_PFORTE4, - EL_PFORTE1X, - EL_PFORTE2X, - EL_PFORTE3X, - EL_PFORTE4X, + EL_GATE1, + EL_GATE2, + EL_GATE3, + EL_GATE4, + EL_GATE1_GRAY, + EL_GATE2_GRAY, + EL_GATE3_GRAY, + EL_GATE4_GRAY, EL_EM_GATE_1, EL_EM_GATE_2, EL_EM_GATE_3, @@ -1232,26 +1355,26 @@ void InitElementProperties() static int ep_slippery[] = { - EL_FELSBODEN, + EL_WALL_CRUMBLED, EL_BD_WALL, - EL_FELSBROCKEN, + EL_ROCK, EL_BD_ROCK, - EL_EDELSTEIN, + EL_EMERALD, EL_EDELSTEIN_BD, - EL_EDELSTEIN_GELB, - EL_EDELSTEIN_ROT, - EL_EDELSTEIN_LILA, - EL_DIAMANT, - EL_BOMBE, - EL_KOKOSNUSS, - EL_ABLENK_EIN, - EL_ABLENK_AUS, - EL_ZEIT_VOLL, - EL_ZEIT_LEER, - EL_BIRNE_EIN, - EL_BIRNE_AUS, - EL_BADEWANNE1, - EL_BADEWANNE2, + EL_EDELSTEIN_YELLOW, + EL_EDELSTEIN_RED, + EL_EDELSTEIN_PURPLE, + EL_DIAMOND, + EL_BOMB, + EL_NUT, + EL_ROBOT_WHEEL_ACTIVE, + EL_ROBOT_WHEEL, + EL_TIME_ORB_FULL, + EL_TIME_ORB_EMPTY, + EL_LAMP_ACTIVE, + EL_LAMP, + EL_ACIDPOOL_TOPLEFT, + EL_ACIDPOOL_TOPRIGHT, EL_SONDE, EL_SP_ZONK, EL_SP_INFOTRON, @@ -1269,12 +1392,12 @@ void InitElementProperties() static int ep_enemy[] = { - EL_KAEFER, - EL_FLIEGER, + EL_BUG, + EL_SPACESHIP, EL_BUTTERFLY, EL_FIREFLY, - EL_MAMPFER, - EL_MAMPFER2, + EL_YAMYAM, + EL_DARK_YAMYAM, EL_ROBOT, EL_PACMAN, EL_SP_SNIKSNAK, @@ -1284,15 +1407,15 @@ void InitElementProperties() static int ep_mauer[] = { - EL_BETON, - EL_PFORTE1, - EL_PFORTE2, - EL_PFORTE3, - EL_PFORTE4, - EL_PFORTE1X, - EL_PFORTE2X, - EL_PFORTE3X, - EL_PFORTE4X, + EL_STEELWALL, + EL_GATE1, + EL_GATE2, + EL_GATE3, + EL_GATE4, + EL_GATE1_GRAY, + EL_GATE2_GRAY, + EL_GATE3_GRAY, + EL_GATE4_GRAY, EL_EM_GATE_1, EL_EM_GATE_2, EL_EM_GATE_3, @@ -1301,11 +1424,11 @@ void InitElementProperties() EL_EM_GATE_2X, EL_EM_GATE_3X, EL_EM_GATE_4X, - EL_AUSGANG_ZU, + EL_EXIT_CLOSED, EL_AUSGANG_ACT, - EL_AUSGANG_AUF, - EL_MAUERWERK, - EL_FELSBODEN, + EL_EXIT_OPEN, + EL_WALL, + EL_WALL_CRUMBLED, EL_MAUER_LEBT, EL_MAUER_X, EL_MAUER_Y, @@ -1350,22 +1473,22 @@ void InitElementProperties() static int ep_can_fall[] = { - EL_FELSBROCKEN, + EL_ROCK, EL_BD_ROCK, - EL_EDELSTEIN, + EL_EMERALD, EL_EDELSTEIN_BD, - EL_EDELSTEIN_GELB, - EL_EDELSTEIN_ROT, - EL_EDELSTEIN_LILA, - EL_DIAMANT, - EL_BOMBE, - EL_KOKOSNUSS, - EL_TROPFEN, - EL_MORAST_VOLL, + EL_EDELSTEIN_YELLOW, + EL_EDELSTEIN_RED, + EL_EDELSTEIN_PURPLE, + EL_DIAMOND, + EL_BOMB, + EL_NUT, + EL_AMOEBA_DROP, + EL_QUICKSAND_FULL, EL_MAGIC_WALL_FULL, EL_MAGIC_WALL_BD_FULL, - EL_ZEIT_VOLL, - EL_ZEIT_LEER, + EL_TIME_ORB_FULL, + EL_TIME_ORB_EMPTY, EL_SP_ZONK, EL_SP_INFOTRON, EL_SP_DISK_ORANGE, @@ -1378,27 +1501,27 @@ void InitElementProperties() static int ep_can_smash[] = { - EL_FELSBROCKEN, + EL_ROCK, EL_BD_ROCK, - EL_EDELSTEIN, + EL_EMERALD, EL_EDELSTEIN_BD, - EL_EDELSTEIN_GELB, - EL_EDELSTEIN_ROT, - EL_EDELSTEIN_LILA, - EL_DIAMANT, - EL_SCHLUESSEL1, - EL_SCHLUESSEL2, - EL_SCHLUESSEL3, - EL_SCHLUESSEL4, + EL_EDELSTEIN_YELLOW, + EL_EDELSTEIN_RED, + EL_EDELSTEIN_PURPLE, + EL_DIAMOND, + EL_KEY1, + EL_KEY2, + EL_KEY3, + EL_KEY4, EL_EM_KEY_1, EL_EM_KEY_2, EL_EM_KEY_3, EL_EM_KEY_4, - EL_BOMBE, - EL_KOKOSNUSS, - EL_TROPFEN, - EL_ZEIT_VOLL, - EL_ZEIT_LEER, + EL_BOMB, + EL_NUT, + EL_AMOEBA_DROP, + EL_TIME_ORB_FULL, + EL_TIME_ORB_EMPTY, EL_SP_ZONK, EL_SP_INFOTRON, EL_SP_DISK_ORANGE, @@ -1411,25 +1534,25 @@ void InitElementProperties() static int ep_can_change[] = { - EL_FELSBROCKEN, + EL_ROCK, EL_BD_ROCK, - EL_EDELSTEIN, + EL_EMERALD, EL_EDELSTEIN_BD, - EL_EDELSTEIN_GELB, - EL_EDELSTEIN_ROT, - EL_EDELSTEIN_LILA, - EL_DIAMANT + EL_EDELSTEIN_YELLOW, + EL_EDELSTEIN_RED, + EL_EDELSTEIN_PURPLE, + EL_DIAMOND }; static int ep_can_change_num = SIZEOF_ARRAY_INT(ep_can_change); static int ep_can_move[] = { - EL_KAEFER, - EL_FLIEGER, + EL_BUG, + EL_SPACESHIP, EL_BUTTERFLY, EL_FIREFLY, - EL_MAMPFER, - EL_MAMPFER2, + EL_YAMYAM, + EL_DARK_YAMYAM, EL_ROBOT, EL_PACMAN, EL_MOLE, @@ -1446,14 +1569,14 @@ void InitElementProperties() static int ep_could_move[] = { - EL_KAEFER_RIGHT, - EL_KAEFER_UP, - EL_KAEFER_LEFT, - EL_KAEFER_DOWN, - EL_FLIEGER_RIGHT, - EL_FLIEGER_UP, - EL_FLIEGER_LEFT, - EL_FLIEGER_DOWN, + EL_BUG_RIGHT, + EL_BUG_UP, + EL_BUG_LEFT, + EL_BUG_DOWN, + EL_SPACESHIP_RIGHT, + EL_SPACESHIP_UP, + EL_SPACESHIP_LEFT, + EL_SPACESHIP_DOWN, EL_BUTTERFLY_RIGHT, EL_BUTTERFLY_UP, EL_BUTTERFLY_LEFT, @@ -1471,8 +1594,8 @@ void InitElementProperties() static int ep_dont_touch[] = { - EL_KAEFER, - EL_FLIEGER, + EL_BUG, + EL_SPACESHIP, EL_BUTTERFLY, EL_FIREFLY }; @@ -1480,16 +1603,16 @@ void InitElementProperties() static int ep_dont_go_to[] = { - EL_KAEFER, - EL_FLIEGER, + EL_BUG, + EL_SPACESHIP, EL_BUTTERFLY, EL_FIREFLY, - EL_MAMPFER, - EL_MAMPFER2, + EL_YAMYAM, + EL_DARK_YAMYAM, EL_ROBOT, EL_PACMAN, - EL_TROPFEN, - EL_SALZSAEURE, + EL_AMOEBA_DROP, + EL_ACID, EL_SP_SNIKSNAK, EL_SP_ELECTRON, EL_SP_BUG_ACTIVE, @@ -1500,26 +1623,26 @@ void InitElementProperties() static int ep_mampf2[] = { - EL_ERDREICH, - EL_KAEFER, - EL_FLIEGER, + EL_SAND, + EL_BUG, + EL_SPACESHIP, EL_BUTTERFLY, EL_FIREFLY, - EL_MAMPFER, + EL_YAMYAM, EL_ROBOT, EL_PACMAN, - EL_TROPFEN, - EL_AMOEBE_TOT, - EL_AMOEBE_NASS, - EL_AMOEBE_NORM, - EL_AMOEBE_VOLL, - EL_AMOEBE_BD, - EL_EDELSTEIN, + EL_AMOEBA_DROP, + EL_AMOEBA_DEAD, + EL_AMOEBA_WET, + EL_AMOEBA_DRY, + EL_AMOEBA_FULL, + EL_BD_AMOEBA, + EL_EMERALD, EL_EDELSTEIN_BD, - EL_EDELSTEIN_GELB, - EL_EDELSTEIN_ROT, - EL_EDELSTEIN_LILA, - EL_DIAMANT, + EL_EDELSTEIN_YELLOW, + EL_EDELSTEIN_RED, + EL_EDELSTEIN_PURPLE, + EL_DIAMOND, EL_PEARL, EL_CRYSTAL }; @@ -1527,18 +1650,18 @@ void InitElementProperties() static int ep_bd_element[] = { - EL_LEERRAUM, - EL_ERDREICH, - EL_FELSBODEN, + EL_EMPTY, + EL_SAND, + EL_WALL_CRUMBLED, EL_BD_WALL, - EL_FELSBROCKEN, + EL_ROCK, EL_BD_ROCK, EL_EDELSTEIN_BD, EL_MAGIC_WALL_BD_OFF, - EL_AUSGANG_ZU, - EL_AUSGANG_AUF, - EL_BETON, - EL_SPIELFIGUR, + EL_EXIT_CLOSED, + EL_EXIT_OPEN, + EL_STEELWALL, + EL_PLAYER, EL_FIREFLY, EL_FIREFLY_1, EL_FIREFLY_2, @@ -1549,63 +1672,63 @@ void InitElementProperties() EL_BUTTERFLY_2, EL_BUTTERFLY_3, EL_BUTTERFLY_4, - EL_AMOEBE_BD, + EL_BD_AMOEBA, EL_CHAR_FRAGE }; static int ep_bd_element_num = SIZEOF_ARRAY_INT(ep_bd_element); static int ep_sb_element[] = { - EL_LEERRAUM, - EL_BETON, + EL_EMPTY, + EL_STEELWALL, EL_SOKOBAN_OBJEKT, EL_SOKOBAN_FELD_LEER, EL_SOKOBAN_FELD_VOLL, - EL_SPIELFIGUR, + EL_PLAYER, EL_INVISIBLE_STEEL }; static int ep_sb_element_num = SIZEOF_ARRAY_INT(ep_sb_element); static int ep_gem[] = { - EL_EDELSTEIN, + EL_EMERALD, EL_EDELSTEIN_BD, - EL_EDELSTEIN_GELB, - EL_EDELSTEIN_ROT, - EL_EDELSTEIN_LILA, - EL_DIAMANT + EL_EDELSTEIN_YELLOW, + EL_EDELSTEIN_RED, + EL_EDELSTEIN_PURPLE, + EL_DIAMOND }; static int ep_gem_num = SIZEOF_ARRAY_INT(ep_gem); static int ep_inactive[] = { - EL_LEERRAUM, - EL_ERDREICH, - EL_MAUERWERK, + EL_EMPTY, + EL_SAND, + EL_WALL, EL_BD_WALL, - EL_FELSBODEN, - EL_SCHLUESSEL, - EL_BETON, - EL_AMOEBE_TOT, - EL_MORAST_LEER, + EL_WALL_CRUMBLED, + EL_KEY, + EL_STEELWALL, + EL_AMOEBA_DEAD, + EL_QUICKSAND_EMPTY, EL_BADEWANNE, - EL_ABLENK_AUS, - EL_SCHLUESSEL1, - EL_SCHLUESSEL2, - EL_SCHLUESSEL3, - EL_SCHLUESSEL4, + EL_ROBOT_WHEEL, + EL_KEY1, + EL_KEY2, + EL_KEY3, + EL_KEY4, EL_EM_KEY_1, EL_EM_KEY_2, EL_EM_KEY_3, EL_EM_KEY_4, - EL_PFORTE1, - EL_PFORTE2, - EL_PFORTE3, - EL_PFORTE4, - EL_PFORTE1X, - EL_PFORTE2X, - EL_PFORTE3X, - EL_PFORTE4X, + EL_GATE1, + EL_GATE2, + EL_GATE3, + EL_GATE4, + EL_GATE1_GRAY, + EL_GATE2_GRAY, + EL_GATE3_GRAY, + EL_GATE4_GRAY, EL_EM_GATE_1, EL_EM_GATE_2, EL_EM_GATE_3, @@ -1614,28 +1737,28 @@ void InitElementProperties() EL_EM_GATE_2X, EL_EM_GATE_3X, EL_EM_GATE_4X, - EL_DYNAMITE_INACTIVE, - EL_UNSICHTBAR, - EL_BIRNE_AUS, - EL_BIRNE_EIN, - EL_ERZ_EDEL, - EL_ERZ_DIAM, - EL_ERZ_EDEL_BD, - EL_ERZ_EDEL_GELB, + EL_DYNAMITE, + EL_INVISIBLE_WALL, + EL_LAMP, + EL_LAMP_ACTIVE, + EL_WALL_EMERALD, + EL_WALL_DIAMOND, + EL_WALL_BD_DIAMOND, + EL_WALL_EMERALD_YELLOW, EL_DYNABOMB_NR, EL_DYNABOMB_SZ, EL_DYNABOMB_XL, EL_SOKOBAN_OBJEKT, EL_SOKOBAN_FELD_LEER, EL_SOKOBAN_FELD_VOLL, - EL_ERZ_EDEL_ROT, - EL_ERZ_EDEL_LILA, - EL_BADEWANNE1, - EL_BADEWANNE2, - EL_BADEWANNE3, - EL_BADEWANNE4, - EL_BADEWANNE5, - EL_MAGIC_WALL_OFF, + EL_WALL_EMERALD_RED, + EL_WALL_EMERALD_PURPLE, + EL_ACIDPOOL_TOPLEFT, + EL_ACIDPOOL_TOPRIGHT, + EL_ACIDPOOL_BOTTOMLEFT, + EL_ACIDPOOL_BOTTOM, + EL_ACIDPOOL_BOTTOMRIGHT, + EL_MAGIC_WALL, EL_MAGIC_WALL_DEAD, EL_MAGIC_WALL_BD_OFF, EL_MAGIC_WALL_BD_DEAD, @@ -1716,9 +1839,9 @@ void InitElementProperties() static int ep_explosive[] = { - EL_BOMBE, + EL_BOMB, EL_DYNAMITE_ACTIVE, - EL_DYNAMITE_INACTIVE, + EL_DYNAMITE, EL_DYNABOMB_ACTIVE_1, EL_DYNABOMB_ACTIVE_2, EL_DYNABOMB_ACTIVE_3, @@ -1726,7 +1849,7 @@ void InitElementProperties() EL_DYNABOMB_NR, EL_DYNABOMB_SZ, EL_DYNABOMB_XL, - EL_KAEFER, + EL_BUG, EL_MOLE, EL_PINGUIN, EL_SCHWEIN, @@ -1743,12 +1866,12 @@ void InitElementProperties() static int ep_mampf3[] = { - EL_EDELSTEIN, + EL_EMERALD, EL_EDELSTEIN_BD, - EL_EDELSTEIN_GELB, - EL_EDELSTEIN_ROT, - EL_EDELSTEIN_LILA, - EL_DIAMANT, + EL_EDELSTEIN_YELLOW, + EL_EDELSTEIN_RED, + EL_EDELSTEIN_PURPLE, + EL_DIAMOND, EL_PEARL, EL_CRYSTAL }; @@ -1756,11 +1879,11 @@ void InitElementProperties() static int ep_pushable[] = { - EL_FELSBROCKEN, + EL_ROCK, EL_BD_ROCK, - EL_BOMBE, - EL_KOKOSNUSS, - EL_ZEIT_LEER, + EL_BOMB, + EL_NUT, + EL_TIME_ORB_EMPTY, EL_SOKOBAN_FELD_VOLL, EL_SOKOBAN_OBJEKT, EL_SONDE, @@ -1775,7 +1898,7 @@ void InitElementProperties() static int ep_player[] = { - EL_SPIELFIGUR, + EL_PLAYER, EL_SPIELER1, EL_SPIELER2, EL_SPIELER3, @@ -1785,17 +1908,17 @@ void InitElementProperties() static int ep_has_content[] = { - EL_MAMPFER, - EL_AMOEBE_NASS, - EL_AMOEBE_NORM, - EL_AMOEBE_VOLL, - EL_AMOEBE_BD + EL_YAMYAM, + EL_AMOEBA_WET, + EL_AMOEBA_DRY, + EL_AMOEBA_FULL, + EL_BD_AMOEBA }; static int ep_has_content_num = SIZEOF_ARRAY_INT(ep_has_content); static int ep_eatable[] = { - EL_ERDREICH, + EL_SAND, EL_SP_BASE, EL_SP_BUG, EL_TRAP_INACTIVE, @@ -1846,7 +1969,7 @@ void InitElementProperties() EL_SP_CHIP_UPPER, EL_SP_CHIP_LOWER, /* additional elements that appeared in newer Supaplex levels */ - EL_UNSICHTBAR, + EL_INVISIBLE_WALL, /* more than one murphy in a level results in an inactive clone */ EL_SP_MURPHY_CLONE };