1
0
mirror of https://github.com/RaidMax/IW4M-Admin.git synced 2025-06-07 21:58:06 -05:00
IW4M-Admin/Data/Models/Zombie/ZombieAggregateClientStat.cs
2024-07-02 16:23:36 -05:00

55 lines
1.6 KiB
C#

using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using Data.Models.Server;
namespace Data.Models.Zombie;
public class ZombieAggregateClientStat : ZombieClientStat
{
public long? ServerId { get; set; }
[ForeignKey(nameof(ServerId))]
public EFServer Server { get; set; }
#region Average
public double AverageKillsPerDown { get; set; }
public double AverageDowns { get; set; }
public double AverageRevives { get; set; }
public double HeadshotPercentage { get; set; }
public double AlivePercentage { get; set; }
public double AverageMelees { get; set; }
public double AverageRoundReached { get; set; }
public double AveragePoints { get; set; }
#endregion
#region Totals
public int HighestRound { get; set; }
public int TotalRoundsPlayed { get; set; }
public int TotalMatchesPlayed { get; set; }
public int TotalMatchesCompleted { get; set; }
#endregion
[NotMapped]
public static readonly string[] RecordsKeys =
{
nameof(AverageKillsPerDown),
nameof(AverageDowns),
nameof(AverageRevives),
nameof(HeadshotPercentage),
nameof(AlivePercentage),
nameof(AverageMelees),
nameof(AverageRoundReached),
nameof(AveragePoints),
nameof(HighestRound),
nameof(TotalRoundsPlayed),
nameof(TotalMatchesPlayed)
};
public static readonly string[] SkillKeys =
RecordsKeys.Except(new[] { nameof(TotalMatchesPlayed), nameof(TotalRoundsPlayed), nameof(AverageDowns) })
.ToArray();
}