[TUT] - Explicaçao de Chaves/Returns...[Iniciantes]

Este tutorial tem o Intuito de ajudar os iniciantes no Pawno. Esse tutorial abordará: Chaves, Returns, Explicaçoes de Funçoes de Um Comando...
Começaremos explicando o processador de Comandos Do Proprio Sa-mp, que e o strcmp.
e ele deve ser usado dentro da public OnPlayerCommandText, Diferente de Zcmd...
public OnPlayerCommandText(playerid, cmdtext[]) {     if(!strcmp(cmdtext, "/comando", true))     {     SendClientMessage(playerid,0x008000AA,"Ola,esse e um Comando Simples de SendClientMessage");     return 1;     }     return 0; }

Explicaçao:
public OnPlayerCommandText(playerid, cmdtext[]) A Calback do processador de comandos originais do samp.

if(!strcmp(cmdtext, "/comando", true))o if significa:Se , o Strcmp que e para processar o comando,o /comando e o comando que quando digitar acontera a funçao definida no comando,no caso desse,o SendClientMessage, e o True e igual a Verdadeiro,no pawn, true e verdadeiro,pode ser usado como True ou como numero 1,o compiler lera da mesma forma...
Agora resumindo : Se Digitar /comando verificara se o comando e verdadeiro(True ou 1),e se for executara a funçao dele.

SendClientMessage(playerid,0x008000AA,"Ola,esse e um Comando Simples de SendClientMessage");
SendClientMessage = Enviar Mensagem Ao Cliente.
Playerid = Armazenara o id do player e executara aquela funçao a ele.
0x008000AA = Cor da mensagem
"Ola,esse e um Comando Simples de SendClientMessage" = Aspas abre e fecha a mensagem,e dentro fica a mensagem. e o ; finaliza a funçao.

return 1; retornara verdade ou 1,pois no pawn True = 1,False = 0,entao pode se usar por palavras ou por numeros,voce e quem escolhe.

} A Chave que fechara o comando em,nao a public.

return 0; Agora sim,Isto fecha a calback,0 = False,ou seja se nao existir o comando que o player digitar retornara Server : Unknown Command

} E Nessa chave e a que fecha a calback,

Conclusão Sobre Chaves: Toda chave que se abre deve ser fechada,Observe que na public, Depois de Public OnPlayerCommandText... tem uma chave abrindo a public,e essa ultima depois do return 0 e a que fecha a public

agora,vou ensinar algo mais sobre chaves(estou falando tanto assim de chaves,porque qualquer chave aberta que nao e fechada e vice-versa Causa 26 Erros no seu Script,em linhas que nao contem erros,entao,quando voce tiver 26 erros em Lugares onde nao tem erros,isso e causado por Chaves,e ultimamente,no forum esta cheio de duvidas de como arrumar esses 26 Erros.).

Veja agora um exemplo de comando:
if(!strcmp(cmdtext, "/comando", true)) { if(!IsPlayerInRangeOfPoint(playerid, 2.0, 231.4386,161.1232,1003.0234)) return SendClientMessage(playerid, 0x008000AA, "Voce Nao Esta No Lugar Certo!"); SendClientMessage(playerid, 0x008000AA, "Parabens,voce esta no lugar certo e digitou o comando!"); } return 1; }

Observe que depois da funçao existe uma chave que fecha,quer saber por que?? R:Ela serve para fechar o if,simplesmente isso.
e agora vo dar uma dica de como Identar um comando,ou seja,deixar ele mais leve para o compilador...
vamos usar o comando que usei acima:

if(!strcmp(cmdtext, "/comando", true)) { if(!IsPlayerInRangeOfPoint(playerid, 2.0, 231.4386,161.1232,1003.0234)) return SendClientMessage(playerid, 0x008000AA, "Voce Nao Esta No Lugar Certo!"); SendClientMessage(playerid, 0x008000AA, "Parabens,voce esta no lugar certo e digitou o comando!"); } return 1; }

Como eu ja disse,o "if" significa Se,e o "!" Significa nao,ou seja,Se Nao EstiverNoPontoCerto que e
231.4386,161.1232,1003.0234,retornara "Voce Nao Esta No Lugar Certo!" e nao acontecera a funçao do comando que e "Parabens,voce esta no lugar certo e digitou o comando!".
Muitos usam dessa forma:
if(!strcmp(cmdtext, "/comando", true)) { if(!IsPlayerInRangeOfPoint(playerid, 2.0, 231.4386,161.1232,1003.0234)) { SendClientMessage(playerid, 0x008000AA, "Voce Nao Esta No Lugar Certo!"); return 1; } SendClientMessage(playerid, 0x008000AA, "Parabens,voce esta no lugar certo e digitou o comando!"); } return 1; }

Isso tambem funciona, mas que faz com que o compilador demore mais para ler.

Conclusão Geral:
{ = Abre
} = Fecha
True = Verdadeiro
1 = Verdadeiro Tambem
False = Falso
0 = Falso Tambem
Return = Retorna

Tutorial by: Transferencia

COMPARTILHE

VEJA TAMBÉM

Próxima
« Anterior
Anterior
Próximo »