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: Sobre Distancia entre instancias  (Leído 1243 veces)

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

Desconectado kaliman777

en: Noviembre 19, 2009, 11:48:04 pm
Hola a todos:

Aunque ha habido varios posts sobre este tema, ninguno me aclara la siguiente duda sobre la ubicación de dos objetos en un mismo eje X.

¿Qué código puedo usar en STEP (o dónde sea) para que si el obj_luis aparece en x+16, y+32 y el obj_pedro ya está en x+16, y+96 ocurra una acción, por ejemplo que le sume 10 al score.?

Por favor algún ejemplo sencillo,

Gracias.
« última modificación: Noviembre 19, 2009, 11:49:57 pm por kaliman777 »

La verdad es como la luz de una vela, que ni la oscuridad inmensa, puede opacarla.
 


No Tienes Permisos Para Dar Puntos
point 0 Puntos

Este tema no recibió puntos.


Desconectado Soujiro

  • Okupa
  • *
  • Puntos: 0
  • Mensajes: 1.978
  • Sexo: Masculino
  • ◕ ◡ ◕
    • Ver Perfil
Respuesta #1 en: Noviembre 20, 2009, 12:44:38 am
Código: [Seleccionar]
if (round(obj_pedro.y-obj_luis.y) = 64 && round(obj_pedro.x) = 16 && round(obj_luis.x) = 16) {
//acciones
}

 


elviskelley

  • Visitante
Respuesta #2 en: Noviembre 20, 2009, 02:49:38 am
if ((round(x>other.x-1)) and (round(x<other.x+1)))
{acciones}
//no lo probe.
//podria ser asi.
if (round(x)=(round(other.x)))
{acciones}
//prueva de ambas maneras.
« última modificación: Noviembre 20, 2009, 12:55:20 pm por elviskelley »

 


Desconectado Soujiro

  • Okupa
  • *
  • Puntos: 0
  • Mensajes: 1.978
  • Sexo: Masculino
  • ◕ ◡ ◕
    • Ver Perfil
Respuesta #3 en: Noviembre 20, 2009, 05:02:41 am
Unas aclaraciones elvis. Revisa la primer condicion "si X es mayor a OTRO.X y X es menor a OTRO.X", visto asi te das cuenta que nunca se cumpliria la condicion. Y bueno, la otra manera podria funcionar, pero no se si es exactamente lo que pide kaliman.

Otro detalle es el "other", recorda que para usarlo de esa manera tiene que ser en un evento tipo colisión.

 


Desconectado kaliman777

Respuesta #4 en: Noviembre 20, 2009, 01:45:45 pm
Unas aclaraciones elvis. Revisa la primer condicion "si X es mayor a OTRO.X y X es menor a OTRO.X", visto asi te das cuenta que nunca se cumpliria la condicion. Y bueno, la otra manera podria funcionar, pero no se si es exactamente lo que pide kaliman.

Otro detalle es el "other", recorda que para usarlo de esa manera tiene que ser en un evento tipo colisión.

Muchas gracias amigos, cada vez aprendo más con ustedes. La verdad que nunca hay colisión entre los objetos, la única condición es que se alinien en un mismo eje (el de las X). Así que la función es usando < ó >.

Probaré si me funciona usando sus aportes para poder terminar mi juego, cuya forma de puntuación es muy diferente a tradicional colisiona y suma puntos.
« última modificación: Noviembre 20, 2009, 01:50:21 pm por kaliman777 »

La verdad es como la luz de una vela, que ni la oscuridad inmensa, puede opacarla.
 


Desconectado Zeit

  • Okupa
  • *
  • Puntos: 13
  • Mensajes: 697
  • Sexo: Masculino
    • Ver Perfil
Respuesta #5 en: Noviembre 20, 2009, 09:09:18 pm
Hola, usa el valor absoluto para calcular distancias en una dimension, por ejem: abs(x1-x2)... saludos!!!

Saludos Cordiales!!!