private ModelKill GetKill(CacheKill kill) { return(new ModelKill { Time = kill.Time, Killer = GetPlayerInfo(kill.Killer), Victim = GetPlayerInfo(kill.Victim), KillerTeam = kill.KillerTeam, Weapon = kill.Weapon, }); }
public Kill ReadPlayerKill(string line) { var match = KillPattern.Match(line); if (!match.Success) { return(null); } var reader = new MatchReader(match); var time = ReadDate(reader); string killerName = reader.String(); string killerSteamId = reader.String(); var killerTeam = reader.Team(); int killerX = reader.Int(); int killerY = reader.Int(); int killerZ = reader.Int(); string victimName = reader.String(); string victimSteamId = reader.String(); var victimTeam = reader.Team(); int victimX = reader.Int(); int victimY = reader.Int(); int victimZ = reader.Int(); string weapon = reader.String(); string flags = reader.String(); bool headshot = flags.Contains("headshot"); bool penetrated = flags.Contains("penetrated"); var kill = new Kill { Time = time, Killer = GetPlayer(killerName, killerSteamId, time), KillerTeam = killerTeam, KillerPosition = new Vector(killerX, killerY, killerZ), Victim = GetPlayer(victimName, victimSteamId, time), VictimTeam = victimTeam, VictimPosition = new Vector(victimX, victimY, victimZ), Headshot = headshot, Penetrated = penetrated, Weapon = weapon, }; return(kill); }