Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: DS en Marzo 02, 2011, 07:57:05 PM

Título: Problema con condiciones en un c?digo.
Publicado por: DS en Marzo 02, 2011, 07:57:05 PM
Hola a todos! Qu? tal c?mo va todo?
Bueno tengo un problemilla con un c?digo:
[gml]if (!keyboard_check(vk_right)){
if !golpea{
//Set the wspeed to left
if(!keyboard_check(vk_down) || place_free(x,y+4)) {
    wspeed = max(-p_maxspeed,wspeed-p_accel);
    }
}
facing = 0
}[/gml]
Bueno el problema es que si golpeo en el aire la variable "golpea" se activa, esto pens? que lo corregir?a si pon?a "&& !place_free(x,y+1) pero ahora no se mueve en el aire D:
Gracias
Título: Re: Problema con condiciones en un c?digo.
Publicado por: licshendu en Marzo 02, 2011, 11:16:08 PM
bueno en el fragmento de codigo que has puesto yo no veo el problema.
si a dejado de moverse en el aire  quiz? tienes definido el movimiento dentro del mismo bloque de codigo de brinco. Habr?a que ver mas del codigo, pero para que no pueda golpear mientras brincas pues bastar?a con una variable que indique cuando se puede golpear y cuando no. y solo hacerla false cuando estes brincando y al caer al suelo regresarla a true
si necesitas ejemplo yo lo hago y edito
saludos  ;)
Título: Re: Problema con condiciones en un c?digo.
Publicado por: slampdesign en Marzo 03, 2011, 02:54:39 AM
No se pero creo que tienes un problema en ese codigo,a mi parecer, no estas definiendo el valor de la variable golpea:


[gml]if (!keyboard_check(vk_right)){
if !golpea{///AQUI EL ERROR MENCIONADO
//Set the wspeed to left
if(!keyboard_check(vk_down) || place_free(x,y+4)) {
    wspeed = max(-p_maxspeed,wspeed-p_accel);
    }
}
facing = 0
}[/gml]


Creo que deberia ser asi:

[gml]if (!keyboard_check(vk_right)){
if !golpea=true{///AQUI YA SOLUCIONADO
//Set the wspeed to left
if(!keyboard_check(vk_down) || place_free(x,y+4)) {
    wspeed = max(-p_maxspeed,wspeed-p_accel);
    }
}
facing = 0
}[/gml]

Pruebalo asi, sino te sirve buscaremos otra solucion...
Título: Re: Problema con condiciones en un c?digo.
Publicado por: Zeneke en Marzo 03, 2011, 01:25:10 PM
Que va, estaba bien, valen las dos formas.

!golpea
!golpea=true
!golpea==true

Es lo mismo.
En cuanto al problema, tendria que ver mas codigo implicado en el asunto. Quiza si subes un editable te lo solucionemos.
Título: Re: Problema con condiciones en un c?digo.
Publicado por: DS en Marzo 03, 2011, 02:29:49 PM
Subir un editable? No hay problema  :)!
Lo ?nico que quiero es que muestre la velocidad del sprite correcta y que freme cuando voy corriendo y golpee.