Example #1
0
        private decimal PointsForStats( NFLPlayer plyr, int increment, string forStatType, decimal divisor )
        {
            var qty = 0.0M;
             if ( WeekHasPassed )
             {
            var ds = plyr.LastStats( forStatType, Week.WeekNo, Week.WeekNo, Week.Season );
            foreach ( DataRow dr in ds.Tables[ 0 ].Rows )
               qty = Decimal.Parse( dr[ "QTY" ].ToString() );

            switch ( forStatType )
            {
               case Constants.K_STATCODE_PASSING_YARDS:
                  plyr.ProjectedYDp = Convert.ToInt32( qty );
                  break;

               case Constants.K_STATCODE_PASSES_CAUGHT:
                  plyr.ProjectedReceptions = Convert.ToInt32( qty );
                  break;

               case Constants.K_STATCODE_RUSHING_YARDS:
                  plyr.ProjectedYDr = Convert.ToInt32( qty );
                  break;

               case Constants.K_STATCODE_INTERCEPTIONS_THROWN:
                  break;

               case Constants.K_STATCODE_RECEPTION_YARDS:
                  break;

               default:
                  Utility.Announce( string.Format( "Unknown stat type {0}", forStatType ) );
                  break;
            }
            plyr.AddMetric( forStatType, GameKey, qty, 0 );
             }
             else
             {
            //  game not played yet
            if ( !string.IsNullOrEmpty( GameKey ) )
            {
               var pgm = PgmDao.GetPlayerWeek( GameKey, plyr.PlayerCode );
               qty = PgmDao.ProjectedStatsOfType( forStatType, pgm );
            }
             }

             //var pts = Math.Floor( qty / divisor );
             var pts =  qty / divisor;
             //var points = Convert.ToInt32( pts ) * increment;
             var points = pts * increment;

             return points;
        }
Example #2
0
        private decimal PointsFor(
         NFLPlayer plyr, int increment,
         string forScoreType, string id )
        {
            decimal nScores;
             var ds = new DataSet();
             if ( WeekHasPassed )
             {
            ds = plyr.LastScores(
               forScoreType, Week.WeekNo, Week.WeekNo, Week.Season, id );
            nScores = ds.Tables[ 0 ].Rows.Count;
             if (forScoreType == Constants.K_SCORE_TD_PASS && id == "1")
                 forScoreType = Constants.K_SCORE_TD_CATCH;
            plyr.AddMetric( forScoreType, GameKey, nScores );
             }
             else
             {
            //  use projections
            var dao = new DbfPlayerGameMetricsDao();
            var pgm = dao.GetPlayerWeek( GameKey, plyr.PlayerCode );
            nScores = pgm.ProjectedScoresOfType( forScoreType, id );
             }
             var points = nScores * increment;

             switch ( forScoreType )
             {
            case Constants.K_SCORE_TD_PASS:
               if ( plyr.PlayerCat.Equals( Constants.K_QUARTERBACK_CAT ) && ( id == "2" ) )
                  plyr.ProjectedTDp = nScores;
               else
                  plyr.ProjectedTDc = nScores;
               break;

            case Constants.K_SCORE_TD_RUN:
               plyr.ProjectedTDr = nScores;
               break;

            case Constants.K_SCORE_FIELD_GOAL:
               plyr.ProjectedFg = (int) nScores;
               if ( WeekHasPassed )
                  points = ScoreFG( table: ds.Tables[ 0 ] );
               break;

            case Constants.K_SCORE_PAT_PASS:
               break;

            case Constants.K_SCORE_PAT:
               break;

            case Constants.K_SCORE_PAT_RUN:
               break;

                case Constants.K_SCORE_TD_CATCH:
                    plyr.ProjectedTDc = nScores;
                 break;

            default:
               Utility.Announce( string.Format(
                  "YahooScorer: Unknown score type {0}", forScoreType ) );
               break;
             }
             return points;
        }