Пример #1
0
        private void AdjustRatings(
            NibbleGameRating startingGameRating,
            NibbleGameRating adjustment,
            string homeTeam,
            string awayTeam,
            string week)
        {
            Debug.Assert((Math.Abs(adjustment.HomeOff) < 10), "adjustment too big",
                         $"Week {week} home team {homeTeam} adj={adjustment.HomeOff}");

            var newHomeOff = startingGameRating.HomeOff + adjustment.HomeOff;
            var newHomeDef = startingGameRating.HomeDef + adjustment.HomeDef;
            var newAwayOff = startingGameRating.AwayOff + adjustment.AwayOff;
            var newAwayDef = startingGameRating.AwayDef + adjustment.AwayDef;
            var homeRating = new NibbleTeamRating(newHomeOff, newHomeDef);
            var awayRating = new NibbleTeamRating(newAwayOff, newAwayDef);
            var homeKey    = KeyFor(homeTeam);
            var awayKey    = KeyFor(awayTeam);

            UpdateRating(
                teamCode: homeKey,
                rating: homeRating,
                week: Int32.Parse(week));
            UpdateRating(
                teamCode: awayKey,
                rating: awayRating,
                week: Int32.Parse(week));
        }
Пример #2
0
 private void UpdateRating(
     string teamCode,
     NibbleTeamRating rating,
     int week)
 {
     Utility.Announce($"    Updating rating for {teamCode}");
     if (Rates == null)
     {
         Rates = new Hashtable();
     }
     if (Rates.ContainsKey(teamCode))
     {
         var ratings   = (NibbleTeamRating[])Rates[teamCode];                  // get the array for the team
         var newRating = ratings[week - 2];
         newRating.Offence += rating.Offence;
         newRating.Defence += rating.Defence;
         ratings[week - 1]  = newRating;
         Rates[teamCode]    = ratings;
     }
     else
     {
         var ratings = new NibbleTeamRating[Season.Weeks];
         ratings[week - 1] = rating;
         Rates.Add(teamCode, ratings);
     }
 }
Пример #3
0
        private void AdjustRatings(NibbleGameRating adjustment,
                                   string homeTeam, string awayTeam)
        {
            Debug.Assert((Math.Abs(adjustment.HomeOff) < 10), "adjustment too big",
                         string.Format("home team {0} adj={1}", homeTeam, adjustment.HomeOff));

            var homeRating = new NibbleTeamRating(adjustment.HomeOff, adjustment.HomeDef);
            var awayRating = new NibbleTeamRating(adjustment.AwayOff, adjustment.AwayDef);

            UpdateRating(homeTeam, homeRating);
            UpdateRating(awayTeam, awayRating);
        }
Пример #4
0
        private void AdjustRatings(NibbleGameRating startingGameRating, NibbleGameRating adjustment,
                                   string homeTeam, string awayTeam, string week)
        {
            Debug.Assert((Math.Abs(adjustment.HomeOff) < 10), "adjustment too big",
                         string.Format("Week {0} home team {1} adj={2}", week, homeTeam, adjustment.HomeOff));

            var newHomeOff = startingGameRating.HomeOff + adjustment.HomeOff;
            var newHomeDef = startingGameRating.HomeDef + adjustment.HomeDef;
            var newAwayOff = startingGameRating.AwayOff + adjustment.AwayOff;
            var newAwayDef = startingGameRating.AwayDef + adjustment.AwayDef;
            var homeRating = new NibbleTeamRating(newHomeOff, newHomeDef);
            var awayRating = new NibbleTeamRating(newAwayOff, newAwayDef);
            var homeKey    = KeyFor(homeTeam);
            var awayKey    = KeyFor(awayTeam);

            UpdateRating(homeKey, homeRating, Int32.Parse(week));
            UpdateRating(awayKey, awayRating, Int32.Parse(week));
        }
Пример #5
0
        private void UpdateRating(string teamCode, NibbleTeamRating rating)
        {
            if (RatingsHt == null)
            {
                RatingsHt = new Hashtable();
            }

            if (!RatingsHt.ContainsKey(teamCode))
            {
                RatingsHt.Add(teamCode, new NibbleTeamRating(0, 0));
            }

            var ratings = (NibbleTeamRating)RatingsHt[teamCode];

            ratings.Offence    += rating.Offence;
            ratings.Defence    += rating.Defence;
            RatingsHt[teamCode] = ratings;
        }
        private void AdjustRatings( NibbleGameRating adjustment,
											 string homeTeam, string awayTeam )
        {
            Debug.Assert( ( Math.Abs( adjustment.HomeOff ) < 10 ), "adjustment too big",
                string.Format( "home team {0} adj={1}", homeTeam, adjustment.HomeOff ) );

            var homeRating = new NibbleTeamRating( adjustment.HomeOff, adjustment.HomeDef );
            var awayRating = new NibbleTeamRating( adjustment.AwayOff, adjustment.AwayDef );

            UpdateRating( homeTeam, homeRating );
            UpdateRating( awayTeam, awayRating );
        }
        private void UpdateRating( string teamCode, NibbleTeamRating rating )
        {
            if ( RatingsHt == null ) RatingsHt = new Hashtable();

            if ( ! RatingsHt.ContainsKey( teamCode ) )
                RatingsHt.Add( teamCode, new NibbleTeamRating( 0, 0 ) );

            var ratings = (NibbleTeamRating) RatingsHt[teamCode];
            ratings.Offence += rating.Offence;
            ratings.Defence += rating.Defence;
            RatingsHt[teamCode] = ratings;
        }
Пример #8
0
 private void UpdateRating( string teamCode, NibbleTeamRating rating, int week )
 {
     Utility.Announce( string.Format( "    Updating rating for {0}", teamCode ) );
     if ( Rates == null ) Rates = new Hashtable();
     if ( Rates.ContainsKey( teamCode ) )
     {
         var ratings = (NibbleTeamRating[]) Rates[ teamCode ]; // get the array for the team
         var newRating = ratings[ week - 2 ];
         newRating.Offence += rating.Offence;
         newRating.Defence += rating.Defence;
         ratings[ week - 1 ] = newRating;
         Rates[ teamCode ] = ratings;
     }
     else
     {
         var ratings = new NibbleTeamRating[Season.Weeks];
         ratings[ week - 1 ] = rating;
         Rates.Add( teamCode, ratings );
     }
 }
Пример #9
0
        private void AdjustRatings( NibbleGameRating startingGameRating, NibbleGameRating adjustment,
											 string homeTeam, string awayTeam, string week )
        {
            Debug.Assert( ( Math.Abs(adjustment.HomeOff ) < 10 ), "adjustment too big",
                string.Format("Week {0} home team {1} adj={2}", week, homeTeam, adjustment.HomeOff));

            var newHomeOff = startingGameRating.HomeOff + adjustment.HomeOff;
            var newHomeDef = startingGameRating.HomeDef + adjustment.HomeDef;
            var newAwayOff = startingGameRating.AwayOff + adjustment.AwayOff;
            var newAwayDef = startingGameRating.AwayDef + adjustment.AwayDef;
            var homeRating = new NibbleTeamRating( newHomeOff, newHomeDef );
            var awayRating = new NibbleTeamRating( newAwayOff, newAwayDef );
            var homeKey = KeyFor( homeTeam );
            var awayKey = KeyFor( awayTeam );
            UpdateRating( homeKey, homeRating, Int32.Parse( week ) );
            UpdateRating( awayKey, awayRating, Int32.Parse( week ) );
        }