C#:
using System.Collections.Generic;
using System;
namespace Oxide.Plugins
{
[Info("Inventory Cleaner", "", "1.1.4", ResourceId = 1226)]
[Description("Этот плагин позволяет игрокам с разрешением очистить их инвентарь.")]
class InventoryCleaner : RustPlugin
{
void Loaded() => permission.RegisterPermission(this.Name.ToLower() + ".use", this);
[ChatCommand("invcleanall")]
void cmdInvCleanAll(BasePlayer player, string cmd, string[] args)
{
string steamId = Convert.ToString(player.userID);
if (permission.UserHasPermission(steamId, "inventorycleaner.use"))
{
if (args.Length == 1)
{
SendReply(player, "Доступные команды: \n/invcleanme => Очистить себе инвентарь.\n/invclean \"player\" => Очистить инвентарь указанному игроку\n/invcleanall => Очистить инвентарь всем.");
return;
}
var players = BasePlayer.activePlayerList as List<BasePlayer>;
foreach (BasePlayer current in BasePlayer.activePlayerList)
{
current.inventory.Strip();
Puts(player.displayName + " убрал все запасы!");
PrintToChat("<color=orange>[Inventory Cleaner]</color> " + player.displayName + " убрал все запасы (" + players.Count + ") !");
SendReply(player, "<color=orange>[Inventory Cleaner]</color> " + "Вы убрали " + players.Count + " запасов!");
}
}
else
{
SendReply(player, "У вас нет разрешения на использование этой команды!");
return;
}
}
[ChatCommand("invclean")]
void cmdInvClean(BasePlayer player, string cmd, string[] args)
{
string steamId = Convert.ToString(player.userID);
if (permission.UserHasPermission(steamId, "inventorycleaner.use"))
{
if (args.Length == 0)
{
SendReply(player, "Доступные команды: \n/invcleanme => Очистить себе инвентарь.\n/invclean \"player\" => Очистить инвентарь указанному игроку\n/invcleanall => Очистить инвентарь всем.");
return;
}
if (args.Length == 1)
{
var target = BasePlayer.Find(args[0]);
if (target == null)
{
SendReply(player, "Игрок не найден!");
return;
}
target.inventory.Strip();
SendReply(player, "<color=orange>[Inventory Cleaner]</color> " + "Вы успешно очистили инвентарь у <color=cyan>" + target.displayName + "</color>'s!");
}
}
else
{
SendReply(player, "У вас нет разрешения на использование этой команды!");
return;
}
}
[ChatCommand("invcleanme")]
void cmdInvCleanMe(BasePlayer player, string cmd, string[] args)
{
if (args.Length == 0)
{
player.inventory.Strip();
SendReply(player, "<color=orange>[Inventory Cleaner]</color> " + "Вы очистили свой инвентарь!");
}
}
}
}