Noticias

¡Ayuda a la Comunidad GM, haz una donación!

Comunidad Game Maker

Bienvenid@ a la comunidad hispana de Game Maker. Nuestro objetivo es crear videojuegos y dar soporte en castellano de GM. Para mejorar nuestro servicio hemos implantado, como adicion al reglamento general, algunas normas especificas en los subforos más comunes. ¡No olvides informarte antes de participar!.

Autor Tema: collision_rectangle, solido?  (Leído 1099 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado DarkKRuleR

en: Noviembre 08, 2009, 01:54:33 pm
Buenas, pues estaba leyendo en el manual... sobre esta funcion porque me traía "problemillas", para que mentir problemazos, estoy haciendo una plataforma móbil... que no acaba de funcionar

entre los codigos tengo puesto un collision line en la plataforma para que si detecta al personaje debajo (a unos 50 pixeles debajo) haga su vspeed negativa para no chafarlo

pero que pasa? que si muevo al personaje mientras tengo la plataforma encima se teletransporta... a un lado... como odio ese fallo

y como leí sobre collision rectangle... aqui la definicion

collision_rectangle(x1,y1,x2,y2,obj,prec,notme) Comprueba si hay una colisión  entre el rectángulo (sólido) con las esquinas indicadas e  instancias del objeto obj. Por ejemplo, puedes usar esta función para ver si un área está libre de obstáculos.

Osea, que el rectangulo imaginario que checa es solido? entonces claro que provocaria errores, pero nunca me ha pasado, quizas malinterpreto la explicacion  :-[ porque no es normal que mi personaje se teletransporte cuando si siquiera esta chocando con la plataforma y ésta está 50 pixeles arriba (al colisionar si es normal, desgraciadamente xD)

 


No Tienes Permisos Para Dar Puntos
point 0 Puntos

Este tema no recibió puntos.


Desconectado Guacusio

Respuesta #1 en: Noviembre 10, 2009, 01:33:32 am
Lo "sólido" no se refiere a que es tratado como una instancia sólida, en el sentido de que la instancia que colisiona con ella retrocede a su posición anterior. Se refiere a que la colisión con el rectángulo considera todos los puntos interiores a éste y no sólo el borde del rectángulo.

Respecto al error, mi consejo es que trates de evitar el uso de instancias sólidas a menos que éstas nunca deban ser traspasadas.


 


Desconectado DarkKRuleR

Respuesta #2 en: Noviembre 10, 2009, 05:27:06 pm
Entonces si el objeto que usa la funcion el solido, la funcion crea un cuadrado imaginario solido... pues el objeto debe ser solido si o si
en este caso haré place_meeting unas 5 veces con distintos valores para abarcar lo que necesito, si no puedo usar collision line xDD

pues sigue teletransportrandose... que funcion mas puede causarlo? esto tengo en step de la plataforma movil:

encontre el fallo, el principal causante de los teletransportes!! el objeto invisible situado a los limites de la plataforma para limitarla, era solido! xDDDD arreglado, aun sigue el problema del motor de plataformas, intentare arreglarlo... =) gracias guacusio =D