-
stock adminnames
Всем привет, сделал уровень админки до 4 то есть
Администратор #1, #2 , #3, #4 и Руководитель Проекта
PHP код:
new AdminNames[9][64] = {"Неизвестно", "Хелпер","Гл.Хелпер","Кикер",
"Администратор", "Администратор", "Администратор", "Администратор","Руководитель Проекта"};
И юзаю в командах так
PHP код:
new arank[64];
arank = IsAdminName(PlayerInfo[playerid][pHelper],PlayerInfo[playerid][pAdmin]);
format(string, sizeof(string), "%s получил молчанку от %sа %s ",ClickedPlayerName,arank, pName );
SendClientMessageToAll(COLOR_LIGHTRED, string);
Вот сток
PHP код:
stock IsAdminNames(Helper, Admin)
{
if (Helper > 0 ) return Helper;
else if (Admin > 0)
{
if (Admin == 9999) Admin = 9;
return Admin + 1;
}
else return 0;
}
Теперь когда я стану Рук Проекта пишу в /aad или же /ao (там же юзаю new arank[64];) ничего не выйдет, то есть команда не работает а вот например у админа #1 2 3 4 работает, как исправить ?
Когда даю админку 1 уровня - в /aad пишет что "Хелпер F_K: сообщение" но я на самом деле Админ 1 уровня
-
Капец вы сложные :sad:
PHP код:
static const AdminNames[][] =
{
"Неизвестно",
"Администратор",
"Администратор",
"Администратор",
"Администратор",
"Руководитель Проекта"
};
format(string, sizeof(string), "%s получил молчанку от %sа %s ",ClickedPlayerName, AdminNames[переменная где хранится уровень администратора], pName );
SendClientMessageToAll(COLOR_LIGHTRED, string);
-
Цитата:
Сообщение от
geneff
Капец вы сложные :sad:
PHP код:
static const AdminNames[][] =
{
"Неизвестно",
"Хелпер",
"Гл.Хелпер",
"Кикер",
"Администратор",
"Администратор",
"Администратор",
"Администратор",
"Руководитель Проекта"
};
format(string, sizeof(string), "%s получил молчанку от %sа %s ",ClickedPlayerName, AdminName[переменная где хранится уровень администратора], pName );
SendClientMessageToAll(COLOR_LIGHTRED, string);
Ого, для этого мне вес мод переделывать . есть вариант исправить который я скинул ?
-
Я же вам кидал на другом форуме вариант, и расписывал как лучше.
-
stock IsAdminNames лучше вызывать при авторизации под админку и сразу обновлять уровень админки в переменной с админокой (можно даже и без stock). То бишь:
PHP код:
//Тут загрузка данных в PlayerInfo[playerid][pAdmin]
if(PlayerInfo[playerid][pAdmin] >= sizeof(AdminNames))
PlayerInfo[playerid][pAdmin] = sizeof(AdminNames)-1;
Ибо зачем каждый раз проверять уровень админки и подстраивать его под правильный, если это можно сделать один раз?
И уже код выглядит так
PHP код:
format(string, sizeof(string), "%s получил молчанку от %sа %s ",ClickedPlayerName, AdminNames[PlayerInfo[playerid][pAdmin]], pName );
SendClientMessageToAll(COLOR_LIGHTRED, string);
А чтоб не мучится с pHelper, удали эту переменную из мода и хелперов храни в pAdmin (первые два уровня pAdmin - хелперы, а дальше уже админы)