using System;
using System.Linq;
using Exiled.API.Features;
using Exiled.API.Interfaces;
using Exiled.Events.EventArgs;
using Exiled.Events.Extensions;

namespace CustomRadioPlugin
{
    public class Plugin : Plugin<Config>
    {
        public override string Name => "CustomRadioPlugin";
        public override string Author => "NOT_MR";
        public override Version Version => new Version(1, 0, 0);
        public override Version RequiredExiledVersion => new Version(9, 0, 0);

        private static readonly Plugin Singleton = new Plugin();
        public static Plugin Instance => Singleton;

        private EventHandlers _eventHandlers;

        private Plugin()
        {
        }

        public override void OnEnabled()
        {
            _eventHandlers = new EventHandlers(this);
            Exiled.Events.Handlers.Player.UsedItem += _eventHandlers.OnUsedItem;
            Exiled.Events.Handlers.Server.RunningCommand += _eventHandlers.OnRunningCommand;
            base.OnEnabled();
        }

        public override void OnDisabled()
        {
            Exiled.Events.Handlers.Player.UsedItem -= _eventHandlers.OnUsedItem;
            Exiled.Events.Handlers.Server.RunningCommand -= _eventHandlers.OnRunningCommand;
            _eventHandlers = null;
            base.OnDisabled();
        }
    }

    public class EventHandlers
    {
        private readonly Plugin _plugin;

        public EventHandlers(Plugin plugin)
        {
            _plugin = plugin;
        }

        public void OnUsedItem(UsedItemEventArgs ev)
        {
            if (ev.Item.Type == ItemType.Radio)
            {
                BroadcastRadioMessage(ev.Player);
            }
        }

        public void OnRunningCommand(RunningCommandEventArgs ev)
        {
            if (ev.Command.StartsWith("unlimitedradio", StringComparison.OrdinalIgnoreCase))
            {
                string[] args = ev.Command.Split(' ');

                if (args.Length > 1 && args[1].Equals("all", StringComparison.OrdinalIgnoreCase))
                {
                    foreach (Player player in Player.List)
                    {
                        GiveUnlimitedRadio(player);
                    }
                    ev.Sender.RemoteAdminMessage("Всем игрокам выдано бесконечное радио.", true);
                    return;
                }

                if (args.Length > 1)
                {
                    Player targetPlayer = Player.Get(args[1]);

                    if (targetPlayer != null)
                    {
                        GiveUnlimitedRadio(targetPlayer);
                        ev.Sender.RemoteAdminMessage($"{targetPlayer.Nickname} выдано бесконечное радио.", true);
                    }
                    else
                    {
                        ev.Sender.RemoteAdminMessage("Игрок не найден.", false);
                    }
                    return;
                }

                ev.Sender.RemoteAdminMessage("Использование: unlimitedradio (all/имя игрока)", false);
            }
        }

        private void BroadcastRadioMessage(Player player)
        {
            foreach (Player target in Player.List.Where(p => p.IsUsingRadio))
            {
                target.Broadcast(5, $"{player.Nickname} использовал радио!");
            }
        }

        private void GiveUnlimitedRadio(Player player)
        {
            player.AddItem(ItemType.Radio);

            var radio = player.CurrentItem;
            if (radio != null && radio.Type == ItemType.Radio)
            {
                radio.DurabilityPoints = float.PositiveInfinity;
            }
        }
    }

    public class Config : IConfig
    {
        public bool IsEnabled { get; set; } = true;
        public bool Debug { get; set; } = false;
    }
}

исправь весь код