Colocando vida em inimigos

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

Resolvido Colocando vida em inimigos

Mensagem por BrunoSA em Ter 09 Out 2012, 21:12

Ola,

Existe alguma maneira de se colocar health nos inimigos?
Por exemplo, meu personagem arremessa um objeto e quero que quando esse objeto atinja uma quantidade determinada de vezes no inimigo, o inimigo seja destruído?


nota:
Se o inimigo começa com 100 de vida e cada objeto tira 5, são necessárias 20 arremessos, porem não sei determinar a vida do inimigo, não sem afetar a vida do obj_player.

RESOLVIDO
Agradeço a todos.


Última edição por BrunoSA em Seg 22 Out 2012, 22:03, editado 2 vez(es)

BrunoSA

Número de Mensagens : 17
Data de inscrição : 18/09/2012
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Resolvido Re: Colocando vida em inimigos

Mensagem por un00brn em Ter 09 Out 2012, 21:34

Olá BrunoSA, seu problema é com variáveis.

Defina no evento CREATE do inimigo
Código:

inimigo_life = 100
Alí, definimos o total de life que ele terá!

Agora, no evento STEP do objeto inimigo
Código:

if inimigo_life <= 0 instance_destroy;
Ou seja, se a variavel Inimigo_life for menor ou igual que 0, ele vai ser destruido

Para ele perder vida, use em alguma colisao o codigo
Código:

with obj_inimigo { inimigo_life -= 5 }

Ele irá perder 5 de life.
Valeu, espero ter ajudado!

un00brn

Número de Mensagens : 117
Idade : 18
Data de inscrição : 18/06/2012
Reputação : 7
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://www.djurielrn.blogspot.com

Voltar ao Topo Ir em baixo

Resolvido Re: Colocando vida em inimigos

Mensagem por saim em Qua 10 Out 2012, 08:44

Explicando um pouco mais:
Você provavelmente está usando a variável global "health" tanto para a personagem principal quanto pros inimigos.
Se você usa uma variável global, qualquer instância de qualquer objeto pode afetar ou ser afetada por essa variável. Se você usa uma variável local, é como se fosse uma variável diferente pra cada instância (ainda é possível que outros objetos afetem e sejam afetados por ela, mas pra isso acontecer, você precisa QUERER que aconteça).
A boa notícia é que você não tem limite de quantas variáveis usar. Não precisa se limitar às "built-ins" ou aquelas mostradas no manual. Você pode usar qualquer palavra pra ser sua variável. Na verdade, você é encorajado a escolher palavras com uma boa dose de significado. Então, o nome "inimigo_life", sugerido pelo nosso colega un00brn é um ótimo exemplo. Existem algumas regras pra escolher o nome das variáveis, mas as restrições são pequenas.

Só tenho uma correção à idéia apresentada pelo un00brn: cuidado ao usar a declaração "with". O código dentreo dela acontece em TODAS as intâncias do objeto entre parênteses (você pode colocar uma instância específica entre parênteses se não quiser isso, mas deixa essa explicação pra depois). Então, da forma que está, o código dele não vai afetar seu obj_player, mas vai afetar a todos os inimigos de uma vez só.

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: Colocando vida em inimigos

Mensagem por theguitarmester em Qua 10 Out 2012, 12:19

Para ele perder vida, use em alguma colisao o codigo
Código:
with obj_inimigo { inimigo_life -= 5 }
coloque isto na colisão com o Inimigo, mas troque este obj_inimigo por other, ficando assim:
Código:
with other { inimigo_life -= 5 }
e o valor 5, é o valor que irá sair da vida do inimigo.

provavelmente só com esse códigos, você caíra em outros erros, e coisas indesejadas, mas quando chegar nisso, é só perguntar .

theguitarmester

Ranking : Sem avaliações
Número de Mensagens : 1908
Idade : 21
Data de inscrição : 28/02/2012
Notas recebidas : B
Reputação : 80
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 1
Prêmios
   : 2
   : 2
   : 1

http://guitarmester.no.comunidades.net/index.php?pagina=19362978

