]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/common/minigames/minigame/c4.qc
Show spectator list on all minigames
[xonotic/xonotic-data.pk3dir.git] / qcsrc / common / minigames / minigame / c4.qc
index 3f9454f04c4bb429b36fa734dd0c6cca2bd73e3a..ccf94c8d8f45d8f3ac97661bfa05c2880515aa52 100644 (file)
@@ -256,12 +256,6 @@ void c4_hud_board(vector pos, vector mySize)
        c4_boardpos = pos;
        c4_boardsize = mySize;
 
-       string allspecs = "";
-       float allspecs_width = 0;
-       float max_allspecs_width = c4_boardsize.x;
-       float max_current_spec_width = hud_fontsize.x * 5;
-       float allspecs_lines = 2;
-
        minigame_hud_simpleboard(pos,mySize,minigame_texture("c4/board_under"));
 
        drawpic(pos, minigame_texture("c4/board_over"), mySize, '1 1 1', 1, 0);
@@ -305,28 +299,6 @@ void c4_hud_board(vector pos, vector mySize)
                                        minigame_texture(strcat("c4/piece",ftos(e.team))),
                                        tile_size, '1 1 1'*icon_color, panel_fg_alpha, DRAWFLAG_NORMAL );
                }
-
-               if (allspecs_width >= 0 && e.classname == "minigame_player" && e.team == C4_SPECTATOR_TEAM)
-               {
-                       string current_spec = ColorTranslateRGB(entcs_GetName(e.minigame_playerslot - 1));
-                       current_spec = textShortenToWidth(current_spec, max_current_spec_width, hud_fontsize, stringwidth_colors);
-                       if (allspecs != "")
-                               current_spec = strcat(", ", current_spec);
-                       else
-                               current_spec = current_spec;
-
-                       allspecs_width = stringwidth(allspecs, true, hud_fontsize);
-
-                       float max_width = max_allspecs_width * allspecs_lines - max_current_spec_width;
-                       if (allspecs_width + stringwidth(current_spec, true, hud_fontsize) < max_width)
-                               allspecs = strcat(allspecs, current_spec);
-                       else
-                       {
-                               // current_spec doesn't fit in the list
-                               allspecs = strcat(allspecs, ", ...");
-                               allspecs_width = -1; // skip remaining spectators
-                       }
-               }
        }
 
        if ( active_minigame.minigame_flags & C4_TURN_WIN )
@@ -351,15 +323,7 @@ void c4_hud_board(vector pos, vector mySize)
                        winfs, panel_fg_alpha, DRAWFLAG_NORMAL, 0.5);
        }
 
-       if (allspecs != "")
-       {
-               pos = c4_boardpos;
-               pos.y -= panel_bg_border + hud_fontsize.y * (1.25 + allspecs_lines + 0.5);
-               minigame_drawstring_wrapped(max_allspecs_width, pos, _("Spectators:"), hud_fontsize * 1.25, '0.85 0.47 0.42', panel_fg_alpha, DRAWFLAG_NORMAL, 0);
-
-               pos.y += hud_fontsize.y * 1.25;
-               minigame_drawcolorcodedstring_wrapped(max_allspecs_width, pos, allspecs, hud_fontsize, panel_fg_alpha, DRAWFLAG_NORMAL, 0);
-       }
+       minigame_show_allspecs(c4_boardpos, c4_boardsize);
 }