servicepoint-tanks/tanks-backend/TanksServer/Models/Scores.cs
2024-04-29 13:56:41 +02:00

34 lines
693 B
C#

namespace TanksServer.Models;
internal sealed record class Scores
{
public int Kills { get; set; }
public int Deaths { get; set; }
public double Ratio
{
get
{
if (Kills == 0)
return 0;
if (Deaths == 0)
return Kills;
return Math.Round(Kills / (double)Deaths, 3);
}
}
public int WallsDestroyed { get; set; }
public int ShotsFired { get; set; }
public int PowerUpsCollected { get; set; }
public int OverallScore => Math.Max(0,
10000 * Kills
- 1000 * Deaths
+ 100 * PowerUpsCollected
+ 10 * (ShotsFired + WallsDestroyed)
);
}