[Resolvido] Quero que o inimigo atire de 2 em 2 segundos!

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

Resolvido [Resolvido] Quero que o inimigo atire de 2 em 2 segundos!

Mensagem por M.F-Sasuke em Ter 21 Dez 2010, 20:10

Eu criei o inimigo e o tiro dele mas eu coloquei la os codigos e ele não para de atirar ele fica atirando direto eu quero que tenha um tempo entre os tiros de + ou - 2 segundos.

Eu coloquei no Create:

Código:
alarm[0]=60

No Alarm 0
Código:

if movimento="Atacando" {
global.vit-=10
alarm[0]=60// agora o alarme será chamado direto e não vai parar de atirar
}
// se não ficar como você que coloca a linha num step

No Step

Código:
if (instance_number(haunter)<=15)
{}
if distance_to_object(jogador)<50
{
//Tempo entre um tiro e outro

alarm[0]=15
instance_create(x+0,y+0,Htiro);
}



Estou desesperado, é só isso que falta pra completar o meu jogo!!

---Quem me Ajudar dou creditos---


Última edição por M.F-Sasuke em Qui 23 Dez 2010, 13:54, editado 1 vez(es)

M.F-Sasuke

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

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido] Quero que o inimigo atire de 2 em 2 segundos!

Mensagem por Alex FC em Ter 21 Dez 2010, 20:24

No create:

Código:
atirar=false//não pode atirar

alarm[0]=2*room_speed//adiciona 2 segundos ao alarme

No alarm 0:

Código:
atirar=true//liga o tiro

alarm[0]=2*room_speed//adiciona 2 segundos ao alarme

No step:

Código:
//Se a distância do objeto jogador for menor que 50 e atirar=true
if distance_to_object(jogador)<50 and atirar=true
{

instance_create(x,y,Htiro)//cria o tiro

atirar=false//desliga o tiro
}

Espero que ajude...

FLWS!

Alex FC

Ranking : Nota A
Número de Mensagens : 2503
Idade : 23
Data de inscrição : 20/12/2008
Notas recebidas : B A
Reputação : 174
Insignia 1 x 1 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 2
   : 1
   : 1

http://redscreensoft.blogspot.com

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido] Quero que o inimigo atire de 2 em 2 segundos!

Mensagem por reddragon em Ter 21 Dez 2010, 20:30

tenta isso:

evento step:

Código:
if distance_to_object(jogador)<50
{
//Tempo entre um tiro e outro

alarm[0]=1
movimento="Atacando"
}else{
movimento="parado" //ou o que ele faz enquanto nao esta atacando.
}

evento alarm0

Código:
if movimento="Atacando" {
global.vit-=10
alarm[0]=60// agora o alarme será chamado direto e não vai parar de atirar
instance_create(x+0,y+0,Htiro);
}

pergunta o que que isso if (instance_number(haunter)<=15){} tá fazendo ali se não tá fazendo nada.

reddragon

Número de Mensagens : 267
Idade : 27
Data de inscrição : 19/03/2008
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido] Quero que o inimigo atire de 2 em 2 segundos!

Mensagem por M.F-Sasuke em Ter 21 Dez 2010, 20:37

po cara aparece assim:


___________________________________________
ERROR in
action number 1
of Alarm Event for alarm 0
for object haunter:

Error in code at line 2:
global.vit-=10
^
at position 2: Unknown variable vit

M.F-Sasuke

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

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido] Quero que o inimigo atire de 2 em 2 segundos!

Mensagem por SIGILOSO em Ter 21 Dez 2010, 20:40

Tente isso:
No CREATE:
Código:
TEMPO=0
No STEP:
Código:
TEMPO+=1
Agora, antes dos códigos que fazem o inimigo atirar:
Código:
if TEMPO>10
{
E no final dele...
Código:
TEMPO=0
Deve funfar.... Cool Troque o 10 ali do código pra alterar o tempo que ele leva pra atirar.
afro

SIGILOSO

Ranking : Nota A
Número de Mensagens : 2264
Idade : 23
Data de inscrição : 06/06/2009
Notas recebidas : A+A+A+A+A+A+A
Reputação : 39
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 4
   : 2
   : 1

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido] Quero que o inimigo atire de 2 em 2 segundos!

Mensagem por M.F-Sasuke em Ter 21 Dez 2010, 20:41

E no seu Alex FC o inimigo atira e para!

M.F-Sasuke

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

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido] Quero que o inimigo atire de 2 em 2 segundos!

Mensagem por Alex FC em Ter 21 Dez 2010, 20:56

Você já teve o suporte necessário e até mais, só que está fazendo confusão com os códigos.

Apaga qualquer código relacionado a atirar para usar o meu código, substitua os que você postou se quiser usar o do reddragon ou adapte os códigos do SIGILOSO ao seu código.

Olhe está engine está toda comentada e explicada:

http://www.gamemakerbrasil.com/t3591-ultimate-shot-2d-engine-v1

Caso ainda não consiga poste todos os códigos de cada evento do objeto. Vlw?

FLWS!

Alex FC

