Changed Discriminators to strings

This commit is contained in:
RogueException
2016-06-08 14:45:19 -03:00
parent 9c20253a0c
commit 5820ca6b53
8 changed files with 11 additions and 12 deletions

View File

@@ -9,7 +9,7 @@ namespace Discord.API
[JsonProperty("username")]
public string Username { get; set; }
[JsonProperty("discriminator")]
public ushort Discriminator { get; set; }
public string Discriminator { get; set; }
[JsonProperty("avatar")]
public string Avatar { get; set; }
[JsonProperty("verified")]

View File

@@ -994,10 +994,11 @@ namespace Discord.API
}
catch (HttpException ex) when (ex.StatusCode == HttpStatusCode.NotFound) { return null; }
}
public async Task<User> GetUser(string username, ushort discriminator, RequestOptions options = null)
public async Task<User> GetUser(string username, string discriminator, RequestOptions options = null)
{
Preconditions.NotNullOrEmpty(username, nameof(username));
Preconditions.NotNullOrEmpty(discriminator, nameof(discriminator));
try
{
var models = await QueryUsers($"{username}#{discriminator}", 1, options: options).ConfigureAwait(false);

View File

@@ -3,8 +3,6 @@ using Discord.Extensions;
using Discord.Logging;
using Discord.Net;
using Discord.Net.Queue;
using Discord.Net.Rest;
using Discord.Net.WebSockets;
using System;
using System.Collections.Generic;
using System.Collections.Immutable;
@@ -190,7 +188,7 @@ namespace Discord
return new User(this, model);
return null;
}
public virtual async Task<IUser> GetUser(string username, ushort discriminator)
public virtual async Task<IUser> GetUser(string username, string discriminator)
{
var model = await ApiClient.GetUser(username, discriminator).ConfigureAwait(false);
if (model != null)

View File

@@ -95,7 +95,7 @@ namespace Discord
_gatewayLogger = _log.CreateLogger("Gateway");
_serializer = new JsonSerializer { ContractResolver = new DiscordContractResolver() };
ApiClient.SentGatewayMessage += async opCode => await _gatewayLogger.Verbose($"Sent Op {(GatewayOpCode)opCode}");
ApiClient.ReceivedGatewayEvent += ProcessMessage;
GatewaySocket = config.WebSocketProvider();
@@ -262,7 +262,7 @@ namespace Discord
{
return Task.FromResult<IUser>(DataStore.GetUser(id));
}
public override Task<IUser> GetUser(string username, ushort discriminator)
public override Task<IUser> GetUser(string username, string discriminator)
{
return Task.FromResult<IUser>(DataStore.Users.Where(x => x.Discriminator == discriminator && x.Username == username).FirstOrDefault());
}

View File

@@ -23,7 +23,7 @@ namespace Discord
public ulong Id => User.Id;
public string AvatarUrl => User.AvatarUrl;
public DateTime CreatedAt => User.CreatedAt;
public ushort Discriminator => User.Discriminator;
public string Discriminator => User.Discriminator;
public Game? Game => User.Game;
public bool IsAttached => User.IsAttached;
public bool IsBot => User.IsBot;

View File

@@ -7,7 +7,7 @@ namespace Discord
/// <summary> Gets the url to this user's avatar. </summary>
string AvatarUrl { get; }
/// <summary> Gets the per-username unique id for this user. </summary>
ushort Discriminator { get; }
string Discriminator { get; }
/// <summary> Returns true if this user is a bot account. </summary>
bool IsBot { get; }
/// <summary> Gets the username for this user. </summary>

View File

@@ -10,7 +10,7 @@ namespace Discord
{
private string _avatarId;
public ushort Discriminator { get; private set; }
public string Discriminator { get; private set; }
public bool IsBot { get; private set; }
public string Username { get; private set; }

View File

@@ -31,7 +31,7 @@ namespace Discord
Task<IInvite> GetInvite(string inviteIdOrXkcd);
Task<IUser> GetUser(ulong id);
Task<IUser> GetUser(string username, ushort discriminator);
Task<IUser> GetUser(string username, string discriminator);
Task<ISelfUser> GetCurrentUser();
Task<IReadOnlyCollection<IUser>> QueryUsers(string query, int limit);