В общем сделал команду /aduty и проверку на пароль но когда я придумываю пароль и ввожу в базу данных записывается совсем другой.
PHP код:
//==========================================================================
if(strcmp(cmd, "/aduty", true) == 0)
{
if(!IsPlayerConnected(playerid)) return true;
if(Player[playerid][pAdmin] == 0) return SendClientMessage(playerid, COLOR_RED, "[ОШИБКА] {FFFFFF}Нет прав для использования команды!");
if(Player[playerid][pADuty] == false)return ShowPlayerDialog(playerid,DIALOG_ADUTYPAS,DIALOG_STYLE_INPUT,"{33CCFF}Администраторские права","{FFE4B5}придумай пароль.","Ввести","Закрыть");
if(AduTy[playerid] == 0)
{
ShowPlayerDialog(playerid,DIALOG_ADUTY,DIALOG_STYLE_INPUT,"{33CCFF}Администраторские права","{FFE4B5}Введи свой пароль для получения администраторских прав.","Ввести","Закрыть");
}
else
{
new arank[50];
switch(Player[playerid][pAdmin])
{
case 1: arank = "Помощник";
case 2: arank = "Ст.Помощник";
case 3: arank = "Мл.Администратор";
case 4: arank = "Администратор";
case 5: arank = "Ст.Администратор";
case 6: arank = "Администратор фракций";
case 7: arank = "Администратор банов";
case 8: arank = "Администратор ивентов";
case 9: arank = "Зам.Гл.Администратора";
case 10..11: arank = "Гл.Адмнистратор";
}
format(string,sizeof(string),"%s %s[%d] завершил(а) дежурство.",arank,RPN(playerid),playerid);
ABroadCast(COLOR_YELLOW,string,1);
AdutyPas[playerid] = 0;
AduTy[playerid] = 0;
}
return true;
}
//==========================================================================
PHP код:
//==========================================================================
else if(dialogid == DIALOG_ADUTY){
if(response){
if(!strlen(inputtext)) return ShowPlayerDialog(playerid,DIALOG_ADUTY,DIALOG_STYLE_INPUT,"{33CCFF}Администраторские права","{FFE4B5}Введи свой пароль для получения администраторских прав.","Ввести","Закрыть");
Adostup[playerid] = strval(inputtext);
if(Adostup[playerid] == Player[playerid][pDaduty]){
new arank[50];
switch(Player[playerid][pAdmin]){
case 1: arank = "Помощник";
case 2: arank = "Ст.Помощник";
case 3: arank = "Мл.Администратор";
case 4: arank = "Администратор";
case 5: arank = "Ст.Администратор";
case 6: arank = "Администратор фракций";
case 7: arank = "Администратор банов";
case 8: arank = "Администратор ивентов";
case 9: arank = "Зам.Гл.Администратора";
case 10..11: arank = "Гл.Администратор";}
format(string,sizeof(string),"%s %s[%d] заступил(а) на дежурство.",arank,RPN(playerid),playerid);
ABroadCast(COLOR_YELLOW,string,1);
format(string,sizeof(string),"%s %s[%d] заступил(а) на дежурство.",arank,RPN(playerid),playerid);
SendClientMessage(playerid,COLOR_YELLOW,string);
//AdminLogin[playerid] = 1;
AduTy[playerid] = 1;}
else{
AdutyPas[playerid]++;
format(string, sizeof(string), "[ОШИБКА] {FFFFFF}Неверный пароль от ''/aduty''. Осталось попыток {FF0000}%d{FFFFFF}.", 3-AdutyPas[playerid]);
SendClientMessage(playerid,COLOR_RED,string);
if(AdutyPas[playerid] >= 3){
format(string,sizeof(string),"Античит: %s[%d] был(а) кикнут(а). Причина: Подбор пароля к ''/aduty''.",Player[playerid][pName],playerid);
ABroadCast(COLOR_YELLOW,string,1);
SendClientMessage(playerid,COLOR_YELLOW,"Ты был(а) кикнут(а) античитом. Причина: Подбор пароля к ''/aduty''.");
Kick(playerid);}}
return 1;}}
//==========================================================================
Как сделать в DIALOG_ADUTYPAS чтоб когда игрок писал свой лично придуманный пароль он сохронялся? А то у меня совсем другой сохроняется не тот который я ввожу.PHP код:
//==========================================================================
else if(dialogid == DIALOG_ADUTYPAS)
{
if(response)
{
if(!strlen(inputtext))return ShowPlayerDialog(playerid,DIALOG_ADUTYPAS,DIALOG_STYLE_INPUT,"{33CCFF}Администраторские права","{FFE4B5}Придумай пароль.","Ввести","Закрыть");
if(strlen(inputtext) < 6 || strlen(inputtext) > 32)return SendClientMessage(playerid,COLOR_WHITE, "пароль должен быть не меньше 6 и не больше 32 символов");
new tpass[64];
strmid(tpass,inputtext,0,strlen(inputtext), 255);
Player[playerid][pDaduty],inputtext);
Player[playerid][pADuty] = true;
SaveAccount(playerid);
return 1;
}}
//==========================================================================
- - - Добавлено - - -
Пробовал сделать как и ввод пароля от аккаунта но пароль получался другой не такой который я вводил.