GMBR
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Entrar

Esqueci-me da senha

Últimos assuntos
» player não consegue andar
por lovn7 Qui 21 Nov 2024, 13:33

» É possível fazer istó no game maker
por William Lima Qui 21 Nov 2024, 10:56

» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por Lua Sáb 16 Nov 2024, 20:22

» (Resolvido) Cenario longo x Texture Pages
por josuedemoraes Sáb 16 Nov 2024, 15:31

» Kids' band
por Adilson Lucindo Santos Sex 15 Nov 2024, 12:23

» (RESOLVIDO) Engasgos-Troca de Sprites/animações
por josuedemoraes Ter 12 Nov 2024, 01:49

» Block Room - DEMO
por Joton Qua 06 Nov 2024, 22:58

» Game Infinito vertical (subindo)
por macmilam Sáb 26 Out 2024, 12:36

» Retorno da GMBR!!!
por Dancity Ter 22 Out 2024, 16:36

» Máquina de estados
por aminaro Qui 10 Out 2024, 13:33

» como faço pra um objeto colidir com o outro e diminuir a vida do player ?
por josuedemoraes Qui 03 Out 2024, 16:51

» RESOLVIDO: Colisão com objetos moveis
por josuedemoraes Qua 02 Out 2024, 20:28

» Crypt of the Blood Moon
por divin sphere Qua 11 Set 2024, 18:18

» como fazer um objeto seguir?
por divin sphere Dom 18 Ago 2024, 18:08

» Procuro de alguém para Modelar/Texturizar/Animar objetos 3D
por un00brn Dom 11 Ago 2024, 11:10

» Destruição de cenário (estilo DD Tank)
por CoronelZeg Sex 09 Ago 2024, 17:16

» RESOLVIDO-Como destruir uma instancia especifica de um objeto
por josuedemoraes Ter 23 Jul 2024, 00:40

» Automatizar a coleta de id
por GabrielXavier Seg 22 Jul 2024, 18:01

» Preciso de ajuda para concluir um pequeno projeto
por lmoura Qui 27 Jun 2024, 15:45

» ANGULO ACOMPANHAR O OBJETO
por Klinton Rodrigues Qui 27 Jun 2024, 08:34

» Musica reinicia quando sala reinicia
por GabrielXavier Ter 18 Jun 2024, 07:28

» como fazer uma copia de gd
por generico_cube Sex 14 Jun 2024, 15:48

» Square Adventure
por guilherme551 Ter 11 Jun 2024, 09:54

» como posso definir limite de uma variavel
por GabrielXavier Sex 07 Jun 2024, 14:14

» [Resolvido] Dúvida, colisão única de objeto
por vdm842 Sex 24 maio 2024, 09:50


Dúvida com mask de ataque

4 participantes

Ir para baixo

Dúvida com mask de ataque Empty Dúvida com mask de ataque

Mensagem por darkdaimon Sex 27 Jan 2012, 12:32

Olá amigos, estou com um problema na minha engine de plataforma.
Eu criei o meu personagem e fiz uma mascara pra ele com um retangulo preto dos pes a cabeça, para fazer a colisão com o chao etc.
O problema é, quando o meu personagem ataca o monstro só é destruido se ele estiver colado com o personagem, por causa da mask. (o meu personagem ataca com uma espada).

Para o meu personagem eu só tenho um objeto, para os movimentos e ataque são tudo sprites mesmo que eu alterno(sprplayeratacando, sprplayerparado), (sprplayerandando). para eu mudar a mask no ataque para que a colisão da espada com o inimigo fique certa, eu teria que criar um objeto para o ataque certo?, porém isso mudaria totalmente o step, ou não?

STEP

Código:
//gravidade

if place_free(x,y+2)
{
gravity=1
}
else
{
gravity=0
}
//Ataque

if keyboard_check_pressed(ord("Z"))
{
hspeed=0;
image_index=0;
atacando=true;
sprite_index=sprPlayerAtacando

}
else
if(atacando=false)
{
//movimenta��o

if keyboard_check(vk_right)
{
hspeed=+7
sprite_index=sprPlayerAndando
image_xscale=1
}
else
if keyboard_check(vk_left)
{
hspeed=-7 
sprite_index=sprPlayerAndando
image_xscale=-1
}
else
{
hspeed=-0
sprite_index=sprPlayerParado
}
}

