Hola buenas tengo un problemilla con unas plataformas, creo dos instancias de plataforma mediante un obj_control, y les doy la propeidad de que al colisionar con el heroe estas se caigan, el problema viene cuando el heroe salta en la primera plataforma la segunda tambien cae a la vez....
No debería pasar, ¿Cuál es el código que usas para que caiga la plataforma? ¿Estás usando un evento de colisión común? ¿O a lo mejor usando variables globales?
Cita de: Mgbu en Diciembre 31, 2013, 12:37:15 AM
No debería pasar, ¿Cuál es el código que usas para que caiga la plataforma? ¿Estás usando un evento de colisión común? ¿O a lo mejor usando variables globales?
Este es el codigo que tengo para la plataforma
if place_meeting(x,y+1,obj_ninja) {
vspeed=15
}
Entonces no se, lo único que se me ocurre es que tengas varios ninjas, o que algún objeto se mueva muy rápido
solo tengo un ninja, lo entiendo :S
Cita de: carras en Diciembre 31, 2013, 01:38:33 AM
Este es el codigo que tengo para la plataforma
if place_meeting(x,y+1,obj_ninja) {
vspeed=15
}
Ese es el código para el objeto plataforma. Me parece que si se cumple la condición, el código se ejecuta para TODAS las instancias del objeto plataforma que existan en la habitación. Tienes que cambiar el enfoque de tus colisiones: no puedes trabajar globalmente por objetos, tiene que ser por instancias. Por eso me gusta usar las funciones de colisión como collision_rectangle o collision_line, etc. porque ellas devuelven la ID de la INSTANCIA con la que se hace contacto.
Otra manera es usar un objeto padre, para detectar colisiones. Al objeto plataforma lo haces "hijo" del objeto padre. Dentro del objeto plataforma usas cualqueir variable para capturar la id de la instancia, por ejemplo mi_id = id. El objeto que tiene que controlar las colisiones con el ninja en este caso debe ser el padre, no el objeto plataforma (el objeto plataforma no debe contener código para detectar colisiones, ni evento de colision, etc... nada de colisiones).
En el evento de colisión del objeto padre con el ninja, para que sólo la plataforma "pisada" se caiga, pones mi_id.vspeed = 15.
Hola!!! amigo trata de probar esto haber si funciona ..
abajo de la option Depth : hay una option que dice PARENT:<no parent> señala la opcion en este caso seria tu objeto que quieres que sean diferentes.