TextRPG/commands/DropCommand.cs

33 lines
940 B
C#

// DropCommand.cs
using System;
using TextRPG.PlayerSystem;
namespace TextRPG.Commands
{
public class DropCommand : Command
{
public override string Name => "drop";
public override string Description => "Removes an item from your inventory.";
public override string Usage => "drop <item_name>";
public override void Execute(string[] args, Action<string> outputCallback)
{
if (args.Length == 0)
{
outputCallback($"Usage: {Usage}");
return;
}
string itemName = string.Join(" ", args);
var item = Player.Instance.GetItem(itemName);
if (item == null)
{
outputCallback($"You don't have '{itemName}'.");
return;
}
Player.Instance.RemoveItem(item);
outputCallback($"You dropped: {itemName}.");
}
}
}