Conectar-se
Quem está conectado
24 usuários online :: 1 usuário cadastrado, Nenhum Invisível e 23 Visitantes

thomasclavent

Ver toda a lista


Compartilhe
Ir em baixo
avatar
Ranking : Nota B
Notas recebidas : B+B
Data de inscrição : 04/03/2012
Número de Mensagens : 1925
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 144

Prêmios
   : 1
   : 2
   : 0
Ver perfil do usuário

Criando auto- funções

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?
avatar
Ranking : Nota C
Notas recebidas : C+B
Data de inscrição : 26/07/2008
Número de Mensagens : 6041
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 295

Prêmios
   :
   :
   :
Ver perfil do usuário

Re: Criando auto- funções

em Ter 14 Jan 2014, 15:39
Coloque screen_redraw() logo antes de terminar o while.

_________________


Leia o Manual do Iniciante e a Lista de Tutoriais, para aprender bastante sobre o GM.
Recomendo o Manual completo das colisões, bem útil.
O exemplo Criar um chat (banir, kickar, etc) é interessante.

Para seu jogo ficar rápido e legal, aprenda a Aumentar o desempenho do seu jogo.

Aprenda a calcular a velocidade de suas animações


Entre para o Clube do Inglês:
avatar
Ranking : Nota B
Notas recebidas : B - B - A - B
Data de inscrição : 06/07/2011
Número de Mensagens : 764
Insígnias de JAM :

Insignia 1x 1 Insignia 2x 0 Insignia 3x 0
Reputação : 30

Prêmios
   : 1
   : 0
   : 2
Ver perfil do usuário

Re: Criando auto- funções

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
avatar
Ranking : Nota B
Notas recebidas : B+B
Data de inscrição : 04/03/2012
Número de Mensagens : 1925
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 144

Prêmios
   : 1
   : 2
   : 0
Ver perfil do usuário

Re: Criando auto- funções

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.
avatar
Ranking : Nota B
Notas recebidas : B - B - A - B
Data de inscrição : 06/07/2011
Número de Mensagens : 764
Insígnias de JAM :

Insignia 1x 1 Insignia 2x 0 Insignia 3x 0
Reputação : 30

Prêmios
   : 1
   : 0
   : 2
Ver perfil do usuário

Re: Criando auto- funções

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.
avatar
Ranking : Sem avaliações
Data de inscrição : 08/06/2008
Número de Mensagens : 2314
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 100

Prêmios
   : 3
   : 0
   : 1
Ver perfil do usuáriohttp://blackcapapps.blogspot.com.br/

Re: Criando auto- funções

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.
Conteúdo patrocinado

Re: Criando auto- funções

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