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 06 maio 2024, 10:08

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


[PERGUNTA] Colisão com inimigo

+2
Fuzenrad
caiquerafinha
6 participantes

Ir para baixo

[PERGUNTA] Colisão com inimigo Empty [PERGUNTA] Colisão com inimigo

Mensagem por caiquerafinha Seg 23 Fev 2015, 05:13

Então galera, meu jogo o personagem sempre está focado no mouse, porém movimentos com W,A,S,D.
Porém queria que quando um inimigo colidisse com ele, ele iria pra trás, um pouco, tipo a colisão quando leva um soco, tentei usar o move_contact porém se eu do um direção, ele sempre vai nela.
O QUE EU QUERIA?
a bom queria que tipo dependesse do lugar que o inimigo batesse ele fosse para o lado oposto, por exemplo se o inimigo bate na direita, ele vai um pouco pra esquerda...
Porém como ele tem muitas direções fica complicado! Agradeço quem puder ajudar! tongue pirat Suspect Razz
caiquerafinha
caiquerafinha

Data de inscrição : 12/04/2014
Reputação : 8
Número de Mensagens : 39
Prêmios : [PERGUNTA] Colisão com inimigo Empty

Medalhas x 0 Tutoriais x 1 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

[PERGUNTA] Colisão com inimigo Empty Re: [PERGUNTA] Colisão com inimigo

Mensagem por Fuzenrad Seg 23 Fev 2015, 09:17

Você programou o movimento usando direction e speed?

Se sim, é só você fazer speed = -1; e setar um alarm pra speed=0 depois de alguns steps, a direção já estará correta durante a colisão.

Ou, de modo mais complexo, você usa o "point_direction", mais ou menos assim:

//Determina a direção do inimigo em relação ao jogador
direction = point_direction(x,y,ob_inimigo.x,ob_inimigo.y);
//Move no sentido contrário
speed = -1; //Velocidade desejada (negativa)

Nesse caso também é necessário configurar um alarm pra parar o movimento após alguns steps.
Fuzenrad
Fuzenrad

Games Ranking : Nota A

Notas recebidas : A-A-A-A-B
Data de inscrição : 04/07/2010
Reputação : 46
Número de Mensagens : 1063
Prêmios : [PERGUNTA] Colisão com inimigo Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 1

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

Ir para o topo Ir para baixo

[PERGUNTA] Colisão com inimigo Empty Re: [PERGUNTA] Colisão com inimigo

Mensagem por Riccardoric Seg 23 Fev 2015, 11:18

Eae,
Eu não sei como fazer ele ir pra trás, (quer dizer até consigo), mas eu queria falar para voce que pra fazer tipo quando o inimigo for a direita ou a esquerda do player, pra fazer isso voce pode simplesmente usar esse codigo:
Code:
Usei esse code numa engine de boss que fiz, é so colocar isso no step do inimigo, e colocar entre { } o que quer que aconteca ou simplesmente se precisar usar em outro contexto pega isso :
Código:
x>x e x<x
que é o que vai dizer se estar a direita ou esquerda do x, espero ter ajudado.
Flws flw
Riccardoric
Riccardoric

Data de inscrição : 17/06/2014
Reputação : 34
Número de Mensagens : 206
Prêmios : [PERGUNTA] Colisão com inimigo 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

[PERGUNTA] Colisão com inimigo Empty Re: [PERGUNTA] Colisão com inimigo

Mensagem por Sewer Crawler Seg 23 Fev 2015, 18:13

Código:
move_contact_solid  (-direction, 25)

Não sei porque, mas aqui só deu certo quando inverti os valores das direções de Left e Right
Ficou assim:
Left=0
Right=180
Up e Down funcionaram normal, sem inverter.
Se alguém souber explicar...
Sewer Crawler
Sewer Crawler

Data de inscrição : 08/10/2014
Reputação : 27
Número de Mensagens : 236
Prêmios : [PERGUNTA] Colisão com inimigo 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

[PERGUNTA] Colisão com inimigo Empty Re: [PERGUNTA] Colisão com inimigo

Mensagem por caiquerafinha Seg 23 Fev 2015, 18:49

Testei d todos os modos mais nenhum deu certo estou usando o mouse para o player olhar na direção...e o WASD para mover, e uso para a movimentação o (x = valor)
caiquerafinha
caiquerafinha

Data de inscrição : 12/04/2014
Reputação : 8
Número de Mensagens : 39
Prêmios : [PERGUNTA] Colisão com inimigo Empty

Medalhas x 0 Tutoriais x 1 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

[PERGUNTA] Colisão com inimigo Empty Re: [PERGUNTA] Colisão com inimigo

