Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: Tigerito019 en Febrero 06, 2016, 04:59:23 PM

Título: Como hacer que la bala salga desde la pistola
Publicado por: Tigerito019 en Febrero 06, 2016, 04:59:23 PM
Saludos amigos, estoy creando un juego de disparos y eso. En el juego tengo un tanque, ya hice que disparara y todo bien, pero cómo hago para que la bala salga desde la punta del cañon de tanque? Probé centrando el sprite del tanque en el cañon y creando la instancia de la bala en relative, pero entonces eso me afecta el movimiento del tanque ya que se ve feo al correr. Entonces, cómo haría para que la bala salga desde la punta del cañon del tanque sin que afecte el movimiento?

Agradecería mucho la ayuda y el apoyo. De antemano, gracias. :)
Título: Re:Como hacer que la bala salga desde la pistola
Publicado por: jmbs19 en Febrero 06, 2016, 06:21:52 PM
2 opciones planteando que es un topdown shooter:

1) si tu tanque y la torreta son dos sprite separados podrias hacer que la profundidad de la bala sea menor que la parte baja del tanque y mayor que la torreta, creando asi un sandwich
torreta
bala
tanque, parte baja
2)hacer una serie de calculos matematicos en los que entran transicion o algo asi de vectores, lo que implicaria el uso de senos, cosenos y radianes. hay un tema que trata precisamente este punto con un ejemplo y todo. buscalo, se llamaba como rotar un spine o algo asi.
Título: Re:Como hacer que la bala salga desde la pistola
Publicado por: woolf7 en Febrero 06, 2016, 09:35:27 PM
Usa el método escalar más sencillo, si tu tanque es de cuatro direcciones solo usa un switch, ejemplo:

switch(lado){
  case "derecha":
     instance_create(x+16,y,obj_bala);
     break;
  case "izquierda":
     instance_create(x-16,y,obj_bala);
     break;
  case "abajo":
     instance_create(x,y+16,obj_bala);
     break;
case "arriba":
     instance_create(x,y-16,obj_bala);
     break;
}

todo esto suponiendo que el valor de la variable "lado" guardara la posición actual del tanque
ahora el codigo anterior sacara la bala mas exacta a la posición actual del cañón(todo depende del tamaño del sprite)
ahora si el tanque se mueve en 360° las funciones "lengthdir_x" y "lengthdir_y" te serán útiles
Título: Re:Como hacer que la bala salga desde la pistola
Publicado por: kostra en Febrero 06, 2016, 09:51:45 PM
con ue pongas el punto de origen x más atrás del sprite ya vale perfectamente.
Título: Re:Como hacer que la bala salga desde la pistola
Publicado por: Jucarave en Febrero 07, 2016, 04:34:02 AM
Hola, para solucionarlo (aunque depende también de tu caso) debes utilizar una matriz de rotación; este es un pequeño script que acabo de publicar:

http://www.comunidadgm.org/desarrollo-de-scripts/obtener-posicion-de-adjuntado/ (http://www.comunidadgm.org/desarrollo-de-scripts/obtener-posicion-de-adjuntado/)

Saludos