Julio 17, 2012, 04:41:07 AM Ultima modificación: Julio 19, 2012, 05:59:18 PM por MaanuRP
Hola a todos!

Esta pregunta me suena muy de novato, pero siempre me generaron problemas estas dos funciones.

Quiero hacer algo como esto:

[gml]
//Evento Global Left Pressed
if (place_empty(mouse_x,mouse_y))
{
instance_create(mouse_x,mouse_y,Obstaculo)
}
[/gml]

Que se supone que haga eso? Que verifique si no hay nada en ese lugar (Sea solido o no, porque tambien probe con place_free) y que si no hay nada, cree ese objeto. Pero el problema es que haga lo que haga, se siguen creando objetos en ese lugar. ¿Cual es mi error? Ya probe usando las dos funciones, poniendo el objeto en solido y en no solido, verificando que el mouse este siempre en el mismo lugar, etc.

Dejo el editable por las dudas.

Saludos!

hmm... yo siempre usé eso en collisiones... no en el mouse :S no sé si se puede que yo sepa :S
en http://krstudyos.blogspot.com solo hay basura... mejor que ni entres...

Dejame citarte lo que dice en el manual traducido:
Citar
place_empty(x,y) Devuelve si la instancia colocada en la posición (x, y) no se encuentra con nadie. Esta función también toma en cuenta las instancias no sólidas.
Funciona para saber si no hay colisión. Digamos que funciona con la posicion próxima de la instancia en donde se utiliza el código.
El problema está en que solo verifica eso si es una instancia, el Mouse al no ser una instancia de ningún objeto, entonces no funciona.

#3 Julio 17, 2012, 05:59:10 PM Ultima modificación: Julio 17, 2012, 06:01:12 PM por Zeit
Hola, creo que hay una funcion point_collision (o algo asi) donde checa si un punto colisiona con cierto objeto, buscala. Saludos.

EDIT: collision_point(x,y,obj,prec,notme) This function tests whether at point (x,y) there is a collision with entities of object obj.
Saludos Cordiales!!!

Definitivamente era error de novato entonces jajaj, a leer mejor las funciones. Gracias a todos!

Usá position_empty en vez de place