1
0
Fork 1
mirror of https://github.com/TeamOctolings/Octobot.git synced 2025-04-19 16:33:36 +03:00
This commit is contained in:
Macintxsh 2024-07-21 13:18:36 +05:00
parent cc3167bf49
commit 518238ac1b
Signed by: mctaylors
GPG key ID: 4EEF4F949A266EE2
4 changed files with 7 additions and 10 deletions

View file

@ -202,7 +202,7 @@ public sealed class SettingsCommandGroup : CommandGroup
IGuildOption option, string value, GuildData data, Snowflake channelId, IUser executor, IUser bot, IGuildOption option, string value, GuildData data, Snowflake channelId, IUser executor, IUser bot,
CancellationToken ct = default) CancellationToken ct = default)
{ {
var equalsResult = option.ValueEquals(data.Settings, value, out var equals); var equalsResult = option.ValueEquals(data.Settings, value);
if (!equalsResult.IsSuccess) if (!equalsResult.IsSuccess)
{ {
var failedEmbed = new EmbedBuilder().WithSmallTitle(Messages.SettingNotChanged, bot) var failedEmbed = new EmbedBuilder().WithSmallTitle(Messages.SettingNotChanged, bot)
@ -213,7 +213,7 @@ public sealed class SettingsCommandGroup : CommandGroup
return await _feedback.SendContextualEmbedResultAsync(failedEmbed, ct: ct); return await _feedback.SendContextualEmbedResultAsync(failedEmbed, ct: ct);
} }
if (equals) if (equalsResult.Entity)
{ {
var failedEmbed = new EmbedBuilder().WithSmallTitle(Messages.SettingNotChanged, bot) var failedEmbed = new EmbedBuilder().WithSmallTitle(Messages.SettingNotChanged, bot)
.WithDescription(Messages.SettingValueEquals) .WithDescription(Messages.SettingValueEquals)

View file

@ -12,16 +12,14 @@ public sealed class BoolOption : GuildOption<bool>
return Get(settings) ? Messages.Yes : Messages.No; return Get(settings) ? Messages.Yes : Messages.No;
} }
public override Result ValueEquals(JsonNode settings, string value, out bool equals) public override Result<bool> ValueEquals(JsonNode settings, string value)
{ {
if (!TryParseBool(value, out var boolean)) if (!TryParseBool(value, out var boolean))
{ {
equals = false;
return new ArgumentInvalidError(nameof(value), Messages.InvalidSettingValue); return new ArgumentInvalidError(nameof(value), Messages.InvalidSettingValue);
} }
equals = Value(settings).Equals(boolean.ToString()); return Value(settings).Equals(boolean.ToString());
return Result.Success;
} }
public override Result Set(JsonNode settings, string from) public override Result Set(JsonNode settings, string from)

View file

@ -31,10 +31,9 @@ public class GuildOption<T> : IGuildOption
return Markdown.InlineCode(Value(settings)); return Markdown.InlineCode(Value(settings));
} }
public virtual Result ValueEquals(JsonNode settings, string value, out bool equals) public virtual Result<bool> ValueEquals(JsonNode settings, string value)
{ {
equals = Value(settings).Equals(value); return Value(settings).Equals(value);
return Result.Success;
} }
/// <summary> /// <summary>

View file

@ -7,7 +7,7 @@ public interface IGuildOption
{ {
string Name { get; } string Name { get; }
string Display(JsonNode settings); string Display(JsonNode settings);
Result ValueEquals(JsonNode settings, string value, out bool equals); Result<bool> ValueEquals(JsonNode settings, string value);
Result Set(JsonNode settings, string from); Result Set(JsonNode settings, string from);
Result Reset(JsonNode settings); Result Reset(JsonNode settings);
} }