Ranking : Nota A
Número de Mensagens : 2503
Idade : 23
Data de inscrição : 20/12/2008
Notas recebidas : B A
Reputação : 174
Insignia 1 x 1 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 2
   : 1
   : 1

http://redscreensoft.blogspot.com

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido] Quero que o inimigo atire de 2 em 2 segundos!

Mensagem por M.F-Sasuke em Ter 21 Dez 2010, 21:05

SIGILOSO o seu nõ funcionou, foi como se eu ñ tivesse posto nada lá!

M.F-Sasuke

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

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido] Quero que o inimigo atire de 2 em 2 segundos!

Mensagem por M.F-Sasuke em Ter 21 Dez 2010, 21:10

Alex FC sua engine é + ou - oq eu queria, mas o seu inimigo tb não para de atirar, eu quero que tipo assim, ele da um tiro qnd chega perto do play, ai depois de um tiro ele espera uns 2 segundos e da outro tiro, e assim em diante, entendeu?

M.F-Sasuke

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

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido] Quero que o inimigo atire de 2 em 2 segundos!

Mensagem por Markituh em Ter 21 Dez 2010, 21:16

M.F-Sasuke escreveu:po cara aparece assim:


___________________________________________
ERROR in
action number 1
of Alarm Event for alarm 0
for object haunter:

Error in code at line 2:
global.vit-=10
^
at position 2: Unknown variable vit
Variável vit desconhecida.

Isso significa que a variável vit não existe Happy

------

Hmmm... Você colocou o código bruto do SIGILOSO ou complementou com o seu código? Enfim, vou te passar um código
Step
Código:
if distance_to_object(player) < 30 // Troque 30 pela distância em pixels
{
if pode_atirar = true
{
pode_atirar = false
var i;
i = instance_create(x,y,tiro) // Cria a instância
i.direction = self.direction // Define a direção
i.speed = 4 // Velocidade do objeto
alarm[0] = 60
}
}
Alarm 0
Código:
pode_atirar = true
Tenta isso aí

___________

"Não deixe para amanhã o que se pode fazer hoje"

Links úteis:
Índice de Tutoriais
Manual online do GMS

Markituh

Ranking : Sem avaliações
Número de Mensagens : 2183
Data de inscrição : 11/10/2009
Reputação : 106
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido] Quero que o inimigo atire de 2 em 2 segundos!

Mensagem por M.F-Sasuke em Ter 21 Dez 2010, 21:29

po cara ñ funciona ele da 1 tiro e para!

M.F-Sasuke

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

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido] Quero que o inimigo atire de 2 em 2 segundos!

Mensagem por reddragon em Ter 21 Dez 2010, 22:08

bom como o Markituh disse é porque sua var global.vit não esta criada.

tenta isso:

evento step:

Código:
if point_distance(x, y, jogador.x, jogador.y) <= 60{
//Tempo entre um tiro e outro

alarm[0]=1
movimento = "Atacando"
}else{
movimento = "parado" //ou o que ele faz enquanto nao esta atacando.
}

evento alarm0

Código:
if movimento = "Atacando" {
alarm[0]=60// agora o alarme será chamado direto e não vai parar de atirar
instance_create(x,y,Htiro);
}

reddragon

Número de Mensagens : 267
Idade : 27
Data de inscrição : 19/03/2008
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido] Quero que o inimigo atire de 2 em 2 segundos!

Mensagem por Mannoroth em Ter 21 Dez 2010, 22:56

No objeto que atira (inimigo) coloque:
no create
Código:
alarm[0]=60
e no alarm
Código:
var tiro;
tiro=instance_create(x,y,obj_tiro)
tiro.hspeed=-20
alarm[0]=60
Assim o inimigo irá atirar o obj_tiro pra esquerda, a cada 2 segundos .

Mannoroth

Ranking : Nota D
Número de Mensagens : 836
Idade : 26
Data de inscrição : 05/10/2010
Notas recebidas : D+D
Reputação : 12
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido] Quero que o inimigo atire de 2 em 2 segundos!

Mensagem por M.F-Sasuke em Qua 22 Dez 2010, 08:25

Cara no meu diz:

Assigniment operator expected.

E eu quero q ele atire na minha direção, esse é o meu codigo, mas com um intervalo!


M.F-Sasuke

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

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido] Quero que o inimigo atire de 2 em 2 segundos!

Mensagem por matB em Qua 22 Dez 2010, 16:36

olha eu fiz uma engine veja se vai ajudar. Happy

http://www.4shared.com/file/NCxGmPrm/engine-tiro_de_2_em_2_segundos.html?

minha segunda ajuda do dia cheers

matB

Número de Mensagens : 135
Idade : 18
Data de inscrição : 19/10/2010
Reputação : 8
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido] Quero que o inimigo atire de 2 em 2 segundos!

Mensagem por M.F-Sasuke em Qui 23 Dez 2010, 13:25

Valeu Mat B!!!
Foi bom ter te add na minha equipe!

M.F-Sasuke

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

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido] Quero que o inimigo atire de 2 em 2 segundos!

Mensagem por Conteúdo patrocinado Hoje à(s) 10:00


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