[duvida]inimigo inicar a cada tantos segundos e bala não ser crida duas vezes enquando tiver na room

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

[duvida]inimigo inicar a cada tantos segundos e bala não ser crida duas vezes enquando tiver na room

Mensagem por Ligeirinho em Seg 20 Jun 2011, 20:16

1° : Que codigos devo usar para fazer isto: A cada tantos segundos o objeto inimigo se cria sosinho no obj casa inimigo que vai ficar numa parte da room.

2° : Que codigos devo usar para fazer isto: Tenho o objeto tank ai quando eu aperto o botão fire que é outro objeto ele solta uma bala ai queria saber se tem como fazer assim enquanto uma bala ainda estiver viva numa room ai n der para soltar outra


Última edição por Ligeirinho em Seg 20 Jun 2011, 21:20, editado 2 vez(es)

Ligeirinho

Número de Mensagens : 30
Data de inscrição : 19/06/2011
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

Re: [duvida]inimigo inicar a cada tantos segundos e bala não ser crida duas vezes enquando tiver na room

Mensagem por Livsk em Seg 20 Jun 2011, 20:22

Explique melhor, está muito confuso

Pelo que eu entendi, tu quer que o inimigo ataque o player em alguns segundos?

Faz por Alarm, não sei te explicar muito bem, pois não uso os códigos.

Tem vários tutos aqui no forum pega um deles.

O segundo caso não entendi.

Livsk

Ranking : Nota C
Número de Mensagens : 364
Idade : 19
Data de inscrição : 02/06/2011
Notas recebidas : C + C + D + D + D + D + B + B + A + C + B
Reputação : 13
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 1

Voltar ao Topo Ir em baixo

Re: [duvida]inimigo inicar a cada tantos segundos e bala não ser crida duas vezes enquando tiver na room

Mensagem por JV Justino em Seg 20 Jun 2011, 20:25

1- Não entendi, poderia explicar melhor?

2- Coloque o seguinte código:
Código:
if(instance_number(obj_bala)<1)
instance_create(x,y,obj_bala);

Espero ter ajudado!

JV Justino

Ranking : Nota A
Número de Mensagens : 619
Idade : 19
Data de inscrição : 07/12/2010
Notas recebidas : A+A
Reputação : 20
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: [duvida]inimigo inicar a cada tantos segundos e bala não ser crida duas vezes enquando tiver na room

Mensagem por LCS em Seg 20 Jun 2011, 20:27

1º no create desse objeto inimigo defina um alarm.

alarm[0]=30

No evento do alarm[0]:

x=objeto_casa_inimigo.x
y=objeto_casa_inimigo.y
alarm[0]=30

Seria isso? pois não entendi muito bem a pergunta.
2º no step do teu tank coloque o seguinte:
if keyboard_check_pressed(vk_space) && !instance_exists(obj_bala)
{
instance_create(x,y,obj_bala)
}

mas não se esqueça de em algum momento esse objeto bala ser destruído, pois se não o tank só vai dar um tiro.

LCS

Ranking : Nota A
Número de Mensagens : 1035
Idade : 21
Data de inscrição : 09/03/2010
Notas recebidas : A
Reputação : 43
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 2
   : 1
   : 1

http://www.www.ww.www

Voltar ao Topo Ir em baixo

Re: [duvida]inimigo inicar a cada tantos segundos e bala não ser crida duas vezes enquando tiver na room

Mensagem por Ligeirinho em Seg 20 Jun 2011, 20:35

LCS escreveu:1º no create desse objeto inimigo defina um alarm.

alarm[0]=30

No evento do alarm[0]:

x=objeto_casa_inimigo.x
y=objeto_casa_inimigo.y
alarm[0]=30

Seria isso? pois não entendi muito bem a pergunta.
2º no step do teu tank coloque o seguinte:
if keyboard_check_pressed(vk_space) && !instance_exists(obj_bala)
{
instance_create(x,y,obj_bala)
}

mas não se esqueça de em algum momento esse objeto bala ser destruído, pois se não o tank só vai dar um tiro.

no deu certo cara o inimigo n aparece


e joão onde coloca isso?

if(instance_number(obj_bala)<1)
instance_create(x,y,obj_bala);

que object que event

Ligeirinho

Número de Mensagens : 30
Data de inscrição : 19/06/2011
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

