Campofinale/Campofinale/Commands/Handlers/CommandRemove.cs
2025-03-07 20:49:49 +01:00

37 lines
1.1 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Campofinale.Database;
using Campofinale.Game.Character;
using Campofinale.Packets.Sc;
namespace Campofinale.Commands.Handlers;
public static class CommandRemove
{
[Server.Command("remove", "Removes character", true)]
public static void Handle(Player sender, string cmd, string[] args, Player target)
{
if(args.Length < 1)
{
CommandManager.SendMessage(sender, "Use: /remove (char id)");
return;
}
Character character = target.chars.Find(c => c.id == args[0]);
if(character == null)
{
CommandManager.SendMessage(sender, "Character not found");
return;
}
target.chars.Remove(character);
DatabaseManager.db.DeleteCharacter(character);
target.SaveCharacters();
target.Send(new PacketScCharBagDelChar(target, character));
CommandManager.SendMessage(sender, $"Character {character.id} removed.");
}
}