X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Ftools.c;h=83620631c3ea9a8873936122d7b7a1b087f7c6bd;hb=6b9e2be7;hp=ee3bf6a51af02bb3a10806b04ef390516240c6df;hpb=8da08295743b5a375f8cabe26cc1d48249c89b42;p=rocksndiamonds.git diff --git a/src/tools.c b/src/tools.c index ee3bf6a5..83620631 100644 --- a/src/tools.c +++ b/src/tools.c @@ -297,7 +297,7 @@ static int getLevelFromScreenY_RND(int sy) static int getLevelFromScreenX_EM(int sx) { - int level_xsize = level.native_em_level->lev->width; + int level_xsize = level.native_em_level->cav->width; int full_xsize = level_xsize * TILESIZE_VAR; sx -= (full_xsize < SXSIZE ? (SXSIZE - full_xsize) / 2 : 0); @@ -314,7 +314,7 @@ static int getLevelFromScreenX_EM(int sx) static int getLevelFromScreenY_EM(int sy) { - int level_ysize = level.native_em_level->lev->height; + int level_ysize = level.native_em_level->cav->height; int full_ysize = level_ysize * TILESIZE_VAR; sy -= (full_ysize < SYSIZE ? (SYSIZE - full_ysize) / 2 : 0); @@ -5738,6 +5738,61 @@ static struct Mapping_EM_to_RND_object } em_object_mapping_list[] = { + { + Zborder, FALSE, FALSE, + EL_EMPTY, -1, -1 + }, + { + Zplayer, FALSE, FALSE, + EL_EMPTY, -1, -1 + }, + + { + Zbug, FALSE, FALSE, + EL_EMPTY, -1, -1 + }, + { + Ztank, FALSE, FALSE, + EL_EMPTY, -1, -1 + }, + { + Zeater, FALSE, FALSE, + EL_EMPTY, -1, -1 + }, + { + Zdynamite, FALSE, FALSE, + EL_EMPTY, -1, -1 + }, + { + Zboom, FALSE, FALSE, + EL_EMPTY, -1, -1 + }, + + { + Xchain, FALSE, FALSE, + EL_DEFAULT, ACTION_EXPLODING, -1 + }, + { + Xboom_bug, FALSE, FALSE, + EL_BUG, ACTION_EXPLODING, -1 + }, + { + Xboom_tank, FALSE, FALSE, + EL_SPACESHIP, 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 + }, + { Xblank, TRUE, FALSE, EL_EMPTY, -1, -1 @@ -6862,7 +6917,7 @@ em_object_mapping_list[] = EL_MAGIC_WALL, -1, -1 }, { - XwonderwallB, FALSE, FALSE, + Ywonderwall, FALSE, FALSE, EL_MAGIC_WALL, ACTION_ACTIVE, -1 }, @@ -6871,7 +6926,7 @@ em_object_mapping_list[] = EL_ROBOT_WHEEL, -1, -1 }, { - XwheelB, FALSE, FALSE, + Ywheel, FALSE, FALSE, EL_ROBOT_WHEEL, ACTION_ACTIVE, -1 }, @@ -6880,7 +6935,7 @@ em_object_mapping_list[] = EL_EMC_MAGIC_BALL_SWITCH, -1, -1 }, { - XswitchB, FALSE, FALSE, + Yswitch, FALSE, FALSE, EL_EMC_MAGIC_BALL_SWITCH, ACTION_ACTIVE, -1 }, @@ -6889,7 +6944,7 @@ em_object_mapping_list[] = EL_EMC_SPRING_BUMPER, -1, -1 }, { - XbumperB, FALSE, FALSE, + Ybumper, FALSE, FALSE, EL_EMC_SPRING_BUMPER, ACTION_ACTIVE, -1 }, @@ -6919,7 +6974,7 @@ em_object_mapping_list[] = EL_INVISIBLE_WALL, -1, -1 }, { - Xfake_blankB, FALSE, FALSE, + Yfake_blank, FALSE, FALSE, EL_INVISIBLE_WALL, ACTION_ACTIVE, -1 }, @@ -6928,7 +6983,7 @@ em_object_mapping_list[] = EL_EMC_FAKE_GRASS, -1, -1 }, { - Xfake_grassB, FALSE, FALSE, + Yfake_grass, FALSE, FALSE, EL_EMC_FAKE_GRASS, ACTION_ACTIVE, -1 }, @@ -6937,7 +6992,7 @@ em_object_mapping_list[] = EL_EMC_DRIPPER, -1, -1 }, { - Xfake_amoebaB, FALSE, FALSE, + Yfake_amoeba, FALSE, FALSE, EL_EMC_DRIPPER, ACTION_ACTIVE, -1 }, @@ -7422,43 +7477,6 @@ em_object_mapping_list[] = EL_SAND, ACTION_SNAPPING, -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 @@ -7751,11 +7769,11 @@ int map_element_EM_to_RND(int element_em) void map_android_clone_elements_RND_to_EM(struct LevelInfo *level) { struct LevelInfo_EM *level_em = level->native_em_level; - struct LEVEL *lev = level_em->lev; + struct CAVE *cav = level_em->cav; int i, j; for (i = 0; i < TILE_MAX; i++) - lev->android_array[i] = Xblank; + cav->android_array[i] = Xblank; for (i = 0; i < level->num_android_clone_elements; i++) { @@ -7764,21 +7782,21 @@ void map_android_clone_elements_RND_to_EM(struct LevelInfo *level) for (j = 0; em_object_mapping_list[j].element_em != -1; j++) if (em_object_mapping_list[j].element_rnd == element_rnd) - lev->android_array[em_object_mapping_list[j].element_em] = element_em; + cav->android_array[em_object_mapping_list[j].element_em] = element_em; } } void map_android_clone_elements_EM_to_RND(struct LevelInfo *level) { struct LevelInfo_EM *level_em = level->native_em_level; - struct LEVEL *lev = level_em->lev; + struct CAVE *cav = level_em->cav; int i, j; level->num_android_clone_elements = 0; for (i = 0; i < TILE_MAX; i++) { - int element_em = lev->android_array[i]; + int element_em = cav->android_array[i]; int element_rnd; boolean element_found = FALSE; @@ -8767,13 +8785,13 @@ void InitGraphicInfo_EM(void) i == Xboom_bug && j == 5 ? 2 : i == Xboom_bug && j == 6 ? 2 : i == Xboom_bug && j == 7 ? 0 : - i == Xboom_bomb && j == 1 ? 2 : - i == Xboom_bomb && j == 2 ? 2 : - i == Xboom_bomb && j == 3 ? 4 : - i == Xboom_bomb && j == 4 ? 4 : - i == Xboom_bomb && j == 5 ? 2 : - i == Xboom_bomb && j == 6 ? 2 : - i == Xboom_bomb && j == 7 ? 0 : + i == Xboom_tank && j == 1 ? 2 : + i == Xboom_tank && j == 2 ? 2 : + i == Xboom_tank && j == 3 ? 4 : + i == Xboom_tank && j == 4 ? 4 : + i == Xboom_tank && j == 5 ? 2 : + i == Xboom_tank && j == 6 ? 2 : + i == Xboom_tank && j == 7 ? 0 : i == Xboom_android && j == 7 ? 6 : i == Xboom_1 && j == 1 ? 2 : i == Xboom_1 && j == 2 ? 2 :