Problemas com Inimigo

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

Resolvido Problemas com Inimigo

Mensagem por taninhabaixinha em Qui 22 Set 2011, 00:04

É o seguinte, eu criei um inimigo que, quando estivesse perto do player criaria uma instacia (poder) e essa instancia seguiria o player, ok, mas o problema é que eu queria que fosse criada só uma instancia, mas ele cria centenas.... algume pode me ajudar ?????????
esse é o codigo do inimigo V

Código:


if distance_to_object(hero) < 1000
{instance_create (inimigo.x,inimigo.y,poder )}



e esse o do poder V

Código:

if distance_to_object(hero) < 1000
{move_towards_point(hero.x,hero.y,15)}



Última edição por taninhabaixinha em Ter 27 Set 2011, 15:53, editado 2 vez(es)

taninhabaixinha

Número de Mensagens : 36
Data de inscrição : 02/09/2011
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Resolvido Re: Problemas com Inimigo

Mensagem por Limalokão em Qui 22 Set 2011, 00:08

if distance_to_object(hero) < 1000 && !instance_exists(poder) // se não existir o poder ele cria
{instance_create (inimigo.x,inimigo.y,poder )}


Última edição por Soul Limaloko em Qui 22 Set 2011, 00:09, editado 1 vez(es)

Limalokão

Ranking : Nota C
Número de Mensagens : 803
Idade : 24
Data de inscrição : 24/11/2009
Notas recebidas : C
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

Resolvido Re: Problemas com Inimigo

Mensagem por MatheusReis em Qui 22 Set 2011, 00:08

Basta fazer com que o inimigo atire apenas quando houver poucos tiros.
instance_number(obj) diz quantos de um objeto existem na room, então, por exemplo:
Código:
 if instance_number(poder)<3 {instance_create (x,y,poder )};
Este vai criar até 3 poderes no lugar do inimigo. Como este código está dentro do próprio inimigo, você não precisa por "inimigo.x" ou ".y", apenas x e y.

Ponha um título de tópico menos chamativo, ou ele será excluido.

MatheusReis

Ranking : Nota A
Número de Mensagens : 1087
Idade : 23
Data de inscrição : 13/01/2010
Notas recebidas : B-A-A
Reputação : 30
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 2
   : 1
   : 0

http://www.mathaeuz.deviantart.com

Voltar ao Topo Ir em baixo

Resolvido Re: Problemas com Inimigo

Mensagem por Limalokão em Qui 22 Set 2011, 00:09

É recomendo usar o do matheuz ta mai legalzinho! ;]

Limalokão

Ranking : Nota C
Número de Mensagens : 803
Idade : 24
Data de inscrição : 24/11/2009
Notas recebidas : C
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

Resolvido Re: Problemas com Inimigo

Mensagem por taninhabaixinha em Qui 22 Set 2011, 00:57

Deu certo, muito obrigada.... mas queria saber outra coisa, tem como eu fazer que o poder siga o personagem na origem, ou seja, quando ele fora criado, e depois siga em linha "reta" sem perseguir o player ? resumindo.. quando ele for criado siga na linha que o personagem estava naquele momento e vá direto e somente para aquele lugar.... ???????????????

taninhabaixinha

Número de Mensagens : 36
Data de inscrição : 02/09/2011
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Resolvido Re: Problemas com Inimigo

Mensagem por Limalokão em Qui 22 Set 2011, 01:07

Coloca este Cód no create e tira do step:
if distance_to_object(hero) < 1000
{move_towards_point(hero.x,hero.y,15)}

Por que? Por que é o seguinte, como o próprio nome do evento ja diz: CREATE, todas as ações colocadas ali vão acontecer no momento que que ele for CRIADO, se estiver no STEP, todas as ações que estão no STEP vão acontecer a todo momento enquanto o objeto existir! Tendeo? ;D

Limalokão

Ranking : Nota C
Número de Mensagens : 803
Idade : 24
Data de inscrição : 24/11/2009
Notas recebidas : C
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

Resolvido Re: Problemas com Inimigo

Mensagem por saim em Qui 22 Set 2011, 11:08

Não sei se o "move_towards_point" dá um passo ou define a velocidade e direção. Se o código do Soul Limaloko só te fazer mover um step (o primeiro step), é porque ele só dá um passo.
O que ele falou do create e step está certinho, ISSO eu posso afirmar. Então, a alternativa que vou apresentar a seguir segue a mesma teoria - definir uma direction e uma speed pro objeto no momento em que ele é criado. Caso você não saiba, deixa eu explicar: direction e speed são variáveis que já vêm com o game maker, existem pra todos os objetos (com valor 0, por default) e que controlam a posição dele.
Defina a speed pro valor que você quiser e a direction pra direção do player. Aí, se o player sair do lugar depois de criado o objeto, isso não vai alterar a trajetória do mesmo.

Pra definir a direction como sendo "em direção ao player", existe a função point_direction. Use assim:
Código:
direction=point_direction(x, y, player.x, player.y);

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

Resolvido Re: Problemas com Inimigo

Mensagem por Limalokão em Qui 22 Set 2011, 12:27

É verdade point direction, era o que eu nao lembrava kkkkkkkk voltei a 2 dias e ja to respondendo errado! aushuahsuahsuash A mas nao ta errado! =P Mas da dos dois geito!

Limalokão

Ranking : Nota C
Número de Mensagens : 803
Idade : 24
Data de inscrição : 24/11/2009
Notas recebidas : C
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

Resolvido Re: Problemas com Inimigo

Mensagem por Conteúdo patrocinado Hoje à(s) 00: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