static void gui_scores(int id, int e) { const char *s = "1234567"; int j, jd, kd, ld; score_extra_row = e; if ((jd = gui_vstack(id))) { if ((kd = gui_vstack(jd))) { score_label = gui_label(kd, _("Unavailable"), GUI_MED, 0, 0); for (j = RANK_HARD; j < RANK_LAST; j++) if ((ld = gui_hstack(kd))) { score_coin[j] = gui_count(ld, 1000, GUI_MED); score_name[j] = gui_label(ld, s, GUI_MED, gui_yel, gui_wht); score_time[j] = gui_clock(ld, 359999, GUI_MED); gui_set_trunc(score_name[j], TRUNC_TAIL); gui_set_fill (score_name[j]); } gui_set_rect(kd, GUI_ALL); } if (e) { gui_space(jd); if ((kd = gui_hstack(jd))) { j = RANK_LAST; score_coin[j] = gui_count(kd, 1000, GUI_MED); score_name[j] = gui_label(kd, s, GUI_MED, gui_yel, gui_wht); score_time[j] = gui_clock(kd, 359999, GUI_MED); gui_set_trunc(score_name[j], TRUNC_TAIL); gui_set_fill (score_name[j]); gui_set_rect(kd, GUI_ALL); } } } }
void hud_init(void) { int id; if ((Rhud_id = gui_hstack(0))) { if ((id = gui_vstack(Rhud_id))) { gui_label(id, "Coins", GUI_SML, 0, gui_wht, gui_wht); gui_label(id, "Goal", GUI_SML, 0, gui_wht, gui_wht); } if ((id = gui_vstack(Rhud_id))) { coin_id = gui_count(id, 100, GUI_SML, GUI_NW); goal_id = gui_count(id, 10, GUI_SML, 0); } gui_layout(Rhud_id, +1, -1); } if ((Lhud_id = gui_hstack(0))) { if ((id = gui_vstack(Lhud_id))) { ball_id = gui_count(id, 10, GUI_SML, GUI_NE); scor_id = gui_count(id, 1000, GUI_SML, 0); } if ((id = gui_vstack(Lhud_id))) { gui_label(id, "Balls", GUI_SML, 0, gui_wht, gui_wht); gui_label(id, "Score", GUI_SML, 0, gui_wht, gui_wht); } gui_layout(Lhud_id, -1, -1); } if ((time_id = gui_clock(0, 59999, GUI_MED, GUI_TOP))) gui_layout(time_id, 0, -1); if ((view_id = gui_label(0, STR_VIEW2, GUI_SML, GUI_SW, gui_wht, gui_wht))) gui_layout(view_id, 1, 1); if ((fps_id = gui_count(0, 1000, GUI_SML, GUI_SE))) gui_layout(fps_id, -1, 1); }
static int gui_demo_status(int id) { const char *status; int jd, kd, ld; int s; /* Find the longest status string. */ for (status = "", s = GAME_NONE; s < GAME_MAX; s++) if (strlen(status_to_str(s)) > strlen(status)) status = status_to_str(s); /* Build info bar with dummy values. */ if ((jd = gui_hstack(id))) { gui_filler(jd); if ((kd = gui_hstack(jd))) { if ((ld = gui_vstack(kd))) { gui_filler(ld); time_id = gui_clock(ld, 35000, GUI_SML); coin_id = gui_count(ld, 100, GUI_SML); status_id = gui_label(ld, status, GUI_SML, gui_red, gui_red); gui_filler(ld); } if ((ld = gui_vstack(kd))) { gui_filler(ld); gui_label(ld, _("Time"), GUI_SML, gui_wht, gui_wht); gui_label(ld, _("Coins"), GUI_SML, gui_wht, gui_wht); gui_label(ld, _("Status"), GUI_SML, gui_wht, gui_wht); gui_filler(ld); } gui_set_rect(kd, GUI_ALL); } gui_space(jd); if ((kd = gui_hstack(jd))) { if ((ld = gui_vstack(kd))) { gui_filler(ld); name_id = gui_label(ld, " ", GUI_SML, 0, 0); player_id = gui_label(ld, " ", GUI_SML, 0, 0); date_id = gui_label(ld, date_to_str(time(NULL)), GUI_SML, 0, 0); gui_filler(ld); gui_set_trunc(name_id, TRUNC_TAIL); gui_set_trunc(player_id, TRUNC_TAIL); } if ((ld = gui_vstack(kd))) { gui_filler(ld); gui_label(ld, _("Replay"), GUI_SML, gui_wht, gui_wht); gui_label(ld, _("Player"), GUI_SML, gui_wht, gui_wht); gui_label(ld, _("Date"), GUI_SML, gui_wht, gui_wht); gui_filler(ld); } gui_set_rect(kd, GUI_ALL); } gui_filler(jd); } return jd; }