Conectar-se
Quem está conectado
26 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 26 Visitantes

Nenhum

Ver toda a lista


Compartilhe
Ir em baixo
XPurplex2
Ranking : Sem avaliações
Data de inscrição : 07/01/2019
Número de Mensagens : 2
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0
Ver perfil do usuário

Colisão

em Seg 07 Jan 2019, 01:39
bom, não sei bem especificar isso mas, quando voce pula em alguma parede, o personagem fica preso, e se voce continuar pulando, ele vai escalando, já tentei colocar mascara de colisão mas não ajudou em nada.
Alex FC
Ranking : Nota A
Notas recebidas : B A
Data de inscrição : 20/12/2008
Número de Mensagens : 2518
Insígnias de JAM :

Insignia 1x 1 Insignia 2x 0 Insignia 3x 0
Reputação : 177

Prêmios
   : 2
   : 1
   : 1
Ver perfil do usuáriohttp://redscreensoft.blogspot.com

Re: Colisão

em Seg 07 Jan 2019, 11:53
Tem vários pontos a considerar pra isso acontecer:

- Dimensões da sprite;
- Velocidade;
- Checagem de colisão em posição futura;

A combinação desses 3 itens interfere no movimento.

Na minha assinatura tem link pra tutoriais de movimentação e colisão (Em texto).

Abra o spoiler abaixo e veja um exemplo de código de plataforma básico. (lembre-se de marcar os blocos com a opção solid)

Abraços

Spoiler:
CREATE:

Código:
xspeed = 0;
yspeed = 0;


STEP:

Código:
// Pulo
if keyboard_check_pressed(vk_up) and !place_free(x, y + 4)
{
    yspeed = - 15;
}

// Esquerda-Direita
if keyboard_check(vk_right) xspeed = 5;
else if keyboard_check(vk_left) xspeed = -5;
else xspeed = 0;

// Gravidade
yspeed += 1;

// Limita velocidade de queda
if yspeed > 10 yspeed = 10;

// Movimento horizontal
repeat(abs(xspeed))
{
    if place_free(x + sign(xspeed), y) x += sign(xspeed);
}

// Movimento vertical
repeat(abs(yspeed))
{
    if place_free(x, y + sign(yspeed)) y += sign(yspeed)  else yspeed = 0;
}

_________________

Começando com o Game Maker? Olhou para assinatura certa!



Tutoriais e vídeo aulas de programação! Clique no Banner e confira!
Voltar ao Topo
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum