]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/common/minigames/minigame/c4.qc
Implement C4 and TTT minigame spectator list by mehrdad dowlatabadi
[xonotic/xonotic-data.pk3dir.git] / qcsrc / common / minigames / minigame / c4.qc
index 6727655bc52853836e8b081d11e11980f056ec47..142e50c89fe2999f5e3f7f24097f4762bbaad613 100644 (file)
@@ -353,6 +353,7 @@ void c4_hud_status(vector pos, vector mySize)
        }
 
        entity e;
+       string allspecs = "";
        FOREACH_MINIGAME_ENTITY(e)
        {
                if ( e.classname == "minigame_player" && e.team != C4_SPECTATOR_TEAM )
@@ -371,6 +372,33 @@ void c4_hud_status(vector pos, vector mySize)
 
                        mypos_x += tile_size_x;
                }
+
+               if (e.classname == "minigame_player" && e.team == C4_SPECTATOR_TEAM)
+               {
+                       string current_spec = "";
+
+                       string cmpctString = entcs_GetName(e.minigame_playerslot - 1);
+                       if (strlennocol(cmpctString) > 8)
+                       {
+                               int new_length = textLengthUpToLength(cmpctString, 8, strlennocol);
+                               cmpctString = strcat(substring(cmpctString, 0, new_length), "..");
+                       }
+                       if (strlen(allspecs) > 0)
+                               current_spec = strcat(",", cmpctString);
+                       else
+                               current_spec = cmpctString;
+                       if (strlen(allspecs) < 90)
+                               allspecs = strcat(allspecs, current_spec);
+               }
+       }
+       if (strlen(allspecs) > 0)
+       {
+               pos_y = pos_y * 0.3;
+               pos_x = pos_x * 0.41;
+
+               ts = minigame_drawstring_wrapped(mySize_x * 1.7, pos, "Spectators: ", '14 14 0', '0.85 0.47 0.42', panel_fg_alpha, DRAWFLAG_NORMAL, 0);
+               pos_y += 14;
+               ts = minigame_drawcolorcodedstring_wrapped(mySize_x * 1.7, pos, allspecs, hud_fontsize, panel_fg_alpha, DRAWFLAG_NORMAL, 0);
        }
 }