diff --git a/Commands/MuteClearCommand.cs b/Commands/MuteClearCommand.cs deleted file mode 100644 index acd93fb..0000000 --- a/Commands/MuteClearCommand.cs +++ /dev/null @@ -1,43 +0,0 @@ -using SharedLibraryCore; -using SharedLibraryCore.Commands; -using SharedLibraryCore.Configuration; -using SharedLibraryCore.Database.Models; -using SharedLibraryCore.Interfaces; -using System.Threading.Tasks; - - -namespace ClanTagRankCommands.Commands -{ - - /// - /// Example script command - /// - /// - - public class MuteClearCommand : Command - { - - - - - public MuteClearCommand(CommandConfiguration config, ITranslationLookup lookup, IMetaService metaService, IConfigurationHandlerFactory configurationHandlerFactory) : base(config, lookup) - { - - - Name = "MuteClear"; - Description = "clears the muted player list for current server"; - Alias = "mc"; - Permission = EFClient.Permission.Administrator; - RequiresTarget = false; - - } - - public override async Task ExecuteAsync(GameEvent E) - { - await E.Owner.ExecuteCommandAsync("muteclear"); - E.Origin.Tell("mute list cleared"); - - - } - } -} diff --git a/Commands/MuteCommand.cs b/Commands/MuteCommand.cs deleted file mode 100644 index 4d39e75..0000000 --- a/Commands/MuteCommand.cs +++ /dev/null @@ -1,75 +0,0 @@ -using SharedLibraryCore; -using SharedLibraryCore.Commands; -using SharedLibraryCore.Configuration; -using SharedLibraryCore.Database.Models; -using SharedLibraryCore.Interfaces; -using System.Threading.Tasks; - - -namespace ClanTagRankCommands.Commands -{ - - /// - /// Example script command - /// - /// - - public class MuteCommand : Command - { - - - - - public MuteCommand(CommandConfiguration config, ITranslationLookup lookup, IMetaService metaService, IConfigurationHandlerFactory configurationHandlerFactory) : base(config, lookup) - { - - - Name = "Mute"; - Description = "mutes a player's chat."; - Alias = "mute"; - Permission = EFClient.Permission.Administrator; - RequiresTarget = true; - Arguments = new[] - { - new CommandArgument() - { - Name = "player", - Required = true - }, - new CommandArgument() - { - Name = "reason", - Required = false - } - }; - } - - public override async Task ExecuteAsync(GameEvent E) - { - //var S = E.Owner; - - var msg = E.Data; - if (E.Data == null) - { - msg = "Muted"; - } - else - { - msg = E.Data; - } - if(E.Target.IsIngame && E.Target is object && E.Target != E.Origin) - { - await E.Owner.ExecuteCommandAsync("mute_player" + " " + E.Target.ClientNumber.ToString()); - E.Target.Warn("muted", E.Origin); - } - if(E.Target == E.Origin) - { - E.Origin.Tell("Can't mute yourself"); - } - - - - - } - } -} diff --git a/Commands/ResetRankCommand.cs b/Commands/ResetRankCommand.cs index 9725be3..c28a6e3 100644 --- a/Commands/ResetRankCommand.cs +++ b/Commands/ResetRankCommand.cs @@ -59,7 +59,8 @@ namespace ClanTagRankCommands.Commands if (E.Target.IsIngame && E.Target is object) { await E.Owner.ExecuteCommandAsync("setclantag" + " " + E.Target.ClientNumber.ToString() + " " + rank_string.ToString()); - await E.Owner.SetDvarAsync("sv_iw4madmin_role", "setRole;" + E.Target.ClientNumber.ToString() + ";" + rank_string.ToString()); + //await E.Owner.SetDvarAsync("sv_iw4madmin_role", "setRole;" + E.Target.ClientNumber.ToString() + ";" + rank_string.ToString()); + await E.Owner.ExecuteCommandAsync("setrole " + E.Target.ClientNumber.ToString() + " " + rank_string.ToString()); } diff --git a/Commands/SetRankCommand.cs b/Commands/SetRankCommand.cs index 080a4a1..b286b79 100644 --- a/Commands/SetRankCommand.cs +++ b/Commands/SetRankCommand.cs @@ -93,7 +93,8 @@ namespace ClanTagRankCommands.Commands if(E.Target.IsIngame && E.Target is object) { await E.Owner.ExecuteCommandAsync("setclantag" + " " + E.Target.ClientNumber.ToString() + " " + rank_string.ToString()); - await E.Owner.SetDvarAsync("sv_iw4madmin_role", "setRole;" + E.Target.ClientNumber.ToString() + ";" + rank_string.ToString()); + //await E.Owner.SetDvarAsync("sv_iw4madmin_role", "setRole;" + E.Target.ClientNumber.ToString() + ";" + rank_string.ToString()); + await E.Owner.ExecuteCommandAsync("setrole " + E.Target.ClientNumber.ToString() + " " + rank_string.ToString()); } diff --git a/Commands/UnMuteCommand.cs b/Commands/UnMuteCommand.cs deleted file mode 100644 index b775503..0000000 --- a/Commands/UnMuteCommand.cs +++ /dev/null @@ -1,59 +0,0 @@ -using SharedLibraryCore; -using SharedLibraryCore.Commands; -using SharedLibraryCore.Configuration; -using SharedLibraryCore.Database.Models; -using SharedLibraryCore.Interfaces; -using System.Threading.Tasks; - - -namespace ClanTagRankCommands.Commands -{ - - /// - /// Example script command - /// - /// - - public class UnMuteCommand : Command - { - - - - - public UnMuteCommand(CommandConfiguration config, ITranslationLookup lookup, IMetaService metaService, IConfigurationHandlerFactory configurationHandlerFactory) : base(config, lookup) - { - - - Name = "Unmute"; - Description = "Unmutes a player's chat."; - Alias = "Unmute"; - Permission = EFClient.Permission.Administrator; - RequiresTarget = true; - Arguments = new[] - { - new CommandArgument() - { - Name = "player", - Required = true - } - }; - } - - public override async Task ExecuteAsync(GameEvent E) - { - //var S = E.Owner; - - - if(E.Target.IsIngame && E.Target is object) - { - await E.Owner.ExecuteCommandAsync("unmute_player" + " " + E.Target.ClientNumber.ToString()); - E.Target.WarnClear(E.Origin); - E.Target.Tell("You have been Unmuted"); - } - - - - - } - } -} diff --git a/Plugin.cs b/Plugin.cs index cb5cc1f..44e5858 100644 --- a/Plugin.cs +++ b/Plugin.cs @@ -80,7 +80,39 @@ namespace ClanTagRankCommands if (E.Origin.CurrentServer == S && E.Origin is object && E.Origin.ClientNumber != -1 && E.Origin.ClientNumber != 9)// && (E.Origin.Level > EFClient.Permission.Trusted || rankName != Config.User)) { await S.ExecuteCommandAsync("setclantag" + " " + E.Origin.ClientNumber.ToString() + " " + rankName.ToString()); - await S.SetDvarAsync("sv_iw4madmin_role", "setRole;" + E.Origin.ClientNumber.ToString() + ";" + rankName.ToString()); + await S.ExecuteCommandAsync("setrole " + E.Origin.ClientNumber.ToString() + " " + rankName.ToString()); + //await S.SetDvarAsync("sv_iw4madmin_role", "setRole;" + E.Origin.ClientNumber.ToString() + ";" + rankName.ToString()); + } + } + + } + if ((E.Type == GameEvent.EventType.Connect)) + { + //Console.WriteLine("RC: " + E.Origin.Name); + + if (E.Origin.CurrentServer == S && E.Origin is object && E.Origin.ClientNumber != -1 && E.Origin.ClientNumber != 9) + { + var rank_player_var = await _metaService.GetPersistentMeta(rank, E.Origin); + rankName = E.Origin.Level.ClanTag(Config); + + rank_player_var = await _metaService.GetPersistentMeta("rank", E.Origin); + if (rank_player_var == null) + { + + await _metaService.AddPersistentMeta("rank", "none", E.Origin); + rank_player_var = await _metaService.GetPersistentMeta("rank", E.Origin); + } + + if (!(rank_player_var.Value.Contains("none")) && !(rank_player_var.Value.Contains("None")) && !(rank_player_var.Value.Contains("NONE"))) + { + rankName = rank_player_var.Value; + + } + if (E.Origin.CurrentServer == S && E.Origin is object && E.Origin.ClientNumber != -1 && E.Origin.ClientNumber != 9)// && (E.Origin.Level > EFClient.Permission.Trusted || rankName != Config.User)) + { + await S.ExecuteCommandAsync("setclantag" + " " + E.Origin.ClientNumber.ToString() + " " + rankName.ToString()); + await S.ExecuteCommandAsync("setrole " + E.Origin.ClientNumber.ToString() + " " + rankName.ToString()); + //await S.SetDvarAsync("sv_iw4madmin_role", "setRole;" + E.Origin.ClientNumber.ToString() + ";" + rankName.ToString()); } } @@ -100,31 +132,31 @@ namespace ClanTagRankCommands // var rank_player_var = await _metaService.GetPersistentMeta("rank", client); // rankName = client.Level.ClanTag(Config); - // rank_player_var = await _metaService.GetPersistentMeta("rank", client); - // if (rank_player_var == null) - // { - // await _metaService.AddPersistentMeta("rank", "none", client); - // rank_player_var = await _metaService.GetPersistentMeta("rank", client); - // } + // rank_player_var = await _metaService.GetPersistentMeta("rank", client); + // if (rank_player_var == null) + // { + // await _metaService.AddPersistentMeta("rank", "none", client); + // rank_player_var = await _metaService.GetPersistentMeta("rank", client); + // } - // if (!(rank_player_var.Value.Contains("none")) && !(rank_player_var.Value.Contains("None")) && !(rank_player_var.Value.Contains("NONE"))) - // { - // rankName = rank_player_var.Value; + // if (!(rank_player_var.Value.Contains("none")) && !(rank_player_var.Value.Contains("None")) && !(rank_player_var.Value.Contains("NONE"))) + // { + // rankName = rank_player_var.Value; - // } - // if (client.CurrentServer == S && client is object && client.ClientNumber != -1 && client.ClientNumber != 9) - // { - // await S.SetDvarAsync("sv_iw4madmin_role", "setRole;" + client.ClientNumber.ToString() + ";" + rankName.ToString()); - // await S.ExecuteCommandAsync("setclantag" + " " + client.ClientNumber.ToString() + " " + rankName.ToString()); - // } + // } + // if (client.CurrentServer == S && client is object && client.ClientNumber != -1 && client.ClientNumber != 9) + // { + // await S.SetDvarAsync("sv_iw4madmin_role", "setRole;" + client.ClientNumber.ToString() + ";" + rankName.ToString()); + // await S.ExecuteCommandAsync("setclantag" + " " + client.ClientNumber.ToString() + " " + rankName.ToString()); + // } - // } + // } - // } + // } - //} - //return Task.CompletedTask; + //} + //return Task.CompletedTask; } public Task OnTickAsync(Server S)// => {