X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fmain.h;h=6e3a8293a7ac1ba942359dbe3a976a39f79f1aaa;hb=dce12aedb7f597d85daf4ae5dfc4e058ae2f7b5c;hp=1ab53e5bdcbf10fa5cd7ed8e217ebe4ab2351f4e;hpb=445f1cdcd097f1ede6f6224c1aeef91c7f8eae81;p=rocksndiamonds.git diff --git a/src/main.h b/src/main.h index 1ab53e5b..6e3a8293 100644 --- a/src/main.h +++ b/src/main.h @@ -651,7 +651,6 @@ #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 */ @@ -1290,9 +1289,41 @@ #define ACTION_SLURPED_BY_SPRING 49 #define ACTION_TWINKLING 50 #define ACTION_SPLASHING 51 -#define ACTION_OTHER 52 - -#define NUM_ACTIONS 53 +#define ACTION_PAGE_1 52 +#define ACTION_PAGE_2 53 +#define ACTION_PAGE_3 54 +#define ACTION_PAGE_4 55 +#define ACTION_PAGE_5 56 +#define ACTION_PAGE_6 57 +#define ACTION_PAGE_7 58 +#define ACTION_PAGE_8 59 +#define ACTION_PAGE_9 60 +#define ACTION_PAGE_10 61 +#define ACTION_PAGE_11 62 +#define ACTION_PAGE_12 63 +#define ACTION_PAGE_13 64 +#define ACTION_PAGE_14 65 +#define ACTION_PAGE_15 66 +#define ACTION_PAGE_16 67 +#define ACTION_PAGE_17 68 +#define ACTION_PAGE_18 69 +#define ACTION_PAGE_19 70 +#define ACTION_PAGE_20 71 +#define ACTION_PAGE_21 72 +#define ACTION_PAGE_22 73 +#define ACTION_PAGE_23 74 +#define ACTION_PAGE_24 75 +#define ACTION_PAGE_25 76 +#define ACTION_PAGE_26 77 +#define ACTION_PAGE_27 78 +#define ACTION_PAGE_28 79 +#define ACTION_PAGE_29 80 +#define ACTION_PAGE_30 81 +#define ACTION_PAGE_31 82 +#define ACTION_PAGE_32 83 +#define ACTION_OTHER 84 + +#define NUM_ACTIONS 85 #define ACTION_BORING_LAST ACTION_BORING_10 #define ACTION_SLEEPING_LAST ACTION_SLEEPING_3 @@ -1438,9 +1469,9 @@ /* program information and versioning definitions */ -#define RELEASE_311 FALSE +#define RELEASE_3_1_2 FALSE -#if RELEASE_311 +#if RELEASE_3_1_2 #define PROGRAM_VERSION_MAJOR 3 #define PROGRAM_VERSION_MINOR 1 #define PROGRAM_VERSION_PATCH 2 @@ -1450,7 +1481,7 @@ #define PROGRAM_VERSION_MAJOR 3 #define PROGRAM_VERSION_MINOR 2 #define PROGRAM_VERSION_PATCH 0 -#define PROGRAM_VERSION_BUILD 3 +#define PROGRAM_VERSION_BUILD 5 #endif #define PROGRAM_TITLE_STRING "Rocks'n'Diamonds" @@ -1552,6 +1583,11 @@ struct HiScore int Score; }; +struct Content +{ + int e[3][3]; +}; + struct PlayerInfo { boolean present; /* player present in level playfield */ @@ -1620,6 +1656,7 @@ struct PlayerInfo int move_delay; int move_delay_value; + int move_delay_value_next; int move_delay_reset_counter; int push_delay; @@ -1689,7 +1726,7 @@ struct LevelInfo int score[LEVEL_SCORE_ELEMENTS]; - int yamyam_content[MAX_ELEMENT_CONTENTS][3][3]; + struct Content yamyam_content[MAX_ELEMENT_CONTENTS]; int num_yamyam_contents; int amoeba_speed; @@ -1712,7 +1749,7 @@ struct LevelInfo int lenses_time; int magnify_time; int wind_direction_initial; - int ball_content[NUM_MAGIC_BALL_CONTENTS][3][3]; + struct Content ball_content[MAX_ELEMENT_CONTENTS]; boolean android_array[16]; int can_move_into_acid_bits; /* bitfield to store property for elements */ @@ -1853,7 +1890,7 @@ struct ElementChangeInfo short trigger_element; /* element triggering change */ - int target_content[3][3]; /* elements for extended change target */ + struct Content target_content;/* elements for extended change target */ boolean use_target_content; /* use extended change target */ boolean only_if_complete; /* only use complete target content */ boolean use_random_replace; /* use random value for replacing elements */ @@ -1964,7 +2001,7 @@ struct ElementInfo int slippery_type; /* how/where other elements slip away */ - int content[3][3]; /* new elements after explosion */ + struct Content content; /* new elements after explosion */ int explosion_type; /* type of explosion, like 3x3, 3+3 or 1x1 */ int explosion_delay; /* duration of explosion of this element */