/
NLObP
/
AAEmu
Обзор
Документация
Войти
/
NLObP
/
AAEmu
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
develop
AAEmu.Game/Scripts/Commands/Kick.cs
56 строк
1 KB
Roger Barreto
Collection expressions check + blank lines update (#1110)
11 дек 2024, 19:38
Не верифицирован
11 дек 2024, 19:38
0ce5643
Код
Авторство
О чём код?
using AAEmu.Game.Core.Managers; using AAEmu.Game.Core.Managers.World; using AAEmu.Game.Core.Packets.G2C; using AAEmu.Game.Models.Game; using AAEmu.Game.Models.Game.Char; using AAEmu.Game.Utils.Scripts; namespace AAEmu.Game.Scripts.Commands; public class Kick : ICommand { public string[] CommandNames { get; set; } = ["kick_player", "kick"]; public void OnLoad() { CommandManager.Instance.Register(CommandNames, this); } public string GetCommandLineHelp() { return "(character name || id) (reason) (msg)"; } public string GetCommandHelpText() { return "Kicks target"; } public void Execute(Character character, string[] args, IMessageOutput messageOutput) { if (args.Length < 3) { CommandManager.SendDefaultHelpText(this, messageOutput); return; } var targetChar = uint.TryParse(args[0], out var characterId) ? WorldManager.Instance.GetCharacterById(characterId) : WorldManager.Instance.GetCharacter(args[0]); if (targetChar == null) { CommandManager.SendNormalText(this, messageOutput, $"Target not found"); return; } var reason = (KickedReason)byte.Parse(args[1]); var msg = ""; for (var x = 2; x < args.Length; x++) { msg += args[x] + " "; } targetChar.SendPacket(new SCKickedPacket(reason, msg)); } }