X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;ds=sidebyside;f=src%2Fmain.h;h=e12649efc4ad7e3b3d96322a7af34fb0a3fb6c8e;hb=e6c0b4c0114691d197018f878e0150a3f5d8490e;hp=9a3343b8c10cd8f826940c8be6c283355ac9166f;hpb=7d171d862abdecced79f60535b49a686386cefe1;p=rocksndiamonds.git diff --git a/src/main.h b/src/main.h index 9a3343b8..e12649ef 100644 --- a/src/main.h +++ b/src/main.h @@ -542,6 +542,7 @@ #define MIN_ELEMENT_CONTENTS 1 #define STD_ELEMENT_CONTENTS 4 #define MAX_ELEMENT_CONTENTS 8 +#define NUM_MAGIC_BALL_CONTENTS 8 #define LEVEL_SCORE_ELEMENTS 16 /* level elements with score */ @@ -963,103 +964,44 @@ #define EL_SP_GRAVITY_OFF_PORT_LEFT 665 #define EL_SP_GRAVITY_OFF_PORT_UP 666 -#if 1 - -#define NUM_FILE_ELEMENTS 667 - -/* the following EMC style elements are currently not implemented in R'n'D */ -#define EL_BALLOON_SWITCH_NONE EL_UNKNOWN -#define EL_EMC_LEVEL_BORDER EL_UNKNOWN -#define EL_EMC_ANDROID EL_UNKNOWN -#define EL_EMC_ANDROID_RIGHT EL_UNKNOWN -#define EL_EMC_ANDROID_UP EL_UNKNOWN -#define EL_EMC_ANDROID_LEFT EL_UNKNOWN -#define EL_EMC_ANDROID_DOWN EL_UNKNOWN -#define EL_EMC_ANDROID_LEFT_UP EL_UNKNOWN -#define EL_EMC_ANDROID_LEFT_DOWN EL_UNKNOWN -#define EL_EMC_ANDROID_RIGHT_UP EL_UNKNOWN -#define EL_EMC_ANDROID_RIGHT_DOWN EL_UNKNOWN -#define EL_EMC_GRASS EL_UNKNOWN -#define EL_EMC_GENERATOR_BALL EL_UNKNOWN -#define EL_EMC_GROW EL_UNKNOWN -#define EL_EMC_GATE_1 EL_UNKNOWN -#define EL_EMC_GATE_2 EL_UNKNOWN -#define EL_EMC_GATE_3 EL_UNKNOWN -#define EL_EMC_GATE_4 EL_UNKNOWN -#define EL_EMC_GATE_5 EL_UNKNOWN -#define EL_EMC_GATE_6 EL_UNKNOWN -#define EL_EMC_GATE_7 EL_UNKNOWN -#define EL_EMC_GATE_8 EL_UNKNOWN -#define EL_EMC_GATE_1_GRAY EL_UNKNOWN -#define EL_EMC_GATE_2_GRAY EL_UNKNOWN -#define EL_EMC_GATE_3_GRAY EL_UNKNOWN -#define EL_EMC_GATE_4_GRAY EL_UNKNOWN -#define EL_EMC_GATE_5_GRAY EL_UNKNOWN -#define EL_EMC_GATE_6_GRAY EL_UNKNOWN -#define EL_EMC_GATE_7_GRAY EL_UNKNOWN -#define EL_EMC_GATE_8_GRAY EL_UNKNOWN -#define EL_EMC_KEY_1 EL_UNKNOWN -#define EL_EMC_KEY_2 EL_UNKNOWN -#define EL_EMC_KEY_3 EL_UNKNOWN -#define EL_EMC_KEY_4 EL_UNKNOWN -#define EL_EMC_KEY_5 EL_UNKNOWN -#define EL_EMC_KEY_6 EL_UNKNOWN -#define EL_EMC_KEY_7 EL_UNKNOWN -#define EL_EMC_KEY_8 EL_UNKNOWN -#define EL_EMC_BUMPER EL_UNKNOWN -#define EL_EMC_PLANT EL_UNKNOWN -#define EL_EMC_LENSES EL_UNKNOWN -#define EL_EMC_MAGNIFY EL_UNKNOWN - -#else /* the following EMC style elements are currently not implemented in R'n'D */ #define EL_BALLOON_SWITCH_NONE 667 -#define EL_EMC_LEVEL_BORDER 668 -#define EL_EMC_ANDROID 669 -#define EL_EMC_ANDROID_RIGHT 670 -#define EL_EMC_ANDROID_UP 671 -#define EL_EMC_ANDROID_LEFT 672 -#define EL_EMC_ANDROID_DOWN 673 -#define EL_EMC_ANDROID_LEFT_UP 674 -#define EL_EMC_ANDROID_LEFT_DOWN 675 -#define EL_EMC_ANDROID_RIGHT_UP 676 -#define EL_EMC_ANDROID_RIGHT_DOWN 677 -#define EL_EMC_GRASS 678 -#define EL_EMC_GENERATOR_BALL 679 -#define EL_EMC_GROW 680 -#define EL_EMC_GATE_1 681 -#define EL_EMC_GATE_2 682 -#define EL_EMC_GATE_3 683 -#define EL_EMC_GATE_4 684 -#define EL_EMC_GATE_5 685 -#define EL_EMC_GATE_6 686 -#define EL_EMC_GATE_7 687 -#define EL_EMC_GATE_8 688 -#define EL_EMC_GATE_1_GRAY 689 -#define EL_EMC_GATE_2_GRAY 690 -#define EL_EMC_GATE_3_GRAY 691 -#define EL_EMC_GATE_4_GRAY 692 -#define EL_EMC_GATE_5_GRAY 693 -#define EL_EMC_GATE_6_GRAY 694 -#define EL_EMC_GATE_7_GRAY 695 -#define EL_EMC_GATE_8_GRAY 696 -#define EL_EMC_KEY_1 697 -#define EL_EMC_KEY_2 698 -#define EL_EMC_KEY_3 699 -#define EL_EMC_KEY_4 700 -#define EL_EMC_KEY_5 701 -#define EL_EMC_KEY_6 702 -#define EL_EMC_KEY_7 703 -#define EL_EMC_KEY_8 704 -#define EL_EMC_BUMPER 705 -#define EL_EMC_PLANT 706 -#define EL_EMC_LENSES 707 -#define EL_EMC_MAGNIFY 708 - -#define NUM_FILE_ELEMENTS 709 - -#endif +#define EL_EM_GATE_5 668 +#define EL_EM_GATE_6 669 +#define EL_EM_GATE_7 670 +#define EL_EM_GATE_8 671 +#define EL_EM_GATE_5_GRAY 672 +#define EL_EM_GATE_6_GRAY 673 +#define EL_EM_GATE_7_GRAY 674 +#define EL_EM_GATE_8_GRAY 675 +#define EL_EM_KEY_5 676 +#define EL_EM_KEY_6 677 +#define EL_EM_KEY_7 678 +#define EL_EM_KEY_8 679 +#define EL_EMC_ANDROID 680 +#define EL_EMC_GRASS 681 +#define EL_EMC_MAGIC_BALL 682 +#define EL_EMC_MAGIC_BALL_SWITCH 683 +#define EL_EMC_SPRING_BUMPER 684 +#define EL_EMC_PLANT 685 +#define EL_EMC_LENSES 686 +#define EL_EMC_MAGNIFIER 687 +#define EL_EMC_WALL_9 688 +#define EL_EMC_WALL_10 689 +#define EL_EMC_WALL_11 690 +#define EL_EMC_WALL_12 691 +#define EL_EMC_WALL_13 692 +#define EL_EMC_WALL_14 693 +#define EL_EMC_WALL_15 694 +#define EL_EMC_WALL_16 695 +#define EL_EMC_WALL_SLIPPERY_1 696 +#define EL_EMC_WALL_SLIPPERY_2 697 +#define EL_EMC_WALL_SLIPPERY_3 698 +#define EL_EMC_WALL_SLIPPERY_4 699 +#define EL_EMC_DRIPPER 700 + +#define NUM_FILE_ELEMENTS 701 /* "real" (and therefore drawable) runtime elements */ @@ -1282,7 +1224,7 @@ #define GFX_ARG_POST_DELAY_FIXED 28 #define GFX_ARG_POST_DELAY_RANDOM 29 #define GFX_ARG_NAME 30 -#define GFX_ARG_SCALE_UP 31 +#define GFX_ARG_SCALE_UP_FACTOR 31 #define NUM_GFX_ARGS 32 @@ -1612,6 +1554,21 @@ struct LevelInfo int time_light; int time_timegate; + /* values for the new EMC elements */ + int android_move_time; + int android_clone_time; + boolean ball_random; + boolean ball_state_initial; + int ball_time; + int lenses_score; + int magnify_score; + int slurp_score; + int lenses_time; + int magnify_time; + int wind_direction_initial; + int ball_content[NUM_MAGIC_BALL_CONTENTS][3][3]; + boolean android_array[16]; + int can_move_into_acid_bits; /* bitfield to store property for elements */ int dont_collide_with_bits; /* bitfield to store property for elements */