# Como fazer o inimigo atirar no player?

**URL:** <https://forum.makecode.com/t/como-fazer-o-inimigo-atirar-no-player/40028>\
**Category:** Collaboration\
**Created:** [October 27, 2025, 5:58pm UTC](https://forum.makecode.com/t/como-fazer-o-inimigo-atirar-no-player/40028 "2025-10-27T17:58:18Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![JeffersonHidekiY](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/jeffersonhidekiy/32/25896_2.png) [@JeffersonHidekiY](https://forum.makecode.com/u/JeffersonHidekiY)\
**Post date:** [October 27, 2025, 5:58pm UTC](https://forum.makecode.com/t/como-fazer-o-inimigo-atirar-no-player/40028/1 "2025-10-27T17:58:18Z")

</div>

Olá ! Sou novato no makecode, e gostaria de saber como fazer o inimigo atirar no player. Será que alguém pode me ajudar?

---

<div class="post-metadata">

**Author:** ![Bilangus](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/bilangus/32/33219_2.png) [@Bilangus](https://forum.makecode.com/u/Bilangus)\
**Post date:** [October 28, 2025, 2:13am UTC](https://forum.makecode.com/t/como-fazer-o-inimigo-atirar-no-player/40028/2 "2025-10-28T02:13:08Z")

</div>

Uma solução simples usa essa extensão:

```auto
jwunderl/arcade-sprite-util

```

Simplesmente coloque o texto aqui para baixar a extensão:

 ![1000079238](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/3X/3/8/38cb8cbab040312676dcc90837fcf1e34c6d8a68.jpeg)

Na taba da extensão, encontre esses blocos:

 ![1000079240](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/3X/b/1/b190617208f9911f94c38d59116974ea97346e05.jpeg)

(Bloco 1: posicione um sprite com distância e ângulo de um outro sprite)

(Bloco 2: define a velocidade e ângulo de um sprite)

O código:

 ![1000079239](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/3X/5/9/5987f8b859f5d1ed6b5e3ce672beaa69e74746fd.jpeg)

A parte mais importante é o bloco roxo. A cada segundo, cria um tiro que é colocado na posição do inimigo. O tiro tem sua velocidade definida e seu ângulo é definido como o ângulo entre o jogador e o inimigo, fazendo o inimigo atirar na direção do jogador.

Isso usa esse bloco:

 ![1000079241](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/3X/9/5/95ce602faa04bc5890d615210fa3da148c468b82.jpeg)

Projeto de exemplo com o código:

> **[teste](https://arcade.makecode.com/76638-10651-36915-64165)**
>
> Made with ❤️ in Microsoft MakeCode Arcade.

---

<div class="post-metadata">

**Author:** ![Danny\_Devention](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/danny_devention/32/30134_2.png) [@Danny\_Devention](https://forum.makecode.com/u/Danny_Devention)\
**Post date:** [October 28, 2025, 2:18am UTC](https://forum.makecode.com/t/como-fazer-o-inimigo-atirar-no-player/40028/3 "2025-10-28T02:18:08Z")

</div>

Olá @JeffersonHidekiY A extensão abaixo pode te ajudar com isso. Para usá-la, você precisa criar um novo projeto no site do Makecode, clicar em extensões e inserir isso lá.

jwunderl/arcade-sprite-util

Aqui está um exemplo de como usá-lo. Abra o link e clique em editar projeto para ver como funciona.

> [@How to make enemy projectiles shoot in the direction of the player?](https://forum.makecode.com/t/how-to-make-enemy-projectiles-shoot-in-the-direction-of-the-player/30087/3):
>
> [https://arcade.makecode.com/S15642-33205-19670-99703](https://arcade.makecode.com/S15642-33205-19670-99703)

---

<div class="post-metadata">

**Author:** ![Bifrosty](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/bifrosty/32/24819_2.png) [@Bifrosty](https://forum.makecode.com/u/Bifrosty)\
**Post date:** [October 28, 2025, 2:26am UTC](https://forum.makecode.com/t/como-fazer-o-inimigo-atirar-no-player/40028/4 "2025-10-28T02:26:59Z")

</div>

!Bem-vindo ao makecode!  
Para calcular o ângulo do jogador em relação ao inimigo você deve usar o “atan2”.  
“atan2” está abaixo da raiz quadrada

 ![Screenshot 2025-10-27 12.36.37 PM](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/3X/4/8/485a7453c7492a7f9817713dd4b096bfdc4ef8fd.png)  
 ![image](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/3X/2/4/24130d6a611d1dddf357506a6d1a1352c6157eac.png)  
Em seguida, subtraia a posição do atirador da posição do alvo para x e y, respectivamente. Y vem primeiro.  
 ![image](https://us1.discourse-cdn.com/flex020/uploads/makecode/optimized/3X/0/b/0be59d72902355ce428190f5fbb3ad2689c8f9ef_2_690x83.png)  
Agora, anexe essas velocidades a um projétil. Use “sin” e “cos” para dividir o ângulo entre x e y. Essas funções também são encontradas no bloco de raiz quadrada. Por fim, multiplique seus resultados pela velocidade (em pixels por segundo) (usei 100)  
 ![image](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/3X/f/5/f53b11d3592a2c67f0cf65d353e09917225fc45b.png)  
Aqui está meu exemplo:

> **[tiroInimigo](https://arcade.makecode.com/S39828-66107-98956-62607)**
>
> Hecho con ❤️ en Microsoft MakeCode Arcade.

!Espero que isso ajude!  
(I hope Google translate did your language justice)

---

<div class="post-metadata">

**Author:** ![JeffersonHidekiY](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/jeffersonhidekiy/32/25896_2.png) [@JeffersonHidekiY](https://forum.makecode.com/u/JeffersonHidekiY)\
**Post date:** [October 29, 2025, 10:54pm UTC](https://forum.makecode.com/t/como-fazer-o-inimigo-atirar-no-player/40028/5 "2025-10-29T22:54:15Z")

</div>

Muito obrigado 😀 🥰 !! Ajudou muito 🤩🤩🤩 !! Espero contar com a sua ajuda novamente !!!

---

<div class="post-metadata">

**Author:** ![JeffersonHidekiY](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/jeffersonhidekiy/32/25896_2.png) [@JeffersonHidekiY](https://forum.makecode.com/u/JeffersonHidekiY)\
**Post date:** [October 29, 2025, 10:54pm UTC](https://forum.makecode.com/t/como-fazer-o-inimigo-atirar-no-player/40028/6 "2025-10-29T22:54:17Z")

</div>

Muito obrigado !!! Ajudou bastante 🤩🤩🤩🤩 ! Espero contar com a sua ajuda sempre !!!
