Files
nadekobot/NadekoBot.Core/Modules/Utility/Services/InviteService.cs
2021-09-06 21:29:22 +02:00

34 lines
1.3 KiB
C#

using CommandLine;
using NadekoBot.Core.Common;
using NadekoBot.Core.Services;
namespace NadekoBot.Core.Modules.Utility.Services
{
public class InviteService : INService
{
public class Options : INadekoCommandOptions
{
[Option('m', "max-uses", Required = false, Default = 0, HelpText = "Maximum number of times the invite can be used. Default 0 (never).")]
public int MaxUses { get; set; } = 0;
[Option('u', "unique", Required = false, Default = false, HelpText = "Not setting this flag will result in bot getting the existing invite with the same settings if it exists, instead of creating a new one.")]
public bool Unique { get; set; } = false;
[Option('t', "temporary", Required = false, Default = false, HelpText = "If this flag is set, the user will be kicked from the guild once they close their client.")]
public bool Temporary { get; set; } = false;
[Option('e', "expire", Required = false, Default = 0, HelpText = "Time in seconds to expire the invite. Default 0 (no expiry).")]
public int Expire { get; set; } = 0;
public void NormalizeOptions()
{
if (MaxUses < 0)
MaxUses = 0;
if (Expire < 0)
Expire = 0;
}
}
}
}