[Ajuda] Nгo esta kickado o player.
#1

Recentemente criei um sistema de LOGIN/REGISTRO em DOF2 , porйm quando o jogador erra a senha 3 vezes nгo estб kickando ele. Sera que vocк pode me ajudar?

Code

PHP код:
new Erro[MAX_PLAYERS]; 
PHP код:
public OnDialogResponse(playeriddialogidresponselistiteminputtext[])
{
    new 
arquivo[50],name[MAX_PLAYER_NAME];
    
GetPlayerName(playeridnamesizeof(name));
    
format(arquivosizeof(arquivo), "Contas/n%sInfos.ini"name);
    
PosX[playerid] = DOF2_GetFloat(arquivo"PosX");
    
PosY[playerid] = DOF2_GetFloat(arquivo"PosY");
    
PosZ[playerid] = DOF2_GetFloat(arquivo"PosZ");
    
PosA[playerid] = DOF2_GetFloat(arquivo"PosA");
    
pSkin[playerid] = DOF2_GetInt(arquivo"Skin");
    
pDinheiro[playerid] = DOF2_GetInt(arquivo"Dinheiro");
    
// ==
    
if(dialogid == DIALOG_REGISTRO){
    if(
strlen(inputtext) < 4){
    
pLogado[playerid] = false;
    
TogglePlayerSpectating(playeridtrue);
    
SendClientMessage(playerid0xFF0000AA"|SERVER|A Senha precisa ter no mнnimo 4 caracteres.");
    
ShowPlayerDialog(playeridDIALOG_REGISTRODIALOG_STYLE_INPUT"Registro""Vocк nгo parece ter uma conta em nosso banco de dados\nDigite uma senha baixo para se registrar.""Confirmar""Sair");
    }else{
    
pLogado[playerid] = true;
    
TogglePlayerSpectating(playeridfalse);
    
DOF2_CreateFile(arquivo);
    
DOF2_SetString(arquivo"Senha"inputtext);
    
DOF2_SetInt(arquivo"Dinheiro"1000);
    
DOF2_SetFloat(arquivo"PosX"1139.4064);
    
DOF2_SetFloat(arquivo"PosY", -1761.9249);
    
DOF2_SetFloat(arquivo"PosZ"13.5955);
    
DOF2_SetFloat(arquivo"PosA"4.5833);
    
DOF2_SaveFile();
    
SendClientMessage(playerid0x00FF00AA"|SERVER|Conta criada com sucesso em nosso banco de dados.");
    
SetSpawnInfo(playerid0pSkin[playerid], PosX[playerid],PosY[playerid],PosZ[playerid],PosA[playerid], 0000);
    
SpawnPlayer(playerid);
    
GivePlayerMoney(playeridpDinheiro[playerid]);
    }
    }
    if(!
response){
    
Kick(playerid);
    return 
1;
    }
    
// ==
    
if(dialogid == DIALOG_LOGIN){
    if(!
response){
    
Kick(playerid);
    return 
1;
    }
    if(
strcmp(inputtextDOF2_GetString(arquivo"Senha"), true) == 0){
    
pLogado[playerid] = true;
    
SetSpawnInfo(playerid0pSkin[playerid], PosX[playerid],PosY[playerid],PosZ[playerid],PosA[playerid], 0000);
    
SpawnPlayer(playerid);
    
TogglePlayerSpectating(playeridfalse);
    }else{
    
pLogado[playerid] = false;
    
TogglePlayerSpectating(playeridtrue);
    
SendClientMessage(playerid0xFF0000AA"|SERVER|Senha errada.");
    
Erro[playerid]++;
    
ShowPlayerDialog(playeridDIALOG_LOGINDIALOG_STYLE_INPUT"Login""Vocк jб tem uma conta registrada em nosso banco de dados.\nDigite sua senha abaixo para entrar no servidor.""Confirmar""Sair");
    return 
1;
    }
    if(
Erro[playerid] == 3){
    
pLogado[playerid] = false;
    
SendClientMessage(playerid0xFF0000AA"|SERVER|Vocк exedeu seu limite de tentativas.");
    
Kick(playerid);
    return 
1;
    }
    }
    return 
1;

Reply
#2

Tente assim

PHP код:
    if(dialogid == DIALOG_LOGIN)
    {
        if(!
response)
        {
            
Kick(playerid);
            return 
1;
        }
    }
    if(
strcmp(inputtextDOF2_GetString(arquivo"Senha"), true) == 0)
    {
        
pLogado[playerid] = true;
        
SetSpawnInfo(playerid0pSkin[playerid], PosX[playerid],PosY[playerid],PosZ[playerid],PosA[playerid], 0000);
        
SpawnPlayer(playerid);
        
TogglePlayerSpectating(playeridfalse);
    }
    else
    {
        if(
Erro[playerid] == 3)
        {
            
pLogado[playerid] = false;
            
SendClientMessage(playerid0xFF0000AA"|SERVER|Vocк exedeu seu limite de tentativas.");
            
Kick(playerid);
        }
        else
        {
            
pLogado[playerid] = false;
            
TogglePlayerSpectating(playeridtrue);
            
SendClientMessage(playerid0xFF0000AA"|SERVER|Senha errada.");
            
Erro[playerid]++;
            
ShowPlayerDialog(playeridDIALOG_LOGINDIALOG_STYLE_INPUT"Login""Vocк jб tem uma conta registrada em nosso banco de dados.\nDigite sua senha abaixo para entrar no servidor.""Confirmar""Sair");
        }
    }
    return 
1;

Reply
#3

Quote:
Originally Posted by ThiagoScottish
Посмотреть сообщение
Tente assim

PHP код:
    if(dialogid == DIALOG_LOGIN)
    {
        if(!
response)
        {
            
Kick(playerid);
            return 
1;
        }
    }
    if(
strcmp(inputtextDOF2_GetString(arquivo"Senha"), true) == 0)
    {
        
pLogado[playerid] = true;
        
SetSpawnInfo(playerid0pSkin[playerid], PosX[playerid],PosY[playerid],PosZ[playerid],PosA[playerid], 0000);
        
SpawnPlayer(playerid);
        
TogglePlayerSpectating(playeridfalse);
    }
    else
    {
        if(
Erro[playerid] == 3)
        {
            
pLogado[playerid] = false;
            
SendClientMessage(playerid0xFF0000AA"|SERVER|Vocк exedeu seu limite de tentativas.");
            
Kick(playerid);
        }
        else
        {
            
pLogado[playerid] = false;
            
TogglePlayerSpectating(playeridtrue);
            
SendClientMessage(playerid0xFF0000AA"|SERVER|Senha errada.");
            
Erro[playerid]++;
            
ShowPlayerDialog(playeridDIALOG_LOGINDIALOG_STYLE_INPUT"Login""Vocк jб tem uma conta registrada em nosso banco de dados.\nDigite sua senha abaixo para entrar no servidor.""Confirmar""Sair");
        }
    }
    return 
1;

Vlw bb , funcionou aqui <3
Reply
#4

Disponha
Reply


Forum Jump:


Users browsing this thread: 3 Guest(s)