Path - Criando e Usando

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

Path - Criando e Usando

Mensagem por JV Justino em Seg 27 Jun 2011, 20:11

Nome: Path - Criando e Usando
Descrição: Como usar Paths e funções relacionadas
Nível: Intermediário
Requerimentos: GM8 Lite/Pro

Olá a todos!
Nesse tutorial, ensinarei a criar Paths e usá-los.

Vamos Começar!

1- O que são Paths?


Paths são caminhos onde os objetos podem seguir. É um recurso muito importante, pois com ele você pode evitar muitos códigos para fazer movimentos.
Para criar um Path, clique no icone e aparecerá uma janela como essa:


Para criar o caminho, você deve clicar na grade, ou clicar no botão Add. Surgirá um ponto no mapa e os atributos do ponto na lista à esquerda. Os atributos são:
  • X: A posição x do ponto no mapa.
  • Y: A posição y do ponto no mapa.
  • sp: A porcentagem de velocidade do objeto neste ponto. A velocidade será dada pelo objeto, e será controlada por este atributo. Se sp for 100, o objeto andará na velocidade escolhida. Se for 200, o objeto andará com o dobro da velocidade. Se for 50, o objeto andará com a metade da velocidade.

Clique agora em outro lugar, e verá que os doi pontos foram ligados por uma reta. Essa reta já é um caminho para o objeto andar. Repita o processo até formar um caminho completo. Se você quiser fechar o caminho, de modo que o objeto recomece o trajeto, marque a opção Closed. Em Connection kind você pode escolher o modo como serão os caminhos:
  • Straight Lines: Se quiser que todo o caminho seja reto.
  • Smooth Curve: Se quiser que todo o caminho seja curvado.

E por último, o campo Precise define a precisão das curvas, deixando-as mais arredondadas ou mais retas. Devem ser inseridos valores de 1 a 8.

2- Usando Paths em objetos


path_start(path,speed,endaction,absolute)
Inicia o Path no objeto. Em path você deve colocar o nome do path. Em speed você coloca a velocidade. Em endaction você coloca o que deverá acontecer quando terminar o trajeto. Pode ser colocado os valores:
  • 0- Para o trajeto.
  • 1- Recomeça o path. Se ele não for fechado, o objeto pulará para a posição inicial do path.
  • 2- Recomeça o path, partindo da posição atual do objeto.
  • 3- Faz o caminho inverso.

Em absolute você define se o objeto fará o trajeto partir da posição atual ou da posição definida no path.

path_end()
Termina o Path do objeto.

Existem variáveis que coordenam o trajeto do objeto. São elas:

path_index
Indica qual Path o objeto está seguindo.
path_position
Indica a posição do objeto no Path. 0 é o inicio do Path, e 1 é o fim. Outras posições recebem valores decimais.
path_positionprevious
Indica a posição anterior do objeto no Path. Pode ser usada em colisões, fazendo o objeto voltar a posição anterior.
path_speed
Indica a velocidade do objeto no path.
path_orientation
Indica o ângulo do path no sentido anti-horário.
path_scale
Indica o tamanho do path. 1 é o tamanho normal.
path_endaction
Indica o que ocorrerá no fim do path.

3-Criando e Editando Paths


path_set_kind(ind,val)
Define se o path ind será feito por linhas retas (0) ou curvas (1).

path_set_closed(ind,closed)
Define se o path ind será aberto (0) ou fechado (1)

path_set_precision(ind,prec)
Define a precisão das curvas do path ind. Os valores devem estar entre 1 e 8.

path_add()
Cria um novo path. Deve ser seguida de uma variável.

path_delete(ind)
Deleta o path ind.

path_duplicate(ind)
Duplica o path ind. Deve estar seguida de uma variável.

path_assign(ind,path)
Faz uma copia do path path, e cola no path ind.

path_append(ind,path)
Une o path ind com o path path

path_add_point(ind,x,y,speed)
Adiciona um ponto no path ind em (x,y). Em speed, você deve colocar a porcentagem da velocidade. Lembram-se no item 1? É a mesma coisa.

path_insert_point(ind,n,x,y,speed)
Adiciona um ponto no path ind logo após o ponto de número n em (x,y), com a porcentagem de velocidade speed.

path_change_point(ind,n,x,y,speed)
Altera a posição e a velocidade do ponto n do path ind

path_delete_point(ind,n)
Deleta o ponto n do path ind

path_clear_points(ind)
Deleta todos os pontos do pathind

path_reverse(ind)
Reverte o path ind, alterando sua posição a partir do último ponto.

path_mirror(ind)
Inverte o path ind horizontalmente.

path_flip(ind)
Inverte o path ind verticalmente.

path_rotate(ind,angle)
Gira o path ind em angle graus.

path_scale(ind,xscale,yscale)
Altera a escala do path ind, partindo do centro.

path_shift(ind,xshift,yshift)
Altera a posição do path ind, pulando xshift x e yshift y.

4- Retornando Valores


path_exists(ind)
Retorna se o path ind existe.

path_get_name(ind)
Retorna o nome do path ind.

path_get_lenght(ind)
Retorna o comprimento do path ind.

path_get_kind(ind)
Retorna se o path ind é feito de linhas retas ou curvas.

path_get_closed(ind)
Retorna se o path ind é fechado ou não.

path_get_precision(ind)
Retorna a precisão das curvas do path ind.

path_get_number(ind)
Retorna o número de pontos do path ind

path_get_point_x(ind,n)
Retorna a coordenada x do ponto n do path ind.

path_get_point_y(ind,n)
Retorna a coordenada y do ponto n do path ind.

path_get_point_speed(ind,n)
Retorna a velocidade do ponto n do path ind.

path_get_x(ind,pos)
Retorna a coordenada x da posição pos do path ind. pos deve estar entre 0 e 1.

path_get_y(ind,pos)
Retorna a coordenada y da posição pos do path ind. pos deve estar entre 0 e 1.

path_get_speed(ind,pos)
Retorna a velocidade da posição pos do path ind. pos deve estar entre 0 e 1.


E este tutorial acaba aqui. Espero ter ajudado a todos e qualquer coisa é só perguntar!

さようなら!


Última edição por JV Justino em Dom 26 Fev 2012, 15:18, editado 2 vez(es)

JV Justino

Ranking : Nota A
Número de Mensagens : 619
Idade : 19
Data de inscrição : 07/12/2010
Notas recebidas : A+A
Reputação : 20
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Path - Criando e Usando

Mensagem por victor_aco em Seg 27 Jun 2011, 20:41

Ótimo tutorial! Muito bem explicado e organizado. Já estou aprovando aqui.

victor_aco

Número de Mensagens : 666
Idade : 21
Data de inscrição : 25/03/2010
Reputação : 2
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

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

- Tópicos similares

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