Fix system lookup errors where user ID doesn't exist

This commit is contained in:
Ske 2020-05-02 15:33:05 +02:00
parent 720755844f
commit cad5b71f14

View File

@ -2,6 +2,7 @@ using System.Linq;
using System.Threading.Tasks;
using DSharpPlus;
using DSharpPlus.Exceptions;
using PluralKit.Core;
@ -346,12 +347,16 @@ namespace PluralKit.Bot
{
// Try to resolve the user ID to find the associated account,
// so we can print their username.
var user = await ctx.Rest.GetUserAsync(id);
// Print descriptive errors based on whether we found the user or not.
if (user == null)
try
{
var user = await ctx.Rest.GetUserAsync(id);
return $"Account **{user.Username}#{user.Discriminator}** does not have a system registered.";
}
catch (NotFoundException)
{
// User not found, just return ID
return $"Account with ID `{id}` not found.";
return $"Account **{user.Username}#{user.Discriminator}** does not have a system registered.";
}
}
return $"System with ID `{input}` not found.";