[Ajuda] Dъvidas muito bбsicas PAWN.
#1

Bom dia, queria pedir que vocкs respondessem ai a essas dъvidas bem bбsicas comecei a programar a 2 dias em PAWN

Qual a funзгo do return 1?
Eu criei um comando bбsico e testei-o com e sem o return 1.
Com o return 1 ele funcionava legal, sem o return 1 tambйm funcionava porйm logo em baixo aparecia que o comando nгo existia.

Para que serve o #define?
Eu acho que й o mesmo que variбveis mas estou na dъvida.

Oque sгo filterscripts?

Obrigado ai a quem responder =D
Reply
#2

Quote:
Originally Posted by Mito_FmZ
Посмотреть сообщение
Qual a funзгo do return 1?
R:
Como diz a prуpria pawn lang: the return statement ends a function and sets the result of the function. It
need not appear at the very end of the function; early exits are permitted.


return = Retorno/retornar, no caso do OnPlayerCommandText,ele meio que informa: "Achei o que eu procurava,parar a public por aqui", jб o return 0 no final retorna que nгo conseguiu achar o comando,e no caso que vocк nгo informou que 'Achou o Comando' ele retorna 0.

Para que serve o #define?
R: Define й uma 'Substituiзгo
exemplo:
pawn Код:
#define SCM SendClientMessage
se vocк usar SCM,ele vai identificar como 'SendClientMessage',mais lembrando que quando compilado,o SCM й substituнdo pelo SendClientMessage,no mesmo modo para definiзхes de Cores.

Oque sгo filterscripts?
R: Filterscript's sгo pequenos 'blocos de cуdigos' externos.
Espero que tenha intendido amigo,caso nгo,explico novamente ate suas duvidas ser esclarecidas.
Reply
#3

Return significam que й para retornar ao chegar a tal ponto.
pawn Код:
//pequeno exemplo de um loop.

new lol;
const lol2 = 5;
while(lol < lol2)
{
      lol++;
      if(lol < 5) return 0;
}
printf("%d",lol);


//Isto, Nгo deve printar nada, pois ao chegar no return diz que deve retornar, assim a var passa a nгo exister mais mesmo estando em um baixo level.
#defines -// Definiзгo de algo que vai ser substituнdo apуs sua definiзгo
pawn Код:
new a  = 10;
new b = 5;
#define a b*3
printf("%d",a);
//Vai printar 15, a variбvel a, apenas assumiu outro valor.
Filterscripts sгo pequenos scripts ou grandes que dгo suporte ao gm, para adicionar pequenas coisas ou maiores, porйm й recomendбvel ter tudo no prуprio gamemode.


@later q.q
Reply
#4

return 1, serve para indicar ao sistema que tudo o comando foi executado. Variбvel dessa frase seria return true;
Quer dizer sucesso ao executar.

Os defines sгo definiзхes de algo que vocк vai usar muitas vezes no seu GM e nгo quer ficar digitando tudo sempre, ou substituiзхes para algum cуdigo monstruoso que nгo dб para lembrar.

Exemplo:
pawn Код:
#define SLOTS 100

for(new i; i<SLOTS; i++)
{
Kick(i);
}
FilterScripts sгo pequenos scripts que sгo "incorporados" ao seu GameMode quando executados.
Reply
#5

De certa forma, o return faz com que uma funзгo inteira, assuma um valor, semelhantemente a uma variбvel comum.

pawn Код:
new TESTE = 10;
printf("Valor de 'teste' = %d", TESTE );
//
//
//
TESTE()
{
    return 10;
}

printf("Valor de 'teste' = %d", TESTE() );
Reply
#6

Quote:
Originally Posted by Mito_FmZ
Посмотреть сообщение
Bom dia, queria pedir que vocкs respondessem ai a essas dъvidas bem bбsicas comecei a programar a 2 dias em PAWN

Qual a funзгo do return 1?
Eu criei um comando bбsico e testei-o com e sem o return 1.
Com o return 1 ele funcionava legal, sem o return 1 tambйm funcionava porйm logo em baixo aparecia que o comando nгo existia.

Para que serve o #define?
Eu acho que й o mesmo que variбveis mas estou na dъvida.

Oque sгo filterscripts?

Obrigado ai a quem responder =D
1є Return й para retornar a funзгo, se voce jб viu a wiki do sa-mp normalmente todas as funзхes tem um return, ou seja, elas retornam um valor, positivo ou negativo, o return 1 ele retornara positivo e o return 0, ele retornara negativo, vejamos um exemplo
pawn Код:
forward minhacallback(playerid);
public minhacallback(playerid){
    if(IsPlayerConnected(playerid))
        return SendClientMessage(playerid,-1,"Voce esta conectado."),1;
    return 0;
}
Entгo, neste pequeno exemplo nуs verificamos se o jogador esta conectado, caso ele esteja conectado ele retornara com uma mensagem e retornara verdadeiro, e no fim da public clicamos como padrгo para ele retornar negativo, pode parecer um pouco confuso mas com o tempo vocк entenderб, entгo vejamos, a public jб tem o valor negativo certo, mas se o jogador estiver conectado ela vai retornar com valor positivo, entende? Mas claro que voce pode retornar outras coisas, veja o exemplo do vini.

Tambem pode retornar assim
pawn Код:
if(!IsPlayerAdmin(playerid))
    return SendClientMessage(playerid,-1,"Voce nгo й admin!");
Tambйm digamos que o return й chamado para retornar a funзгo e nгo dar continuidade a ela...



Os defines servem para definir coisas, como por exemplo

pawn Код:
#define Server "Nome do seu server"
isso й um exemplo, o #define pode ser util caso vocк queira usar abreviaturas, ou por exemplo em dialogs ou valores mбximos.

3є Sobre filterscript o gustavo explicou isso e muito bem!
Reply
#7

Dъvidas respondidas obrigado ai ao pessoal do fуrum bem atencioso ai. Sу pra ver se entendi mesmo.

Isso,
Quote:

public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/comando1", cmdtext, true, 10) == 0)
{
SendClientMessage(playerid, VERDE, "Comando 1 funcionando!");
return 1;
}
return 0;
}

Й igual a isso?
Quote:

public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/comando1", cmdtext, true, 10) == 0)
{
SendClientMessage(playerid, VERDE, "Comando 1 funcionando!");
return 1;
}
else
{
return 0;
}

}

Reply
#8

Quote:
Originally Posted by Mito_FmZ
Посмотреть сообщение
Dъvidas respondidas obrigado ai ao pessoal do fуrum bem atencioso ai. Sу pra ver se entendi mesmo.

Isso,

Й igual a isso?
Nгo!

deixe apenas assim
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/comando1", cmdtext, true, 10) == 0)
{
SendClientMessage(playerid, VERDE, "Comando 1 funcionando!");
return 1;
}
return 0;
}
Ou melhor, se quiser pode usar o meu processador de comandos que й mais rбpido https://sampforum.blast.hk/showthread.php?tid=360748
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)