[Resolvido]Porque quando uso "do" "until", meu jogo trava?

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

Resolvido [Resolvido]Porque quando uso "do" "until", meu jogo trava?

Mensagem por ruben.23 em Sex 27 Set 2013, 22:51

Bem, eu tentava usar pela primeira vez as funções "do" "until", mas logo na primeira tentativa eu me depareo com um problema, examinem o codigo que coloquei no step do meu personagem:
Código:
if keyboard_check(vk_space)
{
do image_index += 1

until image_index = 3 {image_speed = 0}
}
else
{
if keyboard_check_released(vk_space)
{
do image_index -= 1

until image_index = 0 {image_speed = 0}}}
Daí, quando execulto o jogo ele roda beleza, mas quando eu aperto qualquer tecla o jogo trava na hora! Alguem sabería me dizer porque isso acontece? Desde já eu agradeço por qualquer resposta dada!


Última edição por ruben.23 em Dom 29 Set 2013, 13:59, editado 1 vez(es)

ruben.23

Número de Mensagens : 212
Data de inscrição : 29/05/2013
Reputação : 10
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Porque quando uso "do" "until", meu jogo trava?

Mensagem por Brother27 em Sab 28 Set 2013, 08:21

Ele simplesmente trava ou aparece uma mensagem de erro?
Acho que está só travando...

Isso não vai dar muito certo porque ele vai verificar os botões a cada step. Crie uma variável para definir se o botão está apertado e no código coloque

if keyboard_check && apertado=0
apertado=1 e o resto do código.

Quando soltar o botão, volte o valor de apertado pra 1

Brother27

Ranking : Nota C
Número de Mensagens : 253
Idade : 17
Data de inscrição : 28/06/2012
Notas recebidas : C
Reputação : 14
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Porque quando uso "do" "until", meu jogo trava?

Mensagem por ruben.23 em Sab 28 Set 2013, 12:44

Ele simplesmente trava, não aparece nenhuma mensagem de erro! vou testar essa solução e digo se deu certo ou não! valew pela resposta!

ruben.23

Número de Mensagens : 212
Data de inscrição : 29/05/2013
Reputação : 10
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Porque quando uso "do" "until", meu jogo trava?

Mensagem por Willy em Sab 28 Set 2013, 14:03

Nunca use funções de loop a não ser para que os mesmos sirvam como contadores...
Tipo, pra contar de 1 à 1000 em apenas um frame, e no seu caso, você está usando como um "checador de condições".
O jogo vai travar justamente por causa do keyboard_check. Não se te explicar direito o porque, mas se quiser aprender a mexer com loops, faça testes com números, e não funções.

A propósito, sempre que um loop fizer o jogo travar, significa que o mesmo é infinito.

___________


Engines, tutoriais e projetos? Clique no banner!



Atenção:
Comporte-se, senão você vai levar a cintada do Willy no meio da bunda! bravo


Willy

Ranking : Nota A
Número de Mensagens : 1812
Idade : 23
Data de inscrição : 08/06/2009
Notas recebidas : C + B + A + A
Reputação : 245
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 2
   : 1
   : 1

http://willy-gmbr.blogspot.com/

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Porque quando uso "do" "until", meu jogo trava?

Mensagem por PedroX em Sab 28 Set 2013, 16:06

image_index nem sempre é inteiro. Você precisa usar < e > em vez de =, assim você garante que ele vai pegar os valores.

Outra coisa, use image_index = image_index mod image_number, para que o ciclo reinicie em vez de aumentar indefinidamente.

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

Resolvido Re: [Resolvido]Porque quando uso "do" "until", meu jogo trava?

Mensagem por ruben.23 em Dom 29 Set 2013, 13:58

Valew pessoal! já deu pra entender! obrigado pela resposta de todos!

"Este tópico foi rezolvido, já podem trancá-lo!"




Tópico trancado.

ruben.23

Número de Mensagens : 212
Data de inscrição : 29/05/2013
Reputação : 10
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Porque quando uso "do" "until", meu jogo trava?

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


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