From 23550f8120ebb41b1732d63d6d09c21bdb314c1a Mon Sep 17 00:00:00 2001 From: jacopo grandi Date: Thu, 25 Feb 2021 12:46:55 +0100 Subject: component representation revolution! Vive la révolution MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- hud/hud.c | 30 ++++++++++++++++++++++++------ hud/hud_views.c | 11 +++++++++-- 2 files changed, 33 insertions(+), 8 deletions(-) (limited to 'hud') diff --git a/hud/hud.c b/hud/hud.c index 30b6486..62263c7 100644 --- a/hud/hud.c +++ b/hud/hud.c @@ -778,12 +778,30 @@ void hud_render_sel (hud_sel *sc, MKb *mkb, info_unit *u, SDL_RenderFillRect(rend, &r); SDL_SetRenderDrawColor(rend, 0, 0, 0, 255); SDL_RenderDrawRect(rend, &r); - if (sel==0) render_view_chassis(rend, t, x, y, info, i, 0, sprites); - if (sel==1) render_view_battery(rend, t, x, y, info, i, 0); - if (sel==2) render_view_armor_detail(rend, t, x, y, info, i, 0); - if (sel==3) render_view_weapon_detail(rend, t, x, y, info, i, 0); - if (sel==4) render_view_aug_detail(rend, t, x, y, info, i, 0); - if (sel==5) render_view_brain(rend, t, x, y, info, i, 0); + if (sel==0) { + int lvl = u->levels[LEVEL_CHASSIS]; + render_view_chassis(rend, t, x, y, info, i, lvl, sprites); + } + if (sel==1) { + int lvl = u->levels[LEVEL_BATTERY]; + render_view_battery(rend, t, x, y, info, i, lvl); + } + if (sel==2) { + int lvl = u->levels[LEVEL_ARMOR+ind]; + render_view_armor_detail(rend, t, x, y, info, i, lvl); + } + if (sel==3) { + int lvl = u->levels[LEVEL_WEAPONS+ind]; + render_view_weapon_detail(rend, t, x, y, info, i, lvl); + } + if (sel==4) { + int lvl = u->levels[LEVEL_AUGS+ind]; + render_view_aug_detail(rend, t, x, y, info, i, lvl); + } + if (sel==5) { + int lvl = u->levels[LEVEL_BRAIN]; + render_view_brain(rend, t, x, y, info, i, lvl); + } } SDL_RenderSetClipRect(rend, NULL); } diff --git a/hud/hud_views.c b/hud/hud_views.c index 86e0722..c767e68 100644 --- a/hud/hud_views.c +++ b/hud/hud_views.c @@ -12,13 +12,20 @@ #define LABEL_F3(x, y, s, q, v, d) {\ float p[2]={x,y}; char ss[64]; \ - sprintf(ss, "%s: %."#q"f %."#q"f %."#q"f", s, v[0], v[1], v[2]);\ + if (lvl == 0) \ + sprintf(ss, "%s: (%."#q"f) %."#q"f %."#q"f", s, v[0], v[1], v[2]);\ + if (lvl == 1) \ + sprintf(ss, "%s: %."#q"f (%."#q"f) %."#q"f", s, v[0], v[1], v[2]);\ + if (lvl == 2) \ + sprintf(ss, "%s: %."#q"f %."#q"f (%."#q"f)", s, v[0], v[1], v[2]);\ render_text_scaled(rend, ss, p, t, d);\ } #define LABEL_I3(x, y, s, v, d) {\ float p[2]={x,y}; char ss[64]; \ - sprintf(ss, "%s: %d %d %d", s, v[0], v[1], v[2]);\ + if (lvl == 0) sprintf(ss, "%s: (%d) %d %d", s, v[0], v[1], v[2]);\ + if (lvl == 1) sprintf(ss, "%s: %d (%d) %d", s, v[0], v[1], v[2]);\ + if (lvl == 2) sprintf(ss, "%s: %d %d (%d)", s, v[0], v[1], v[2]);\ render_text_scaled(rend, ss, p, t, 1);\ } -- cgit v1.2.3-54-g00ecf