diff --git a/Commands/CommandsBase.cs b/Commands/CommandsBase.cs index cc25cf8..8c6e127 100644 --- a/Commands/CommandsBase.cs +++ b/Commands/CommandsBase.cs @@ -58,7 +58,7 @@ public class CommandsBase : InteractionModuleBase { static string escapeFormattingCharacters(string input) { var result = new StringBuilder(); foreach (var c in input) { - if (c is '\\' or '_' or '~' or '*' or '@') { + if (c is '\\' or '_' or '~' or '*' or '@' or '`') { result.Append('\\'); } result.Append(c); @@ -66,11 +66,19 @@ public class CommandsBase : InteractionModuleBase { return result.ToString(); } - var username = escapeFormattingCharacters(user.Username); - if (user.Nickname != null) { - return $"**{escapeFormattingCharacters(user.Nickname)}** ({username}#{user.Discriminator})"; + if (user.DiscriminatorValue == 0) { + var username = escapeFormattingCharacters(user.GlobalName ?? user.Username); + if (user.Nickname != null) { + return $"{escapeFormattingCharacters(user.Nickname)} ({username})"; + } + return username; + } else { + var username = escapeFormattingCharacters(user.Username); + if (user.Nickname != null) { + return $"{escapeFormattingCharacters(user.Nickname)} ({username}#{user.Discriminator})"; + } + return $"{username}#{user.Discriminator}"; } - return $"**{username}**#{user.Discriminator}"; } /// diff --git a/WorldTime.cs b/WorldTime.cs index 074cd70..2b8906f 100644 --- a/WorldTime.cs +++ b/WorldTime.cs @@ -41,7 +41,8 @@ internal class WorldTime : IDisposable { MessageCacheSize = 0, // disable message cache GatewayIntents = GatewayIntents.Guilds | GatewayIntents.GuildMembers, SuppressUnknownDispatchWarnings = true, - LogGatewayIntentWarnings = false + LogGatewayIntentWarnings = false, + FormatUsersInBidirectionalUnicode = false }; _services = new ServiceCollection() .AddSingleton(new DiscordShardedClient(clientConf)) diff --git a/WorldTime.csproj b/WorldTime.csproj index 34172b8..e5e81c4 100644 --- a/WorldTime.csproj +++ b/WorldTime.csproj @@ -11,7 +11,7 @@ - +