Hola, estoy tratando de hacer una colisión circular perfecta para mi personaje. Hasta el momento llevo esto y no se si voy por buen camino...
for(i=0; i=360; i+=45;){
for(j=0; j>=5; j++){
xx = j*cos(i);
yy = j*sin(i);
if !place_free(x+xx,y+yy){
x = x+xx*-1;
y = y+yy*-1;
}
}
}
¿que me falta? o debería tomar otro camino ya que este no me va a llevar a nada... si es así, ¿que me recomiendan?
Saludos y gracias!
¿Qué querés decir con "colosión circular perfecta"?
Si, lo que ocurre es que estoy trabajando en un juego donde mi personaje es circular y necesita colisionar con todo tipo de curvas (tanto vertical como horizontal). No estoy trabajando con gravedad, es decir, el personaje se mueve libremente.
Si trabajo con un simple if place_free(x+5,y) cuando me muevo a la derecha por ejemplo; mi personaje se tranca en cualquier esquina o curva y no es lo que estoy buscando.
Saludos y gracias por responder
Entiendo de qué tipo de juego hablás, pero sigo sin entender qué es lo que querés exactamente.
¿Es esto? http://www.comunidadgm.org/index.php?topic=15276.0
Por cierto, en ese tema puse un ejemplo que a mí me funcionaba correctamente pero a los demás no. Acabo de arreglarlo, ya debería funcinarle bien a todo el mundo. Te lo dejo acá por si es lo que necesitás.
Muchas gracias Wadk, estuve viendo el video y revisando un poco el código y creo que me funcionara.
Muchas gracias!