Conectar-se
Quem está conectado
26 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 26 Visitantes

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Data de inscrição : 20/08/2010
Número de Mensagens : 167
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

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

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)
avatar
Ranking : Nota A
Notas recebidas : B A
Data de inscrição : 20/12/2008
Número de Mensagens : 2516
Insígnias de JAM :

Insignia 1x 1 Insignia 2x 0 Insignia 3x 0
Reputação : 177

Prêmios
   : 2
   : 1
   : 1
Ver perfil do usuáriohttp://redscreensoft.blogspot.com

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

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!
avatar
Data de inscrição : 19/03/2008
Número de Mensagens : 267
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0

Prêmios
   :
   :
   :
Ver perfil do usuário

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

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.
avatar
Data de inscrição : 20/08/2010
Número de Mensagens : 167
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

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

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
avatar
Ranking : Nota A
Notas recebidas : A+A+A+A+A+A+A
Data de inscrição : 06/06/2009
Número de Mensagens : 2264
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 39

Prêmios
   : 4
   : 2
   : 1
Ver perfil do usuário

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

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
avatar
Data de inscrição : 20/08/2010
Número de Mensagens : 167
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

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

em Ter 21 Dez 2010, 20:41
E no seu Alex FC o inimigo atira e para!
avatar
Ranking : Nota A
Notas recebidas : B A
Data de inscrição : 20/12/2008
Número de Mensagens : 2516
Insígnias de JAM :

Insignia 1x 1 Insignia 2x 0 Insignia 3x 0
Reputação : 177

Prêmios
   : 2
   : 1
   : 1
Ver perfil do usuáriohttp://redscreensoft.blogspot.com

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

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!
avatar
Data de inscrição : 20/08/2010
Número de Mensagens : 167
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

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

em Ter 21 Dez 2010, 21:05
SIGILOSO o seu nõ funcionou, foi como se eu ñ tivesse posto nada lá!
avatar
Data de inscrição : 20/08/2010
Número de Mensagens : 167
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

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

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?
avatar
Ranking : Sem avaliações
Data de inscrição : 11/10/2009
Número de Mensagens : 2184
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 106

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

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

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í
avatar
Data de inscrição : 20/08/2010
Número de Mensagens : 167
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

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

em Ter 21 Dez 2010, 21:29
po cara ñ funciona ele da 1 tiro e para!
avatar
Data de inscrição : 19/03/2008
Número de Mensagens : 267
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0

Prêmios
   :
   :
   :
Ver perfil do usuário

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

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);
}
avatar
Ranking : Nota D
Notas recebidas : D+D
Data de inscrição : 05/10/2010
Número de Mensagens : 836
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 12

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

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

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 .
avatar
Data de inscrição : 20/08/2010
Número de Mensagens : 167
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

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

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!

avatar
Data de inscrição : 19/10/2010
Número de Mensagens : 135
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 8

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

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

em Qua 22 Dez 2010, 16:36
olha eu fiz uma engine veja se vai ajudar. Happy

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

minha segunda ajuda do dia cheers
avatar
Data de inscrição : 20/08/2010
Número de Mensagens : 167
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

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

em Qui 23 Dez 2010, 13:25
Valeu Mat B!!!
Foi bom ter te add na minha equipe!
Ver o tópico anteriorVoltar ao TopoVer o tópico seguinte
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum