Noticias

Se ha publicado un nuevo servicio, el Portal de Juegos Online

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: Cañon con 3 imagenes que te apunta [SOLUCIONADO]  (Leído 417 veces)

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

Desconectado Yuzo

en: Octubre 26, 2018, 10:44:43 am
Saludos;

Tengo un objeto que es un cañón con un sprite que consta de 3 imagenes (0, 1 y 2)

Está en la parte superior de la pantalla y me gustaría que si el jugador esta a la izquierda, debajo o a la derecha de este objeto cañón este cambie de imagen, siendo que:

0 = apunta a la izquierda
1 = apunta debajo
2 = apunta a la derecha

Yo había pensado en hacer un switch, pero no se como darle las coordenadas del jugador al objeto para que cambie de imagen, alguien me puede ayudar ?.

Como siempre, gracias de antemano.
« última modificación: Octubre 28, 2018, 11:20:08 am por Yuzo »

 


No Tienes Permisos Para Dar Puntos
point 0 Puntos

Este tema no recibió puntos.


Desconectado Arcadian

Respuesta #1 en: Octubre 26, 2018, 01:35:03 pm
Te doy mi consejo, yo no usaría tres imágenes para eso, usaría una única imagen, que puedas rotar (con el eje a mitad de la imagen), luego vas tirando de image_angle y point_direction.

Puedes ver un ejemplo de esta instrucción aquí:

https://docs.yoyogames.com/source/dadiospice/002_reference/maths/vector%20functions/point_direction.html

 
Los siguientes usuarios dieron las gracias a este tema: Yuzo


Desconectado Yuzo

Respuesta #2 en: Octubre 26, 2018, 01:37:46 pm
Entiendo lo que quieres decir, y lo he hecho asi con otros objetos pero por diseño en este caso no se puede realizar tal y como explicas.

De todos modos gracias por tu ayuda, es una buena solucion, solo que no es aplicable a este caso.

 


Desconectado 3dgeminis

Respuesta #3 en: Octubre 26, 2018, 07:33:55 pm
Necesitas saber la direccion en la que esta el jugador con respecto al cañon, puedes usar point_direction, y de acuerdo a la direccion elegir la imagen a mostrar de acuerdo a si la direccion esta entre ciertos angulos.
Por ejemplo, en la imagen de abajo, el valor de 0(o primer imagen) corresponderia al angulo entre 180 y 240.


 
Los siguientes usuarios dieron las gracias a este tema: Yuzo


Desconectado Yuzo

Respuesta #4 en: Octubre 26, 2018, 08:23:09 pm
Eso es lo que andaba buscando, cuando el trabajo me lo permita lo pruebo, no obstante, entiendo el concepto pero... sería mucho pedir como se expresaria eso en gml ?...

 


Desconectado 3dgeminis

Respuesta #5 en: Octubre 26, 2018, 08:36:59 pm
Algo asi:
direccion=point_direction(x, y, jugador.x, jugador.y)

if (direccion>180 and direccion<240) {image_index=0} ///imagen 0

 


Desconectado dixon2010

Respuesta #6 en: Octubre 26, 2018, 09:39:22 pm
Hola gusto en saludarle.

Supongamos que un tal axel de streets of rage 2 quiere participar en la Game Off 2018 pensando en alguna recompensa monetaria, pero no sabe usar  Godot entonces decide visitar a la princesa peach para preguntarle a ver si ella sabe  C ++ o C #. Entonces tendriamos esto:



y para el objeto cañón:
[STEP EVENT]
Código: [Seleccionar]
image_index=floor(object0.x/floor(room_width/3))
Donde objet0 es el player
Pos data hay un ejemplo adjunto para la GMK STUDIO

« última modificación: Octubre 27, 2018, 01:50:14 am por dixon2010 »

Dios nos ayuda y nos da sabiduría para vivir. Cáda código es una obra maestra que hay que respetar aunque exista un código mas eficiente y sencillo.
 


Desconectado Yuzo

Respuesta #7 en: Octubre 28, 2018, 11:19:52 am
Perfecto, gracias chicos !!