1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
|
<?php
function teamstats($mid, $title, $extra = NULL, $extratitle = NULL, $order = 'gamescore DESC') {
global $gamename, $gid;
$r_info = small_query("SELECT teamgame, t0score, t1score, t2score, t3score FROM uts_match WHERE id = '$mid'");
if (!$r_info) die("Match not found");
$teams = ($r_info['teamgame'] == 'True') ? true : false;
$teamscore[-1] = 0;
$teamscore[0] = $r_info['t0score'];
$teamscore[1] = $r_info['t1score'];
$teamscore[2] = $r_info['t2score'];
$teamscore[3] = $r_info['t3score'];
$cols = 10;
if ($teams) $cols++;
if ($extra) $cols++;
$oldteam = -1;
echo'
<table class = "box" border="0" cellpadding="0" cellspacing="2" width="600">
<tbody><tr>
<td class="heading" colspan="'.$cols.'" align="center">'.htmlentities($title).'</td>
</tr>';
$sql_players = "SELECT pi.name, pi.banned, p.pid, p.team, p.country, p.gametime, p.gamescore, p.frags, p.deaths, p.suicides, p.teamkills, p.eff, p.accuracy, p.ttl, p.rank".(($extra) ? ', p.'.$extra.' AS '.$extra : '')."
FROM uts_player AS p, uts_pinfo AS pi WHERE p.pid = pi.id AND matchid = $mid
ORDER BY".(($teams) ? ' team ASC,' : '')." $order";
$q_players = mysql_query($sql_players) or die(mysql_error());
$header = true;
teamstats_init_totals($totals, $num);
while ($r_players = zero_out(mysql_fetch_array($q_players))) {
$r_players['dom_cp'] = $r_players['gamescore'] - $r_players['frags'];
$r_players['team'] = intval($r_players['team']);
if ($teams and $oldteam != $r_players['team']) {
if ($r_players['team'] != 0) teamstats_team_totals($totals, $num, $teams, $extra, $teamscore[$oldteam]);
$oldteam = $r_players['team'];
teamstats_init_totals($totals, $num, $extra);
switch(intval($r_players['team'])) {
case 0: $teamname = 'Red'; break;
case 1: $teamname = 'Blue'; break;
case 2: $teamname = 'Green'; break;
case 3: $teamname = 'Gold'; break;
}
echo'<tr><td class="hlheading" colspan="'.$cols.'" align="center">Team: '.$teamname.'</td></tr>';
$header = true;
}
if ($header) {
$header = false;
echo '
<tr>
<td class="smheading" align="center">Player</td>
<td class="smheading" align="center" width="50">Time</td>
<td class="smheading" align="center" width="50">Score</td>';
if ($extra) echo' <td class="smheading" align="center" width="50">'.htmlentities($extratitle).'</td>';
echo'
<td class="smheading" align="center" width="40" '.OverlibPrintHint('F').'>F</td>
<td class="smheading" align="center" width="40" '.OverlibPrintHint('K').'>K</td>
<td class="smheading" align="center" width="40" '.OverlibPrintHint('D').'>D</td>
<td class="smheading" align="center" width="40" '.OverlibPrintHint('S').'>S</td>';
if ($teams) echo '<td class="smheading" align="center" width="40" '.OverlibPrintHint('TK').'>TK</td>';
echo '
<td class="smheading" align="center" width="55" '.OverlibPrintHint('EFF').'>Eff.</td>
<td class="smheading" align="center" width="55" '.OverlibPrintHint('ACC').'>Acc.</td>
<td class="smheading" align="center" width="50" '.OverlibPrintHint('TTL').'>Avg TTL</td>
</tr>';
}
$eff = get_dp($r_players['eff']);
$acc = get_dp($r_players['accuracy']);
$ttl = GetMinutes($r_players['ttl']);
$kills = $r_players['frags'] + $r_players['suicides'];
$pname = $r_players['name'];
$totals['gamescore'] += $r_players['gamescore'];
if ($extra) $totals[$extra] += $r_players[$extra];
$totals['frags'] += $r_players['frags'];
$totals['kills'] += $kills;
$totals['deaths'] += $r_players['deaths'];
$totals['suicides'] += $r_players['suicides'];
$totals['teamkills'] += $r_players['teamkills'];
$totals['eff'] += $r_players['eff'];
$totals['acc'] += $r_players['accuracy'];
$totals['ttl'] += $r_players['ttl'];
$num++;
if ($r_players['banned'] == 'Y') {
$eff = '-';
$acc = '-';
$ttl = '-';
$kills = '-';
$r_players['gamescore'] = '-';
$r_players[$extra] = '-';
$r_players['frags'] = '-';
$r_players['deaths'] = '-';
$r_players['suicides'] = '-';
$r_players['teamkills'] = '-';
}
$class = ($num % 2) ? 'grey' : 'grey2';
echo '<tr>';
if ($r_players['banned'] != 'Y') {
echo '<td nowrap class="darkhuman" align="left"><a class="darkhuman" href="./?p=matchp&mid='.$mid.'&pid='.$r_players['pid'].'">'.FormatPlayerName($r_players['country'], $r_players['pid'], $r_players['name'], $gid, $gamename, true, $r_players['rank']).'</a></td>';
} else {
echo '<td nowrap class="darkhuman" align="left"><span style="text-decoration: line-through;">'.FormatPlayerName($r_players['country'], $r_players['pid'], $r_players['name'], $gid, $gamename, true, $r_players['rank']).'</span></td>';
}
echo '<td class="'.$class.'" align="center">'.GetMinutes($r_players['gametime']/TIMERATIO).'</td>';
echo '<td class="'.$class.'" align="center">'.$r_players['gamescore'].'</td>';
if ($extra) echo '<td class="'.$class.'" align="center">'.$r_players[$extra].'</td>';
echo '<td class="'.$class.'" align="center">'.$r_players['frags'].'</td>';
echo '<td class="'.$class.'" align="center">'.$kills.'</td>';
echo '<td class="'.$class.'" align="center">'.$r_players['deaths'].'</td>';
echo '<td class="'.$class.'" align="center">'.$r_players['suicides'].'</td>';
if ($teams) echo '<td class="'.$class.'" align="center">'.$r_players['teamkills'].'</td>';
echo '<td class="'.$class.'" align="center">'.$eff.'</td>';
echo '<td class="'.$class.'" align="center">'.$acc.'</td>';
echo '<td class="'.$class.'" align="center">'.$ttl.'</td>';
echo '</tr>';
}
teamstats_team_totals($totals, $num, $teams, $extra, $teamscore[$oldteam]);
echo '</tbody></table><br>';
}
function teamstats_init_totals(&$totals, &$num, $extra = null) {
$totals['gamescore'] = 0;
if ($extra) $totals[$extra] = 0;
$totals['frags'] = 0;
$totals['kills'] = 0;
$totals['deaths'] = 0;
$totals['suicides'] = 0;
$totals['teamkills'] = 0;
$totals['eff'] = 0;
$totals['acc'] = 0;
$totals['ttl'] = 0;
$num = 0;
}
function teamstats_team_totals(&$totals, $num, $teams, $extra, $teamscore) {
if ($num == 0) $num = 1;
$eff = get_dp($totals['eff'] / $num);
$acc = get_dp($totals['acc'] / $num);
$ttl = GetMinutes($totals['ttl'] / $num);
echo '<tr>';
echo '<td nowrap class="dark" align="center">Totals</td>';
echo '<td class="darkgrey" align="center"></td>';
if ($teams) {
echo '<td class="darkgrey" align="center"><strong>'.$teamscore.'</strong> ('.$totals[gamescore].')</td>';
} else {
echo '<td class="darkgrey" align="center">'.$totals[gamescore].'</td>';
}
if ($extra) echo '<td class="darkgrey" align="center">'.$totals[$extra].'</td>';
echo '<td class="darkgrey" align="center">'.$totals[frags].'</td>';
echo '<td class="darkgrey" align="center">'.$totals[kills].'</td>';
echo '<td class="darkgrey" align="center">'.$totals[deaths].'</td>';
echo '<td class="darkgrey" align="center">'.$totals[suicides].'</td>';
if ($teams) echo '<td class="darkgrey" align="center">'.$totals[teamkills].'</td>';
echo '<td class="darkgrey" align="center">'.$eff.'</td>';
echo '<td class="darkgrey" align="center">'.$acc.'</td>';
echo '<td class="darkgrey" align="center">'.$ttl.'</td>';
echo '</tr>';
}
?>
|