private String GetPlayerStatsString(String name)
{
DateTime now = DateTime.Now;
double score = -1;
double kills = -1;
double deaths = -1;
double kdr = -1;
double spm = -1;
double kpm = -1;
int team = -1;
bool ok = false;
TimeSpan tir = TimeSpan.FromSeconds(0); // Time In Round
PlayerModel m = null;
lock (fKnownPlayers) {
if (fKnownPlayers.TryGetValue(name, out m)) {
ok = true;
m.LastSeenTimestamp = now;
m.IsDeployed = false;
score = m.ScoreRound;
kills = m.KillsRound;
deaths = m.DeathsRound;
kdr = m.KDRRound;
spm = m.SPMRound;
kpm = m.KPMRound;
tir = now.Subtract((m.FirstSpawnTimestamp != DateTime.MinValue) ? m.FirstSpawnTimestamp : now);
team = m.Team;
}
}
if (!ok) return("NO STATS FOR: " + name);
String type = "ROUND";
if (WhichBattlelogStats != BattlelogStats.ClanTagOnly && m.StatsVerified) {
type = (WhichBattlelogStats == BattlelogStats.AllTime) ? "ALL-TIME" : "RESET";
kdr = m.KDR;
spm = m.SPM;
kpm = m.KPM;
}
Match rm = Regex.Match(tir.ToString(), @"([0-9]+:[0-9]+:[0-9]+)");
String sTIR = (rm.Success) ? rm.Groups[1].Value : "?";
String vn = m.FullName;
return("^0" + type + " STATS: ^b" + vn + "^n [T:" + team + ", S:" + score + ", K:" + kills + ", D:" + deaths + ", KDR:" + kdr.ToString("F2") + ", SPM:" + spm.ToString("F0") + ", KPM:" + kpm.ToString("F1") + ", TIR: " + sTIR + "]");
}