Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: javatazo en Octubre 22, 2018, 12:52:16 PM

Título: rebote bola
Publicado por: javatazo en Octubre 22, 2018, 12:52:16 PM
Hola,
Necesito ayuda a la hora de hacer el rebote de la bola, tendria los 3 objetos de pared en la room(Excepto en la base) y un objeto que seria la linea donde rebota y me gustaria que cuando la bola, colisione con cualquiera de las 3 paredes a su vez pierda fuerza, la bola siempre tiende que ir hacia el suelo.Es decir necesitaria gravedad.
Y cuando caiga sobre la linea, que le impulse, una velocidad dependiendo de la que llevaba, es decir si ya estaba quedandose sin velocidad que le sume x a la que tiene.
He probado muchas formas pero, la bola cuando rebota no sige la direccion que lleva si no que va como quiere, y la idea es que el rebote con la linea sea vertical respecto a la linea.
No se si se entiende la idea...
muchas gracias.
Título: Re:rebote bola
Publicado por: 3dgeminis en Octubre 22, 2018, 08:52:00 PM
Pudes revisar si hay colision en cada eje por separado y actuando en consecuencia.
Un ejemplo:
[gml]
if place_meeting(x+hspeed, y, pared) {hspeed*=-0.8}  ///disminuye la velocidad horizontal al chocar con las paredes
if place_meeting(x, y+vspeed, pared) {vspeed*=-0.5} ///disminuye la velocidad vertical al chocar con el techo
if place_meeting(x, y+vspeed, linea) {vspeed*=-1.2} ///aumenta la velocidad vertical con la linea
[/gml]