#define ED_AREA_YAMYAM_CONTENT_YPOS(n) (17 * MINI_TILEY + \
6 * ((n) / 4) * MINI_TILEY)
+/* magic ball content */
+#define ED_AREA_MAGIC_BALL_CONTENT_XPOS(n) (2 * MINI_TILEX + \
+ 5 * ((n) % 4) * MINI_TILEX)
+#define ED_AREA_MAGIC_BALL_CONTENT_YPOS(n) (17 * MINI_TILEY + \
+ 6 * ((n) / 4) * MINI_TILEY)
+
/* values for scrolling gadgets for drawing area */
#define ED_SCROLLBUTTON_XPOS 24
#define ED_SCROLLBUTTON_YPOS 0
#define GADGET_ID_LEVEL_TIMESCORE_DOWN (GADGET_ID_COUNTER_FIRST + 18)
#define GADGET_ID_LEVEL_TIMESCORE_TEXT (GADGET_ID_COUNTER_FIRST + 19)
#define GADGET_ID_LEVEL_TIMESCORE_UP (GADGET_ID_COUNTER_FIRST + 20)
-#define GADGET_ID_ELEMENT_SCORE_DOWN (GADGET_ID_COUNTER_FIRST + 21)
-#define GADGET_ID_ELEMENT_SCORE_TEXT (GADGET_ID_COUNTER_FIRST + 22)
-#define GADGET_ID_ELEMENT_SCORE_UP (GADGET_ID_COUNTER_FIRST + 23)
-#define GADGET_ID_ELEMENT_CONTENT_DOWN (GADGET_ID_COUNTER_FIRST + 24)
-#define GADGET_ID_ELEMENT_CONTENT_TEXT (GADGET_ID_COUNTER_FIRST + 25)
-#define GADGET_ID_ELEMENT_CONTENT_UP (GADGET_ID_COUNTER_FIRST + 26)
-#define GADGET_ID_ENVELOPE_XSIZE_DOWN (GADGET_ID_COUNTER_FIRST + 27)
-#define GADGET_ID_ENVELOPE_XSIZE_TEXT (GADGET_ID_COUNTER_FIRST + 28)
-#define GADGET_ID_ENVELOPE_XSIZE_UP (GADGET_ID_COUNTER_FIRST + 29)
-#define GADGET_ID_ENVELOPE_YSIZE_DOWN (GADGET_ID_COUNTER_FIRST + 30)
-#define GADGET_ID_ENVELOPE_YSIZE_TEXT (GADGET_ID_COUNTER_FIRST + 31)
-#define GADGET_ID_ENVELOPE_YSIZE_UP (GADGET_ID_COUNTER_FIRST + 32)
-#define GADGET_ID_CUSTOM_SCORE_DOWN (GADGET_ID_COUNTER_FIRST + 33)
-#define GADGET_ID_CUSTOM_SCORE_TEXT (GADGET_ID_COUNTER_FIRST + 34)
-#define GADGET_ID_CUSTOM_SCORE_UP (GADGET_ID_COUNTER_FIRST + 35)
-#define GADGET_ID_CUSTOM_GEMCOUNT_DOWN (GADGET_ID_COUNTER_FIRST + 36)
-#define GADGET_ID_CUSTOM_GEMCOUNT_TEXT (GADGET_ID_COUNTER_FIRST + 37)
-#define GADGET_ID_CUSTOM_GEMCOUNT_UP (GADGET_ID_COUNTER_FIRST + 38)
-#define GADGET_ID_PUSH_DELAY_FIX_DOWN (GADGET_ID_COUNTER_FIRST + 39)
-#define GADGET_ID_PUSH_DELAY_FIX_TEXT (GADGET_ID_COUNTER_FIRST + 40)
-#define GADGET_ID_PUSH_DELAY_FIX_UP (GADGET_ID_COUNTER_FIRST + 41)
-#define GADGET_ID_PUSH_DELAY_RND_DOWN (GADGET_ID_COUNTER_FIRST + 42)
-#define GADGET_ID_PUSH_DELAY_RND_TEXT (GADGET_ID_COUNTER_FIRST + 43)
-#define GADGET_ID_PUSH_DELAY_RND_UP (GADGET_ID_COUNTER_FIRST + 44)
-#define GADGET_ID_DROP_DELAY_FIX_DOWN (GADGET_ID_COUNTER_FIRST + 45)
-#define GADGET_ID_DROP_DELAY_FIX_TEXT (GADGET_ID_COUNTER_FIRST + 46)
-#define GADGET_ID_DROP_DELAY_FIX_UP (GADGET_ID_COUNTER_FIRST + 47)
-#define GADGET_ID_DROP_DELAY_RND_DOWN (GADGET_ID_COUNTER_FIRST + 48)
-#define GADGET_ID_DROP_DELAY_RND_TEXT (GADGET_ID_COUNTER_FIRST + 49)
-#define GADGET_ID_DROP_DELAY_RND_UP (GADGET_ID_COUNTER_FIRST + 50)
-#define GADGET_ID_MOVE_DELAY_FIX_DOWN (GADGET_ID_COUNTER_FIRST + 51)
-#define GADGET_ID_MOVE_DELAY_FIX_TEXT (GADGET_ID_COUNTER_FIRST + 52)
-#define GADGET_ID_MOVE_DELAY_FIX_UP (GADGET_ID_COUNTER_FIRST + 53)
-#define GADGET_ID_MOVE_DELAY_RND_DOWN (GADGET_ID_COUNTER_FIRST + 54)
-#define GADGET_ID_MOVE_DELAY_RND_TEXT (GADGET_ID_COUNTER_FIRST + 55)
-#define GADGET_ID_MOVE_DELAY_RND_UP (GADGET_ID_COUNTER_FIRST + 56)
-#define GADGET_ID_EXPLOSION_DELAY_DOWN (GADGET_ID_COUNTER_FIRST + 57)
-#define GADGET_ID_EXPLOSION_DELAY_TEXT (GADGET_ID_COUNTER_FIRST + 58)
-#define GADGET_ID_EXPLOSION_DELAY_UP (GADGET_ID_COUNTER_FIRST + 59)
-#define GADGET_ID_IGNITION_DELAY_DOWN (GADGET_ID_COUNTER_FIRST + 60)
-#define GADGET_ID_IGNITION_DELAY_TEXT (GADGET_ID_COUNTER_FIRST + 61)
-#define GADGET_ID_IGNITION_DELAY_UP (GADGET_ID_COUNTER_FIRST + 62)
-#define GADGET_ID_CHANGE_DELAY_FIX_DOWN (GADGET_ID_COUNTER_FIRST + 63)
-#define GADGET_ID_CHANGE_DELAY_FIX_TEXT (GADGET_ID_COUNTER_FIRST + 64)
-#define GADGET_ID_CHANGE_DELAY_FIX_UP (GADGET_ID_COUNTER_FIRST + 65)
-#define GADGET_ID_CHANGE_DELAY_RND_DOWN (GADGET_ID_COUNTER_FIRST + 66)
-#define GADGET_ID_CHANGE_DELAY_RND_TEXT (GADGET_ID_COUNTER_FIRST + 67)
-#define GADGET_ID_CHANGE_DELAY_RND_UP (GADGET_ID_COUNTER_FIRST + 68)
-#define GADGET_ID_CHANGE_CONT_RND_DOWN (GADGET_ID_COUNTER_FIRST + 69)
-#define GADGET_ID_CHANGE_CONT_RND_TEXT (GADGET_ID_COUNTER_FIRST + 70)
-#define GADGET_ID_CHANGE_CONT_RND_UP (GADGET_ID_COUNTER_FIRST + 71)
-#define GADGET_ID_GROUP_CONTENT_DOWN (GADGET_ID_COUNTER_FIRST + 72)
-#define GADGET_ID_GROUP_CONTENT_TEXT (GADGET_ID_COUNTER_FIRST + 73)
-#define GADGET_ID_GROUP_CONTENT_UP (GADGET_ID_COUNTER_FIRST + 74)
+#define GADGET_ID_ELEMENT_VALUE1_DOWN (GADGET_ID_COUNTER_FIRST + 21)
+#define GADGET_ID_ELEMENT_VALUE1_TEXT (GADGET_ID_COUNTER_FIRST + 22)
+#define GADGET_ID_ELEMENT_VALUE1_UP (GADGET_ID_COUNTER_FIRST + 23)
+#define GADGET_ID_ELEMENT_VALUE2_DOWN (GADGET_ID_COUNTER_FIRST + 24)
+#define GADGET_ID_ELEMENT_VALUE2_TEXT (GADGET_ID_COUNTER_FIRST + 25)
+#define GADGET_ID_ELEMENT_VALUE2_UP (GADGET_ID_COUNTER_FIRST + 26)
+#define GADGET_ID_YAMYAM_CONTENT_DOWN (GADGET_ID_COUNTER_FIRST + 27)
+#define GADGET_ID_YAMYAM_CONTENT_TEXT (GADGET_ID_COUNTER_FIRST + 28)
+#define GADGET_ID_YAMYAM_CONTENT_UP (GADGET_ID_COUNTER_FIRST + 29)
+#define GADGET_ID_ENVELOPE_XSIZE_DOWN (GADGET_ID_COUNTER_FIRST + 30)
+#define GADGET_ID_ENVELOPE_XSIZE_TEXT (GADGET_ID_COUNTER_FIRST + 31)
+#define GADGET_ID_ENVELOPE_XSIZE_UP (GADGET_ID_COUNTER_FIRST + 32)
+#define GADGET_ID_ENVELOPE_YSIZE_DOWN (GADGET_ID_COUNTER_FIRST + 33)
+#define GADGET_ID_ENVELOPE_YSIZE_TEXT (GADGET_ID_COUNTER_FIRST + 34)
+#define GADGET_ID_ENVELOPE_YSIZE_UP (GADGET_ID_COUNTER_FIRST + 35)
+#define GADGET_ID_CUSTOM_SCORE_DOWN (GADGET_ID_COUNTER_FIRST + 36)
+#define GADGET_ID_CUSTOM_SCORE_TEXT (GADGET_ID_COUNTER_FIRST + 37)
+#define GADGET_ID_CUSTOM_SCORE_UP (GADGET_ID_COUNTER_FIRST + 38)
+#define GADGET_ID_CUSTOM_GEMCOUNT_DOWN (GADGET_ID_COUNTER_FIRST + 39)
+#define GADGET_ID_CUSTOM_GEMCOUNT_TEXT (GADGET_ID_COUNTER_FIRST + 40)
+#define GADGET_ID_CUSTOM_GEMCOUNT_UP (GADGET_ID_COUNTER_FIRST + 41)
+#define GADGET_ID_PUSH_DELAY_FIX_DOWN (GADGET_ID_COUNTER_FIRST + 42)
+#define GADGET_ID_PUSH_DELAY_FIX_TEXT (GADGET_ID_COUNTER_FIRST + 43)
+#define GADGET_ID_PUSH_DELAY_FIX_UP (GADGET_ID_COUNTER_FIRST + 44)
+#define GADGET_ID_PUSH_DELAY_RND_DOWN (GADGET_ID_COUNTER_FIRST + 45)
+#define GADGET_ID_PUSH_DELAY_RND_TEXT (GADGET_ID_COUNTER_FIRST + 46)
+#define GADGET_ID_PUSH_DELAY_RND_UP (GADGET_ID_COUNTER_FIRST + 47)
+#define GADGET_ID_DROP_DELAY_FIX_DOWN (GADGET_ID_COUNTER_FIRST + 48)
+#define GADGET_ID_DROP_DELAY_FIX_TEXT (GADGET_ID_COUNTER_FIRST + 49)
+#define GADGET_ID_DROP_DELAY_FIX_UP (GADGET_ID_COUNTER_FIRST + 50)
+#define GADGET_ID_DROP_DELAY_RND_DOWN (GADGET_ID_COUNTER_FIRST + 51)
+#define GADGET_ID_DROP_DELAY_RND_TEXT (GADGET_ID_COUNTER_FIRST + 52)
+#define GADGET_ID_DROP_DELAY_RND_UP (GADGET_ID_COUNTER_FIRST + 53)
+#define GADGET_ID_MOVE_DELAY_FIX_DOWN (GADGET_ID_COUNTER_FIRST + 54)
+#define GADGET_ID_MOVE_DELAY_FIX_TEXT (GADGET_ID_COUNTER_FIRST + 55)
+#define GADGET_ID_MOVE_DELAY_FIX_UP (GADGET_ID_COUNTER_FIRST + 56)
+#define GADGET_ID_MOVE_DELAY_RND_DOWN (GADGET_ID_COUNTER_FIRST + 57)
+#define GADGET_ID_MOVE_DELAY_RND_TEXT (GADGET_ID_COUNTER_FIRST + 58)
+#define GADGET_ID_MOVE_DELAY_RND_UP (GADGET_ID_COUNTER_FIRST + 59)
+#define GADGET_ID_EXPLOSION_DELAY_DOWN (GADGET_ID_COUNTER_FIRST + 60)
+#define GADGET_ID_EXPLOSION_DELAY_TEXT (GADGET_ID_COUNTER_FIRST + 61)
+#define GADGET_ID_EXPLOSION_DELAY_UP (GADGET_ID_COUNTER_FIRST + 62)
+#define GADGET_ID_IGNITION_DELAY_DOWN (GADGET_ID_COUNTER_FIRST + 63)
+#define GADGET_ID_IGNITION_DELAY_TEXT (GADGET_ID_COUNTER_FIRST + 64)
+#define GADGET_ID_IGNITION_DELAY_UP (GADGET_ID_COUNTER_FIRST + 65)
+#define GADGET_ID_CHANGE_DELAY_FIX_DOWN (GADGET_ID_COUNTER_FIRST + 66)
+#define GADGET_ID_CHANGE_DELAY_FIX_TEXT (GADGET_ID_COUNTER_FIRST + 67)
+#define GADGET_ID_CHANGE_DELAY_FIX_UP (GADGET_ID_COUNTER_FIRST + 68)
+#define GADGET_ID_CHANGE_DELAY_RND_DOWN (GADGET_ID_COUNTER_FIRST + 69)
+#define GADGET_ID_CHANGE_DELAY_RND_TEXT (GADGET_ID_COUNTER_FIRST + 70)
+#define GADGET_ID_CHANGE_DELAY_RND_UP (GADGET_ID_COUNTER_FIRST + 71)
+#define GADGET_ID_CHANGE_CONT_RND_DOWN (GADGET_ID_COUNTER_FIRST + 72)
+#define GADGET_ID_CHANGE_CONT_RND_TEXT (GADGET_ID_COUNTER_FIRST + 73)
+#define GADGET_ID_CHANGE_CONT_RND_UP (GADGET_ID_COUNTER_FIRST + 74)
+#define GADGET_ID_GROUP_CONTENT_DOWN (GADGET_ID_COUNTER_FIRST + 75)
+#define GADGET_ID_GROUP_CONTENT_TEXT (GADGET_ID_COUNTER_FIRST + 76)
+#define GADGET_ID_GROUP_CONTENT_UP (GADGET_ID_COUNTER_FIRST + 77)
/* drawing area identifiers */
-#define GADGET_ID_DRAWING_AREA_FIRST (GADGET_ID_COUNTER_FIRST + 75)
+#define GADGET_ID_DRAWING_AREA_FIRST (GADGET_ID_COUNTER_FIRST + 78)
#define GADGET_ID_DRAWING_LEVEL (GADGET_ID_DRAWING_AREA_FIRST + 0)
-#define GADGET_ID_ELEMENT_CONTENT_0 (GADGET_ID_DRAWING_AREA_FIRST + 1)
-#define GADGET_ID_ELEMENT_CONTENT_1 (GADGET_ID_DRAWING_AREA_FIRST + 2)
-#define GADGET_ID_ELEMENT_CONTENT_2 (GADGET_ID_DRAWING_AREA_FIRST + 3)
-#define GADGET_ID_ELEMENT_CONTENT_3 (GADGET_ID_DRAWING_AREA_FIRST + 4)
-#define GADGET_ID_ELEMENT_CONTENT_4 (GADGET_ID_DRAWING_AREA_FIRST + 5)
-#define GADGET_ID_ELEMENT_CONTENT_5 (GADGET_ID_DRAWING_AREA_FIRST + 6)
-#define GADGET_ID_ELEMENT_CONTENT_6 (GADGET_ID_DRAWING_AREA_FIRST + 7)
-#define GADGET_ID_ELEMENT_CONTENT_7 (GADGET_ID_DRAWING_AREA_FIRST + 8)
-#define GADGET_ID_AMOEBA_CONTENT (GADGET_ID_DRAWING_AREA_FIRST + 9)
-#define GADGET_ID_CUSTOM_GRAPHIC (GADGET_ID_DRAWING_AREA_FIRST + 10)
-#define GADGET_ID_CUSTOM_CONTENT (GADGET_ID_DRAWING_AREA_FIRST + 11)
-#define GADGET_ID_CUSTOM_MOVE_ENTER (GADGET_ID_DRAWING_AREA_FIRST + 12)
-#define GADGET_ID_CUSTOM_MOVE_LEAVE (GADGET_ID_DRAWING_AREA_FIRST + 13)
-#define GADGET_ID_CUSTOM_CHANGE_TARGET (GADGET_ID_DRAWING_AREA_FIRST + 14)
-#define GADGET_ID_CUSTOM_CHANGE_CONTENT (GADGET_ID_DRAWING_AREA_FIRST + 15)
-#define GADGET_ID_CUSTOM_CHANGE_TRIGGER (GADGET_ID_DRAWING_AREA_FIRST + 16)
-#define GADGET_ID_GROUP_CONTENT (GADGET_ID_DRAWING_AREA_FIRST + 17)
-#define GADGET_ID_RANDOM_BACKGROUND (GADGET_ID_DRAWING_AREA_FIRST + 18)
+#define GADGET_ID_YAMYAM_CONTENT_0 (GADGET_ID_DRAWING_AREA_FIRST + 1)
+#define GADGET_ID_YAMYAM_CONTENT_1 (GADGET_ID_DRAWING_AREA_FIRST + 2)
+#define GADGET_ID_YAMYAM_CONTENT_2 (GADGET_ID_DRAWING_AREA_FIRST + 3)
+#define GADGET_ID_YAMYAM_CONTENT_3 (GADGET_ID_DRAWING_AREA_FIRST + 4)
+#define GADGET_ID_YAMYAM_CONTENT_4 (GADGET_ID_DRAWING_AREA_FIRST + 5)
+#define GADGET_ID_YAMYAM_CONTENT_5 (GADGET_ID_DRAWING_AREA_FIRST + 6)
+#define GADGET_ID_YAMYAM_CONTENT_6 (GADGET_ID_DRAWING_AREA_FIRST + 7)
+#define GADGET_ID_YAMYAM_CONTENT_7 (GADGET_ID_DRAWING_AREA_FIRST + 8)
+#define GADGET_ID_MAGIC_BALL_CONTENT_0 (GADGET_ID_DRAWING_AREA_FIRST + 9)
+#define GADGET_ID_MAGIC_BALL_CONTENT_1 (GADGET_ID_DRAWING_AREA_FIRST + 10)
+#define GADGET_ID_MAGIC_BALL_CONTENT_2 (GADGET_ID_DRAWING_AREA_FIRST + 11)
+#define GADGET_ID_MAGIC_BALL_CONTENT_3 (GADGET_ID_DRAWING_AREA_FIRST + 12)
+#define GADGET_ID_MAGIC_BALL_CONTENT_4 (GADGET_ID_DRAWING_AREA_FIRST + 13)
+#define GADGET_ID_MAGIC_BALL_CONTENT_5 (GADGET_ID_DRAWING_AREA_FIRST + 14)
+#define GADGET_ID_MAGIC_BALL_CONTENT_6 (GADGET_ID_DRAWING_AREA_FIRST + 15)
+#define GADGET_ID_MAGIC_BALL_CONTENT_7 (GADGET_ID_DRAWING_AREA_FIRST + 16)
+#define GADGET_ID_AMOEBA_CONTENT (GADGET_ID_DRAWING_AREA_FIRST + 17)
+#define GADGET_ID_CUSTOM_GRAPHIC (GADGET_ID_DRAWING_AREA_FIRST + 18)
+#define GADGET_ID_CUSTOM_CONTENT (GADGET_ID_DRAWING_AREA_FIRST + 19)
+#define GADGET_ID_CUSTOM_MOVE_ENTER (GADGET_ID_DRAWING_AREA_FIRST + 20)
+#define GADGET_ID_CUSTOM_MOVE_LEAVE (GADGET_ID_DRAWING_AREA_FIRST + 21)
+#define GADGET_ID_CUSTOM_CHANGE_TARGET (GADGET_ID_DRAWING_AREA_FIRST + 22)
+#define GADGET_ID_CUSTOM_CHANGE_CONTENT (GADGET_ID_DRAWING_AREA_FIRST + 23)
+#define GADGET_ID_CUSTOM_CHANGE_TRIGGER (GADGET_ID_DRAWING_AREA_FIRST + 24)
+#define GADGET_ID_GROUP_CONTENT (GADGET_ID_DRAWING_AREA_FIRST + 25)
+#define GADGET_ID_RANDOM_BACKGROUND (GADGET_ID_DRAWING_AREA_FIRST + 26)
/* text input identifiers */
-#define GADGET_ID_TEXT_INPUT_FIRST (GADGET_ID_DRAWING_AREA_FIRST + 19)
+#define GADGET_ID_TEXT_INPUT_FIRST (GADGET_ID_DRAWING_AREA_FIRST + 27)
#define GADGET_ID_LEVEL_NAME (GADGET_ID_TEXT_INPUT_FIRST + 0)
#define GADGET_ID_LEVEL_AUTHOR (GADGET_ID_TEXT_INPUT_FIRST + 1)
#define ED_COUNTER_ID_LEVEL_TIMELIMIT 4
#define ED_COUNTER_ID_LEVEL_TIMESCORE 5
#define ED_COUNTER_ID_LEVEL_RANDOM 6
-#define ED_COUNTER_ID_ELEMENT_SCORE 7
-#define ED_COUNTER_ID_ELEMENT_CONTENT 8
-#define ED_COUNTER_ID_ENVELOPE_XSIZE 9
-#define ED_COUNTER_ID_ENVELOPE_YSIZE 10
-#define ED_COUNTER_ID_CUSTOM_SCORE 11
-#define ED_COUNTER_ID_CUSTOM_GEMCOUNT 12
-#define ED_COUNTER_ID_PUSH_DELAY_FIX 13
-#define ED_COUNTER_ID_PUSH_DELAY_RND 14
-#define ED_COUNTER_ID_DROP_DELAY_FIX 15
-#define ED_COUNTER_ID_DROP_DELAY_RND 16
-#define ED_COUNTER_ID_MOVE_DELAY_FIX 17
-#define ED_COUNTER_ID_MOVE_DELAY_RND 18
-#define ED_COUNTER_ID_EXPLOSION_DELAY 19
-#define ED_COUNTER_ID_IGNITION_DELAY 20
-#define ED_COUNTER_ID_GROUP_CONTENT 21
-#define ED_COUNTER_ID_CHANGE_DELAY_FIX 22
-#define ED_COUNTER_ID_CHANGE_DELAY_RND 23
-#define ED_COUNTER_ID_CHANGE_CONT_RND 24
-
-#define ED_NUM_COUNTERBUTTONS 25
+#define ED_COUNTER_ID_ELEMENT_VALUE1 7
+#define ED_COUNTER_ID_ELEMENT_VALUE2 8
+#define ED_COUNTER_ID_YAMYAM_CONTENT 9
+#define ED_COUNTER_ID_ENVELOPE_XSIZE 10
+#define ED_COUNTER_ID_ENVELOPE_YSIZE 11
+#define ED_COUNTER_ID_CUSTOM_SCORE 12
+#define ED_COUNTER_ID_CUSTOM_GEMCOUNT 13
+#define ED_COUNTER_ID_PUSH_DELAY_FIX 14
+#define ED_COUNTER_ID_PUSH_DELAY_RND 15
+#define ED_COUNTER_ID_DROP_DELAY_FIX 16
+#define ED_COUNTER_ID_DROP_DELAY_RND 17
+#define ED_COUNTER_ID_MOVE_DELAY_FIX 18
+#define ED_COUNTER_ID_MOVE_DELAY_RND 19
+#define ED_COUNTER_ID_EXPLOSION_DELAY 20
+#define ED_COUNTER_ID_IGNITION_DELAY 21
+#define ED_COUNTER_ID_GROUP_CONTENT 22
+#define ED_COUNTER_ID_CHANGE_DELAY_FIX 23
+#define ED_COUNTER_ID_CHANGE_DELAY_RND 24
+#define ED_COUNTER_ID_CHANGE_CONT_RND 25
+
+#define ED_NUM_COUNTERBUTTONS 26
#define ED_COUNTER_ID_LEVEL_FIRST ED_COUNTER_ID_LEVEL_XSIZE
#define ED_COUNTER_ID_LEVEL_LAST ED_COUNTER_ID_LEVEL_RANDOM
/* values for drawing area gadgets */
#define ED_DRAWING_ID_DRAWING_LEVEL 0
-#define ED_DRAWING_ID_ELEMENT_CONTENT_0 1
-#define ED_DRAWING_ID_ELEMENT_CONTENT_1 2
-#define ED_DRAWING_ID_ELEMENT_CONTENT_2 3
-#define ED_DRAWING_ID_ELEMENT_CONTENT_3 4
-#define ED_DRAWING_ID_ELEMENT_CONTENT_4 5
-#define ED_DRAWING_ID_ELEMENT_CONTENT_5 6
-#define ED_DRAWING_ID_ELEMENT_CONTENT_6 7
-#define ED_DRAWING_ID_ELEMENT_CONTENT_7 8
-#define ED_DRAWING_ID_AMOEBA_CONTENT 9
-#define ED_DRAWING_ID_CUSTOM_GRAPHIC 10
-#define ED_DRAWING_ID_CUSTOM_CONTENT 11
-#define ED_DRAWING_ID_CUSTOM_MOVE_ENTER 12
-#define ED_DRAWING_ID_CUSTOM_MOVE_LEAVE 13
-#define ED_DRAWING_ID_CUSTOM_CHANGE_TARGET 14
-#define ED_DRAWING_ID_CUSTOM_CHANGE_CONTENT 15
-#define ED_DRAWING_ID_CUSTOM_CHANGE_TRIGGER 16
-#define ED_DRAWING_ID_GROUP_CONTENT 17
-#define ED_DRAWING_ID_RANDOM_BACKGROUND 18
-
-#define ED_NUM_DRAWING_AREAS 19
+#define ED_DRAWING_ID_YAMYAM_CONTENT_0 1
+#define ED_DRAWING_ID_YAMYAM_CONTENT_1 2
+#define ED_DRAWING_ID_YAMYAM_CONTENT_2 3
+#define ED_DRAWING_ID_YAMYAM_CONTENT_3 4
+#define ED_DRAWING_ID_YAMYAM_CONTENT_4 5
+#define ED_DRAWING_ID_YAMYAM_CONTENT_5 6
+#define ED_DRAWING_ID_YAMYAM_CONTENT_6 7
+#define ED_DRAWING_ID_YAMYAM_CONTENT_7 8
+#define ED_DRAWING_ID_MAGIC_BALL_CONTENT_0 9
+#define ED_DRAWING_ID_MAGIC_BALL_CONTENT_1 10
+#define ED_DRAWING_ID_MAGIC_BALL_CONTENT_2 11
+#define ED_DRAWING_ID_MAGIC_BALL_CONTENT_3 12
+#define ED_DRAWING_ID_MAGIC_BALL_CONTENT_4 13
+#define ED_DRAWING_ID_MAGIC_BALL_CONTENT_5 14
+#define ED_DRAWING_ID_MAGIC_BALL_CONTENT_6 15
+#define ED_DRAWING_ID_MAGIC_BALL_CONTENT_7 16
+#define ED_DRAWING_ID_AMOEBA_CONTENT 17
+#define ED_DRAWING_ID_CUSTOM_GRAPHIC 18
+#define ED_DRAWING_ID_CUSTOM_CONTENT 19
+#define ED_DRAWING_ID_CUSTOM_MOVE_ENTER 20
+#define ED_DRAWING_ID_CUSTOM_MOVE_LEAVE 21
+#define ED_DRAWING_ID_CUSTOM_CHANGE_TARGET 22
+#define ED_DRAWING_ID_CUSTOM_CHANGE_CONTENT 23
+#define ED_DRAWING_ID_CUSTOM_CHANGE_TRIGGER 24
+#define ED_DRAWING_ID_GROUP_CONTENT 25
+#define ED_DRAWING_ID_RANDOM_BACKGROUND 26
+
+#define ED_NUM_DRAWING_AREAS 27
/*
{
ED_SETTINGS_XPOS(0), ED_SETTINGS_YPOS(0),
MIN_SCORE, MAX_SCORE,
- GADGET_ID_ELEMENT_SCORE_DOWN, GADGET_ID_ELEMENT_SCORE_UP,
- GADGET_ID_ELEMENT_SCORE_TEXT, GADGET_ID_NONE,
+ GADGET_ID_ELEMENT_VALUE1_DOWN, GADGET_ID_ELEMENT_VALUE1_UP,
+ GADGET_ID_ELEMENT_VALUE1_TEXT, GADGET_ID_NONE,
+ NULL, /* will be set when used */
+ NULL, NULL, NULL
+ },
+ {
+ ED_SETTINGS_XPOS(0), ED_SETTINGS_YPOS(1),
+ MIN_SCORE, MAX_SCORE,
+ GADGET_ID_ELEMENT_VALUE2_DOWN, GADGET_ID_ELEMENT_VALUE2_UP,
+ GADGET_ID_ELEMENT_VALUE2_TEXT, GADGET_ID_NONE,
NULL, /* will be set when used */
NULL, NULL, NULL
},
{
ED_SETTINGS_XPOS(0), ED_SETTINGS_YPOS(3),
MIN_ELEMENT_CONTENTS, MAX_ELEMENT_CONTENTS,
- GADGET_ID_ELEMENT_CONTENT_DOWN, GADGET_ID_ELEMENT_CONTENT_UP,
- GADGET_ID_ELEMENT_CONTENT_TEXT, GADGET_ID_NONE,
+ GADGET_ID_YAMYAM_CONTENT_DOWN, GADGET_ID_YAMYAM_CONTENT_UP,
+ GADGET_ID_YAMYAM_CONTENT_TEXT, GADGET_ID_NONE,
&level.num_yamyam_contents,
NULL, NULL, "number of content areas"
},
{
ED_AREA_YAMYAM_CONTENT_XPOS(0), ED_AREA_YAMYAM_CONTENT_YPOS(0),
3, 3,
- GADGET_ID_ELEMENT_CONTENT_0, GADGET_ID_NONE,
+ GADGET_ID_YAMYAM_CONTENT_0, GADGET_ID_NONE,
NULL, NULL, "1"
},
{
ED_AREA_YAMYAM_CONTENT_XPOS(1), ED_AREA_YAMYAM_CONTENT_YPOS(1),
3, 3,
- GADGET_ID_ELEMENT_CONTENT_1, GADGET_ID_NONE,
+ GADGET_ID_YAMYAM_CONTENT_1, GADGET_ID_NONE,
NULL, NULL, "2"
},
{
ED_AREA_YAMYAM_CONTENT_XPOS(2), ED_AREA_YAMYAM_CONTENT_YPOS(2),
3, 3,
- GADGET_ID_ELEMENT_CONTENT_2, GADGET_ID_NONE,
+ GADGET_ID_YAMYAM_CONTENT_2, GADGET_ID_NONE,
NULL, NULL, "3"
},
{
ED_AREA_YAMYAM_CONTENT_XPOS(3), ED_AREA_YAMYAM_CONTENT_YPOS(3),
3, 3,
- GADGET_ID_ELEMENT_CONTENT_3, GADGET_ID_NONE,
+ GADGET_ID_YAMYAM_CONTENT_3, GADGET_ID_NONE,
NULL, NULL, "4"
},
{
ED_AREA_YAMYAM_CONTENT_XPOS(4), ED_AREA_YAMYAM_CONTENT_YPOS(4),
3, 3,
- GADGET_ID_ELEMENT_CONTENT_4, GADGET_ID_NONE,
+ GADGET_ID_YAMYAM_CONTENT_4, GADGET_ID_NONE,
NULL, NULL, "5"
},
{
ED_AREA_YAMYAM_CONTENT_XPOS(5), ED_AREA_YAMYAM_CONTENT_YPOS(5),
3, 3,
- GADGET_ID_ELEMENT_CONTENT_5, GADGET_ID_NONE,
+ GADGET_ID_YAMYAM_CONTENT_5, GADGET_ID_NONE,
NULL, NULL, "6"
},
{
ED_AREA_YAMYAM_CONTENT_XPOS(6), ED_AREA_YAMYAM_CONTENT_YPOS(6),
3, 3,
- GADGET_ID_ELEMENT_CONTENT_6, GADGET_ID_NONE,
+ GADGET_ID_YAMYAM_CONTENT_6, GADGET_ID_NONE,
NULL, NULL, "7"
},
{
ED_AREA_YAMYAM_CONTENT_XPOS(7), ED_AREA_YAMYAM_CONTENT_YPOS(7),
3, 3,
- GADGET_ID_ELEMENT_CONTENT_7, GADGET_ID_NONE,
+ GADGET_ID_YAMYAM_CONTENT_7, GADGET_ID_NONE,
+ NULL, NULL, "8"
+ },
+
+ /* ---------- magic ball content ----------------------------------------- */
+
+ {
+ ED_AREA_MAGIC_BALL_CONTENT_XPOS(0), ED_AREA_MAGIC_BALL_CONTENT_YPOS(0),
+ 3, 3,
+ GADGET_ID_MAGIC_BALL_CONTENT_0, GADGET_ID_NONE,
+ NULL, NULL, "1"
+ },
+ {
+ ED_AREA_MAGIC_BALL_CONTENT_XPOS(1), ED_AREA_MAGIC_BALL_CONTENT_YPOS(1),
+ 3, 3,
+ GADGET_ID_MAGIC_BALL_CONTENT_1, GADGET_ID_NONE,
+ NULL, NULL, "2"
+ },
+ {
+ ED_AREA_MAGIC_BALL_CONTENT_XPOS(2), ED_AREA_MAGIC_BALL_CONTENT_YPOS(2),
+ 3, 3,
+ GADGET_ID_MAGIC_BALL_CONTENT_2, GADGET_ID_NONE,
+ NULL, NULL, "3"
+ },
+ {
+ ED_AREA_MAGIC_BALL_CONTENT_XPOS(3), ED_AREA_MAGIC_BALL_CONTENT_YPOS(3),
+ 3, 3,
+ GADGET_ID_MAGIC_BALL_CONTENT_3, GADGET_ID_NONE,
+ NULL, NULL, "4"
+ },
+ {
+ ED_AREA_MAGIC_BALL_CONTENT_XPOS(4), ED_AREA_MAGIC_BALL_CONTENT_YPOS(4),
+ 3, 3,
+ GADGET_ID_MAGIC_BALL_CONTENT_4, GADGET_ID_NONE,
+ NULL, NULL, "5"
+ },
+ {
+ ED_AREA_MAGIC_BALL_CONTENT_XPOS(5), ED_AREA_MAGIC_BALL_CONTENT_YPOS(5),
+ 3, 3,
+ GADGET_ID_MAGIC_BALL_CONTENT_5, GADGET_ID_NONE,
+ NULL, NULL, "6"
+ },
+ {
+ ED_AREA_MAGIC_BALL_CONTENT_XPOS(6), ED_AREA_MAGIC_BALL_CONTENT_YPOS(6),
+ 3, 3,
+ GADGET_ID_MAGIC_BALL_CONTENT_6, GADGET_ID_NONE,
+ NULL, NULL, "7"
+ },
+ {
+ ED_AREA_MAGIC_BALL_CONTENT_XPOS(7), ED_AREA_MAGIC_BALL_CONTENT_YPOS(7),
+ 3, 3,
+ GADGET_ID_MAGIC_BALL_CONTENT_7, GADGET_ID_NONE,
NULL, NULL, "8"
},
static int editor_el_emerald_mine_club[] =
{
- EL_EMC_KEY_5,
- EL_EMC_KEY_6,
- EL_EMC_KEY_7,
- EL_EMC_KEY_8,
+ EL_EM_KEY_5,
+ EL_EM_KEY_6,
+ EL_EM_KEY_7,
+ EL_EM_KEY_8,
- EL_EMC_GATE_5,
- EL_EMC_GATE_6,
- EL_EMC_GATE_7,
- EL_EMC_GATE_8,
+ EL_EM_GATE_5,
+ EL_EM_GATE_6,
+ EL_EM_GATE_7,
+ EL_EM_GATE_8,
- EL_EMC_GATE_5_GRAY,
- EL_EMC_GATE_6_GRAY,
- EL_EMC_GATE_7_GRAY,
- EL_EMC_GATE_8_GRAY,
+ EL_EM_GATE_5_GRAY,
+ EL_EM_GATE_6_GRAY,
+ EL_EM_GATE_7_GRAY,
+ EL_EM_GATE_8_GRAY,
EL_EMC_STEELWALL_1,
EL_EMC_STEELWALL_2,
EL_EMC_MAGIC_BALL,
EL_EMC_MAGIC_BALL_SWITCH,
EL_SPRING,
- EL_EMC_BUMPER,
+ EL_EMC_SPRING_BUMPER,
-#if 0
- EL_EMC_LEVEL_BORDER,
-#endif
+ EL_EMC_DRIPPER,
+ EL_EMPTY,
+ EL_EMPTY,
+ EL_EMPTY,
};
static int *editor_hl_emerald_mine_club_ptr = editor_hl_emerald_mine_club;
static int *editor_el_emerald_mine_club_ptr = editor_el_emerald_mine_club;
for (x = 0; x < group_element_info.num_elements; x++)
DrawMiniGraphicExt(drawto, gi->x + x * MINI_TILEX, gi->y,
el2edimg(group_element_info.element[x]));
- else if (id >= ED_DRAWING_ID_ELEMENT_CONTENT_0 &&
- id <= ED_DRAWING_ID_ELEMENT_CONTENT_7)
+ else if (id >= ED_DRAWING_ID_YAMYAM_CONTENT_0 &&
+ id <= ED_DRAWING_ID_YAMYAM_CONTENT_7)
{
- int nr = id - ED_DRAWING_ID_ELEMENT_CONTENT_0;
+ int nr = id - ED_DRAWING_ID_YAMYAM_CONTENT_0;
for (y = 0; y < 3; y++)
for (x = 0; x < 3; x++)
gi->x + x * MINI_TILEX, gi->y + y * MINI_TILEY,
el2edimg(level.yamyam_content[nr][x][y]));
}
+ else if (id >= ED_DRAWING_ID_MAGIC_BALL_CONTENT_0 &&
+ id <= ED_DRAWING_ID_MAGIC_BALL_CONTENT_7)
+ {
+ int nr = id - ED_DRAWING_ID_MAGIC_BALL_CONTENT_0;
+
+ for (y = 0; y < 3; y++)
+ for (x = 0; x < 3; x++)
+ DrawMiniGraphicExt(drawto,
+ gi->x + x * MINI_TILEX, gi->y + y * MINI_TILEY,
+ el2edimg(level.ball_content[nr][x][y]));
+ }
}
static void ScrollMiniLevel(int from_x, int from_y, int scroll)
int y; /* set after gadget position was modified */
#endif
- /* set position for "score" counter gadget */
- if (id == ED_COUNTER_ID_ELEMENT_SCORE)
+ /* set position for "value1/value2" counter gadgets (score in most cases) */
+ if (id == ED_COUNTER_ID_ELEMENT_VALUE1 ||
+ id == ED_COUNTER_ID_ELEMENT_VALUE2)
{
ModifyGadget(gi_down, GDI_Y, SY + counterbutton_info[id].y, GDI_END);
ModifyGadget(gi_text, GDI_Y, SY + counterbutton_info[id].y, GDI_END);
MapDrawingArea(id);
}
-static void DrawElementContentAreas()
+static void DrawYamYamContentAreas()
{
int x = SX + ED_AREA_YAMYAM_CONTENT_XPOS(3) + 4 * MINI_TILEX;
int y = SY + ED_AREA_YAMYAM_CONTENT_YPOS(0) + ED_BORDER_AREA_YSIZE;
int i;
/* display counter to choose number of element content areas */
- MapCounterButtons(ED_COUNTER_ID_ELEMENT_CONTENT);
+ MapCounterButtons(ED_COUNTER_ID_YAMYAM_CONTENT);
for (i = 0; i < MAX_ELEMENT_CONTENTS; i++)
{
- int id = ED_DRAWING_ID_ELEMENT_CONTENT_0 + i;
- int font_height = getFontHeight(FONT_TEXT_1);
+ int id = ED_DRAWING_ID_YAMYAM_CONTENT_0 + i;
if (i < level.num_yamyam_contents)
+ {
MapDrawingArea(id);
+ }
else
{
+ int font_height = getFontHeight(FONT_TEXT_1);
+
UnmapDrawingArea(id);
/* delete content areas in case of reducing number of them */
DrawText(x, y + 2 * MINI_TILEY, "smashed", FONT_TEXT_1);
}
+static void DrawMagicBallContentAreas()
+{
+ int x = SX + ED_AREA_MAGIC_BALL_CONTENT_XPOS(3) + 4 * MINI_TILEX;
+ int y = SY + ED_AREA_MAGIC_BALL_CONTENT_YPOS(0) + ED_BORDER_AREA_YSIZE;
+ int i;
+
+ for (i = 0; i < NUM_MAGIC_BALL_CONTENTS; i++)
+ MapDrawingArea(ED_DRAWING_ID_MAGIC_BALL_CONTENT_0 + i);
+
+ DrawText(x, y + 0 * MINI_TILEY, "generated", FONT_TEXT_1);
+ DrawText(x, y + 1 * MINI_TILEY, "when", FONT_TEXT_1);
+ DrawText(x, y + 2 * MINI_TILEY, "active", FONT_TEXT_1);
+}
+
static void DrawGroupElementArea(int element)
{
int num_elements = group_element_info.num_elements;
#define TEXT_COLLECTING "Score for collecting"
#define TEXT_SMASHING "Score for smashing"
+#define TEXT_SLURPING "Score for slurping"
#define TEXT_CRACKING "Score for cracking"
-#define TEXT_SPEED "Speed of amoeba growth"
+#define TEXT_AMOEBA_SPEED "Speed of amoeba growth"
#define TEXT_DURATION "Duration when activated"
+#define TEXT_BALL_DELAY "Element generation delay"
+#define TEXT_MOVE_SPEED "Speed of android moving"
+#define TEXT_CLONE_SPEED "Speed of android cloning"
static struct
{
{ EL_EM_KEY_3_FILE, &level.score[SC_KEY], TEXT_COLLECTING },
{ EL_EM_KEY_4_FILE, &level.score[SC_KEY], TEXT_COLLECTING },
#endif
- { EL_AMOEBA_WET, &level.amoeba_speed, TEXT_SPEED },
- { EL_AMOEBA_DRY, &level.amoeba_speed, TEXT_SPEED },
- { EL_AMOEBA_FULL, &level.amoeba_speed, TEXT_SPEED },
- { EL_BD_AMOEBA, &level.amoeba_speed, TEXT_SPEED },
+ { EL_EM_KEY_5, &level.score[SC_KEY], TEXT_COLLECTING },
+ { EL_EM_KEY_6, &level.score[SC_KEY], TEXT_COLLECTING },
+ { EL_EM_KEY_7, &level.score[SC_KEY], TEXT_COLLECTING },
+ { EL_EM_KEY_8, &level.score[SC_KEY], TEXT_COLLECTING },
+ { EL_AMOEBA_WET, &level.amoeba_speed, TEXT_AMOEBA_SPEED },
+ { EL_AMOEBA_DRY, &level.amoeba_speed, TEXT_AMOEBA_SPEED },
+ { EL_AMOEBA_FULL, &level.amoeba_speed, TEXT_AMOEBA_SPEED },
+ { EL_BD_AMOEBA, &level.amoeba_speed, TEXT_AMOEBA_SPEED },
{ EL_MAGIC_WALL, &level.time_magic_wall, TEXT_DURATION },
{ EL_ROBOT_WHEEL, &level.time_wheel, TEXT_DURATION },
+
+#if 1
+ { EL_EMC_ANDROID, &level.android_move_time, TEXT_MOVE_SPEED },
+ { EL_EMC_ANDROID, &level.android_clone_time, TEXT_CLONE_SPEED },
+ { EL_EMC_MAGIC_BALL, &level.ball_time, TEXT_BALL_DELAY },
+ { EL_EMC_LENSES, &level.lenses_score, TEXT_COLLECTING },
+ { EL_EMC_MAGNIFIER, &level.magnify_score, TEXT_COLLECTING },
+ { EL_ROBOT, &level.slurp_score, TEXT_SLURPING },
+ { EL_EMC_LENSES, &level.lenses_time, TEXT_DURATION },
+ { EL_EMC_MAGNIFIER, &level.magnify_time, TEXT_DURATION },
+#endif
+
{ -1, NULL, NULL }
};
static void DrawPropertiesConfig()
{
+ int max_num_element_counters = 2;
+ int num_element_counters = 0;
int i;
if (!checkPropertiesConfig(properties_element))
return;
}
- /* check if there are elements where a score can be chosen for */
+ /* check if there are elements where a value can be chosen for */
for (i = 0; elements_with_counter[i].element != -1; i++)
{
if (elements_with_counter[i].element == properties_element)
{
- int counter_id = ED_COUNTER_ID_ELEMENT_SCORE;
+ int counter_id = ED_COUNTER_ID_ELEMENT_VALUE1 + num_element_counters;
counterbutton_info[counter_id].y =
ED_SETTINGS_YPOS((HAS_CONTENT(properties_element) ? 1 : 0) +
(CAN_GROW(properties_element) ? 1 : 0) +
(COULD_MOVE_INTO_ACID(properties_element) ? 1 : 0) +
- (MAYBE_DONT_COLLIDE_WITH(properties_element) ? 1 :0));
+ (MAYBE_DONT_COLLIDE_WITH(properties_element) ? 1 : 0)+
+ num_element_counters);
counterbutton_info[counter_id].value = elements_with_counter[i].value;
counterbutton_info[counter_id].text_right= elements_with_counter[i].text;
MapCounterButtons(counter_id);
- break;
+ num_element_counters++;
+ if (num_element_counters >= max_num_element_counters)
+ break;
}
}
if (IS_AMOEBOID(properties_element))
MapDrawingArea(ED_DRAWING_ID_AMOEBA_CONTENT);
- else
- DrawElementContentAreas();
+ else if (properties_element == EL_YAMYAM)
+ DrawYamYamContentAreas();
}
+ if (properties_element == EL_EMC_MAGIC_BALL)
+ DrawMagicBallContentAreas();
+
if (ELEM_IS_PLAYER(properties_element))
{
MapCheckbuttonGadget(ED_CHECKBUTTON_ID_CAN_FALL_INTO_ACID);
}
else if (id == GADGET_ID_RANDOM_BACKGROUND)
random_placement_background_element = new_element;
- else if (id >= GADGET_ID_ELEMENT_CONTENT_0 &&
- id <= GADGET_ID_ELEMENT_CONTENT_7)
- level.yamyam_content[id - GADGET_ID_ELEMENT_CONTENT_0][sx][sy] =
+ else if (id >= GADGET_ID_YAMYAM_CONTENT_0 &&
+ id <= GADGET_ID_YAMYAM_CONTENT_7)
+ level.yamyam_content[id - GADGET_ID_YAMYAM_CONTENT_0][sx][sy] =
+ new_element;
+ else if (id >= GADGET_ID_MAGIC_BALL_CONTENT_0 &&
+ id <= GADGET_ID_MAGIC_BALL_CONTENT_7)
+ level.ball_content[id - GADGET_ID_MAGIC_BALL_CONTENT_0][sx][sy] =
new_element;
}
break;
PickDrawingElement(button, group_element_info.element[sx]);
else if (id == GADGET_ID_RANDOM_BACKGROUND)
PickDrawingElement(button, random_placement_background_element);
- else if (id >= GADGET_ID_ELEMENT_CONTENT_0 &&
- id <= GADGET_ID_ELEMENT_CONTENT_7)
+ else if (id >= GADGET_ID_YAMYAM_CONTENT_0 &&
+ id <= GADGET_ID_YAMYAM_CONTENT_7)
{
- int i = id - GADGET_ID_ELEMENT_CONTENT_0;
+ int i = id - GADGET_ID_YAMYAM_CONTENT_0;
PickDrawingElement(button, level.yamyam_content[i][sx][sy]);
}
+ else if (id >= GADGET_ID_MAGIC_BALL_CONTENT_0 &&
+ id <= GADGET_ID_MAGIC_BALL_CONTENT_7)
+ {
+ int i = id - GADGET_ID_MAGIC_BALL_CONTENT_0;
+
+ PickDrawingElement(button, level.ball_content[i][sx][sy]);
+ }
break;
switch (counter_id)
{
- case ED_COUNTER_ID_ELEMENT_CONTENT:
- DrawElementContentAreas();
+ case ED_COUNTER_ID_YAMYAM_CONTENT:
+ DrawYamYamContentAreas();
break;
case ED_COUNTER_ID_GROUP_CONTENT:
element = group_element_info.element[sx];
else if (id == GADGET_ID_RANDOM_BACKGROUND)
element = random_placement_background_element;
- else if (id >= GADGET_ID_ELEMENT_CONTENT_0 &&
- id <= GADGET_ID_ELEMENT_CONTENT_7)
- element = level.yamyam_content[id - GADGET_ID_ELEMENT_CONTENT_0][sx][sy];
+ else if (id >= GADGET_ID_YAMYAM_CONTENT_0 &&
+ id <= GADGET_ID_YAMYAM_CONTENT_7)
+ element = level.yamyam_content[id - GADGET_ID_YAMYAM_CONTENT_0][sx][sy];
+ else if (id >= GADGET_ID_MAGIC_BALL_CONTENT_0 &&
+ id <= GADGET_ID_MAGIC_BALL_CONTENT_7)
+ element = level.ball_content[id -GADGET_ID_MAGIC_BALL_CONTENT_0][sx][sy];
strncpy(infotext, getElementInfoText(element), max_infotext_len);
}
sprintf(infotext, "Group element position: %d", sx + 1);
else if (id == GADGET_ID_RANDOM_BACKGROUND)
strcpy(infotext, "Random placement background");
- else if (id >= GADGET_ID_ELEMENT_CONTENT_0 &&
- id <= GADGET_ID_ELEMENT_CONTENT_7)
+ else if (id >= GADGET_ID_YAMYAM_CONTENT_0 &&
+ id <= GADGET_ID_YAMYAM_CONTENT_7)
+ sprintf(infotext, "Content area %d position: %d, %d",
+ id - GADGET_ID_YAMYAM_CONTENT_0 + 1, sx, sy);
+ else if (id >= GADGET_ID_MAGIC_BALL_CONTENT_0 &&
+ id <= GADGET_ID_MAGIC_BALL_CONTENT_7)
sprintf(infotext, "Content area %d position: %d, %d",
- id - GADGET_ID_ELEMENT_CONTENT_0 + 1, sx, sy);
+ id - GADGET_ID_MAGIC_BALL_CONTENT_0 + 1, sx, sy);
}
infotext[max_infotext_len] = '\0';