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
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
- ValdeciVieira
- Moderador
- Reações: 8
- Mensagens: 122
- Localização: Rio de Janeiro, Brasil
Re: colisao nao funciona
Você está movendo o jogador antes de verificar por uma colisão, mova o para o fim da region colisao, também adicione o código equivalente à colisão vertical para ter colisão vertical.
Código: Selecionar todos
x+=velh
y+=velv
Quem está online
Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante