[Resolvido] Limite de tiros

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Resolvido [Resolvido] Limite de tiros

Mensagem por BioTrust em Dom 20 Jun 2010, 16:12

Boa noite galera,
eu estou fazendo um jogo de tiro - sim, é pro concurso Happy - e queria saber o seguinte:
- como fazer um limite de tiros?

Tipo, eu ja fiz assim:

Criei um score, que seria os tiros, e na room coloquei que comecaria score = 100, ate ai tudo bem. Eu queria saber o seguinte:
Quando esse score chegar a 0, ele nao atirar mais. alguem ajuda?

Obj tiro esq:
Create -
Código:

score = 100;
lado = 0;

Step -
Código:
if (keyboard_check_pressed(vk_control)) && (lado == 0)
{instance_create(obj_para_dir.x,obj_para_dir.y,obj_tiro_esq)
score -= 1
}

if (score == 0)
{
instance_destroy()
}

Obj player:
Step -
Código:
if (andando == false) && (parado == true) && (lado == 1) && (score == 100) && (keyboard_check(vk_control))
{
instance_create(obj_para_dir.x,obj_para_dir.y, obj_tiro_dir)
sprite_index = spr_ata_dir
}
if (andando == false) && (parado == true) && (score == 100) && (lado == 0) && (keyboard_check(vk_control))
{
instance_create(obj_para_dir.x,obj_para_dir.y, obj_tiro_esq)
score -= 1
sprite_index = spr_ata_esq
}

Bom, alguem ajuda?

Abraçs


Última edição por BioTrust em Dom 20 Jun 2010, 17:16, editado 1 vez(es)

BioTrust

Número de Mensagens : 410
Idade : 19
Data de inscrição : 04/06/2010
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

http://livrodojovemnerd.blogspot.com

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido] Limite de tiros

Mensagem por donte em Dom 20 Jun 2010, 16:22

no create:
Código:

Tiros = 100;
lado = 0;
no step:
Código:
if (keyboard_check_pressed(vk_control)) and tiro then && (lado == 0)
{instance_create(obj_para_dir.x,obj_para_dir.y,obj_tiro_esq)
tiro -= 1
}

donte

Número de Mensagens : 1164
Idade : 18
Data de inscrição : 22/12/2009
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

http://nintendocenterbr.forumeiros.com

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido] Limite de tiros

Mensagem por Cainã em Dom 20 Jun 2010, 16:22

Ao invés de utilizar a variável score é melhor utilizar outra. Faça assim:

CREATE:

Código:
{

Tiros := 100 ;  //Número de tiros.

}

STEP:

Código:
{

if keyboard_check_released(vk_control) && Tiros > 0 {

instance_create(x, y, ObjTiro) ;

}

}

Cainã

Número de Mensagens : 1335
Idade : 22
Data de inscrição : 07/03/2010
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://cai.na.tl/

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido] Limite de tiros

Mensagem por BioTrust em Dom 20 Jun 2010, 16:41

Vlw cainã Happy
Mas agora to com outro problema:
Meu personagem tem o codigo de quando apertar ctrl, ele muda pro pers atacando, mas tipo, quando eu aperto ctrl ele nao muda, so muda uma vez, dps nao muda mais.
Pode ajudar?

BioTrust

Número de Mensagens : 410
Idade : 19
Data de inscrição : 04/06/2010
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

http://livrodojovemnerd.blogspot.com

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido] Limite de tiros

Mensagem por fonetico em Dom 20 Jun 2010, 16:42

Você por acaso criou o evento animation end e nele colocou para mostrar o sprite dele parado?

fonetico

Número de Mensagens : 1830
Idade : 21
Data de inscrição : 05/10/2009
Reputação : 7
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido] Limite de tiros

Mensagem por BioTrust em Dom 20 Jun 2010, 16:45

Ele ja tem, tenho o codigo pronto ja, aquele enorme.
Spoiler:

Código:

if (place_free(x,y+1)) //Checa se 1 pixel abaixo está vazio, ou seja, não tem chão.
{gravity=0.45; noar=true;
//Coloca valor na gravidade e define a variável noar para true, ou seja, o personagem não está no chão.
} else
 //Se a expressão place_free for falsa, ou seja, tenha chão embaixo:
 {gravity=0; noar=false; //Gravidade se torna zero e a variável noar se torna false, ou seja, o personagem está no chão.
 }

