cual es el codigo que se usa para que un enemigo no te dispare cuando hay una muralla entre la trallectoria de la bala y el jugador, mi juego es un shoter mirado desde arriba. me ayudan porfavor :'(
Te voy a dar unas ideas ya que no puedo usar el gm por ahora:
Puedes medir la distancia del enenmigo con el muro (para esto usas distance_object).
Otra opci?n ser?a condicionar los lados del muro en cuesti?n x ejemplo:
Los lados del muro lo sacamos en x y en y, lo cual nos lleva al siguiente c?digo:
/////condici?n para la forma horizontal (lado izq del muro)////////////
if(enemigo.x<muro.x)
{
if((muro.x+sprite_width)<player.x)
{
////esto significa q est? al derecho del muro y al otro lado del muro est? el enemigo.
}
else{
///sino est? a lado del enemigo XD XD XD
}
}
///condici?n para la forma horizontal (lado derecho del muro)////////////
else
{
if((player.x<muro.x)
{
////esto significa q el player est? a la izquierda del muro y el enemigo a la derecha.
}
else{
///sino est? a lado del enemigo XD XD XD
}
}
//////////////////////////////////////////////////////////////
Las mismas condiciones aplicas para [b]y[/b], espero q se haya entendido y te sea de utilidad XD XD XD
mm.. creo que quedo igual, quiero que no dispare cuando este al otro lado de la abitacion, porque se ve mui falso XD
Cita de: pesteling en Junio 08, 2010, 01:15:00 AM
mm.. creo que quedo igual, quiero que no dispare cuando este al otro lado de la abitacion, porque se ve mui falso XD
Pues creo q te equivocas amigo, revisa bien el c?digo y asigna una variable x ejemplo:
/////condici?n para la forma horizontal (lado izq del muro)////////////
if(enemigo.x<muro.x)
{
if((muro.x+sprite_width)<player.x)
{
////esto significa q est? al derecho del muro y al otro lado del muro est? el enemigo.
disparar=0;
}
else{
///sino est? a lado del enemigo XD XD XD
disparar=1;
}
}
///condici?n para la forma horizontal (lado derecho del muro)////////////
else
{
if((player.x<muro.x)
{
////esto significa q el player est? a la izquierda del muro y el enemigo a la derecha.
disparar=0;
}
else{
///sino est? a lado del enemigo XD XD XD
disparar=1;
}
}
//////////////////////////////////////////////////////////////
lo mismo aplicas para
y...saludos ;) ;) ;)
oka porfin mi game no se ve tan falso kjjkajkajajjka gracias amigo te pasate ahora no dispara xuando esta al otro lado del mura XD
me alegro q te haya podido ayudar XD XD XD