if keyboard_check_pressed(vk_up)
{
if !place_free(x,y+2)
{
vspeed=-11
}
}

//n�o grudar nas paredes

if not place_free(x+hspeed,y)
{
hspeed = 0
}



Isso aqui eu coloquei no collision do inimigo
Código:

if objPlayerParado.atacando = true{
instance_destroy()}


Ele anda, ataca tudo certo, o problema em questão é justo esse, ele so destroi o inimigo caso ele esteja COLADO nele, e não a uma certa distancia. (e se eu ataco de costas o inimigo tambem é morto x_x)

Agradeço a ajuda de vocês.
darkdaimon
darkdaimon

Data de inscrição : 20/01/2012
Reputação : 1
Número de Mensagens : 20
Prêmios : Dúvida com mask de ataque Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Dúvida com mask de ataque Empty Re: Dúvida com mask de ataque

Mensagem por luiz_eldorado Sex 27 Jan 2012, 12:45

É melhor voce nao colocar na colisao, e sim numa condicao no step.
Código:
i=instance_nearest(x,y,objInimigo)
if point_distance(x,y,i.x,i.y)>32 {
//codigo que esta na colisao
}
Arrume um pouco este codigo. Talvez nao precise do "instance_nearest".
luiz_eldorado
luiz_eldorado

Games Ranking : Nota C

Notas recebidas : C
Data de inscrição : 30/07/2011
Reputação : 47
Número de Mensagens : 928
Prêmios : Dúvida com mask de ataque Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 1

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://luizpontes.tk/

Ir para o topo Ir para baixo

Dúvida com mask de ataque Empty Re: Dúvida com mask de ataque

Mensagem por darkdaimon Sex 27 Jan 2012, 13:42

Entendi mais ou menos, no caso seria uma condição de uma certa distancia entre o personagem e o inimigo.

se o personagem estiver atacando
Caso distancia x (entre personagem e inimigo)
inimigo é destruido.

Só não entendi muito bem o código, sou iniciante xD.
Poderia explicar melhor?

Obrigado!
darkdaimon
darkdaimon

Data de inscrição : 20/01/2012
Reputação : 1
Número de Mensagens : 20
Prêmios : Dúvida com mask de ataque Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Dúvida com mask de ataque Empty Re: Dúvida com mask de ataque

Mensagem por saim Sex 27 Jan 2012, 14:43

Eu sugeriria mudar o sprite_mask para o ataque.
Código:
if keyboard_check_pressed(ord("Z"))
{
//mantém o que está lá
mask_index=sprPlayerAtacando;
}
if keyboard_check_released(ord("Z"))
{
mask_index=retanguloPreto;
}

saim
saim

Games Ranking : Nota B

Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Reputação : 136
Número de Mensagens : 3033
Prêmios : Dúvida com mask de ataque Empty

Medalhas x 1 Tutoriais x 6 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 3

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Dúvida com mask de ataque Empty Re: Dúvida com mask de ataque

Mensagem por darkdaimon Sex 27 Jan 2012, 15:45

Saim, eu fiz o que você me disse e ficou assim:

Código:

//gravidade

if place_free(x,y+2)
{
gravity=1
}
else
{
gravity=0
}
//Ataque

if keyboard_check(ord("Z"))
{
hspeed=0;
atacando=true;
sprite_index=sprPlayerAtacando
image_index=0;
mask_index=obj_mask;
}
if keyboard_check_released(ord("Z"))
{
mask_index=sprite5;
sprite_index=sprPlayerParado
image_index=0;

}
else
if(atacando=false)
{
//movimenta��o

if keyboard_check(vk_right)
{
hspeed=+7
sprite_index=sprPlayerAndando
image_xscale=1
}
else
if keyboard_check(vk_left)
{
hspeed=-7 
sprite_index=sprPlayerAndando
image_xscale=-1
}
else
{
hspeed=-0
sprite_index=sprPlayerParado
}
}

if keyboard_check_pressed(vk_up)
{
if !place_free(x,y+2)
{
vspeed=-11
}
}

//n�o grudar nas paredes

if not place_free(x+hspeed,y)
{
hspeed = 0
}



Eu fiz a mascara com a sprite do meu personagem atacando e agora ficou certinho, o monstro é acertado certo, porem a imagem do ataque nao roda fica parada na primeira imagem sendo que o ataque é feito por uma sequencia de 6 imagens.
O que poderia ser?
darkdaimon
darkdaimon

