add !ResetRank command

This commit is contained in:
INSANEMODE
2020-11-19 09:52:41 -06:00
parent 7b73331924
commit 38837bb05a
4 changed files with 52 additions and 13 deletions

View File

@ -0,0 +1,49 @@
using SharedLibraryCore;
using SharedLibraryCore.Commands;
using SharedLibraryCore.Configuration;
using SharedLibraryCore.Database.Models;
using SharedLibraryCore.Interfaces;
using System.Threading.Tasks;
namespace ClanTagRankApi.Commands
{
/// <summary>
/// Example script command
/// </summary>
public class ResetRankCommand : Command
{
readonly string rank = "rank";
string rank_string;
private readonly IMetaService _metaService;
public ResetRankCommand(CommandConfiguration config, ITranslationLookup lookup, IMetaService metaService) : base(config, lookup)
{
_metaService = metaService;
Name = "ResetRank";
Description = "set a user's clan tag Rank (does not give permissions)";
Alias = "rr";
Permission = EFClient.Permission.Administrator;
RequiresTarget = true;
Arguments = new[]
{
new CommandArgument()
{
//Name = "rank",
//Required = false
}
};
}
public override async Task ExecuteAsync(GameEvent E)
{
//var S = E.Owner;
rank_string = "none";
await _metaService.AddPersistentMeta(rank, rank_string, E.Target);
rank_string = E.Target.Level.ClanTag();
E.Origin.Tell(E.Target.Name + "'s rank has been reset to: " + rank_string);
await E.Owner.ExecuteCommandAsync("setrank" + " " + E.Target.ClientNumber + " " + rank_string);
}
}
}

View File

@ -71,17 +71,9 @@ namespace ClanTagRankApi.Commands
}
else
{
//rank_player_var = await _metaService.GetPersistentMeta(rank, E.Target);
E.Origin.Tell($"invalid rank length (between 1-8 characters), set rank to none to reset");
E.Origin.Tell($"invalid rank length (between 1-8 characters), set rank to none, or use !ResetRank to reset");
}
//var cmd = new ScriptCommand()
//{
// CommandName = "setrank",
// ClientNumber = E.Target.ClientNumber,
// CommandArguments = new[] {rank_string }
//};
await E.Owner.ExecuteCommandAsync("setrank" + " " + E.Target.ClientNumber + " " + rank_string);
}