diff --git a/src/Discord.Net/Models/Channel.cs b/src/Discord.Net/Models/Channel.cs index d9dce2a9f..3c8ed467c 100644 --- a/src/Discord.Net/Models/Channel.cs +++ b/src/Discord.Net/Models/Channel.cs @@ -204,7 +204,7 @@ namespace Discord } public override bool Equals(object obj) => obj is Channel && (obj as Channel).Id == Id; - public override int GetHashCode() => Id.GetHashCode(); + public override int GetHashCode() => unchecked(Id.GetHashCode() + 5658); public override string ToString() => Name ?? Id; } } diff --git a/src/Discord.Net/Models/Color.cs b/src/Discord.Net/Models/Color.cs index 33887deeb..432e61687 100644 --- a/src/Discord.Net/Models/Color.cs +++ b/src/Discord.Net/Models/Color.cs @@ -79,7 +79,7 @@ namespace Discord } public override bool Equals(object obj) => obj is Color && (obj as Color)._rawValue == _rawValue; - public override int GetHashCode() => _rawValue.GetHashCode(); + public override int GetHashCode() => unchecked(_rawValue.GetHashCode() + 1678); public override string ToString() => '#' + _rawValue.ToString("X"); } } diff --git a/src/Discord.Net/Models/GlobalUser.cs b/src/Discord.Net/Models/GlobalUser.cs index 4a8f254b8..956e8ad13 100644 --- a/src/Discord.Net/Models/GlobalUser.cs +++ b/src/Discord.Net/Models/GlobalUser.cs @@ -69,7 +69,7 @@ namespace Discord } public override bool Equals(object obj) => obj is GlobalUser && (obj as GlobalUser).Id == Id; - public override int GetHashCode() => Id.GetHashCode(); + public override int GetHashCode() => unchecked(Id.GetHashCode() + 7891); public override string ToString() => Id; } } diff --git a/src/Discord.Net/Models/Invite.cs b/src/Discord.Net/Models/Invite.cs index 841e6353c..46660b566 100644 --- a/src/Discord.Net/Models/Invite.cs +++ b/src/Discord.Net/Models/Invite.cs @@ -114,7 +114,7 @@ namespace Discord } public override bool Equals(object obj) => obj is Invite && (obj as Invite).Id == Id; - public override int GetHashCode() => Id.GetHashCode(); + public override int GetHashCode() => unchecked(Id.GetHashCode() + 9980); public override string ToString() => XkcdCode ?? Id; } } diff --git a/src/Discord.Net/Models/Message.cs b/src/Discord.Net/Models/Message.cs index 52ae260a8..a4c7e6864 100644 --- a/src/Discord.Net/Models/Message.cs +++ b/src/Discord.Net/Models/Message.cs @@ -257,7 +257,7 @@ namespace Discord } public override bool Equals(object obj) => obj is Message && (obj as Message).Id == Id; - public override int GetHashCode() => Id.GetHashCode(); + public override int GetHashCode() => unchecked(Id.GetHashCode() + 9979); public override string ToString() => $"{User}: {RawText}"; } } diff --git a/src/Discord.Net/Models/Permissions.cs b/src/Discord.Net/Models/Permissions.cs index 48dd0d378..e98061691 100644 --- a/src/Discord.Net/Models/Permissions.cs +++ b/src/Discord.Net/Models/Permissions.cs @@ -139,7 +139,7 @@ namespace Discord } public override bool Equals(object obj) => obj is Permissions && (obj as Permissions)._rawValue == _rawValue; - public override int GetHashCode() => _rawValue.GetHashCode(); + public override int GetHashCode() => unchecked(_rawValue.GetHashCode() + 393); } public sealed class DualChannelPermissions @@ -228,6 +228,6 @@ namespace Discord public override bool Equals(object obj) => obj is DualChannelPermissions && (obj as DualChannelPermissions).Allow.Equals(Allow) && (obj as DualChannelPermissions).Deny.Equals(Deny); - public override int GetHashCode() => unchecked(Allow.GetHashCode() + Deny.GetHashCode()); + public override int GetHashCode() => unchecked(Allow.GetHashCode() + Deny.GetHashCode() + 1724); } } diff --git a/src/Discord.Net/Models/Role.cs b/src/Discord.Net/Models/Role.cs index b625e738d..8e4eda702 100644 --- a/src/Discord.Net/Models/Role.cs +++ b/src/Discord.Net/Models/Role.cs @@ -71,7 +71,7 @@ namespace Discord } public override bool Equals(object obj) => obj is Role && (obj as Role).Id == Id; - public override int GetHashCode() => Id.GetHashCode(); + public override int GetHashCode() => unchecked(Id.GetHashCode() + 6653); public override string ToString() => Name ?? Id; } } diff --git a/src/Discord.Net/Models/Server.cs b/src/Discord.Net/Models/Server.cs index 18ea3e9b7..e3f1afbc7 100644 --- a/src/Discord.Net/Models/Server.cs +++ b/src/Discord.Net/Models/Server.cs @@ -253,7 +253,7 @@ namespace Discord } public override bool Equals(object obj) => obj is Server && (obj as Server).Id == Id; - public override int GetHashCode() => Id.GetHashCode(); + public override int GetHashCode() => unchecked(Id.GetHashCode() + 5175); public override string ToString() => Name ?? Id; } } diff --git a/src/Discord.Net/Models/User.cs b/src/Discord.Net/Models/User.cs index c2d78341a..1e25eaf8e 100644 --- a/src/Discord.Net/Models/User.cs +++ b/src/Discord.Net/Models/User.cs @@ -377,7 +377,7 @@ namespace Discord } public override bool Equals(object obj) => obj is User && (obj as User).Id == Id; - public override int GetHashCode() => Id.GetHashCode(); + public override int GetHashCode() => unchecked(Id.GetHashCode() + 7230); public override string ToString() => Name ?? Id; } } \ No newline at end of file