SA-MP Forums Archive
[Ajuda] alguem poderia ajudar nessa logica? - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] alguem poderia ajudar nessa logica? (/showthread.php?tid=608198)



alguem poderia ajudar nessa logica? - moura98 - 28.05.2016

Galera tenho a duvida nessa logica aqui
Код:
 if(sscanf(params[], "i", idskin)) 
return SCM(playerid, -1, "use: /skin <id> ");
Ou seja se a primeira linha for true ou verdade ele vai retornar a mensagem eh isso? Nao entendi direito a logica dessa condicao if. alguem pode ajudar?


Re: alguem poderia ajudar nessa logica? - LockedLucas - 28.05.2016

Nгo cara... ali se ele digitar /skin e nгo colocar nada na frente tipo /skin 25 vai dar erro.


Re: alguem poderia ajudar nessa logica? - FelipeSantos - 28.05.2016

Quando vocк utiliza sscanf, nessa verificaзгo ele retorna falso. Ou seja, sу aparecerб a mensagem de "use: /skin <id>", caso ele nгo digite como estб na verificaзгo.


Re: alguem poderia ajudar nessa logica? - LockedLucas - 28.05.2016

ignore... eu disse um bagui mo nada a ver.


Re: alguem poderia ajudar nessa logica? - focaximubh - 28.05.2016

pawn Код:
if(sscanf(params, "i", skinid))return SendClientMessage(playerid, -1, "USO: /skin [ID]");
A funзгo foi chamada, caso o parвmetro skinid nгo seja chamado irб retornar o valor SendClientMessage...

Sу corrigindo o seu modo...

if(sscanf(params[], "i", idskin))
"params[]" nгo se usa, deve-se utilizar params

Temos outros exemplos do modo tambйm que seria:

pawn Код:
if(PlayerLevelAdmin[playerid] < 5)return SendClientMessage(playerid, -1, "Seu nнvel de admin й menor que 5!");
if = Caso
PlayerLevelAdmin[playerid] < 5 = Level Admin seja menor que 5
return sendclientmessage = Deverб retornar a seguinte mensagem:


Re: alguem poderia ajudar nessa logica? - moura98 - 29.05.2016

Entao essa funcao sscanf retorna falso ??


Re: alguem poderia ajudar nessa logica? - F1N4L - 29.05.2016

Quote:
Originally Posted by moura98
Посмотреть сообщение
Entao essa funcao sscanf retorna falso ??
Retorna o que a funзгo que vc quiser.

Retorna uma msg
Код:
if(sscanf(params, "i", skinid)) return SendClientMessage(playerid, -1, "RETORNA ESSA MENSAGEM");
Retorna a funзгo de setar skin, id do cafetгo.
Код:
if(sscanf(params, "i", skinid)) return SetPlayerSkin(playerid, 249);
E por aн vai...


Re: alguem poderia ajudar nessa logica? - iTzMatheus - 29.05.2016

Atй onde eu sei й basicamente a checagem da syntax do comando.

Ele verifica o que foi digitado pelo player e se faltar alguma coisa ele completa geralmente com uma mensagem de explicaзгo, exemplo:


Код:
CMD:ban(playerid, params[])
{
     if (sscanf(params, "us[128]", userid, motivo))
	    return SendClientMessage(playerid, COLOR_YELLOW,"USE: /ban [playerid/nome] [motivo]");
Se eu digitasse apenas /ban ele exibiria a mensagem, explicando que deve colocar o ID ou nome e o motivo. Caso eu digite corretamente os itens, com um ID e um motivo, ele continua o cуdigo e realiza o banimento do jogador.


Re: alguem poderia ajudar nessa logica? - Monotox - 29.05.2016

Quote:
Originally Posted by F1N4L
Посмотреть сообщение
Retorna o que a funзгo que vc quiser.

Retorna uma msg
Код:
if(sscanf(params, "i", skinid)) return SendClientMessage(playerid, -1, "RETORNA ESSA MENSAGEM");
Retorna a funзгo de setar skin, id do cafetгo.
Код:
if(sscanf(params, "i", skinid)) return SetPlayerSkin(playerid, 249);
E por aн vai...
Ele quis dizer que o fator comparativo retorna falso caso nгo preencha os parвmetros. Ex: Caso instruзгo x nгo esteja correta (FALSE) retorne isso.

Deste ponto de vista, estб correto. Mas os termos impregnados na explicaзгo, nгo.


Re: alguem poderia ajudar nessa logica? - FelipeSantos - 29.05.2016

Quote:
Originally Posted by Monotox
Посмотреть сообщение
Ele quis dizer que o fator comparativo retorna falso caso nгo preencha os parвmetros. Ex: Caso instruзгo x nгo esteja correta (FALSE) retorne isso.

Deste ponto de vista, estб correto. Mas os termos impregnados na explicaзгo, nгo.
Exatamente o que quis dizer