"bdx_nut",
"Nut explosion (4)"
},
+ {
+ "bdx_sand_ball.scanned",
+ "bdx_sand_ball",
+ "Sand ball (scanned)"
+ },
+ {
+ "bdx_sand_ball.falling.scanned",
+ "bdx_sand_ball",
+ "Sand ball (falling) (scanned)"
+ },
+ {
+ "bdx_sand_loose.scanned",
+ "bdx_sand_loose",
+ "Loose sand (scanned)"
+ },
+ {
+ "bdx_sand_loose.falling.scanned",
+ "bdx_sand_loose",
+ "Loose sand (falling) (scanned)"
+ },
+ {
+ "bdx_rock.scanned",
+ "bdx_rock",
+ "Rock (scanned)"
+ },
+ {
+ "bdx_rock.falling.scanned",
+ "bdx_rock",
+ "Rock (falling) (scanned)"
+ },
+ {
+ "bdx_flying_rock.scanned",
+ "bdx_flying_rock",
+ "Flying rock (scanned)"
+ },
+ {
+ "bdx_flying_rock.flying.scanned",
+ "bdx_flying_rock",
+ "Flying rock (flying) (scanned)"
+ },
+ {
+ "bdx_mega_rock.scanned",
+ "bdx_mega_rock",
+ "Mega rock (scanned)"
+ },
+ {
+ "bdx_mega_rock.falling.scanned",
+ "bdx_mega_rock",
+ "Mega rock (falling) (scanned)"
+ },
+ {
+ "bdx_diamond.scanned",
+ "bdx_diamond",
+ "Diamond (scanned)"
+ },
+ {
+ "bdx_diamond.falling.scanned",
+ "bdx_diamond",
+ "Diamond (falling) (scanned)"
+ },
+ {
+ "bdx_flying_diamond.scanned",
+ "bdx_flying_diamond",
+ "Flying diamond (scanned)"
+ },
+ {
+ "bdx_flying_diamond.flying.scanned",
+ "bdx_flying_diamond",
+ "Flying diamond (flying) (scanned)"
+ },
+ {
+ "bdx_nut.scanned",
+ "bdx_nut",
+ "Nut (scanned)"
+ },
+ {
+ "bdx_nut.falling.scanned",
+ "bdx_nut",
+ "Nut (falling) (scanned)"
+ },
+ {
+ "bdx_expandable_wall_horizontal.scanned",
+ "bdx_expandable_wall",
+ "Expandable wall (horizontal) (scanned)"
+ },
+ {
+ "bdx_expandable_wall_vertical.scanned",
+ "bdx_expandable_wall",
+ "Expandable wall (vertical) (scanned)"
+ },
+ {
+ "bdx_expandable_wall_any.scanned",
+ "bdx_expandable_wall",
+ "Expandable wall (any direction) (scanned)"
+ },
+ {
+ "bdx_expandable_steelwall_horizontal.scanned",
+ "bdx_expandable_steelwall",
+ "Expandable steelwall (horizontal) (scanned)"
+ },
+ {
+ "bdx_expandable_steelwall_vertical.scanned",
+ "bdx_expandable_steelwall",
+ "Expandable steelwall (vertical) (scanned)"
+ },
+ {
+ "bdx_expandable_steelwall_any.scanned",
+ "bdx_expandable_steelwall",
+ "Expandable steelwall (any direction) (scanned)"
+ },
+ {
+ "bdx_acid.scanned",
+ "bdx_acid",
+ "Acid (scanned)"
+ },
+ {
+ "bdx_falling_wall.falling.scanned",
+ "bdx_wall",
+ "Falling wall (falling) (scanned)"
+ },
+ {
+ "bdx_cow.left.scanned",
+ "bdx_cow",
+ "Cow (starts moving left) (scanned)"
+ },
+ {
+ "bdx_cow.up.scanned",
+ "bdx_cow",
+ "Cow (starts moving up) (scanned)"
+ },
+ {
+ "bdx_cow.right.scanned",
+ "bdx_cow",
+ "Cow (starts moving right) (scanned)"
+ },
+ {
+ "bdx_cow.down.scanned",
+ "bdx_cow",
+ "Cow (starts moving down) (scanned)"
+ },
+ {
+ "bdx_amoeba_1.scanned",
+ "bdx_amoeba",
+ "Amoeba 1 (scanned)"
+ },
+ {
+ "bdx_amoeba_2.scanned",
+ "bdx_amoeba",
+ "Amoeba 2 (scanned)"
+ },
+ {
+ "bdx_waiting_rock.scanned",
+ "bdx_waiting_rock",
+ "Waiting rock (scanned)"
+ },
+ {
+ "bdx_chasing_rock.scanned",
+ "bdx_chasing_rock",
+ "Chasing rock (scanned)"
+ },
+ {
+ "bdx_ghost.scanned",
+ "bdx_ghost",
+ "Ghost (scanned)"
+ },
+ {
+ "bdx_firefly_1.right.scanned",
+ "bdx_firefly",
+ "Firefly 1 (starts moving right) (scanned)"
+ },
+ {
+ "bdx_firefly_1.up.scanned",
+ "bdx_firefly",
+ "Firefly 1 (starts moving up) (scanned)"
+ },
+ {
+ "bdx_firefly_1.left.scanned",
+ "bdx_firefly",
+ "Firefly 1 (starts moving left) (scanned)"
+ },
+ {
+ "bdx_firefly_1.down.scanned",
+ "bdx_firefly",
+ "Firefly 1 (starts moving down) (scanned)"
+ },
+ {
+ "bdx_firefly_2.right.scanned",
+ "bdx_firefly",
+ "Firefly 2 (starts moving right) (scanned)"
+ },
+ {
+ "bdx_firefly_2.up.scanned",
+ "bdx_firefly",
+ "Firefly 2 (starts moving up) (scanned)"
+ },
+ {
+ "bdx_firefly_2.left.scanned",
+ "bdx_firefly",
+ "Firefly 2 (starts moving left) (scanned)"
+ },
+ {
+ "bdx_firefly_2.down.scanned",
+ "bdx_firefly",
+ "Firefly 2 (starts moving down) (scanned)"
+ },
+ {
+ "bdx_butterfly_1.right.scanned",
+ "bdx_butterfly",
+ "Butterfly 1 (starts moving right) (scanned)"
+ },
+ {
+ "bdx_butterfly_1.up.scanned",
+ "bdx_butterfly",
+ "Butterfly 1 (starts moving up) (scanned)"
+ },
+ {
+ "bdx_butterfly_1.left.scanned",
+ "bdx_butterfly",
+ "Butterfly 1 (starts moving left) (scanned)"
+ },
+ {
+ "bdx_butterfly_1.down.scanned",
+ "bdx_butterfly",
+ "Butterfly 1 (starts moving down) (scanned)"
+ },
+ {
+ "bdx_butterfly_2.right.scanned",
+ "bdx_butterfly",
+ "Butterfly 2 (starts moving right) (scanned)"
+ },
+ {
+ "bdx_butterfly_2.up.scanned",
+ "bdx_butterfly",
+ "Butterfly 2 (starts moving up) (scanned)"
+ },
+ {
+ "bdx_butterfly_2.left.scanned",
+ "bdx_butterfly",
+ "Butterfly 2 (starts moving left) (scanned)"
+ },
+ {
+ "bdx_butterfly_2.down.scanned",
+ "bdx_butterfly",
+ "Butterfly 2 (starts moving down) (scanned)"
+ },
+ {
+ "bdx_stonefly.right.scanned",
+ "bdx_stonefly",
+ "Stonefly (starts moving right) (scanned)"
+ },
+ {
+ "bdx_stonefly.up.scanned",
+ "bdx_stonefly",
+ "Stonefly (starts moving up) (scanned)"
+ },
+ {
+ "bdx_stonefly.left.scanned",
+ "bdx_stonefly",
+ "Stonefly (starts moving left) (scanned)"
+ },
+ {
+ "bdx_stonefly.down.scanned",
+ "bdx_stonefly",
+ "Stonefly (starts moving down) (scanned)"
+ },
+ {
+ "bdx_biter.right.scanned",
+ "bdx_biter",
+ "Biter (starts moving right) (scanned)"
+ },
+ {
+ "bdx_biter.up.scanned",
+ "bdx_biter",
+ "Biter (starts moving up) (scanned)"
+ },
+ {
+ "bdx_biter.left.scanned",
+ "bdx_biter",
+ "Biter (starts moving left) (scanned)"
+ },
+ {
+ "bdx_biter.down.scanned",
+ "bdx_biter",
+ "Biter (starts moving down) (scanned)"
+ },
+ {
+ "bdx_dragonfly.right.scanned",
+ "bdx_dragonfly",
+ "Dragonfly (starts moving right) (scanned)"
+ },
+ {
+ "bdx_dragonfly.up.scanned",
+ "bdx_dragonfly",
+ "Dragonfly (starts moving up) (scanned)"
+ },
+ {
+ "bdx_dragonfly.left.scanned",
+ "bdx_dragonfly",
+ "Dragonfly (starts moving left) (scanned)"
+ },
+ {
+ "bdx_dragonfly.down.scanned",
+ "bdx_dragonfly",
+ "Dragonfly (starts moving down) (scanned)"
+ },
+ {
+ "bdx_player.scanned",
+ "bdx_player",
+ "Player (scanned)"
+ },
+ {
+ "bdx_player_with_bomb.scanned",
+ "bdx_player",
+ "Player with bomb (scanned)",
+ },
+ {
+ "bdx_player_with_rocket_launcher.scanned",
+ "bdx_player",
+ "Player with rocket launcher (scanned)",
+ },
+ {
+ "bdx_rocket.right.scanned",
+ "bdx_rocket",
+ "Rocket (starts moving right) (scanned)"
+ },
+ {
+ "bdx_rocket.up.scanned",
+ "bdx_rocket",
+ "Rocket (starts moving up) (scanned)"
+ },
+ {
+ "bdx_rocket.left.scanned",
+ "bdx_rocket",
+ "Rocket (starts moving left) (scanned)"
+ },
+ {
+ "bdx_rocket.down.scanned",
+ "bdx_rocket",
+ "Rocket (starts moving down) (scanned)"
+ },
+ {
+ "bdx_nitro_pack.scanned",
+ "bdx_nitro_pack",
+ "Nitro pack (scanned)"
+ },
+ {
+ "bdx_nitro_pack.falling.scanned",
+ "bdx_nitro_pack",
+ "Nitro pack (falling) (scanned)"
+ },
+ {
+ "bdx_nitro_pack.exploding.scanned",
+ "bdx_nitro_pack",
+ "Nitro pack (triggered) (scanned)"
+ },
+ {
+ "bdx_clock.growing_0",
+ "bdx_clock",
+ "Clock birth (0)"
+ },
+ {
+ "bdx_diamond.growing_0",
+ "bdx_diamond",
+ "Diamond birth (0)"
+ },
+ {
+ "bdx_exploding_0",
+ "bdx_exploding",
+ "Explosion (0)"
+ },
+ {
+ "bdx_rock.growing_0",
+ "bdx_rock",
+ "Rock birth (0)"
+ },
+ {
+ "bdx_steelwall.growing_0",
+ "bdx_steelwall",
+ "Steelwall birth (0)"
+ },
+ {
+ "bdx_ghost.exploding_0",
+ "bdx_ghost",
+ "Ghost explosion (0)"
+ },
+ {
+ "bdx_bomb.exploding_0",
+ "bdx_bomb",
+ "Bomb explosion (0)"
+ },
+ {
+ "bdx_nitro_pack.exploding_0",
+ "bdx_nitro_pack",
+ "Nitro pack explosion (0)"
+ },
+ {
+ "bdx_amoeba_2.exploding_0",
+ "bdx_amoeba",
+ "Amoeba 2 explosion (0)"
+ },
+ {
+ "bdx_nut.breaking_0",
+ "bdx_nut",
+ "Nut explosion (0)"
+ },
// --------------------------------------------------------------------------
// "real" (and therefore drawable) runtime elements
#define IS_BDX_RUNTIME_ELEMENT(e) ((e) >= EL_BDX_RUNTIME_START && \
(e) <= EL_BDX_RUNTIME_END)
+#define IS_BDX_EFFECTS_ELEMENT(e) ((e) >= EL_BDX_EFFECTS_START && \
+ (e) <= EL_BDX_EFFECTS_END)
+
+#define IS_BDX_SCANNED_ELEMENT(e) ((e) >= EL_BDX_SCANNED_START && \
+ (e) <= EL_BDX_SCANNED_END)
+
#define IS_SOKOBAN_OBJECT_OR_FIELD(e) ((e) == EL_SOKOBAN_OBJECT || \
(e) == EL_SOKOBAN_FIELD_EMPTY || \
(e) == EL_SOKOBAN_FIELD_FULL)
#define EL_BDX_DIAMOND 1406
#define EL_BDX_MAGIC_WALL 1407
-// BD style elements ("effects"; mostly runtime elements, but can also be stored in level file)
+// BD style elements (effects/scanned; runtime elements, but can also be stored in level file)
#define EL_BDX_RUNTIME_START 1408
-#define EL_BDX_SAND_BALL_FALLING EL_BDX_RUNTIME_START
+
+#define EL_BDX_EFFECTS_START EL_BDX_RUNTIME_START
+#define EL_BDX_SAND_BALL_FALLING EL_BDX_EFFECTS_START
#define EL_BDX_SAND_LOOSE_FALLING 1409
#define EL_BDX_ROCK_FALLING 1410
#define EL_BDX_FLYING_ROCK_FLYING 1411
#define EL_BDX_NUT_BREAKING_2 1499
#define EL_BDX_NUT_BREAKING_3 1500
#define EL_BDX_NUT_BREAKING_4 1501
-#define EL_BDX_RUNTIME_END EL_BDX_NUT_BREAKING_4
+#define EL_BDX_EFFECTS_END EL_BDX_NUT_BREAKING_4
+
+#define EL_BDX_SCANNED_START 1502
+#define EL_BDX_SAND_BALL_SCANNED EL_BDX_SCANNED_START
+#define EL_BDX_SAND_BALL_FALLING_SCANNED 1503
+#define EL_BDX_SAND_LOOSE_SCANNED 1504
+#define EL_BDX_SAND_LOOSE_FALLING_SCANNED 1505
+#define EL_BDX_ROCK_SCANNED 1506
+#define EL_BDX_ROCK_FALLING_SCANNED 1507
+#define EL_BDX_FLYING_ROCK_SCANNED 1508
+#define EL_BDX_FLYING_ROCK_FLYING_SCANNED 1509
+#define EL_BDX_MEGA_ROCK_SCANNED 1510
+#define EL_BDX_MEGA_ROCK_FALLING_SCANNED 1511
+#define EL_BDX_DIAMOND_SCANNED 1512
+#define EL_BDX_DIAMOND_FALLING_SCANNED 1513
+#define EL_BDX_FLYING_DIAMOND_SCANNED 1514
+#define EL_BDX_FLYING_DIAMOND_FLYING_SCANNED 1515
+#define EL_BDX_NUT_SCANNED 1516
+#define EL_BDX_NUT_FALLING_SCANNED 1517
+#define EL_BDX_EXPANDABLE_WALL_HORIZONTAL_SCANNED 1518
+#define EL_BDX_EXPANDABLE_WALL_VERTICAL_SCANNED 1519
+#define EL_BDX_EXPANDABLE_WALL_ANY_SCANNED 1520
+#define EL_BDX_EXPANDABLE_STEELWALL_HORIZONTAL_SCANNED 1521
+#define EL_BDX_EXPANDABLE_STEELWALL_VERTICAL_SCANNED 1522
+#define EL_BDX_EXPANDABLE_STEELWALL_ANY_SCANNED 1523
+#define EL_BDX_ACID_SCANNED 1524
+#define EL_BDX_FALLING_WALL_FALLING_SCANNED 1525
+#define EL_BDX_COW_LEFT_SCANNED 1526
+#define EL_BDX_COW_UP_SCANNED 1527
+#define EL_BDX_COW_RIGHT_SCANNED 1528
+#define EL_BDX_COW_DOWN_SCANNED 1529
+#define EL_BDX_AMOEBA_1_SCANNED 1530
+#define EL_BDX_AMOEBA_2_SCANNED 1531
+#define EL_BDX_WAITING_ROCK_SCANNED 1532
+#define EL_BDX_CHASING_ROCK_SCANNED 1533
+#define EL_BDX_GHOST_SCANNED 1534
+#define EL_BDX_FIREFLY_1_RIGHT_SCANNED 1535
+#define EL_BDX_FIREFLY_1_UP_SCANNED 1536
+#define EL_BDX_FIREFLY_1_LEFT_SCANNED 1537
+#define EL_BDX_FIREFLY_1_DOWN_SCANNED 1538
+#define EL_BDX_FIREFLY_2_RIGHT_SCANNED 1539
+#define EL_BDX_FIREFLY_2_UP_SCANNED 1540
+#define EL_BDX_FIREFLY_2_LEFT_SCANNED 1541
+#define EL_BDX_FIREFLY_2_DOWN_SCANNED 1542
+#define EL_BDX_BUTTERFLY_1_RIGHT_SCANNED 1543
+#define EL_BDX_BUTTERFLY_1_UP_SCANNED 1544
+#define EL_BDX_BUTTERFLY_1_LEFT_SCANNED 1545
+#define EL_BDX_BUTTERFLY_1_DOWN_SCANNED 1546
+#define EL_BDX_BUTTERFLY_2_RIGHT_SCANNED 1547
+#define EL_BDX_BUTTERFLY_2_UP_SCANNED 1548
+#define EL_BDX_BUTTERFLY_2_LEFT_SCANNED 1549
+#define EL_BDX_BUTTERFLY_2_DOWN_SCANNED 1550
+#define EL_BDX_STONEFLY_RIGHT_SCANNED 1551
+#define EL_BDX_STONEFLY_UP_SCANNED 1552
+#define EL_BDX_STONEFLY_LEFT_SCANNED 1553
+#define EL_BDX_STONEFLY_DOWN_SCANNED 1554
+#define EL_BDX_BITER_RIGHT_SCANNED 1555
+#define EL_BDX_BITER_UP_SCANNED 1556
+#define EL_BDX_BITER_LEFT_SCANNED 1557
+#define EL_BDX_BITER_DOWN_SCANNED 1558
+#define EL_BDX_DRAGONFLY_RIGHT_SCANNED 1559
+#define EL_BDX_DRAGONFLY_UP_SCANNED 1560
+#define EL_BDX_DRAGONFLY_LEFT_SCANNED 1561
+#define EL_BDX_DRAGONFLY_DOWN_SCANNED 1562
+#define EL_BDX_PLAYER_SCANNED 1563
+#define EL_BDX_PLAYER_WITH_BOMB_SCANNED 1564
+#define EL_BDX_PLAYER_WITH_ROCKET_LAUNCHER_SCANNED 1565
+#define EL_BDX_ROCKET_RIGHT_SCANNED 1566
+#define EL_BDX_ROCKET_UP_SCANNED 1567
+#define EL_BDX_ROCKET_LEFT_SCANNED 1568
+#define EL_BDX_ROCKET_DOWN_SCANNED 1569
+#define EL_BDX_NITRO_PACK_SCANNED 1570
+#define EL_BDX_NITRO_PACK_FALLING_SCANNED 1571
+#define EL_BDX_NITRO_PACK_EXPLODING_SCANNED 1572
+#define EL_BDX_CLOCK_GROWING_0 1573
+#define EL_BDX_DIAMOND_GROWING_0 1574
+#define EL_BDX_EXPLODING_0 1575
+#define EL_BDX_ROCK_GROWING_0 1576
+#define EL_BDX_STEELWALL_GROWING_0 1577
+#define EL_BDX_GHOST_EXPLODING_0 1578
+#define EL_BDX_BOMB_EXPLODING_0 1579
+#define EL_BDX_NITRO_PACK_EXPLODING_0 1580
+#define EL_BDX_AMOEBA_2_EXPLODING_0 1581
+#define EL_BDX_NUT_BREAKING_0 1582
+#define EL_BDX_SCANNED_END EL_BDX_NUT_BREAKING_0
+
+#define EL_BDX_RUNTIME_END EL_BDX_SCANNED_END
#define EL_BDX_END EL_BDX_RUNTIME_END
-#define NUM_FILE_ELEMENTS 1502
+#define NUM_FILE_ELEMENTS 1583
// "real" (and therefore drawable) runtime elements