//Definiões de pulo
if (keyboard_check_pressed(vk_space)) && ! (place_free(x,y+1)) //Checa se a tecla de direção cima foi pressionada e se NÃO tem um pixel livre abaixo.
{
vspeed=-9; noar=true;  //Se for verdade, velocidade vertical se torna 5 negativo e a variávell noar se torna true, ou seja, o personagem NÃO está no chão.
}

if (vspeed>12) //Checa se a velocidadevertical do personagem possui um valor maior que 12.
vspeed=12; //Se tiver, o valor se torna 12. Isso serve para que o personagem não ultrapasse grandes velocidades verticais, podendo causar bugs no jogo.

if (keyboard_check(vk_left)) && ! (keyboard_check(vk_right)) && (place_free(x-3,y)) //Checa se a tecla de direção esquerda está sendo pressionada, se a tecla direita NÃO está sendo pressionada e se tem 3 pixels de espaço à esquerda.
{x-=5; lado=0; andando=true; parado=false; //Caso a expressão acima seja verdadeira, o personagem se move 3 pixels a esquerda, virá para a esquerda de acordo com a variável lado, a variável andando se torna true para indicar que o personagem está andando e a variável parado se torna false, ou seja, o personagem NÃO está parado.
}

if (keyboard_check(vk_right)) && ! (keyboard_check(vk_left)) && (place_free(x+3,y)) //Mesmo de cima, só que dessa vez, checamos se a tecla de direção direita está sendo pressionada, se a tecla de direção esquerda NÃO está sendo pressionada e se tem 3 pixels à direita livre.
{x+=5; lado=1; andando=true; parado=false; //A mesma coisa do evento anterior. A única coisa que muda é que aqui o personagem se move 3 pixels a direita e a variável lado se torna 1, ou seja, ele vira pra direita.
}

if ! (keyboard_check(vk_left)) && ! (keyboard_check(vk_right)) //Checa se a tecla direita e a tecla esquerda não estão sendo precionadas.
{andando=false; parado=true; //Caso seja verdade, a variável andando se torna false, ou seja, o personagem NÃO está andando. E a variável parado se torna true, ou seja, o personagem está parado.
}

//Sprites
if (noar==false) //Checa se o personagem está no ar.

{
if (andando=true) && (lado==1) //Checa se o personagem está andando e se ele está virado para a direita.
{
sprite_index=spr_corre_dir; //Se sim, a sprite dele se torna a sprite do personagem andando para a direita.
}
if (andando=true) && (lado==0) //Checa se o personagem está andando e se ele está virado para a esquerda.
{
sprite_index=spr_corre_esq; //Se sim, o sprite dele se torna a sprite do personagem andando para a esquerda.
}
if (andando==false) && (parado==true) && (lado==1) //Se o personagem não está andando, se o personagem está parado e está virado para a direita:
{
sprite_index=spr_para_dir; //Se sim, a sprite dele se torna a sprite do personagem parado para a direita.
}
if (andando==false) && (parado==true) && (lado==0) //Se o personagem não está andando, está parado e está virado para a esquerda:
{
sprite_index=spr_para_esq; //Se sim, a sprite dele se torna o sprite do personagem parado para a esquerda.
}
}
else //Caso o personagem NÃO esteja com os pés no chão:
{
if (vspeed>0) || (vspeed<0) && (lado==1) //Se ele está pulando ou caindo e está virado para a direita:
{
sprite_index=spr_pulo_dir; //O sprite do personagem se torna o sprite dele pulando para a direita.
}
if (vspeed>0) || (vspeed<0) && (lado==0) //Se o personagem está pulando ou caindo e está virado para a esquerda:
{
sprite_index=spr_pulo_esq; //O sprite do personagem se torna o sprite dele pulando para a esquerda.
}
}

if (andando == false) && (parado == true) && (lado == 1) && (keyboard_check(vk_down))

{
sprite_index = spr_aga_dir
}

if (andando == false) && (parado == true) && (lado == 0) && (keyboard_check(vk_down))

{
sprite_index = spr_aga_esq
}
Da uma olhada

Edit: Ja achei o erro, obrigado pela ajuda, dos dois Happy, abraços

BioTrust

Número de Mensagens : 410
Idade : 19
Data de inscrição : 04/06/2010
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

http://livrodojovemnerd.blogspot.com

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido] Limite de tiros

Mensagem por Cainã em Dom 20 Jun 2010, 17:54



Cainã

Número de Mensagens : 1335
Idade : 22
Data de inscrição : 07/03/2010
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://cai.na.tl/

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido] Limite de tiros

Mensagem por Conteúdo patrocinado Hoje à(s) 05:44


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum