Criando auto- funções

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

Criando auto- funções

Mensagem por JoaoVanBlizzard em Ter 14 Jan 2014, 15:08

Olá galera eu queria saber se existe um modo de tipo, vou direto ao assunto, eu queria fazer um personagem indo até um certo ponto e parasse para eu continuar um outro evento no jogo, mas tipo
eu queria fazer essa função sem precisar especificar diversas coisas com gambiarras, eu pensei então em fazer algo assim:

Código:

while Event < 20
{
Event+=1
personagem.x+=4

}

só que eu queria que ele fosse andando gradualmente até chegar nesse ponto só que ao invés disso, ele salta direto ao ponto final, eu antes usava if no step e funcionava direitinho, mas eu quero usar esse método para outras funções e não apenas para isso, se tiver como usar o while(ou outro codigo) para construir essa temática, seria para mim muito mais rápido e prático de fazer, existe como fazer isso?

JoaoVanBlizzard

Ranking : Nota B
Número de Mensagens : 1925
Idade : 38
Data de inscrição : 04/03/2012
Notas recebidas : B+B
Reputação : 144
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 2
   : 0

Voltar ao Topo Ir em baixo

Re: Criando auto- funções

Mensagem por PedroX em Ter 14 Jan 2014, 15:39

Coloque screen_redraw() logo antes de terminar o while.

PedroX

Ranking : Nota C
Número de Mensagens : 6034
Idade : 21
Data de inscrição : 26/07/2008
Notas recebidas : C+B
Reputação : 286
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: Criando auto- funções

Mensagem por Lukbebalduke em Ter 14 Jan 2014, 15:40

Ele tem que andar de um ponto A a um ponto B é isso ? Se for isso, você poderia pegar a distancia do ponto A ao ponto B, e fazer algo do tipo

Código:
while event < distanciaABinicial {
event+=1;
speed=1;
} else {
speed=0;
}

Se foi isso o que eu entendi

Lukbebalduke

Ranking : Nota B
Número de Mensagens : 764
Data de inscrição : 06/07/2011
Notas recebidas : B - B - A - B
Reputação : 30
Insignia 1 x 1 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 2

Voltar ao Topo Ir em baixo

Re: Criando auto- funções

Mensagem por JoaoVanBlizzard em Ter 14 Jan 2014, 16:17

Pimpi

Não se trata exatamente de apenas andar, tipo eu queria chamar uma função que ela parasse depois que alcançasse o

valor "X" dela tipo, eu aperto a "barra de espaço" ai o valor evento está em 0 ele vai correndo e quando chega em 50 por exemplo ele parasse sem a necessidade de o usar step, geralmente eu costumo usar alarm para ir chamando a função a cada 1 "step" enquanto o valor não alcançasse o objetivo x, e eu queria algo mais dinâmico que isso, todavia vou dar uma testada no seu código e vejo se posso usa-lo para isso ok.

JoaoVanBlizzard

Ranking : Nota B
Número de Mensagens : 1925
Idade : 38
Data de inscrição : 04/03/2012
Notas recebidas : B+B
Reputação : 144
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 2
   : 0

Voltar ao Topo Ir em baixo

Re: Criando auto- funções

Mensagem por Lukbebalduke em Ter 14 Jan 2014, 16:28

Certo, então nem teste meu código porque sera inútil nessa situação. O que o pedro falou pode ser útil , só que ficaria muito rápido, algo como um objeto se mover muita coisa em um step. No entanto o que voce pode fazer é novamente aquele negocio de pegar a distancia, algo como:

Código:
alarm[0] = point_distance(Ax,Ay,Bx,By);
speed = 1;

E ai no alarm 0

Código:
speed=0;

Fora isso nao vejo outra maneira de fazer ele chegar no lugar apenas com um pressed. De qualquer forma vou ficar pensando aqui vendo se encontro algo.

Lukbebalduke

Ranking : Nota B
Número de Mensagens : 764
Data de inscrição : 06/07/2011
Notas recebidas : B - B - A - B
Reputação : 30
Insignia 1 x 1 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 2

Voltar ao Topo Ir em baixo

Re: Criando auto- funções

Mensagem por Kabeção em Ter 14 Jan 2014, 23:49

pinpi escreveu:Certo, então nem teste meu código porque sera inútil nessa situação. O que o pedro falou pode ser útil , só que ficaria muito rápido, algo como um objeto se mover muita coisa em um step. No entanto o que voce pode fazer é novamente aquele negocio de pegar a distancia, algo como:

Código:
alarm[0] = point_distance(Ax,Ay,Bx,By);
speed = 1;

E ai no alarm 0

Código:
speed=0;

Fora isso nao vejo outra maneira de fazer ele chegar no lugar apenas com um pressed. De qualquer forma vou ficar pensando aqui vendo se encontro algo.
Ótima ideia!


Eu faço de outra forma.
Código:
// no Create
xx = x;
yy = y;

// No Step
x += sign(xx-x)*velocidade;
y += sign(yy-y)*velocidade;

Assim basta definir xx e yy em qualquer parte do jogo um vez que eles vão automaticamente ate o ponto e param sem precisar mexer em qualquer outra coisa.

Kabeção

Ranking : Sem avaliações
Número de Mensagens : 2314
Data de inscrição : 08/06/2008
Reputação : 100
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 3
   : 0
   : 1

http://blackcapapps.blogspot.com.br/

Voltar ao Topo Ir em baixo

Re: Criando auto- funções

Mensagem por Conteúdo patrocinado Hoje à(s) 19:52


Conteúdo patrocinado


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