From 40dfa7d5c0dc8e4cb2c95e403b6b4b2c4bf70644 Mon Sep 17 00:00:00 2001 From: Matthijs Kuiper Date: Sat, 4 Feb 2017 16:05:45 +0100 Subject: Original UTStats beta 4.2.8 --- html/import/import_ranking.php | 127 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 127 insertions(+) create mode 100755 html/import/import_ranking.php (limited to 'html/import/import_ranking.php') diff --git a/html/import/import_ranking.php b/html/import/import_ranking.php new file mode 100755 index 0000000..9ad18a2 --- /dev/null +++ b/html/import/import_ranking.php @@ -0,0 +1,127 @@ + 0 AND e.col2 <= 5 GROUP BY e.col2"; + $q_btmaprank = mysql_query($sql_btmaprank) or die ("Can't retrieve \$q_btmaprank: ". mysql_error()); + while($r_btmaprank = mysql_fetch_assoc($q_btmaprank)) { + IF ($r_btmaprank[no] == 1) { + $rank_bt += $r_btmaprank[count] * 10; + } elseIF ($r_btmaprank[no] == 2) { + $rank_bt += $r_btmaprank[count] * 8; + } elseIF ($r_btmaprank[no] == 3) { + $rank_bt += $r_btmaprank[count] * 6; + } elseIF ($r_btmaprank[no] == 4) { + $rank_bt += $r_btmaprank[count] * 4; + } elseIF ($r_btmaprank[no] == 5) { + $rank_bt += $r_btmaprank[count] * 2; + } + // if ($dbg) echo "| pid: $r_btmaprank[no]*$r_btmaprank[count] => $rank_bt
"; + } + + $rank_nrank = $rank_bt; + } else { + $rank_nrank = $rank_fpos-$rank_fneg; + } + + // Average the rank over game minutes + if ($r_gametime == 0) { + // some bug occured, ignore + if ($dbg) echo "Skip ranking. " ; + + return; + } + + $rank_nrank = ($rank_nrank/$r_gametime) * 600; + if ($dbg) echo "Points: $rank_nrank
Time: $r_gametime
"; + + // Add rank gametime to previous amount + $rank_gametime = $r_gametime; + + // Reduce ranking if player hasnt played that much + IF ($rank_gametime < 10) return; + + IF ($rank_gametime < 50) { + $rank_nrank = $rank_nrank*.25; + } + + IF ($rank_gametime >= 50 && $rank_gametime < 100) { + $rank_nrank = $rank_nrank*.50; + } + + IF ($rank_gametime >= 100 && $rank_gametime < 200) { + $rank_nrank = $rank_nrank*.70; + } + + IF ($rank_gametime >= 200 && $rank_gametime < 300) { + $rank_nrank = $rank_nrank*.85; + } + + if ($dbg) echo "Reduced: $rank_nrank
"; + + // Add new rank record if one does not exist + IF($rank_id == NULL) { + mysql_query("INSERT INTO uts_rank SET time = '$r_gametime', pid = '$pid', gid = '$gid', rank = '0', matches = '0';") or die(mysql_error()); + $rank_id = mysql_insert_id(); + $rank_gametime = 0; + $rank_crank = 0; + $rank_matches = 0; + } + + // Add number of matches played + $rank_matches = $rank_matches+1; + + // Work out effective rank given + $eff_rank = $rank_nrank-$rank_crank; + + // if ($dbg) echo "", intval($rank_crank), "-", intval($rank_nrank). "-", $rank_matches, " "; + + // Add effective rank points given to uts_player record + mysql_query("UPDATE uts_player SET rank = $eff_rank WHERE id = $playerecordid") or die(mysql_error()); + + // Update the rank + mysql_query("UPDATE uts_rank SET time = '$rank_gametime', rank = '$rank_nrank', prevrank = '$rank_crank', matches = '$rank_matches' WHERE id = $rank_id;") or die(mysql_error()); +?> -- cgit