Voltar ao Topo Ir em baixo

Resolvido Re: Colocando vida em inimigos

Mensagem por un00brn em Qua 10 Out 2012, 14:01

theguitarmester escreveu:
Para ele perder vida, use em alguma colisao o codigo
Código:
with obj_inimigo { inimigo_life -= 5 }
coloque isto na colisão com o Inimigo, mas troque este obj_inimigo por other, ficando assim:
Código:
with other { inimigo_life -= 5 }
e o valor 5, é o valor que irá sair da vida do inimigo.

provavelmente só com esse códigos, você caíra em outros erros, e coisas indesejadas, mas quando chegar nisso, é só perguntar .

é, na verdade eu esqueci de que afetaria todos!
Como o theguitarmester citou, deve se usar o other mesmo!

Espero que agente tenha lhe ajudado! Flws, aguardamos respostas Laughing

un00brn

Número de Mensagens : 117
Idade : 18
Data de inscrição : 18/06/2012
Reputação : 7
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://www.djurielrn.blogspot.com

Voltar ao Topo Ir em baixo

Resolvido Re: Colocando vida em inimigos

Mensagem por BrunoSA em Qui 11 Out 2012, 17:28

Ola,

Agradeço a rapidez da resposta, mas para minha infelicidade, não funcionou.
Quando o objeto colide com o inimigo ocorre um erro dizendo que a variavel não pôde ser reconhecida.


BrunoSA

Número de Mensagens : 17
Data de inscrição : 18/09/2012
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Resolvido Re: Colocando vida em inimigos

Mensagem por saim em Seg 15 Out 2012, 07:59

Pra alterar o valor de uma variável, ela precisa ser declarada e ter um valor, antes (a declaração é feita quando você atribui um valor, no game maker).
Tente colocar, no create, "variável = valor". Se não der certo, mostre os códigos que você usou e o erro que recebeu.

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: Colocando vida em inimigos

Mensagem por BrunoSA em Ter 16 Out 2012, 13:29

Ola Saim,

Ainda continuo sem compreender como utilizar as variaveis, existe alguma apostila que eu possa ler?

BrunoSA

Número de Mensagens : 17
Data de inscrição : 18/09/2012
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Resolvido Re: Colocando vida em inimigos

Mensagem por saim em Ter 16 Out 2012, 15:27

Tem o manual do game maker (existe uma versão traduzida aqui na GMBR). Tem um tutorial na minha assinatura, também.

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: Colocando vida em inimigos

Mensagem por BrunoSA em Sab 20 Out 2012, 15:40

Ola saim,

Não tinha percebido, vou dar uma lida.
Desde já agradeço.

BrunoSA

Número de Mensagens : 17
Data de inscrição : 18/09/2012
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Resolvido Re: Colocando vida em inimigos

Mensagem por BrunoSA em Sab 20 Out 2012, 16:09

Ola saim,
Li teu tutorial e não apenas intendi como também resolvi o meu impasse.
Agradeço.

BrunoSA

Número de Mensagens : 17
Data de inscrição : 18/09/2012
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Resolvido Re: Colocando vida em inimigos

Mensagem por un00brn em Sab 20 Out 2012, 16:10

Tente ver se "obj_inimigo" existe (este deve ser o objeto que irá tirar o life do obj_player), e se você não colocou nada em maiúsculo.

Pois não tem erro no código. não

un00brn

Número de Mensagens : 117
Idade : 18
Data de inscrição : 18/06/2012
Reputação : 7
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://www.djurielrn.blogspot.com

Voltar ao Topo Ir em baixo

Resolvido Re: Colocando vida em inimigos

Mensagem por BrunoSA em Seg 22 Out 2012, 22:03

Ola un00brn,
Agradeço a ajuda, de fato, não havia erro algum. Meu problema foi resolvido.

Agradeço. RESOLVIDO

BrunoSA

Número de Mensagens : 17
Data de inscrição : 18/09/2012
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Resolvido Re: Colocando vida em inimigos

Mensagem por Conteúdo patrocinado Hoje à(s) 16:31


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