[Ajuda] Qual problema nesse comando?
#1

galera estou tentando fazer um sistema bбsico de email mais nгo estou conseguindo entгo peзo lhe-s suas ajudas

Код:
if(!strcmp(cmd, "/mudaremail", true))
	{
	    if (gPlayerLogged[playerid] != 0)
	    {
			tmp = strtok(cmdtext, idx);
			if(!strlen(tmp))
			{
				SendClientMessage(playerid, COLOR_RED, "Uso vбlido: /MudarEmail [Novo e-mail]");
				return 1;
			}
			new emails;
			tmp = strtok(cmdtext, idx);
			emails = strval(tmp);
			if (IsPlayerConnected(playerid))
			{
                format(string,64,"Players/%s.ini",PlayerName(playerid));
                JogadorInfo[playerid][pEmail] = emails;
			    format(string, sizeof(string), "E-mail de recuperaзгo alterado com sucesso para: {FF0000}%s{FFFFFF}", emails);
			    SendClientMessage(playerid, COLOR_AZULBB, string);
			    SendClientMessage(playerid, COLOR_LIGHTRED, "Nгo esqueзa do seu novo e-mail!");
			    return 1;
	        }
		}
		else
		{
		    SendClientMessage(playerid, COLOR_RED, "Vocк nгo estб logado.");
		    return 1;
		}
    }
Reply
#2

Se vocк nгo falar o erro/bug nгo dб pra ajudar, nгo acha?
Reply
#3

Quote:
Originally Posted by TenhoUmaDuvida
Посмотреть сообщение
Se vocк nгo falar o erro/bug nгo dб pra ajudar, nгo acha?
nгo estб setando o email no pEmail e nгo estб aparecendo o email na SCM "E-mail de recuperaзгo alterado com sucesso para:"
Reply
#4

Remova a verificaзгo de player conectado.

PHP код:
if (IsPlayerConnected(playerid)) 
Reply
#5

Quote:
Originally Posted by Hardware
Посмотреть сообщение
Remova a verificaзгo de player conectado.

PHP код:
if (IsPlayerConnected(playerid)) 
Ficou assim

pawn Код:
if(!strcmp(cmd, "/mudaremail", true))
    {
        if (gPlayerLogged[playerid] != 0)
        {
            tmp = strtok(cmdtext, idx);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, COLOR_RED, "Uso vбlido: /MudarEmail [Novo e-mail]");
                return 1;
            }
            new emails;
            emails = strval(tmp);
            format(string,64,"Players/%s.ini",PlayerName(playerid));
            JogadorInfo[playerid][pEmail] = emails;
            format(string, sizeof(string), "E-mail de recuperaзгo alterado com sucesso para: {FF0000}%s{FFFFFF}", emails);
            SendClientMessage(playerid, COLOR_AZULBB, string);
            SendClientMessage(playerid, COLOR_LIGHTRED, "Nгo esqueзa do seu novo e-mail!");
            return 1;
        }
        else
        {
            SendClientMessage(playerid, COLOR_RED, "Vocк nгo estб logado.");
            return 1;
        }
    }
Reply
#6

strval?

https://sampwiki.blast.hk/wiki/Strval
Leia a definiзгo de strval, e veja o que estб mal no seu cуdigo.
Andar a usar funзхes "porque sim" nгo irб a lado nenhum.
Reply
#7

Ainda nгo intendo, por que utilizar strcmp se й muito mas facil usar ZCMD
Reply
#8

Alguйm?
Reply
#9

Cara, a questгo aн foi a que o GWMPT disse e que eu nгo percebi inicialmente. Nгo podes usar strval neste caso, pois ela converte uma string em um nъmero inteiro, que neste caso nгo serve.
PHP код:
 emails strval(tmp); 
Eu nгo uso strtok a muito tempo, inclusive recomendo usar outros meios para isso, como ZCMD e SSCANF. Contudo, hб uma funзгo feita para lidar com texto, chamada strrest.
Dк uma pesquisada de como usб-la e aplicб-la em seu comando. Caso nгo consiga, fique а vontade para me perguntar ou mandar PM.
Reply
#10

Verifique tambйm se na Enum JogadorInfo, pEmail й uma string.

PHP код:
JogadorInfo[playerid][pEmail
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)