Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: windspro en Abril 17, 2010, 10:35:09 PM

Título: problema serio con municiones
Publicado por: windspro en Abril 17, 2010, 10:35:09 PM
hola denuevo esta es una duda que me tengo que sacar, quiero saber por que necesito para mi juego a?adirle al personaje municiones, solo diganme como hacer una variable que dispare o algo por que no puedo hacerlo por ejemplo, que tenga un rifle y dispare y cuando se le acabe la municion no pueda seguir disparando, pero e intentado mucho con esa VAR y no logro hacer nada  ???  por favor si me pueden ayudar,tomense su tiempo no es de urgencia


Gracias
-------
Título: Re: problema serio con municiones
Publicado por: Silver_light en Abril 17, 2010, 11:18:15 PM
Deberias inicializar una variable en el evento create, por ejemplo:

municion = 5; // 5 es el valor de municiones

en el evneto de disparar municiones deberias verificar cuantas municiones tienes, as?:

if (municiones > 0)
{
instance_create(x,y,disparo);
municiones -= 1;
}
// lo que hace esto es que dispare mientras tenga municiones

Te adjunto un ejemplo. ;)
Título: Re: problema serio con municiones
Publicado por: windspro en Abril 18, 2010, 01:55:28 AM
Gracias me sirvio mucho pero, tengo un problema por que al voltear a la izquierda dispara 2 balas y no se como hacer para que dispare 1 a la derecha y 1 a la izquierda
Título: Re: problema serio con municiones
Publicado por: Silver_light en Abril 18, 2010, 04:36:07 PM
Quiz? sea un problema en el c?digo que est?s usando...
Seria mas claro el problema si postearas que acciones tienes en el evento de disparo.  :)
Título: Re: problema serio con municiones
Publicado por: windspro en Abril 20, 2010, 12:02:33 AM
hacia la izquierda:

if place_free(x-4,y){
dir=-1
sprite_index=dog_runl
mov=true
x-=6
}
if jump=1{
sprite_index=dog_jumpl
}

hacia la derecha:

if place_free(x+4,y){
dir=1
sprite_index=dog_run
mov=true
x+=6
}
if jump=1{
sprite_index=dog_jump
}


Disparo tengo dos codigos uno para la derecha y izquierda pero dispara a los dos lados, se supone que tendria que ser:

hacia la derecha:

if (municiones > 0)// Verifica si tienes municiones
{
if (sprite_index=dog_stand)
sprite_index=dog_shooting;
instance_create(x,y,shel);//siendo asi, crea una flecha
municiones -= 1; // resta 1 a las municiones
}

hacia la izquierda:

if (municiones > 0)// Verifica si tienes municiones
{
if (sprite_index=dog_standl)
sprite_index=dog_shootingl;
instance_create(x,y,shelL);//siendo asi, crea una flecha
municiones -= 1; // resta 1 a las municiones
}
Título: Re: problema serio con municiones
Publicado por: 3dgeminis en Abril 20, 2010, 12:47:29 AM
Proba asi :

if municiones > 0
{
  {if sprite_index=dog_stand {sprite_index=dog_shooting ; instance_create(x,y,shel)}
  {if sprite_index=dog_standl {sprite_index=dog_shootingl ; instance_create(x,y,shelL)}
municiones -= 1
};
Título: Re: problema serio con municiones
Publicado por: windspro en Abril 20, 2010, 10:06:40 PM
No no funciono asi

FATAL ERROR in
action number 1
of Key Press Event for X-key Key
for object dog:

COMPILATION ERROR in code action
Error in code at line 7:
   
  ^
at position 1: Symbol } expected.


:(
Título: Re: problema serio con municiones
Publicado por: Silver_light en Abril 20, 2010, 11:05:31 PM
Lo que sucede es que le ha faltado cerrar 2 llaves, corregido quedar?a as?:

if municiones > 0
{
{
  if sprite_index=dog_stand
  {
   sprite_index=dog_shooting;
   instance_create(x,y,shel);
  }
  {
   if sprite_index=dog_standl
   {
    sprite_index=dog_shootingl;
    instance_create(x,y,shelL);
   }
   municiones -= 1
  }
}
}
Título: Re: problema serio con municiones
Publicado por: windspro en Abril 20, 2010, 11:17:55 PM
muchas gracias! :D :D :D :D :D :D :D ahora lo unico que faltaria es que la animacion la termine
Título: Re: problema serio con municiones
Publicado por: 108bits en Agosto 15, 2010, 08:37:36 AM
como puedo usar este mismo codigo pero para un juego tipo Pokemon en 4 direccion unicamente.?

logre echar andar este y me parecio muy bueno pero quiero las balas se disparen con barra espaciadora en la direccion en la que este viendo el personaje (parado o en movimiento).