Data de inscrição : 20/01/2012
Reputação : 1
Número de Mensagens : 20
Prêmios : Dúvida com mask de ataque Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Dúvida com mask de ataque Empty Re: Dúvida com mask de ataque

Mensagem por saim Sex 27 Jan 2012, 16:26

Porque você mandou o game maker manter a imagem parada enquanto a tecla estiver pressionada:
if keyboard_check(ord("Z"))
{
hspeed=0;
atacando=true;
sprite_index=sprPlayerAtacando
image_index=0;
mask_index=obj_mask;
}
Tente eliminar essa linha em negrito.
saim
saim

Games Ranking : Nota B

Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Reputação : 136
Número de Mensagens : 3033
Prêmios : Dúvida com mask de ataque Empty

Medalhas x 1 Tutoriais x 6 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 3

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Dúvida com mask de ataque Empty Re: Dúvida com mask de ataque

Mensagem por darkdaimon Sex 27 Jan 2012, 16:39

Então, acontece o seguinte, se eu aperto o Z o personagem ataca mas não roda todas as imagens, se eu SEGURO o Z, ele roda a imagem do ataque mas enquanto eu manter segurado ele fica atacando...
O certo seria apertar Z ele roda a imagem do ataque e volta para a imagem parado.
darkdaimon
darkdaimon

Data de inscrição : 20/01/2012
Reputação : 1
Número de Mensagens : 20
Prêmios : Dúvida com mask de ataque Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Dúvida com mask de ataque Empty Re: Dúvida com mask de ataque

Mensagem por saim Sex 27 Jan 2012, 17:17

Bom, você quer que ele execute um evento ao terminar a animação, mas está falando pra ele executar ao soltar a tecla. Talvez seja o caso de parar de colocar todo o código no step e passar a usar os demais eventos.

O step é mesmo tentador. Já que ele acontece o tempo, parece muito lógico colocar tudo pra acontecer no step. Mas usar os eventos pode facilitar muito sua vida.
saim
saim

Games Ranking : Nota B

Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Reputação : 136
Número de Mensagens : 3033
Prêmios : Dúvida com mask de ataque Empty

Medalhas x 1 Tutoriais x 6 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 3

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Dúvida com mask de ataque Empty Re: Dúvida com mask de ataque

Mensagem por darkdaimon Sex 27 Jan 2012, 17:29

O que eu fiz e deu certo agora foi o seguinte:
Coloquei a mudança de mask quando ataca.. mas não voltei para a mascara quando ele nao esta atacando.
Coloquei um evento de (no key) e coloquei para voltar a mascara normal.
E agora a colisão ficou toda certinha, exceto pelo fato de que ele acerta o monstro mesmo de costas x_X.
darkdaimon
darkdaimon

Data de inscrição : 20/01/2012
Reputação : 1
Número de Mensagens : 20
Prêmios : Dúvida com mask de ataque Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Dúvida com mask de ataque Empty ja ta resolvido?

Mensagem por God_of_war425 Sex 27 Jan 2012, 18:01

topico ja esta resolvido,porque com evento no key vai dar problema porque se ele segura colquer uma tecla do teclado vai continuar com problema que ele disse vai voltar sugiro colocar

if keybord_check_realesed quando tecla for solta aconcete
{//aqui oque vc quer}mais se n quizer n vai na minha so falando que no key da problemas chato pq ele espera que nenhum NENHUMA tecla do teclado esteja presionada pra acontecer algo.
God_of_war425
God_of_war425

Data de inscrição : 29/10/2011
Reputação : 4
Número de Mensagens : 510
Prêmios : Dúvida com mask de ataque Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Dúvida com mask de ataque Empty Re: Dúvida com mask de ataque

Mensagem por darkdaimon Sex 27 Jan 2012, 18:31

Sim, o problema que estou tendo é na alternação de mascaras, vou postar a engine para ficar melhor a vizualização.
Tenho 2 mascaras, uma para o personagem parado e outra para atacando, o problema da mascara atacando é que eu estou matando o monstro mesmo estando de costas para ele.

teste ai para vocês verem.

setas andam, Z ataca

http://www.4shared.com/file/Aty3zFcM/mascara.html
darkdaimon
darkdaimon

Data de inscrição : 20/01/2012
Reputação : 1
Número de Mensagens : 20
Prêmios : Dúvida com mask de ataque Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Dúvida com mask de ataque Empty Re: Dúvida com mask de ataque

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos