Vladisla334
Ученик
Когда я выдаю админку и игрок авторизуется в /alogin ,то ему не доступны админ команды где стоит проверка на Админку:
alogin:
PHP:
CMD:makeadmin(playerid, params[])
{
if(!FullDostup(playerid)) return 1;
if(sscanf(params, "ud",params[0],params[1])) return NotThatCommand(" /makeadmin [id] [0-7]");
if(params[1] < 0 || params[1] > 7) return NotThatCommand(" /makeadmin [id] [0-7]");
if(!IsPlayerConnected(params[0]) || params[0] == INVALID_PLAYER_ID) return NofFouned(playerid);
if(pInfo[params[0]][pAdmin] > 0)
{
SendMes(params[0], COLOR_GREEN, "Администратором %s повысил/понизил вас до %d ранга.",GN(playerid),params[1]);
SendMes(playerid, COLOR_RED,"Вы повысили/понизили %s до %d ранга.",pInfo[params[0]][pNames],params[1]);
}
else
{
SendMes(params[0], COLOR_LIGHTGREEN, "Администратор %s выдал вам %d ранг администратирования.",GN(playerid),params[1]);
SendMes(playerid, COLOR_LIGHTGREEN,"Вы назначили %s администратором уровня %d.",pInfo[params[0]][pNames],params[1]);
if(pInfo[params[0]][pAdmin]>0) { SCM(params[0],COLOR_RED,"[Внимание]{FFFFFF} Наказания за какие-либо нарушения выдаются сторого по правилам: /ahelp."); }
format(pInfo[params[0]][pAIp],16,RangeBan(params[0]));
//format(stringer,90,"[aLogin] %s[%d] авторизировался.",GN(params[0]),params[0]); ABroadCast(COLOR_YELLOW,stringer,1);
}
if(!params[1])
{
aLogged[playerid] = false;
format(pInfo[params[0]][pAlogin], 20, "");
mysql_function(connects, "UPDATE `accounts` SET `pAlogin`='' WHERE `Name` = '%s'", false, "", "", GN(params[0]));
}
pInfo[params[0]][pAdmin] = params[1];
Adminlog(playerid, GN(params[0]), "makeadmin",params[1] ,"-");
mysql_function(connects,"UPDATE `accounts` SET `pAdmin` = '%d' WHERE `Name` = '%s'",false,"","",pInfo[params[0]][pAdmin],GN(params[0]));
return true;
}
PHP:
case 2801:
{
if(!response) return 1;
new string[100];
if(!strlen(inputtext)) return true;
if(!strlen(pInfo[playerid][pAlogin]))
{
new size = strlen(inputtext);
if(size < 5 || size > 20) return SendClientMessage(playerid, -1, "Длина пароля от 5 до 20 символов.");
strins(pInfo[playerid][pAlogin], inputtext, 0);
format(string, sizeof(string), "UPDATE `accounts` SET `pAlogin` = '%s' WHERE `Name` = '%s'", pInfo[playerid][pAlogin], GN(playerid));
mysql_tquery(connects, string, "", "");
//mysql_function(connects, "UPDATE `accounts` SET `pAlogin` = '%s' WHERE `Name` = '%s'", false, "", "", pInfo[playerid][pAlogin], GN(playerid));
printf(string);
}
else
{
if(strcmp(inputtext, pInfo[playerid][pAlogin], false))
{
SetPVarInt(playerid, "aLogin", GetPVarInt(playerid, "aLogin")+1);
format(string, 60, "[aLogin] %s[%d] ввёл пароль неверно.", GN(playerid), playerid);
ABroadCast(COLOR_LIGHTRED, string, 1);
if(GetPVarInt(playerid, "aLogin") == 3)
{
SendClientMessage(playerid, -1, "Вы трижды ввели пароль неверно и были отключены от сервера.");
Kick(playerid);
}
return 1;
}
}
aLogged = true;
format(string, 55, "[aLogin] %s[%d] авторизировался.", GN(playerid), playerid);
ABroadCast(COLOR_BLUE, string, 1);
DeletePVar(playerid, "aLogin");
}
