Arrays Players (Tutorial Explicativo de como usa-las) -
ipsBruno - 20.11.2010
[TUT] Arrays Players
Introduзгo:
Bom vou explicar um pouquinho sobre as arrays quando aplicadas em players,sгo as estruturas de dados mais simples e pricipais de uma programaзгo.
A array tem uam parte importante na qual se usa se chama 'index' ou portuguesamente falando 'indice' que funcionam como inteiraзхes das arrays.
Iniciando o Tutorial:
Em geral as arrays sгo definidas das seguintes forma:
Simples:
Com Indice:
Esses serгo os dois tipos de arrays que explicarei hoje.
Para que Usar?
As arrays sгo usadas normalmente para definir valores,no caso de arrays com indice podemos definir valores a players no qual o seu 'id' й o indice da mesma,ou setar valores gerais para o servidor.
Array com Index:
Код:
new PlayerWins[500];
if(PlayerWins[playerid] == 10) printf("O Player %d й Wins",playerid);
Explicando:
Bom alн no caso criei uma array com 'index' de 500.
Ao criar uma index ela faz:
0,1,2,3,4,5,6,7,8,9,10...
Cada um desses nъmeros sгo os playerids (
atй 500) , essas index por ser parte da array elas podem definir um valor independente de qual valor da array inteira
Код:
PlayerWins[indexid] = valor;
No Caso acima devemos colocar o 'valor' e 'indexid',normalmente quando se trata de players colocamos '[playerid] = valor', assim fazendo com que 'index' seja igual ao id do player
Array Simples:
Bom agora vamos explicar a funзгo da array simples,praticamente e teoricamente tem a mesma funзгo que a array anterior,porйm neste caso й sem intereзхes,sendo apenas 1 parte e nгo 500 partes.
Код:
new PlayerWins;
if(PlayerWins == 10) printf("O Player %d й Wins",playerid);
Observem que agora nгo usei
[ e ] pelo simples fato de nгo ter 'index' portanto nгo necessitarб disto.
Neste caso de Arrays simples й impossнvel que crie ela apenas para um player,pois ela й simples e й composta por apenas 1 parte.
Basicamente й isto.
O que podemos Fazer com Arrays?
Com arrays como dito anteriormente pode se definir valores,assim definindo muitas coisas que deseja,como exemplo:
Код:
new Digitou[500];
if(!strcmp(cmdtext, "/drakins", true))
{
if(Digitou[playerid] == 10)
return SendClientMessage(playerid, 0xFFFFFFFF, "Vocк jб digitou '/drakins'");
if(Digitou[playerid] != 10)
{
SendClientMessage(playerid, 0xFFFFFFFF, "Vocк nгo digitou '/drakins'");
Digitou[playerid] = 10;
}
return true;
}
Observem que com simples array defini se o player digitou 'drakins' ou 'nгo digitou' apenas usando valores simples
Sendo:
Код:
Caso valor for igual a 10 ele digitou
Caso nгo for igual a 10 ele nгo digitou
PVars
Bom muita gente discute este assunto vou simplificar de uma vez por todas.
PVars nada mais nada menos sгo arrays para players.
Player
Variбvel
Porque?
Bom isto й simples
a Equipe da SA:MP com intuito de melhorar a otimizaзгo resolveu criar este sistema que cria arrays 'particulares' para apenas um player,seria o mesmo que
new Players[500];
Porйm sem o 500 assim fazendo apenas 1 parte sendo muito mais otimizado
Usando:
Para usar existem 2 Funзхes mais Importantes que Explicarei Hoje:
Код:
GetPVarInt
SetPVarInt
Usando o Exemplo dito na primeira parte do tuto:
Код:
if(GetPVarInt(playerid,"NomeArray") == 10) printf("O Player %d й Wins",playerid);
Viram? Alйm de Otimizar ele encurtou as linhas poir nгo й nessesario criar a array
Setando:
Код:
SetPVarInt(playerid,"NomeArray",10);
Seria o mesmo que:
Код:
new NomeArray[500];
NomeArray[playerid] = 10;
Porйm sem as '500 partes' e sem precisar de 2 linhas
Nota:
• Variavel = Array
• Variavel deve-se ao nome pois variбvel vem 'variar' que significa 'mudar',isto й as arrays sгo variaveis pois mudam definindo valores
• Caso a PVar nгo existe ele retorna '0'
• Existe outros tipos de Arrays como Floats,String e Tйcnicas Booleanas que hoje nгo vem ao caso
PS1: Desculpa falar algumas palavras erradas no contexto,tentei deixar de forma mais acessнvel possнvel
Criado por DraKiNs | Tutorial FeKSquad
Respuesta: Arrays Players (Tutorial Explicativo de como usa-las) -
[FeK]Gunner - 20.11.2010
xD bom ^^
bem explicado e pa
<3'
rs
Respuesta: Arrays Players (Tutorial Explicativo de como usa-las) -
ipsBruno - 20.11.2010
Valeu Gunner
Obs: Desculpa aos Bons programadores,eu tentei escrever de melhor forma e mais acessнvel para iniciantes portanto pode haver erros de 'expressгo' ou outros do tipo
Re: Arrays Players (Tutorial Explicativo de como usa-las) -
[FeK]WarMachine - 20.11.2010
boa emo ^^ agora й sу eu entender isso ^^
Re: Arrays Players (Tutorial Explicativo de como usa-las) -
zSuYaNw - 20.11.2010
muito bom dracu, bom mesmo,
Re: Arrays Players (Tutorial Explicativo de como usa-las) -
Kasura - 20.11.2010
Ficou bom bastante explicativo ^^
vai ajudar bastante gente iniciante ou que nгo sabe muito sobre isso ^^ >
como eu
Re: Arrays Players (Tutorial Explicativo de como usa-las) -
SlashPT - 20.11.2010
Drakon as PVars como foi dito foi para optimizar Porem NAO Contretizaram o seu desejo...
Mas tambem foi com o intuito de facilitar aos Programadores (Nos) fazer os nossos scripts...
Porem como ja disse elas queriam-se que fossem mais optimizadas que as normais arrays mas ja foi visto em varios testes muito mesmo que as PVars sao mais lentas, ja era de prever visto que a Array й um sistema mesmo do Pawn simples enquanto as Pvars para ter as facilidades que em foi preciso fazer outras coisas...
Mas de resto Bom TuT
Respuesta: Re: Arrays Players (Tutorial Explicativo de como usa-las) -
ipsBruno - 20.11.2010
Quote:
Originally Posted by DarK TeaM PT
Drakon as PVars como foi dito foi para optimizar Porem NAO Contretizaram o seu desejo...
|
As PVars apenas podem ser ultilizadas por um player,pois ela nгo usam interatores de 500,portanto se estб usando com mais de um player й provбvel que ocorra algum bug.
Dependendo do modo de uso elas sгo mais otimizadas.
pawn Код:
new Pvar[500];
Pvar[id] = 10;
pawn Код:
SetPVarInt(id,"Pvar",10);
Observem que as Pvars nгo tem nenhum valor de indice e apenas '0',portanto sгo mais otimizadas,o que deixa elas lentas й o mau uso delas e tambйm porque elas sгo chamadas pelo c++
Re: Arrays Players (Tutorial Explicativo de como usa-las) -
SlashPT - 20.11.2010
sim й verdade isso que dizes mas sao mais lentas bom ou mau uso mesmo a SAMP team o admitiu..
Respuesta: Re: Arrays Players (Tutorial Explicativo de como usa-las) -
ipsBruno - 20.11.2010
Quote:
Originally Posted by DarK TeaM PT
sim й verdade isso que dizes mas sao mais lentas bom ou mau uso mesmo a SAMP team o admitiu..
|
Isto й Normal DarK TeaM PT,ele editam Game Mode God Father todo mal Otimizado,dizem que й bom e ficam famosos por este 'grande feito',enquanto aos criadores? jб ouviu falar deles?
Crйditos eles Esquecem