Mensagem por Sewer Crawler Seg 23 Fev 2015, 18:53

Não tem como vc postar um exemplo do que qer fazer? Talvez possamos achar uma solução.
Sewer Crawler
Sewer Crawler

Data de inscrição : 08/10/2014
Reputação : 27
Número de Mensagens : 236
Prêmios : [PERGUNTA] Colisão com inimigo 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

[PERGUNTA] Colisão com inimigo Empty Re: [PERGUNTA] Colisão com inimigo

Mensagem por Black Studio Seg 23 Fev 2015, 18:55

Oi amor... EAE MANO
Bem, o que você pode fazer é o seguinte:

Primeiramente, você deve fazer um sistema aonde o jogador tem a velocidade limitada enquanto anda, porém se sua velocidade for maior do que a permitida, ele ainda possa ficar acima da velocidade permitida, porém sua velocidade diminui rapidamente até chegar na velocidade maxima. Para dar um efeito de impacto mais realista.
Então basicamente, ao invés de usar:
Código:
if speed>5 then speed=5
Você usa algo como:
Código:

friction=0.5
if speed>5
{
friction=1
}

Agora sim você está pronto para colocar impactos no seu jogador!

Eu recomendo que você coloque uma "Invencibilidade" no jogador, para que ele não perca dano descontroladamente.

E então no evento de colisão com o inimigo:
Código:
if invencivel<=0
{
speed=10 //muda a velocidade do jogador, para fazer o Knockback
direction=point_direction(other.x,other.y,x,y) //Pega a direção usando a posição do inimigo e do player, e muda a direção do jogador, fazendo com que ele seja jogado a direção contraria do inimigo.
invencivel=30 //deixa ele invencivel por 30 frames, não se esqueça de colocar no Step um invencivel-=1, para que ele nao fique invencivel para sempre!
}
Black Studio
Black Studio

Games Ranking : Nota C

Notas recebidas : C + C
Data de inscrição : 19/10/2011
Reputação : 9
Número de Mensagens : 337
Prêmios : [PERGUNTA] Colisão com inimigo Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 1 Bronze x 0

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

Ir para o topo Ir para baixo

[PERGUNTA] Colisão com inimigo Empty Re: [PERGUNTA] Colisão com inimigo

Mensagem por Wendryos Seg 23 Fev 2015, 18:58

Olá caique!

Coloca isso no Colision Event com o objeto :

if direction >= 0 && direction <= 45 {x-=16};
if direction > 45 && direction < 135 {y+=16};
if direction > 135 && direction <= 225 {x+=16};
if direction > 225 && direction < 315 {y-=16};

Tenho quase certeza que funcionara, flw.
Wendryos
Wendryos

Games Ranking : Nota D

Notas recebidas : D
Data de inscrição : 21/04/2014
Reputação : 12
Número de Mensagens : 194
Prêmios : [PERGUNTA] Colisão com inimigo 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 1

Ir para o topo Ir para baixo

[PERGUNTA] Colisão com inimigo Empty Re: [PERGUNTA] Colisão com inimigo

Mensagem por Black Studio Seg 23 Fev 2015, 19:06

Black Horn escreveu:Olá caique!

Coloca isso no Colision Event com o objeto :

if direction >= 0 && direction <= 45 {x-=16};
if direction > 45 && direction < 135 {y+=16};
if direction > 135 && direction <= 225 {x+=16};
if direction > 225 && direction < 315 {y-=16};

Tenho quase certeza que funcionara, flw.

O problema de mudar a posição assim drasticamente, é que o jogador pode ficar preso num solido. Então é recomendado que use as funções de velocidade mesmo.
Além de evitar bugs, deixa o jogo com uma movimentação melhor e mais plastica Happy
Black Studio
Black Studio

Games Ranking : Nota C

Notas recebidas : C + C
Data de inscrição : 19/10/2011
Reputação : 9
Número de Mensagens : 337
Prêmios : [PERGUNTA] Colisão com inimigo Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 1 Bronze x 0

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

Ir para o topo Ir para baixo

[PERGUNTA] Colisão com inimigo Empty Re: [PERGUNTA] Colisão com inimigo

Mensagem por Wendryos Seg 23 Fev 2015, 19:16

Bom ele que usa a opção que mais o convir.
Wendryos
Wendryos

Games Ranking : Nota D

Notas recebidas : D
Data de inscrição : 21/04/2014
Reputação : 12
Número de Mensagens : 194
Prêmios : [PERGUNTA] Colisão com inimigo 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 1

Ir para o topo Ir para baixo

[PERGUNTA] Colisão com inimigo Empty Re: [PERGUNTA] Colisão com inimigo

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