Problema con colisiones

Started by _anubys_, October 07, 2015, 01:52:09 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

_anubys_

Buenas, tengo un problema con las colisiones y no consigo que me funcione, os paso el codigo por si me podeis echar una mano, Gracias

process maletin()
begin
graph=20;
x=50;
y=100;
loop
end
frame;
end
end
process puntero()
begin
mouse.graph=2;
loop
if (mouse.graph=2 and (collision(type maletin)));
write(0,0,0,0,"colision maletin:");

panreyes

Briconsejo: No uses colisiones con el ratón directamente, utiliza un proceso intermedio.

process puntero()
begin
graph=2;
loop
  x=mouse.x;
  y=mouse.y;
  frame;
end
end

_anubys_

Creo que me he explicado mal, ya tengo un proceso intermedio que es puntero() pero yo lo que necesito es detectar la colision del puntero con un objeto como en un juego point to click, por lo que necesito que me funcione la colision del proceso maletin con el proceso puntero, o al reves me es indiferente.

Si meto yo las coordenadas a mano en el proceso me funciona pero entonces ¿para que necesito la colision?

process maletin()
begin
graph=20;
x=50;
y=100;
loop
if (collision(type puntero)) write(0,0,0,0,"colision maletin:");
end
frame;
end
end
process puntero()
begin
mouse.graph=1;
loop
if (mouse.right==true);
mouse.graph=mouse.graph+1;
if (mouse.graph==4 and (mouse.right==true))
mouse.graph=1;
end
end
frame;
frame;
end
end

Gracias por a respuesta y perdón por no expresarme bien.

warrior_rockk

Muy sencillo. No te funciona la colisión con puntero porque, como bien dice Pixel, tienes que refrescar dentro del loop de puntero las coordenadas del proceso puntero a las del raton ( x = mouse.x; y = mouse.y;) porque, sólo por asignarle el mouse.graph no quiere decir que el proceso puntero se convierta en el ratón directamente. Tienes que ir actualizando las coordenadas.