Obrigado por visitar a The Game Makers Brasil 😁 Use o fórum de Dúvidas para fazer perguntas. Se está em busca de aprender dê uma olhada nos tutoriais.

colisao nao funciona

Perguntas? A comunidade te ajuda a resolver.
Avatar do usuário
BrNaVeia
Novato
Novato
Reações: 0
Mensagens: 2

colisao nao funciona

Mensagem por BrNaVeia » Sex Abr 26, 2024 3:37 pm

Opa estou com um código que criei para um roguelike shooter, mas a colisão não funciona :[ alguem poderia me ajudar

----------------------------------------------------------------------------------------------------------------------------------------------------

aba create

velc = 4.0
move_dir = 0
velh = 0
velv = 0



aba step

#region var

var _cima = keyboard_check(ord("W")) || keyboard_check(vk_up)
var _baixo = keyboard_check(ord("S")) || keyboard_check(vk_down)
var _esquerda = keyboard_check(ord("D")) || keyboard_check(vk_right)
var _direita = keyboard_check(ord("A")) || keyboard_check(vk_left)
var _teclas = _esquerda - _direita != 0 || _cima - _baixo != 0
#endregion

#region move

move_dir = point_direction(0,0,_esquerda - _direita,_baixo - _cima)

velh = lengthdir_x(velc * _teclas,move_dir)
velv = lengthdir_y(velc * _teclas,move_dir)

x+=velh
y+=velv

#endregion

#region colisao

if place_meeting(x+velh,y,obj_parede){

while !place_meeting(x+sign(velh),y,obj_parede){
x+=sign(velh)
}
velh=0
}

#endregion

#region tiro
#region cursor

cursor_sprite = spr_mira
window_set_cursor(cr_none)

#endregion


#endregion

Avatar do usuário
ValdeciVieira
Moderador
Moderador
Reações: 8
Mensagens: 122
Localização: Rio de Janeiro, Brasil

Re: colisao nao funciona

Mensagem por ValdeciVieira » Sáb Mai 11, 2024 11:12 pm

Você está movendo o jogador antes de verificar por uma colisão, mova o

Código: Selecionar todos

x+=velh
y+=velv
para o fim da region colisao, também adicione o código equivalente à colisão vertical para ter colisão vertical.

Responder

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 0 visitante