diff --git a/ProjectAirFighter/ProjectAirFighter/CollectionGenericObjects/ListGenericObjects.cs b/ProjectAirFighter/ProjectAirFighter/CollectionGenericObjects/ListGenericObjects.cs index 7b0893a..ecb5f7a 100644 --- a/ProjectAirFighter/ProjectAirFighter/CollectionGenericObjects/ListGenericObjects.cs +++ b/ProjectAirFighter/ProjectAirFighter/CollectionGenericObjects/ListGenericObjects.cs @@ -58,12 +58,9 @@ public class ListGenericObjects : ICollectionGenericObjects public int Insert(T obj, IEqualityComparer? comparer) { - if (comparer == null) + if (_collection.Contains(obj, comparer)) { - if (_collection.Contains(obj, comparer)) - { - throw new ObjectNotUniqueException(); - } + throw new ObjectNotUniqueException(); } if (Count == _maxCount) { throw new CollectionOverflowException(_collection.Count); } @@ -74,12 +71,9 @@ public class ListGenericObjects : ICollectionGenericObjects public int Insert(T obj, int position, IEqualityComparer? comparer) { - if (comparer == null) + if (_collection.Contains(obj, comparer)) { - if (_collection.Contains(obj, comparer)) - { - throw new ObjectNotUniqueException(); - } + throw new ObjectNotUniqueException(position); } if (position < 0 || position >= Count) throw new PositionOutOfCollectionException(); @@ -87,7 +81,6 @@ public class ListGenericObjects : ICollectionGenericObjects _collection.Insert(position, obj); return position; - } public T Remove(int position) diff --git a/ProjectAirFighter/ProjectAirFighter/CollectionGenericObjects/MassiveGenericObjects.cs b/ProjectAirFighter/ProjectAirFighter/CollectionGenericObjects/MassiveGenericObjects.cs index 9b85900..3d71b07 100644 --- a/ProjectAirFighter/ProjectAirFighter/CollectionGenericObjects/MassiveGenericObjects.cs +++ b/ProjectAirFighter/ProjectAirFighter/CollectionGenericObjects/MassiveGenericObjects.cs @@ -90,7 +90,7 @@ public class MassiveGenericObjects : ICollectionGenericObjects foreach (T? item in _collection) { if ((comparer as IEqualityComparer).Equals(obj as DrawningWarPlane, item as DrawningWarPlane)) - throw new ObjectNotUniqueException(); + throw new ObjectNotUniqueException(position); } } diff --git a/ProjectAirFighter/ProjectAirFighter/Drawnings/DrawiningPlaneEqutables.cs b/ProjectAirFighter/ProjectAirFighter/Drawnings/DrawiningPlaneEqutables.cs index 8906a18..e10d2e3 100644 --- a/ProjectAirFighter/ProjectAirFighter/Drawnings/DrawiningPlaneEqutables.cs +++ b/ProjectAirFighter/ProjectAirFighter/Drawnings/DrawiningPlaneEqutables.cs @@ -44,6 +44,7 @@ public class DrawiningPlaneEqutables : IEqualityComparer { EntityAirFighter _x = (EntityAirFighter) x.EntityFighter; EntityAirFighter _y = (EntityAirFighter) x.EntityFighter; + if (_x.AdditionalColor != _y.AdditionalColor) { return false;