Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: Pepe.loya en Mayo 20, 2014, 02:25:12 AM

Título: Interactuar con objetos
Publicado por: Pepe.loya en Mayo 20, 2014, 02:25:12 AM
Hola, me gustaria saber cual es el script para que cuando esten colisionando y al presionar "Q" eh intentado con esto pero, la verdad desconosco de este script:


if keyboard_check(ord('Q')) {
if collision_point(puerta_obj, puerta_obj, 10, true)
}



Segun esto el orden debe ser:
collision_point (x, y, obj, prec, NotMe)
collision_point (x, y, obj, prec, NotMe)

Realmente espero recibir una ayuda y me expliquen y gracias por su atencion!:)
Título: Re:Interactuar con objetos
Publicado por: fab62 en Mayo 20, 2014, 06:42:03 AM
collision_point te da un valor real, no booleano (true o false), por lo que no lo debes colocar al lado de un if, para detectar si una colision existe o no, debes colocar:
if (collision_point(x,y,obj,prec,notme) != noone)
{
   // hacer algo
}


por otra parte no te entiendo mucho lo que dices... por lo que veo, quieres saber como hacer que al colisionar un objeto con otro y al presionar q pase algo que no se que es...

if (collision_point(x,y,obj,prec,notme) != noone)
{
    if (keyboard_check(ord('Q')))
    {
        // hacer algo
    }
}


no se si a eso te refieres??

Saludos :)
Título: Re:Interactuar con objetos
Publicado por: Pepe.loya en Mayo 20, 2014, 07:45:06 AM
Exacto, eso queria gracias:)

Lo que quiero es agregar un dialogo, pero no me sale, ya quw se repite el texto infinidad
Gracias
Título: Re:Interactuar con objetos
Publicado por: Pepe.loya en Mayo 20, 2014, 10:59:11 PM
Cita de: fab62 en Mayo 20, 2014, 06:42:03 AM
collision_point te da un valor real, no booleano (true o false), por lo que no lo debes colocar al lado de un if, para detectar si una colision existe o no, debes colocar:
if (collision_point(x,y,obj,prec,notme) != noone)
{
   // hacer algo
}


por otra parte no te entiendo mucho lo que dices... por lo que veo, quieres saber como hacer que al colisionar un objeto con otro y al presionar q pase algo que no se que es...

if (collision_point(x,y,obj,prec,notme) != noone)
{
    if (keyboard_check(ord('Q')))
    {
        // hacer algo
    }
}


no se si a eso te refieres??

Saludos :)

No logro comprender, se supone que en "notme" se debe poner si es real o falso dicha colision...

Supongamos que quiero que al momento de colisionar con el objeto Puerta" y presionar"Q""
Aparezca un mensaje...
Título: Re:Interactuar con objetos
Publicado por: Zela en Mayo 21, 2014, 06:54:34 AM
Hola Pepe.loya.
Si Miras Este Link.
http://www.dazlog.com/manual_GM/Deteccion_de_colisiones.htm

Por Hay Dice:
"...El argumento  notme indica si no se debe tener en cuenta a la instancia que llama a la función. ..."

Ten En Cuenta Que También Dice:
"... Todas estas funciones devuelven la id de una de las instancias con las que se detecta colisión.  Si no hay colisión devuelven un valor negativo. "

Eso Podrida Ayudarte A Orientarte, No Es Muy Complicado ^^.

Saludos

Atte:
Zela