Exemplo n.º 1
0
 public void AddPointsToValues(IScoringTable scoringTable)
 {
     lock (_pixels)
     {
         int pixelIndex = 0;
         foreach (var pixel in _pixels)
         {
             pixel.RankingPoints += scoringTable.GetScore(_pixels.Count, pixelIndex);
             pixelIndex++;
         }
     }
 }
Exemplo n.º 2
0
 public PixelCollection Execute(PixelCollection pixelCollection, IScoringTable scoringTable, int pixelsToSelect)
 {
     lock (pixelCollection)
     {
         pixelCollection.OrderByBlue();
         pixelCollection.AddPointsToValues(scoringTable);
         pixelCollection.OrderByGreen();
         pixelCollection.AddPointsToValues(scoringTable);
         pixelCollection.OrderByRed();
         pixelCollection.AddPointsToValues(scoringTable);
         pixelCollection.RemoveWeakPixels(pixelsToSelect);
         pixelCollection.OrderAscending();
     }
     return(pixelCollection);
 }