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
» Problema ao entrar por uma porta e voltar por ela
por aminaro Seg maio 06, 2024 10:08 am

» Alguém aqui já ganha dinheiro com seus games?
por theguitarmester Ter Abr 30, 2024 11:43 am

» Colisões não funcionando
por theguitarmester Ter Abr 30, 2024 10:16 am

» Como ajustar velocidade de cada frame da animação no game maker
por pequetux Sex Abr 26, 2024 4:45 pm

» Preciso de ajuda
por AftonDuGrau Dom Abr 21, 2024 8:18 pm

» Como faz o evento drawn GUI, não se repetir?
por aminaro Sex Abr 19, 2024 8:30 pm

» PROBLEMAS COM FÍSICAS DE ÁGUA
por aminaro Ter Abr 16, 2024 10:07 am

» Retorno da GMBR!!!
por Ralphed Sex Abr 12, 2024 10:45 pm

» JOGADOR PARANDO NO AR QUANDO ATACA
por aminaro Qua Abr 10, 2024 1:51 pm

» Problemas com texto interativo
por Kaaru72 Dom Abr 07, 2024 11:31 am

» Erro escondido e indecifrável
por dev_gabize.azv Qui Abr 04, 2024 10:11 am

» Mudar cor de apenas uma palavra
por Ralphed Sáb Mar 30, 2024 12:39 am

» Procuro Programador de game maker
por Wou Sex Mar 15, 2024 10:27 am

» Mod APK
por gamerainha Qua Mar 13, 2024 6:30 am

» Aceito pedidos de sprites (Com exemplos meus)
por Sevilha Qua Fev 28, 2024 12:17 pm

» Inventário simples
por Isquilo_Roedor Qui Fev 22, 2024 3:18 pm

» Problemas na programaçnao de inimigo [jogo DOOM LIKE]
por Black Mirror Dom Fev 11, 2024 1:34 pm

» ANDROID MULTI TOUCH
por DiegoBr Dom Fev 04, 2024 12:13 pm

» Servidor de Discord do fórum?
por Lighter Sáb Jan 27, 2024 5:18 pm

» Save e Load Json
por Klinton Rodrigues Qui Jan 25, 2024 11:12 am

» Colisão com mais de um objeto
por aminaro Seg Jan 22, 2024 3:02 pm

» Oi sou novo aqui
por Thiago Silveira Alexandre Sáb Jan 20, 2024 8:55 pm

» Como acessar conteudo comprado no marketplace
por macmilam Sex Jan 19, 2024 7:42 am

» Devlogs em vídeos do Block Room
por Joton Seg Jan 15, 2024 4:56 pm

» ACERVO GMBR MAGAZINE
por Joton Qui Jan 11, 2024 7:21 pm


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 Jan 27, 2012 11:32 am

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 Jan 27, 2012 11:45 am

É 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 Jan 27, 2012 12:42 pm

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 Jan 27, 2012 1:43 pm

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 Jan 27, 2012 2:45 pm

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 Jan 27, 2012 3:26 pm

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 Jan 27, 2012 3:39 pm

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 Jan 27, 2012 4:17 pm

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 Jan 27, 2012 4:29 pm

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 Jan 27, 2012 5:01 pm

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 Jan 27, 2012 5:31 pm

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