Re: [duvida]inimigo inicar a cada tantos segundos e bala não ser crida duas vezes enquando tiver na room

Mensagem por .:Allison:. em Seg 20 Jun 2011, 20:45

Você pode colocar esse código no step, quanto ao código do LCS está correto, você tem certeza que alterou os recursos ?

.:Allison:.

Ranking : Nota B
Número de Mensagens : 630
Idade : 19
Data de inscrição : 25/07/2010
Notas recebidas : B
Reputação : 4
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://clubmaker.forumeiros.com

Voltar ao Topo Ir em baixo

Re: [duvida]inimigo inicar a cada tantos segundos e bala não ser crida duas vezes enquando tiver na room

Mensagem por JV Justino em Seg 20 Jun 2011, 20:49

Ligeirinho escreveu:e joão onde coloca isso?

if(instance_number(obj_bala)<1)
instance_create(x,y,obj_bala);

que object que event
No evento Key Pressed - Space do obj_tank.

JV Justino

Ranking : Nota A
Número de Mensagens : 619
Idade : 19
Data de inscrição : 07/12/2010
Notas recebidas : A+A
Reputação : 20
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: [duvida]inimigo inicar a cada tantos segundos e bala não ser crida duas vezes enquando tiver na room

Mensagem por Ligeirinho em Seg 20 Jun 2011, 21:22

Gente a pergunta 2 editei uma parte leem e falam como fazer


a 1 por enquanto nenhum dos codes deu certos

Ligeirinho

Número de Mensagens : 30
Data de inscrição : 19/06/2011
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

Re: [duvida]inimigo inicar a cada tantos segundos e bala não ser crida duas vezes enquando tiver na room

Mensagem por Klior em Seg 20 Jun 2011, 21:41

Ligeirinho escreveu:1° : Que codigos devo usar para fazer isto: A cada tantos segundos o objeto inimigo se cria sosinho no obj casa inimigo que vai ficar numa parte da room.

2° : Que codigos devo usar para fazer isto: Tenho o objeto tank ai quando eu aperto o botão fire que é outro objeto ele solta uma bala ai queria saber se tem como fazer assim enquanto uma bala ainda estiver viva numa room ai n der para soltar outra

Duvida 1:
No evento Create do objCasaInimigo:
Código:
alarm[0] = 30;
No evento Alarm 0 do objCasaInimigo:
Código:
instance_create(x, y, objInimigo);

Duvida 2:
No evento Mouse Left Button do objFire:
Código:
with (objTanke) {
    if (instance_exists(objBala)) { //Verifica se o objBala existe na room
        instance_create(x, y, objBala); //Cria o objBala nas posições x e y do objTanke
    }
}


Sugestão: quebre a cabeça tentando compreender os códigos, leia sempre o manual do game maker antes de qualquer pergunta, o manual do game maker é muito explicativo, apesar de ser em inglês com um simples tradutor você consegue responder quase todas as duvidas.. Abraços

Klior

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

Voltar ao Topo Ir em baixo

Re: [duvida]inimigo inicar a cada tantos segundos e bala não ser crida duas vezes enquando tiver na room

Mensagem por Ligeirinho em Seg 20 Jun 2011, 22:22

Klior escreveu:
Ligeirinho escreveu:1° : Que codigos devo usar para fazer isto: A cada tantos segundos o objeto inimigo se cria sosinho no obj casa inimigo que vai ficar numa parte da room.

2° : Que codigos devo usar para fazer isto: Tenho o objeto tank ai quando eu aperto o botão fire que é outro objeto ele solta uma bala ai queria saber se tem como fazer assim enquanto uma bala ainda estiver viva numa room ai n der para soltar outra

Duvida 1:
No evento Create do objCasaInimigo:
Código:
alarm[0] = 30;
No evento Alarm 0 do objCasaInimigo:
Código:
instance_create(x, y, objInimigo);

Duvida 2:
No evento Mouse Left Button do objFire:
Código:
with (objTanke) {
    if (instance_exists(objBala)) { //Verifica se o objBala existe na room
        instance_create(x, y, objBala); //Cria o objBala nas posições x e y do objTanke
    }
}


Sugestão: quebre a cabeça tentando compreender os códigos, leia sempre o manual do game maker antes de qualquer pergunta, o manual do game maker é muito explicativo, apesar de ser em inglês com um simples tradutor você consegue responder quase todas as duvidas.. Abraços


