TeaM KingS
[center]Ola Convidado, seja bem vindo ao TeaM KingS !

Nós temos tutoriais sobre o WarCraft World Editor: se você tiver alguma duvida pode perguntar que os moderadores ou membros experientes vão lhe ajudar.

Para melhor utilizar nossos recursos é extremamente recomendado que esteja logado em nosso fórum e que leia o nosso regulamento oficial.

Também temos fóruns sobre DotA AllstarS, com guias, estratégias, e muito mais!



[tutorial] Hashtable

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

[tutorial] Hashtable

Mensagem por Bills em 2012-06-03, 23:24

Tutorial básico sobre hashtable

Eai galera, há um tempo havia falado que iria fazer um tutorial sobre hashtables. Então chega de enrolação e vamos logo com isso.

Galera antes de ensinar sobre hashtable, vou dizer tudo que vocês precisam pra usar hashtable. Você terá que ter um conhecimento básico sobre variáveis array e precisará criar uma hashtable em uma trigger com evento "Map Initialization":


O que é uma Hashtable?

Hashtable é uma tabela na qual você pode guardar qualquer tipo de informação. Como se fosse uma variável array. Porém nas variáveis array só temos 1 indice, em hashtable temos 2.
Exemplo:
Código:
set variavel [1] = informação
set hashtable [1] [2] = informação
Veja o exemplo de hashtable, para absorver mais ainda:

Para salvar algo na hashtable você precisa fornecer dois índices (números) que serão como um código para achar a informação e escolher a função para o Tipo. Como no exemplo acima, eu quero guardar MinhaUnit dentro da MinhaHashtable no índice 0 (zero) e 0 (zero) e usei o Save Unit Handle. Então para eu recuperar o que eu gravei na hashtable eu apenas tenho que usar o Load Unit nos índices 0 e 0 gravando direto na minha variável.

Mas qual a real vantagem da hashtable?

A vantagem é que cada coisa do mapa tem um id (código) chamado HandleId. Esse handle id é um número maior que o limite dos indices das variáveis array, que é 8191, mas não é maior que o limite para os indices da hashtable. E além disso, a hashtable possui dois indices, tornando o armazenamento de informações mais dinâmico ainda. Vou dar um exemplo. Vou ensinar a fazer um simples knockback (aquelas magias que empurram) usando hashtable. Usarei a magia Thunder Clap para ativar nosso knockback. veja:


Acima são as triggers do knockback com hashtable. Só quero explicar mesmo a linha que salvo o valor do Angulo no indice Key (Picked Unit), isso significa que usei o código daquela unidade para ser um índice. Assim quando eu for fazer o Pick Every Unit no grupo que está todos os alvos do knockback eu novamente usarei o Key (Picked Unit) para recuperar as informações que gravei. No outro índice ainda tenho que usar valores diferentes. Se a hashtable fosse mesmo uma variável com 2 índices, é como se eu tivesse fazendo isso:
Código:
set MinhaHashtable[0][PickedUnit] = Angulo
set MinhaHashtable[1][PickedUnit] = DistanciaRestante
Caso ainda tenha restado duvidas, eu aconselho tentar usar hashtables no world editor. Ver pessoalmente como elas funcionam. E mais outra coisa, se você sabe o que são leaks verá que nas triggers que postei está cheio deles. Se você não sabe o que são leaks, procure tutoriais na internet, para criadores de mapa esse é um assunto muito importante.

No meu blog tem um link para download do mapa com esse knockback em hashtable, caso alguém se interesse.

É isso ai galera, até a próxima!


Recomendo
Por que um jogo é bom? | Aprenda MUI | Mostre-se para nós!


Bills

Número de Posts : 1446
Data de inscrição : 04/12/2010
Reputação : 173 Pontos : 17519

Warning Necropost
35 / 10035 / 100


Voltar ao Topo Ir em baixo

Re: [tutorial] Hashtable

Mensagem por Bills em 2012-06-05, 00:24

Tópico atualizado...


Recomendo
Por que um jogo é bom? | Aprenda MUI | Mostre-se para nós!


Bills

Número de Posts : 1446
Data de inscrição : 04/12/2010
Reputação : 173 Pontos : 17519

Warning Necropost
35 / 10035 / 100


Voltar ao Topo Ir em baixo

Re: [tutorial] Hashtable

Mensagem por Law.Terro em 2012-06-09, 21:31

Bom, eu não entendi muito bem, fico complexo de mais, sou mais acustumado a linguagem culta xD



Law.Terro

Número de Posts : 1243
Data de inscrição : 18/07/2011
Reputação : 104 Pontos : 16499

Warning Necropost
0 / 1000 / 100


http://againstattack.blogspot.com.br/

Voltar ao Topo Ir em baixo

Re: [tutorial] Hashtable

Mensagem por Bills em 2012-06-10, 21:37

O que não entendeu?


Recomendo
Por que um jogo é bom? | Aprenda MUI | Mostre-se para nós!


Bills

Número de Posts : 1446
Data de inscrição : 04/12/2010
Reputação : 173 Pontos : 17519

Warning Necropost
35 / 10035 / 100


Voltar ao Topo Ir em baixo

Re: [tutorial] Hashtable

Mensagem por Law.Terro em 2012-06-13, 08:45

Sim, eu achei muito complexo, poderia explicar de um modo mais simples? O.o



Law.Terro

Número de Posts : 1243
Data de inscrição : 18/07/2011
Reputação : 104 Pontos : 16499

Warning Necropost
0 / 1000 / 100


http://againstattack.blogspot.com.br/

Voltar ao Topo Ir em baixo

Re: [tutorial] Hashtable

Mensagem por Bills em 2012-06-13, 08:49

Voce tentou fazer algo pelo menos? Tentou entender o Knockback?


Recomendo
Por que um jogo é bom? | Aprenda MUI | Mostre-se para nós!


Bills

Número de Posts : 1446
Data de inscrição : 04/12/2010
Reputação : 173 Pontos : 17519

Warning Necropost
35 / 10035 / 100


Voltar ao Topo Ir em baixo

Re: [tutorial] Hashtable

Mensagem por Law.Terro em 2012-06-13, 09:41

A sim eu entendi completamente agora, um bom tutorial e muito útil também, +REP com certeza.



Law.Terro

Número de Posts : 1243
Data de inscrição : 18/07/2011
Reputação : 104 Pontos : 16499

Warning Necropost
0 / 1000 / 100


http://againstattack.blogspot.com.br/

Voltar ao Topo Ir em baixo

Re: [tutorial] Hashtable

Mensagem por Tamires em 2012-06-18, 21:57

Bills,não seria mais fácil ensinar por jass? não q eu n saiba,mais ao meu ver fica mais fácil sim.

e outra,está errado aqui:

@EDIT : Fail meu,sorry.


Tamires~♥

Tamires

Número de Posts : 487
Data de inscrição : 09/01/2012
Reputação : 27 Pontos : 11778

Warning Necropost
0 / 1000 / 100


Voltar ao Topo Ir em baixo

Re: [tutorial] Hashtable

Mensagem por Bills em 2012-06-19, 00:05

Se o pessoal soubesse jass seria mais facil sim, existe até um sistema chamado Table que torna o uso de hashtables bem mais facil. Porem o pessoa aqui não conhece jass, então não teria como eu fazer esse tutorial em jass.

Mas o tutorial não está complicado, até o Devil_Terr0 entendeu (depois que obriguei ele a olhar o knockback). Para entender coisas que você ainda não conhece você apenas precisa "querer" entender.


Recomendo
Por que um jogo é bom? | Aprenda MUI | Mostre-se para nós!


Bills

Número de Posts : 1446
Data de inscrição : 04/12/2010
Reputação : 173 Pontos : 17519

Warning Necropost
35 / 10035 / 100


Voltar ao Topo Ir em baixo

Re: [tutorial] Hashtable

Mensagem por SN.Edysefer em 2013-12-03, 22:46

certamente amigo e pode ter certeza que vou, muito bom deu pra ter uma noção de como funciona  esses procedimentos

SN.Edysefer

Número de Posts : 93
Data de inscrição : 28/12/2012
Reputação : 1 Pontos : 8252

Warning Necropost
10 / 10010 / 100


Voltar ao Topo Ir em baixo

Re: [tutorial] Hashtable

Mensagem por lucas218 em 2013-12-30, 21:11

Código:
REVIVENDO O TÓPICO SEM QUERER MAS QUERENDO!!
Código:
DA PRA ENSINAR ISSO EM JASS?? ALGUEM SABE POIS COMO SABEMOS O BILLS E OCUPADO E TIPO ESTOU MESMO QUERENDO SABER JASS . . . MESMO QUE EU NÃO MECHA MUITO NO WE MAS AINDA SIM QUERO ME SENTIR REALIZADO.

lucas218

Número de Posts : 264
Data de inscrição : 29/01/2012
Reputação : 26 Pontos : 11238

Warning Necropost
30 / 10030 / 100


http://www.facebook.com/ZeBigodeProducoes

Voltar ao Topo Ir em baixo

Re: [tutorial] Hashtable

Mensagem por Joker em 2013-12-31, 00:41

Baum...o bills sama como voce deve saber e quase imposivel entra,porem...pede ajuda a o gilga quem sabe ele nao pode te ajuda,ele tambem sabe jass/vjass.=)
porem,voce tambem pode fazer sozinho,basta fazer como esta ai em GUI e converter para jass,observar pro um bom tempo e tentar refaze-lo,e se achar melhor,edita-lo,pois as vez nao basta somente converter gui/jass,ainda pode conter leaks.e tambem editando-o seria um treinamento para voce msm =)


Se ajudei da mas rep =D

             
Progamando em Python
                                                               
Nao Abra':





















































































































 














































































































































































































































































































 Troll Face 

Joker

Número de Posts : 447
Data de inscrição : 03/08/2012
Reputação : 62 Pontos : 12593

Warning Necropost
0 / 1000 / 100


Voltar ao Topo Ir em baixo

Re: [tutorial] Hashtable

Mensagem por Gilgamesh em 2014-01-04, 02:34

Certo, aqui vai uma amostra com algumas explicações básicas: http://slim.bz/a7KmdG

Caso tenha mais alguma dúvida, fico feliz em ajudar.  Very Happy 

E vale ressaltar que hashtabls são principalmente utilizados em spells ou systems que utilizam Knockback, que é utilizar um timer para executar uma função X vezes para deslocar uma unidade á uma certa distância.

Aconselho a analisar o funcionamento das hashs nestes tipos de spells e systems, embora hashtables sejam funções de nível médio e não sejam recomendadas para quem ainda vai aprender Jass.



Ei Convidado, você já conhece meu fórum?
Oferecemos todo suporte necessário para a criação de seus mapas!

- Parceiro Oficial TeamKings™ -

.: Menu de Navegação :.
Página Principal
Regras
Ferramentas
Tutoriais
Spells
Systems
Cheated Maps

Gilgamesh

Número de Posts : 313
Data de inscrição : 11/05/2013
Reputação : 69 Pontos : 9989

Warning Necropost
0 / 1000 / 100


http://www.DotCastleBR.forumeiros.com

Voltar ao Topo Ir em baixo

Re: [tutorial] Hashtable

Mensagem por Iky em 2014-01-24, 13:35

o nogócio esta mais em aprender a programar ... conceitos de scopes, funções, objetos, arrays ... o bills largou mão de jass/vjass, e eu sou outro ... a última vez que eu falei com ele, ele tava concentrado em javascript na produção de jogos.
se você revirar o fórum vai achar alguem que fez algum sistema MUI com jass script ... procure



Iky

Número de Posts : 2065
Data de inscrição : 06/04/2010
Reputação : 99 Pontos : 16894

Warning Necropost
10 / 10010 / 100


http://icaro.glauco

Voltar ao Topo Ir em baixo

Re: [tutorial] Hashtable

Mensagem por Conteúdo patrocinado Hoje à(s) 16:40


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo


 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum