PRoConEvents.MULTIbalancer.GetPlayerStatsString C# (CSharp) Method

GetPlayerStatsString() private method

private GetPlayerStatsString ( String name ) : String
name String
return String
        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 + "]");
        }
MULTIbalancer