Autor Tema: pequeña ayuda para las colisiones  (Leído 80 veces)

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

Desconectado Sr.Mojon

pequeña ayuda para las colisiones
« en: Noviembre 07, 2018, 09:00:08 pm »
les cuento, hay unos objetos en mi juego que cuando te acercas y presionas la letra e dependiendo del dinero que tengas se compra o no ok pero para hacer esto yo lo hice asi, cuando el jugador colosiona con el objeto:

if poder_electricidad = true{  //juger
 if mejora_juger = false{
if keyboard_check_pressed(ord("E")) //Revisa que hayas pulsado E
{
var mas_cercana_juger = instance_nearest(x, y, V_Juger); //Recibe el ID del object8 más cercano
if distance_to_point(mas_cercana_juger.x ,mas_cercana_juger.y) < 32 && global.points >= 2500{ //Revisa mi distancia hacia el object8 más cercano y verifica que tenga dinero suficiente
global.points = global.points - 2500{
mejora_juger = true{
vida_maxima = vida_maxima + 75
vidas = 175
}
}
}
}
}
}

pero la colision no es perfecta como en las paredes, tambien intente hacer esto:

{if not place_meeting(x+velocidad,y,"nombre del objeto") {x+=velocidad}} ///mover derecha si no hay una pared
{if not place_meeting(x-velocidad,y,"nombre del objeto") {x-=velocidad}} ///mover izquierda si no hay una pared
{if not place_meeting(x,y+velocidad,"nombre del objeto") {y+=velocidad}} ///mover abajo si no hay una pared
{if not place_meeting(x,y-velocidad,"nombre del objeto") {y-=velocidad}} ///mover arriba si no hay una pared

pero cuando compro algo o pasa algo dentro del juego todos los objetos se compran ayudaaaa

resumen: que no se hacer que la colision sea perfecta sin que ocurra un error


 
No Tienes Permisos Para Dar Puntos
point 0 Puntos

Este tema no recibió puntos.


Desconectado Clamud

Re:pequeña ayuda para las colisiones
« Respuesta #1 en: Noviembre 08, 2018, 05:59:15 am »
¿El objeto V_Juger debe actuar como una pared? Puedes hacer que sea un hijo del objeto pared.

En el primer bloque de código creo que sobran llaves, así sería mejor:
if poder_electricidad == true{  //juger
  if mejora_juger == false{
    if keyboard_check_pressed(ord("E")) //Revisa que hayas pulsado E
    {
      var mas_cercana_juger = instance_nearest(x, y, V_Juger); //Recibe el ID del object8 más cercano
      if distance_to_point(mas_cercana_juger.x ,mas_cercana_juger.y) < 32 && global.points >= 2500
      { //Revisa mi distancia hacia el object8 más cercano y verifica que tenga dinero suficiente
        global.points = global.points - 2500
        mejora_juger = true
        vida_maxima = vida_maxima + 75
        vidas = 175        
      }
    }
  }
}
 
Los siguientes usuarios dieron las gracias a este tema: Yuzo


Desconectado Sr.Mojon

Re:pequeña ayuda para las colisiones
« Respuesta #2 en: Noviembre 08, 2018, 05:37:41 pm »
como hago que sea hijo del obj pared?
« última modificación: Noviembre 08, 2018, 05:41:58 pm por Sr.Mojon »
 

Desconectado kostra

  • Okupa
  • *
  • Puntos: 2185
  • Mensajes: 1.852
  • Agradecido: 59 veces
  • Sexo: Femenino
  • Deja de buscar la felicidad,la tienes dentro de ti
    • Ver Perfil
Re:pequeña ayuda para las colisiones
« Respuesta #3 en: Noviembre 08, 2018, 07:30:25 pm »
En el objeto que quieres de hijo, lo abres y a la izquierda encima de mask dice parent, ahí elijes el padre, es el padre el que se elige no el hijo :B
"ola k ase clickarme o k ase"
la imagen no se quita xD
 
Los siguientes usuarios dieron las gracias a este tema: Yuzo

Desconectado Sr.Mojon

Re:pequeña ayuda para las colisiones
« Respuesta #4 en: Noviembre 08, 2018, 07:39:18 pm »
muchas gracias a los dos me funciona XD
 

Desconectado kostra

  • Okupa
  • *
  • Puntos: 2185
  • Mensajes: 1.852
  • Agradecido: 59 veces
  • Sexo: Femenino
  • Deja de buscar la felicidad,la tienes dentro de ti
    • Ver Perfil
Re:pequeña ayuda para las colisiones
« Respuesta #5 en: Noviembre 08, 2018, 07:50:48 pm »
Pos Ale, cartelito [Solucionado]
:B
"ola k ase clickarme o k ase"
la imagen no se quita xD
 
Los siguientes usuarios dieron las gracias a este tema: Yuzo