[Tutorial] Ferramenta !
#1

Usando !

Calma! Hehe, nao й apenas um simples !, й uma negativaзao de sistemas.

Lendo este tutorial, creio que vocк saberб usar corretamente esta ferramenta.

O cуdigo abaixo, retorna a se o jogador for um administrador logado na RCON:

pawn Код:
if(IsPlayerAdmin(playerid)) // Caso For administrador RCON
Com a ferramenta !, negativamos isto, usando a mesma funзao, porйm com o ! na frente:

pawn Код:
if(!IsPlayerAdmin(playerid)) // Caso nao For administrador RCON
Um outro exemplo de uso, й este:

pawn Код:
new JogadorInfo[MAX_PLAYERS];

if(!JogadorInfo[playerid]) // Neste caso, ! retornarб a Falso.
{
    SendClientMessage(playerid,0xBFBFBFAA,"Vocк nгo tem dados criados!"); // Manda a mensagem
    JogadorInfo[playerid] = 1; // Seta o JogadorInfo para 1
}
O uso do ! neste caso, seria igual a este:

pawn Код:
new JogadorInfo[MAX_PLAYERS];

if(JogadorInfo[playerid] == 0) // O mesmo acima
{
    SendClientMessage(playerid,0xBFBFBFAA,"Vocк nгo tem dados criados!"); // Manda a mensagem
    JogadorInfo[playerid] = 1; // Seta o JogadorInfo para 1
}
Usando !=

Vocк aн concerteza jб viu em algum gamemode ou filterscript e atй em alguma include, o uso de !=.

!=, neste caso, significaria nao й igual а

Exemplo:

pawn Код:
new BielCOP = 0; // Cria e seta que BielCOP й igual a 0

if(BielCOP != 0) // Se BielCOP nao й igual a 0
{
    BielCOP = 1; // Seta que BielCOP й igual a 1
}
else // Caso for
{
    BielCOP = 0; // Seta novamente, evitando bugs
}
Notas

. Caso vocк use a ferramenta em uma public, a mesma darб erro.
. Vocк pode economizar tempo e ganhar processamento usando a mesma.

Perguntas e Respostas

Pergunta: Biel, como eu posso ganhar processamento usando ! ?

Resposta: Geralmente em cуdigos, muitos estao acostumados a usar os mesmos assim:

pawn Код:
new VerBiel = 0; // Cria e seta VerBiel para 0

if(VerBiel == 0) // Verifica, usando == e 0
Este mesmo cуdigo, faz as funзoes executadas corretamente.

Mas em caso de processamento e rapidez, porque nao usar assim !?:

pawn Код:
new VerBiel = 0; // Cria e seta VerBiel para 0

if(!VerBiel) // Verifica, usando !
Pergunta: Biel, porque eu nao posso usar ! em uma public ?

Resposta: Observe o erros que temos ao usar ! em uma public:

pawn Код:
C:\Documents and Settings\Administrador\Desktop\TesteTutorial.pwn(3) : error 001: expected token: "-identifier-", but found "!"
C:\Documents and Settings\Administrador\Desktop\TesteTutorial.pwn(5) : error 010: invalid function or declaration
Alйm de ser desnecessбrio, temos erros presentes impossнveis de serem reparados mantendo o !.

Para retornarmos uma public a zero, usamos o nosso famoso return 0;, exemplo:

pawn Код:
public OnFilterScriptInit()
{
    return 0;
}
Retirando o !, nosso compilador nos dб a seguinte mensagem, apenas:

pawn Код:
Pawn compiler 3.2.3664          Copyright (c) 1997-2006, ITB CompuPhase
Dб a entender que o script foi compilado

Finalizando

Estamos finalizando mais um tutorial aqui da Fуrum SA-MP.

Novamente prezo em lhes ensinar o melhor

Й isso aн, Corporation Of Pawno agradece!
Reply
#2

Quote:
Originally Posted by BielCOP
Посмотреть сообщение
pawn Код:
!if(IsPlayerAdmin)) // Caso nao For administrador RCON
Parabens depois dessa eu vou ate dormi!

Reply
#3

Jб corrigi :S

Veja lб agora

pawn Код:
if(!IsPlayerAdmin))
Reply
#4

Si mata vey ,isto nгo й um tutorial vocк mesmo nгo sabe usar as funзхes.
Reply
#5

Quгo difнcil й compreender isso ?

http://pt.wikipedia.org/wiki/Operador_l%C3%B3gico#NOT
Reply
#6

Quote:
Originally Posted by Don_Speed
Посмотреть сообщение

Parabens depois dessa eu vou ate dormi!
Deu vontade tambйm kkk.
Tirando aquilo parece ser bom, nem vou chegar a ler porque jб sei hehe. '-'
Reply
#7

Quote:
Originally Posted by BielCOP
Посмотреть сообщение
pawn Код:
new JogadorInfo[MAX_PLAYERS];

if(!JogadorInfo) // Neste caso, ! retornarб a Falso.
{
    SendClientMessage(playerid,0xBFBFBFAA,"Vocк nгo tem dados criados!"); // Manda a mensagem
    JogadorInfo[playerid] = 1; // Seta o JogadorInfo para 1
}
VocК quer explicar algo a alguem sem mesmo vocК saber


pawn Код:
if(IsPlayerAdmin)) // Caso For administrador RCON
Com a ferramenta !, negativamos isto, usando a mesma funзao, porйm com o ! na frente:

pawn Код:
if(!IsPlayerAdmin)) // Caso nao For administrador RCON
E o playerid cade

Reply
#8

Aew mlz pelo erro, foi impercebнvel, me desculpem.

Quote:
Originally Posted by leonardo1234
Quгo difнcil й compreender isso ?

http://pt.wikipedia.org/wiki/Operador_l%C3%B3gico#NOT
Jб cansei de ver tуpicos na fуrum SA-MP em questao deste assunto

Qualquer erro me desculpem e me relatem, para que eu possa corrigir os mesmos.
Reply
#9

porque vocк usar cores diferentes em um tutorial?

e porque tгo bagunзado?
Reply
#10

Quote:
Originally Posted by BielCOP
Посмотреть сообщение
Jб corrigi :S

Veja lб agora

pawn Код:
if(!IsPlayerAdmin))
What ?

Velho vocк tentou corrigir com outro erro .-.'
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)