package jtrek.visual; import java.awt.*; import jtrek.Copyright; import jtrek.data.*; import jtrek.config.*; import jtrek.util.*; // $$$ ADD SBSTATS TO THIS public class SortedPlayerList extends StandardPlayerList { int pno[][] = new int[Team.TEAM_COUNT][Universe.MAX_PLAYERS]; int tcnt[] = new int[Team.TEAM_COUNT]; /** update */ public void update(Graphics g) { int p, t; Graphics og = offscreen.getGraphics(); og.setFont(fixed_font); int line_height = og.getFontMetrics().getHeight() - 3; int y = line_height + 1; clearOffscreen(og); og.drawString(header, 5, y); for (t = 0; t < Team.TEAM_COUNT; ++t) { tcnt[t] = 0; } // stash player indexes in team slots for (p = 0; p < data.players.length; ++p) { if (data.players[p].status != Player.FREE) { t = data.players[p].team.no; pno[t][tcnt[t]++] = p; } } // draw the player list for (t = 0; t < Team.TEAM_COUNT; ++t) { if (t != data.me.team.no) { for(p = 0; p < tcnt[t]; ++p) { y += line_height; drawPlayerLine(og, data.players[pno[t][p]], y); } } } // draw my team last t = data.me.team.no; for(p = 0; p < tcnt[t]; ++p) { y += line_height; drawPlayerLine(og, data.players[pno[t][p]], y); } g.drawImage(offscreen, BORDER, BORDER, null); } }