public void Merge(SniperTextureSet source)
        {
            for (Int32 i = 0; i < source.sniperTextures.Count; i++)
            {
                this.sniperTextures.Add(source.sniperTextures[i]);
            }

            this.CheckForDuplicates();
            this.Build();
        }
 public void MergeAndReplace(SniperTextureSet source)
 {
     this.Build();
     for (Int32 i = 0; i < source.sniperTextures.Count; ++i)
     {
         SniperTexture tex = source.sniperTextures[i];
         if (this.lookup.TryGetValue(tex.textureName, out (Int32 index, Texture2D texture)existingEntry))
         {
             this.sniperTextures[existingEntry.index] = tex;
         }
         else
         {
             this.sniperTextures.Add(tex);
         }
     }
     this.CheckForDuplicates();
     this.Build();
 }