Esempio n. 1
0
void scaling_t::analyze()
{
  if ( sim -> is_canceled() ) return;
  init_deltas();
  analyze_stats();
  analyze_lag();
  normalize();

  for ( size_t i = 0; i < sim -> player_list.size(); ++i )
  {
    player_t* p = sim -> player_list[ i ];
    if ( p -> quiet ) continue;

    // Sort scaling results
    for ( stat_e j = STAT_NONE; j < STAT_MAX; j++ )
    {
      if ( p -> scales_with[ j ] )
      {
        double s = p -> scaling.get_stat( j );

        if ( s ) p -> scaling_stats.push_back( j );
      }
    }
    // more hack to deal with TMI weirdness
    bool use_normalized = p -> scaling_normalized.get_stat( p -> normalize_by() ) > 0 || scale_over == "tmi" || scale_over == "theck_meloree_index";
    range::sort( p -> scaling_stats, compare_scale_factors( p, use_normalized ) );
  }
}
Esempio n. 2
0
void scaling_t::analyze()
{
  if ( sim -> is_canceled() ) return;
  init_deltas();
  analyze_stats();
  analyze_lag();
  normalize();

  for ( size_t i = 0; i < sim -> player_list.size(); ++i )
  {
    player_t* p = sim -> player_list[ i ];
    if ( p -> quiet ) continue;

    for ( scale_metric_e sm = SCALE_METRIC_NONE; sm < SCALE_METRIC_MAX; sm++ )
    {
      // Sort scaling results
      for ( stat_e j = STAT_NONE; j < STAT_MAX; j++ )
      {
        if ( p -> scales_with[ j ] )
        {
          double s = p -> scaling[ sm ].get_stat( j );

          if ( s ) p -> scaling_stats[ sm ].push_back( j );
        }
      }
      // more hack to deal with TMI weirdness, this just determines sorting order, not what gets displayed on the chart
      bool use_normalized = p -> scaling_normalized[ sm ].get_stat( p -> normalize_by() ) > 0 || sm == SCALE_METRIC_TMI || sm == SCALE_METRIC_ETMI;
      range::sort( p -> scaling_stats[ sm ], compare_scale_factors( p, sm, use_normalized ) );
    }
  }
}