mirror of
https://github.com/TeamOctolings/Octobot.git
synced 2025-04-19 16:33:36 +03:00
well uhh
This commit is contained in:
parent
cc3167bf49
commit
518238ac1b
4 changed files with 7 additions and 10 deletions
|
@ -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)
|
||||||
|
|
|
@ -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)
|
||||||
|
|
|
@ -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>
|
||||||
|
|
|
@ -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);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue