public bool Equals(Pattern obj) { if (Values.SizeXY() != obj.Values.SizeXY()) { return(false); } foreach (Vector2i tilePos in Values.AllIndices()) { if (this[tilePos] != obj[tilePos]) { return(false); } } return(true); }