Hola a toda la comunidad.

Tengo un problema con mi juego, me gustaría saber si es posible hacer lo siguiente:

Me gustaría que mi jugador muriera al caer sobre un bloque con picos pero si y solo si cae por encima de ellos, si el jugador choca con este bloque cuando está caminando de lado, entonces que no pueda morir y que solo choque como si fuera un bloque normal.
No se si me estoy explicando bien pero les dejaré una captura de mi juego para que se den una idea.
Gracias.

Hola, soy un poco novato, pero se me ocurre que le podrías añadir al evento de colisión un:

If hspeed>0

No recuerdo si es > o <

De esa forma comprobarías si el personaje está cayendo.

Hola, es sencillo.

Lo que puedes hacer, es muy sencillo, es coger tu bloque normal (un objeto, supongo) y crear otro objeto con los pinchos, luego en el room ya lo ajustas, ese es el método más fácil :)

Te he puesto una captura más o menos explicando lo que te quiero decir.

¡Saludos!
Visita mi proyecto: Space Cadet

Cita de: learsi en Abril 27, 2014, 10:22:28 AM
Hola, soy un poco novato, pero se me ocurre que le podrías añadir al evento de colisión un:

If hspeed>0

No recuerdo si es > o <

De esa forma comprobarías si el personaje está cayendo.

hspeed es la velocidad horizontal, en todo caso sería if vspeed > 0 al player, pero es más sencillo lo que pongo, creo :)
Visita mi proyecto: Space Cadet

Cita de: _-Caleb-_ en Abril 27, 2014, 11:31:16 AM
Cita de: learsi en Abril 27, 2014, 10:22:28 AM
Hola, soy un poco novato, pero se me ocurre que le podrías añadir al evento de colisión un:

If hspeed>0

No recuerdo si es > o <

De esa forma comprobarías si el personaje está cayendo.

hspeed es la velocidad horizontal, en todo caso sería if vspeed > 0 al player, pero es más sencillo lo que pongo, creo :)

Ups, cierto, se me coló XD

Cita de: learsi en Abril 27, 2014, 01:36:09 PM
Cita de: _-Caleb-_ en Abril 27, 2014, 11:31:16 AM
Cita de: learsi en Abril 27, 2014, 10:22:28 AM
Hola, soy un poco novato, pero se me ocurre que le podrías añadir al evento de colisión un:

If hspeed>0

No recuerdo si es > o <

De esa forma comprobarías si el personaje está cayendo.

hspeed es la velocidad horizontal, en todo caso sería if vspeed > 0 al player, pero es más sencillo lo que pongo, creo :)

Ups, cierto, se me coló XD

Lo cierto es que así también podría funcionar si hace una comprobación de colisión con los pinchos, porque esto también se comprobaría durante los saltos, por ejemplo, por eso creo la manera más sencilla y cómoda de hacer es lo que dije, sin tocar el GML para nada, de momento (Porque al final tendrá que tocarlo si o si  XD)
Visita mi proyecto: Space Cadet

Te dejo un ejemplo, lo que necesitas esta en el objeto pincho, es muy sencillo

De este modo también ganas en "productividad" ya que si incluyes diferentes tipos de suelo no necesitas crear uno con pinchos en cada ocasión, sólo añadirle los pinchos que ya tienes hechos y configurados, ganando así algo de espacio en disco, en memoria y en recursos :D
Visita mi proyecto: Space Cadet