Opa, eu to fazendo um jogo top down com movimentos em 4 direções, movimentado apenas nas setas do teclado, mas como sou iniciante, eu não sei como fazer o tiro sair na direção em que o objeto ta virado.
Alguem me ajuda por favor.
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. |
Direção do tiro em top down
Re: Direção do tiro em top down
Existem várias formas de fazer isso, veja que precisamos saber qual o tipo de movimento você está usando.
- Você aperta para a direita e o personagem troca a sprite para a direita?
Se for assim, você pode usar no evento que você quer atirar (botão esquerdo do mouse como exemplo):Código: Selecionar todos
var tiro = instance_create(x,y,objTiro); //Cria o objeto tiro switch(sprite_index) //Aqui criamos um interruptor que vai selecionar qual sprite o personagem está { case sprPersonagemDireita: //Se o personagem estiver apontando para a direita tiro.hspeed = 5; //Define que o tiro deve ir para a direita break; case sprPersonagemEsquerda: tiro.hspeed = -5; break; case sprPersonagemCima: tiro.vspeed = -5; break; case sprPersonagemBaixo: tiro.vspeed = 5; break; default: show_message("A sprite do personagem não é nenhuma das citadas acima."); with(tiro) { instance_destroy(); } break; }
- Você aperta para a direita e a rotação da imagem se torna 0?
Caso o image_angle do personagem vire, e você não troque as sprites, no evento que você quer atirar (botão esquerdo do mouse como exemplo):Código: Selecionar todos
var tiro = instance_create(x,y,objTiro); //Cria o objeto tiro tiro.direction = image_angle; //Define que a direção do tiro é a mesma do angulo do personagem tiro.speed = 5; //Define a velocidade do tiro. tiro.image_angle = image_angle; //Define que o angulo da imagem do tiro deve ser igual do personagem (no caso dos tiros em forma de gota por exemplo)
Quem está online
Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante