+/* pointers to counter values */
+static int *gadget_elem_score_value = NULL;
+static int *gadget_elem_content_value = NULL;
+static int *gadget_level_xsize_value = NULL;
+static int *gadget_level_ysize_value = NULL;
+static int *gadget_level_collect_value = NULL;
+static int *gadget_level_timelimit_value = NULL;
+static int *gadget_level_timescore_value = NULL;
+
+static struct
+{
+ int x, y;
+ int min_value, max_value;
+ int gadget_id_down, gadget_id_up;
+ int gadget_id_text;
+ int **counter_value;
+ char *infotext;
+} counterbutton_info[ED_NUM_COUNTERBUTTONS] =
+{
+ {
+ ED_COUNT_ELEM_SCORE_XPOS, ED_COUNT_ELEM_SCORE_YPOS,
+ MIN_SCORE, MAX_SCORE,
+ ED_CTRL_ID_ELEM_SCORE_DOWN, ED_CTRL_ID_ELEM_SCORE_UP,
+ ED_CTRL_ID_ELEM_SCORE_TEXT,
+ &gadget_elem_score_value,
+ "element score"
+ },
+ {
+ ED_COUNT_ELEM_CONTENT_XPOS, ED_COUNT_ELEM_CONTENT_YPOS,
+ MIN_ELEM_CONTENT, MAX_ELEM_CONTENT,
+ ED_CTRL_ID_ELEM_CONTENT_DOWN, ED_CTRL_ID_ELEM_CONTENT_UP,
+ ED_CTRL_ID_ELEM_CONTENT_TEXT,
+ &gadget_elem_content_value,
+ "element content"
+ },
+ {
+ ED_LEVELINFO_XPOS, ED_LEVELINFO_YPOS + 6 * MINI_TILEY,
+ MIN_LEV_FIELDX, MAX_LEV_FIELDX,
+ ED_CTRL_ID_LEVEL_XSIZE_DOWN, ED_CTRL_ID_LEVEL_XSIZE_UP,
+ ED_CTRL_ID_LEVEL_XSIZE_TEXT,
+ &gadget_level_xsize_value,
+ "playfield width"
+ },
+ {
+ ED_LEVELINFO_XPOS, ED_LEVELINFO_YPOS + 10 * MINI_TILEY,
+ MIN_LEV_FIELDY, MAX_LEV_FIELDY,
+ ED_CTRL_ID_LEVEL_YSIZE_DOWN, ED_CTRL_ID_LEVEL_YSIZE_UP,
+ ED_CTRL_ID_LEVEL_YSIZE_TEXT,
+ &gadget_level_ysize_value,
+ "playfield height"
+ },
+ {
+ ED_LEVELINFO_XPOS, ED_LEVELINFO_YPOS + 14 * MINI_TILEY,
+ 0, 999,
+ ED_CTRL_ID_LEVEL_COLLECT_DOWN, ED_CTRL_ID_LEVEL_COLLECT_UP,
+ ED_CTRL_ID_LEVEL_COLLECT_TEXT,
+ &gadget_level_collect_value,
+ "number of emeralds to collect"
+ },
+ {
+ ED_LEVELINFO_XPOS, ED_LEVELINFO_YPOS + 18 * MINI_TILEY,
+ 0, 999,
+ ED_CTRL_ID_LEVEL_TIMELIMIT_DOWN, ED_CTRL_ID_LEVEL_TIMELIMIT_UP,
+ ED_CTRL_ID_LEVEL_TIMELIMIT_TEXT,
+ &gadget_level_timelimit_value,
+ "time available to solve level"
+ },
+ {
+ ED_LEVELINFO_XPOS, ED_LEVELINFO_YPOS + 22 * MINI_TILEY,
+ 0, 255,
+ ED_CTRL_ID_LEVEL_TIMESCORE_DOWN, ED_CTRL_ID_LEVEL_TIMESCORE_UP,
+ ED_CTRL_ID_LEVEL_TIMESCORE_TEXT,
+ &gadget_level_timescore_value,
+ "score for each 10 seconds left"
+ },
+};