Редактировать SourceBans

spore

SubPlay.ru
Сообщения
636
Реакции
150
Помогите пожалуйста, как нужно изменить часть кода плагина Sourcebans
C-подобный:
	if(CheckCommandAccess(client, "sm_unban", ADMFLAG_UNBAN|ADMFLAG_ROOT))
		AddMenuItem(menu, "0", "Permanent");
	AddMenuItem(menu, "10", "10 Minutes");
	AddMenuItem(menu, "30", "30 Minutes");
	AddMenuItem(menu, "60", "1 Hour");
	AddMenuItem(menu, "240", "4 Hours");
	AddMenuItem(menu, "1440", "1 Day");
	AddMenuItem(menu, "10080", "1 Week");
Нужно чтобы админам с флагом KICK был доступен бан только на 10 минут, а у админов с флагом BAN была возможность банить от 10 минут до недели. И у админов с флагом UNBAN должна быть возможность банить на любой срок.
 
Последнее редактирование:

Игорь Охремчук

Админ uaplayer.com
Сообщения
240
Реакции
340
PHP:
if(GetAdminFlag(GetUserAdmin(client), ADMFLAG_BAN))
{
	AddMenuItem(menu, "", "");
}
Сделать проверку для каждого пункта на админ флаг, и если есть, то добавить итем.
 

spore

SubPlay.ru
Сообщения
636
Реакции
150
PHP:
if(GetAdminFlag(GetUserAdmin(client), ADMFLAG_KICK)) 
{ 
    AddMenuItem(menu, "10", "10 Минут"); 
} 

if(GetAdminFlag(GetUserAdmin(client), ADMFLAG_BAN)) 
{ 
    AddMenuItem(menu, "30", "30 Mинут");
    AddMenuItem(menu, "60", "1 Час");
    AddMenuItem(menu, "240", "4 Часа");
    AddMenuItem(menu, "1440", "1 День");
    AddMenuItem(menu, "10080", "1 Неделя");
} 

if(GetAdminFlag(GetUserAdmin(client), ADMFLAG_UNBAN)) 
{ 
    AddMenuItem(menu, "0", "Навсегда"); 
}

Получается так?
 
Последнее редактирование:

Игорь Охремчук

Админ uaplayer.com
Сообщения
240
Реакции
340
PHP:
if(GetAdminFlag(GetUserAdmin(client), ADMFLAG_KICK)) 
{ 
    AddMenuItem(menu, "10", "10 Минут"); 
} 

if(GetAdminFlag(GetUserAdmin(client), ADMFLAG_BAN)) 
{ 
    AddMenuItem(menu, "30", "30 Mинут");
    AddMenuItem(menu, "60", "1 Час");
    AddMenuItem(menu, "240", "4 Часа");
    AddMenuItem(menu, "1440", "1 День");
    AddMenuItem(menu, "10080", "1 Неделя");
} 

if(GetAdminFlag(GetUserAdmin(client), ADMFLAG_UNBAN)) 
{ 
    AddMenuItem(menu, "0", "Навсегда"); 
}

Получается так?

Да, должно работать)
 

spore

SubPlay.ru
Сообщения
636
Реакции
150
Таким образом не получается. Итемы на соответствуют нужным флагам.
 

Игорь Охремчук

Админ uaplayer.com
Сообщения
240
Реакции
340
Таким образом не получается. Итемы на соответствуют нужным флагам.

Да почитайте вы основы програмирования. Вобщем, существует оператор || - логический ИЛИ. Если одно из выражений истина, то выполняется код.

PHP:
if(GetAdminFlag(GetUserAdmin(client), ADMFLAG_KICK) || GetAdminFlag(GetUserAdmin(client), ADMFLAG_BAN) 
{  
    AddMenuItem(menu, "10", "10 Минут");  
}

Выражений можно указать и больше.

PHP:
if(GetAdminFlag(GetUserAdmin(client), ADMFLAG_KICK) || GetAdminFlag(GetUserAdmin(client), ADMFLAG_BAN) || GetAdminFlag(GetUserAdmin(client), ADMFLAG_UNBAN)) 
{  
    AddMenuItem(menu, "10", "10 Минут");  
}
 
Последнее редактирование:

zom676

Участник
Сообщения
8
Реакции
0
скажите а можно ли отключить функцию sm_unban без правки плагина,чтоб не все подряд админы могли разбанивать,а только я
 

KapaT

Эгоист
Сообщения
1,988
Реакции
535
zom676,убери у админа флаг Е
 

zom676

Участник
Сообщения
8
Реакции
0
а как это сделать? у меня у всех админов стоит полный доступ,если я ставлю какие-то определенные флаги,то админка вообще перестает работать
 
Последнее редактирование:

KapaT

Эгоист
Сообщения
1,988
Реакции
535
zom676,сделай полный доступ но без флага Е тоесть(ABCDFGJIKLVN)
 

semjef

semjef.ru
Сообщения
993
Реакции
444
Флаг b обязателен просто, видимо ты его не давал:)
 

zom676

Участник
Сообщения
8
Реакции
0
я так делаю,и админка пропадает вообще,флаг Б давал,и толку никакого,всё равно не работает,а по другому никак нельзя оключить? может команду какую-нить прописать?
 
Последнее редактирование:
Сверху Снизу