Eu estou usando a função draw_sprite_ext() para desenhar ela. Como eu reflito essa medida em graus em x e y da seta?
Lembrando que tem que ela muda de posição sempre que o jogador muda a posição do dedo.
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. |
Seta seguindo circunferência Tópico resolvido
- Mysterious Stranger
- Artista
- Reações: 0
- Mensagens: 62
- Localização: BH
-
- Contato:
Seta seguindo circunferência
Boa tarde, galera.
Eu estou tentando fazer algo, mas não estou dando conta de descobrir como fazer.
Vejam a imagem abaixo:
Essa setinha na frente do arqueiro mostra a direção e a força que a flecha vai ter quando for lançada. Eu queria também que a seta se colocasse no rumo da direção que ela será lançada. Entenderam?
Por exemplo. A manchinha vermelha é a posição onde o dedo está. Digamos que ela esteja a 215 graus. Eu quero que a seta se coloque no oposto disso. Ela estaria 180 graus disso. A 35 graus. Assim o jogador teria uma noção melhor para onde vai a flecha.
Eu pensei assim: é como se o dedo do jogador estivesse na ponta de uma circunferência e a seta estivesse a meia circunferência.
Detalhe: o raio é fixo e sempre seria ali nas mãos do arqueiro.
Espero ter ficado claro. Tem um jeito de posicionar a seta desta maneira?
Eu estou tentando fazer algo, mas não estou dando conta de descobrir como fazer.
Vejam a imagem abaixo:
Essa setinha na frente do arqueiro mostra a direção e a força que a flecha vai ter quando for lançada. Eu queria também que a seta se colocasse no rumo da direção que ela será lançada. Entenderam?
Por exemplo. A manchinha vermelha é a posição onde o dedo está. Digamos que ela esteja a 215 graus. Eu quero que a seta se coloque no oposto disso. Ela estaria 180 graus disso. A 35 graus. Assim o jogador teria uma noção melhor para onde vai a flecha.
Eu pensei assim: é como se o dedo do jogador estivesse na ponta de uma circunferência e a seta estivesse a meia circunferência.
Detalhe: o raio é fixo e sempre seria ali nas mãos do arqueiro.
Espero ter ficado claro. Tem um jeito de posicionar a seta desta maneira?
- Chuaschinai
- Colaborador
- Reações: 6
- Mensagens: 198
-
Re: Seta seguindo circunferência
Basicamente seria só adicionar +180, para que ficasse do lado oposto.
- Mysterious Stranger
- Artista
- Reações: 0
- Mensagens: 62
- Localização: BH
-
- Contato:
Re: Seta seguindo circunferência
Sim, mas como eu desenho essa seta na tela para ela assumir essa posição de +180?grononmc escreveu:Basicamente seria só adicionar +180, para que ficasse do lado oposto.
Eu estou usando a função draw_sprite_ext() para desenhar ela. Como eu reflito essa medida em graus em x e y da seta?
Lembrando que tem que ela muda de posição sempre que o jogador muda a posição do dedo.
- Chuaschinai
- Colaborador
- Reações: 6
- Mensagens: 198
-
Re: Seta seguindo circunferência
Usa o lengthdir, deve funcionar.
Assim
Assim
Código: Selecionar todos
draw_sprite_ext(
sprite_index,
image_index,
x + lengthdir_x(distancia, direção + 180),
y + lengthdir_y(distancia, direção + 180),
1, 1, 0, -1, 1
);
- Mysterious Stranger
- Artista
- Reações: 0
- Mensagens: 62
- Localização: BH
-
- Contato:
Re: Seta seguindo circunferência Tópico resolvido
Consegui!!!
Pensei q se o caso era de espelhamento das coordenadas, era só eu espelhar as novas coordenadas levando em consideração a posição de mouse_x e mouse_y:
Foi mais fácil q pensei. Sou péssimo para encontrar soluções matemáticas, mas pelo caminho da lógica eu costumo chegar lá rsrsrs.
Valeu pelo socorro, grononmc
Pensei q se o caso era de espelhamento das coordenadas, era só eu espelhar as novas coordenadas levando em consideração a posição de mouse_x e mouse_y:
Código: Selecionar todos
// sendo x a posição x do raio
// sendo y-12 a posição y do raio
var xradius = (x - mouse_x) + x;
var yradius = ((y-12) - mouse_y) + (y-12);
// agora desenha a seta
draw_sprite_ext( spr_arrow_direction, image, xradius, yradius, 1, 1, vdirection, cor, 1 );
Foi mais fácil q pensei. Sou péssimo para encontrar soluções matemáticas, mas pelo caminho da lógica eu costumo chegar lá rsrsrs.
Valeu pelo socorro, grononmc
Quem está online
Usuários navegando neste fórum: Nenhum usuário registrado e 2 visitantes