コード例 #1
0
ファイル: Elo.cs プロジェクト: vavans/quakeliveupdater
 double VictoryProbability(Elo opponent)
 {
     return 1.0 / (1.0 + Math.Pow(10, (opponent.Rating - rating) / 400.0));
 }
コード例 #2
0
ファイル: Elo.cs プロジェクト: vavans/quakeliveupdater
 internal void Victory(Elo opponent)
 {
     int eloDiff = ComputeEloDiff(1, opponent);
     rating += eloDiff;
     opponent.Rating -= eloDiff;
 }
コード例 #3
0
ファイル: Elo.cs プロジェクト: vavans/quakeliveupdater
 private int ComputeEloDiff(double matchResult, Elo opponent)
 {
     return Convert.ToInt32(K * (matchResult - VictoryProbability(opponent)));
 }
コード例 #4
0
ファイル: Elo.cs プロジェクト: vavans/quakeliveupdater
 internal void Null(Elo opponent)
 {
     int eloDiff = ComputeEloDiff(0.5, opponent);
     rating += eloDiff;
     opponent.Rating -= eloDiff;
 }
コード例 #5
0
ファイル: Elo.cs プロジェクト: vavans/quakeliveupdater
 internal void Defeat(Elo opponent)
 {
     int eloDiff = ComputeEloDiff(0, opponent);
     rating += eloDiff;
     opponent.Rating -= eloDiff;
 }
コード例 #6
0
ファイル: Player.cs プロジェクト: vavans/quakeliveupdater
 public Player(string name)
     : base(name)
 {
     MatchsIds = new ObservableCollection<MatchID>();
     Elo = new Elo();
 }
コード例 #7
0
ファイル: Player.cs プロジェクト: vavans/quakeliveupdater
 public Player()
 {
     Elo = new Elo();
 }
コード例 #8
0
 public PlayerRank(string name)
 {
     Elo = new Elo();
 }