public override bool Equals(object obj) { if (!(obj is Weapon)) { return(ReferenceEquals(this, obj)); } Weapon weapon = obj as Weapon; return(Name.Equals(weapon.Name) && Damage.Equals(weapon.Damage) && Defense.Equals(weapon.Defense) && BonusAttack.Equals(weapon.BonusAttack) && BonusDefense.Equals(weapon.BonusDefense) && GoalSize.Equals(weapon.GoalSize) && GoalPos.Equals(weapon.GoalPos) && TimerSpeed.Equals(weapon.TimerSpeed)); }