[Command("unhardban", GreedyArg = true)]
public static void CMD_unhardbanTarget(Player player, string name)
{
if (!Group.CanUseCmd(player, "unhardban")) return;
try
{
Admin.unhardbanPlayer(player, name);
}
catch (Exception e) { Log.Write("EXCEPTION AT \"CMD\":\n" + e.ToString(), nLog.Type.Error); }
}
вотМетод
Admin.unhardbanPlayer
скинь
public static void unhardbanPlayer(Player player, string name)
{
if (!Main.PlayerNames.ContainsValue(name))
{
Notify.Send(player, NotifyType.Error, NotifyPosition.BottomCenter, "Такого имени нет!", 3000);
return;
}
if (!Ban.PardonHard(name))
{
Notify.Send(player, NotifyType.Error, NotifyPosition.BottomCenter, $"{name} не находится в бане!", 3000);
return;
}
Notify.Send(player, NotifyType.Success, NotifyPosition.BottomCenter, "С игрока снят хардбан!", 3000);
}
лолвот
C#:public static void unhardbanPlayer(Player player, string name) { if (!Main.PlayerNames.ContainsValue(name)) { Notify.Send(player, NotifyType.Error, NotifyPosition.BottomCenter, "Такого имени нет!", 3000); return; } if (!Ban.PardonHard(name)) { Notify.Send(player, NotifyType.Error, NotifyPosition.BottomCenter, $"{name} не находится в бане!", 3000); return; } Notify.Send(player, NotifyType.Success, NotifyPosition.BottomCenter, "С игрока снят хардбан!", 3000); }
public static bool PardonHard(string nickname)
{
lock (Banned)
{
int index = Banned.FindIndex(x => x.Name == nickname);
if (index < 1) return false;
Banned[index].isHard = false;
MySQL.Query($"UPDATE banned SET ishard={false} WHERE name='{nickname}'");
return true;
}
}
public static bool PardonHard(int uuid)
{
lock (Banned)
{
int index = Banned.FindIndex(x => x.UUID == uuid);
if (index < 1) return false;
Banned[index].isHard = false;
MySQL.Query($"UPDATE banned SET ishard={false} WHERE uuid={uuid}");
return true;
}
}
проблема скорее всего в последнем методе что я скинул
Выше показывалПокажи список забаненых в листе Banned
Ты таблицу в бд показал, а теперь запусти Vs в отладке и покажи что содержит лист BannedВыше показывал
это в бд, ну а как найти твой лист я запустил в откладке не вижуИли это и есть она? Тяжело определить по такому маленькому скрину
где эту точку взять?поставь точку остановки тут if (index < 1) return false;
И посмотри