[AJUDA] Sistema de Login [POR FAVOR]
#1

Eaн galera..

To com um problema MUITO CHATO, jб nгo aguento mais tentar resolver isso .. Por favor me dкem uma luz !

Й o seguinte:

Quando uma pessoa que nгo й registrada entra no servidor, aparece a dialog de registro, atй aн ok ..

Daн a pessoa vai lб, coloca a senha para se registrar, e clica em "Registrar".

Sу que simplesmente a dialog fecha e a pessoa sу consegue se registrar se digitar /registrar [senha] e logo depois digitar /logar [senha]..

AJUDEM, POR FAVOR ! ;/

CMD "/registrar":

pawn Код:
if (strcmp(cmd, "/registrar", true) ==0 )
    {
        if(IsPlayerConnected(playerid))
        {
            if(gPlayerLogged[playerid] == 1)
            {
                SendClientMessage(playerid, COLOR_DBLUE, "[BSF]:  Vocк jб esta logado.");
                return 1;
            }
            GetPlayerName(playerid, sendername, sizeof(sendername));
            format(string, sizeof(string), "Contas/%s.ini", sendername);
            new File: hFile = fopen(string, io_read);
            if (hFile)
            {
                SendClientMessage(playerid, COLOR_YELLOW, "Este Nick jб existe, tente outro.");
                fclose(hFile);
                return 1;
            }
            new tmppass[64];
            tmp = strtok(cmdtext, idx);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, COLOR_GRAD1, "USE: /registrar [Senha]");
                SendClientMessage(playerid, COLOR_YELLOW, "-==> Use Nome_Sobrenome ( Ex: Guru_Josh ) <==-");
                return 1;
            }
            strmid(tmppass, tmp, 0, strlen(cmdtext), 255);
            OnPlayerRegister(playerid,tmppass);
        }
        return 1;
    }

OnDialogResponse do Registrar:

pawn Код:
if(dialogid==2)
    {
        if(!response)
        {
            GetPlayerName(playerid,string,sizeof(string));
            format(string,sizeof(string),"O Player %s foi kickado por nгo se registrar!");
            SendClientMessageToAll(0xFFAACCDDAA,string);
            Kick(playerid);
            SendClientMessage(playerid,0xFFAACCDDAA,"Sem se registrar vocк nгo pode jogar, por isso foi kikado");
            return 0;
        }
        if(response >= 1)
        {
            if(strlen(inputtext) == 0)
            {
                PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
                ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "{FFFF00}Registrar BSF", "{33CCFF}******************************************\n{33FF00}Bem Vindo ao [BRA] SampForever [RPG v1.0] \n{33FF00}Sua conta nao esta registrada! \n\n{33FF00}Por favor, registre-se!!\n{33CCFF}******************************************", "Registrar", "Sair");
                //TextDrawShowForPlayer(playerid, BSFText);//Mostrar BSF Text Draw
                return 1;
            }
            if(strval(inputtext) > 0)
            {
                PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
                format(string,sizeof(string),"/registrar %d",strval(inputtext));
                OnPlayerCommandText(playerid,string);
                //TextDrawShowForPlayer(playerid, BSFText);//Mostrar BSF Text Draw
                return 1;
            }
            PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
            format(string,sizeof(string),"/registrar %s",inputtext);
            //OnPlayerCommandText(playerid,string);
            CallLocalFunction("OnPlayerCommandText", "is", playerid, string);
//          TextDrawShowForPlayer(playerid, BSFText);//Mostrar BSF Text Draw
            return 1;
        }
    }
    return 1;
}

E tem isso no OnPlayerConnect:

pawn Код:
ClearChatbox(playerid, 100);
    if(fexist(string))
    {
        //ClearChatbox(playerid, 8);
        gPlayerConta[playerid] = 1;
        /*SendClientMessage(playerid, COLOR_MSG, "[BSF]: Este Nick й Cadastrado, Por Favor Se Logue");
        SendClientMessage(playerid, COLOR_MSG, "[BSF]: Vocк pode, agora, Digita: /logar [senha]");
        //SendClientMessage(playerid, COLOR_YELLOW, "-==> Use Nome_Sobrenome ( Ex: Bruno_Tadeu ) <==-");
        return 1;*/

        ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "{FFFF00}Login BSF", "{33CCFF}******************************************\n{33FF00}Bem Vindo ao [BRA] SampForever [RPG v1.0] \n{33FF00}Sua conta foi Registrada! \n\n{33FF00}Por favor logue na sua conta!!\n{33CCFF}******************************************", "Logar", "Sair");
        //TextDrawShowForPlayer(playerid, BSFText);//Mostrar BSF Text Draw
    }
    else
    {
        //ClearChatbox(playerid, 8);
        gPlayerConta[playerid] = 0;
        /*SendClientMessage(playerid,COLOR_MSG,"Voce nгo tem uma conta! digite /registrar [Senha]");
        SendClientMessage(playerid, COLOR_YELLOW, "-==> Use Nome_Sobrenome ( Ex: Bruno_Tadeu ) <==-");
        return 1;*/


ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "{FFFF00}Registrar BSF", "{33CCFF}******************************************\n{33FF00}Bem Vindo ao [BRA] SampForever [RPG v1.0] \n{33FF00}Sua conta nao esta registrada! \n\n{33FF00}Por favor, registre-se!!\n{33CCFF}******************************************", "Registrar", "Sair");
        //TextDrawShowForPlayer(playerid, BSFText);//Mostrar BSF Text Draw
    }
    return 1;
}

AJUDEM-ME PLEAAASE !

Jб peзo desculpas adiantado para a moderaзгo, pois havia feito um tуpico parecido com este, mas o usuбrio que estava me ajudando foi banido, entгo re-fiz.

Agradeзo desde jб !
Reply
#2

isso da no host ou no seu pc por que se for no host eu to com o mesmo problema isso e uma merda
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)