Nada funcionou Sad o que será que é

Ligeirinho

Número de Mensagens : 30
Data de inscrição : 19/06/2011
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

Re: [duvida]inimigo inicar a cada tantos segundos e bala não ser crida duas vezes enquando tiver na room

Mensagem por Super Games em Seg 20 Jun 2011, 23:18

Creio que queira coisas simples.

Primeira dúvida:
Coloque no Create o seguinte:
Código:
alarm[0]=60
Isto faz que a cada 2 minutos(Creio eu)ser executado o Alarm correspondente da função.
E Agora em qualquer Alarm:
Código:
instance_create(x,y,objInimigo)
alarm[0]=60
Isto faz que seja criado um objInimigo em tal lugar(De acordo o x e o y)e após isto recomeçar a função no Alarme.

Super Games

Ranking : Nota D
Número de Mensagens : 2704
Idade : 18
Data de inscrição : 10/06/2010
Notas recebidas : D
Reputação : 10
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: [duvida]inimigo inicar a cada tantos segundos e bala não ser crida duas vezes enquando tiver na room

Mensagem por saim em Ter 21 Jun 2011, 09:02

Os códigos do Klior são os que mais se aproximam do efeito que eu entendi que você quer. Só faltou resetar o alarme do objCasaInimigo e checar se NÃO existe nenhuma instância do objBala (como está, o código só permite atirar se já houver alguma instância). Permita-me citá-lo com as devidas alterações:
Klior escreveu:Duvida 1:
No evento Create do objCasaInimigo:
Código:
alarm[0] = 30;
No evento Alarm 0 do objCasaInimigo:
Código:
instance_create(x, y, objInimigo);
alarm[0]=30 //isso faz com que a casa não pare de criar os inimigos

Duvida 2:
No evento Mouse Left Button do objFire:
Código:
with (objTanke) {
    if !(instance_exists(objBala)) { //Essa exclamação muda tudo
        instance_create(x, y, objBala); //Cria o objBala nas posições x e y do objTanke
    }
}
Ah, e garanta que o objBala seja destruído em algum momento. Pode ser em alguma colisão, quando sair da view, da room, após percorrer certa distância, depois de algum tempo ou todas essas alternativas e mais algumas. No(s) evento(s) do objBala que você escolher, coloque "instance_destroy()". Isso vai fazer com que a checagem por instâncias do objBala retornem negativo, permitindo a criação de uma nova instância.

Lembre-se que isso só funciona pra um objTanke. Havendo mais instâncias do objTanke, ainda assim só uma vai atirar, porque após esse tiro ser criado, as demais intâncias irão verificar pela existência de intâncias do objBala e verão que já existe uma instância, portanto não vão atirar. Isso pode ser contornado, mas é um pouco mais complexo. Avise se for necessário.

saim

Ranking : Nota B
Número de Mensagens : 2964
Idade : 38
Data de inscrição : 14/01/2011
Notas recebidas : C-D-A-B
Reputação : 121
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 3

Voltar ao Topo Ir em baixo

Re: [duvida]inimigo inicar a cada tantos segundos e bala não ser crida duas vezes enquando tiver na room

Mensagem por Ligeirinho em Ter 21 Jun 2011, 10:55

Até agora so deu certo o do Super games agora so preciso da bala só

Ligeirinho

Número de Mensagens : 30
Data de inscrição : 19/06/2011
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

Re: [duvida]inimigo inicar a cada tantos segundos e bala não ser crida duas vezes enquando tiver na room

Mensagem por Klior em Ter 21 Jun 2011, 11:32

Os códigos do Klior são os que mais se aproximam do efeito que eu entendi que você quer. Só faltou resetar o alarme do objCasaInimigo e checar se NÃO existe nenhuma instância do objBala (como está, o código só permite atirar se já houver alguma instância). Permita-me citá-lo com as devidas alterações:

Nossa, realmente esqueci de fazer isso mesmo, obrigado por corrigir, da proxima vez vou testar antes no game maker Happy

Klior

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

Voltar ao Topo Ir em baixo

Re: [duvida]inimigo inicar a cada tantos segundos e bala não ser crida duas vezes enquando tiver na room

Mensagem por Conteúdo patrocinado Hoje à(s) 20:19


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