public override int GetHashCode() { unchecked { var hashCode = ComputerDifficulty.GetHashCode(); hashCode = (hashCode * 397) ^ ComputerPlayerId.GetHashCode(); hashCode = (hashCode * 397) ^ (HumanPlayerId != null ? HumanPlayerId.GetHashCode() : 0); hashCode = (hashCode * 397) ^ LeaderId; hashCode = (hashCode * 397) ^ PlayerIndex; hashCode = (hashCode * 397) ^ (int)PlayerType; hashCode = (hashCode * 397) ^ TeamId; return(hashCode); } }
public override int GetHashCode() { unchecked { var hashCode = CardStats?.GetHashCode() ?? 0; hashCode = (hashCode * 397) ^ ComputerDifficulty.GetHashCode(); hashCode = (hashCode * 397) ^ ComputerPlayerId.GetHashCode(); hashCode = (hashCode * 397) ^ (ExperienceProgress != null ? ExperienceProgress.GetHashCode() : 0); hashCode = (hashCode * 397) ^ (HumanPlayerId != null ? HumanPlayerId.GetHashCode() : 0); hashCode = (hashCode * 397) ^ IsHuman.GetHashCode(); hashCode = (hashCode * 397) ^ LeaderId; hashCode = (hashCode * 397) ^ (LeaderPowerStats?.GetHashCode() ?? 0); hashCode = (hashCode * 397) ^ PlayerCompletedMatch.GetHashCode(); hashCode = (hashCode * 397) ^ PlayerMatchOutcome.GetHashCode(); hashCode = (hashCode * 397) ^ (PointStats?.GetHashCode() ?? 0); hashCode = (hashCode * 397) ^ (RatingProgress != null ? RatingProgress.GetHashCode() : 0); hashCode = (hashCode * 397) ^ TeamId; hashCode = (hashCode * 397) ^ TeamPlayerIndex; hashCode = (hashCode * 397) ^ TimeInMatch.GetHashCode(); hashCode = (hashCode * 397) ^ (UnitStats?.GetHashCode() ?? 0); hashCode = (hashCode * 397) ^ (WaveStats?.GetHashCode() ?? 0); return(hashCode); } }