diff --git a/SpritePacker/SpritePacker.cs b/SpritePacker/SpritePacker.cs index 3002151..22d2e50 100644 --- a/SpritePacker/SpritePacker.cs +++ b/SpritePacker/SpritePacker.cs @@ -7,6 +7,7 @@ using System.Configuration; using System.Drawing.Text; using System.Drawing.Imaging; using System.Text; +using System.Linq; namespace SpritePacker { @@ -80,14 +81,10 @@ namespace SpritePacker { sortBySize(); - List arrangedSprites = new List(); - foreach(Sprite cspr in sprites) + List arrangedSprites = sprites.Where((Sprite spr) => spr.Placed).ToList(); + List spritesToPack = sprites.Where((Sprite spr) => !spr.Placed).ToList(); + foreach(Sprite cspr in spritesToPack) { - if (cspr.Placed) { - if(Verbose) Console.WriteLine($"Skipping placement of {cspr} as it has been preset"); - continue; - } - if(Verbose) Console.WriteLine("Attempting to place {0}.", cspr); Point scanLines = Point.Empty; Point nextScanLines = new Point(int.MaxValue, int.MaxValue);