# How to Make a Sprite Bounce off Another Sprite When in Contact?

**URL:** <https://forum.makecode.com/t/how-to-make-a-sprite-bounce-off-another-sprite-when-in-contact/43396>\
**Category:** Help\
**Tags:** game, graphics-and-math, make, extension\
**Created:** [April 17, 2026, 9:14pm UTC](https://forum.makecode.com/t/how-to-make-a-sprite-bounce-off-another-sprite-when-in-contact/43396 "2026-04-17T21:14:56Z")\
**Posts on this page:** 11\
**Page:** 1

<div class="post-metadata">

**Author:** ![RoboVacDev](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/robovacdev/32/29619_2.png) [@RoboVacDev](https://forum.makecode.com/u/RoboVacDev)\
**Post date:** [April 17, 2026, 9:14pm UTC](https://forum.makecode.com/t/how-to-make-a-sprite-bounce-off-another-sprite-when-in-contact/43396/1 "2026-04-17T21:14:56Z")

</div>

I’m making a football game for the game jam, and I want the football to, like, bounce off the other sprite that’s touching it. Does anyone know how to do this?

> **[Bird Run: Football Renegade](https://arcade.makecode.com/S77460-36466-69937-65229)**
>
> uhh a game i guess

Please answer!  
Thx

---

<div class="post-metadata">

**Author:** ![VoxelMaster64](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/voxelmaster64/32/32075_2.png) [@VoxelMaster64](https://forum.makecode.com/u/VoxelMaster64)\
**Post date:** [April 18, 2026, 2:18am UTC](https://forum.makecode.com/t/how-to-make-a-sprite-bounce-off-another-sprite-when-in-contact/43396/2 "2026-04-18T02:18:58Z")

</div>

depends whether there’s a block to tell what face of the sprite is being hit

---

<div class="post-metadata">

**Author:** ![AlexTheGoober63](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/alexthegoober63/32/35080_2.png) [@AlexTheGoober63](https://forum.makecode.com/u/AlexTheGoober63)\
**Post date:** [April 18, 2026, 2:24am UTC](https://forum.makecode.com/t/how-to-make-a-sprite-bounce-off-another-sprite-when-in-contact/43396/3 "2026-04-18T02:24:04Z")

</div>

make it so that the velocity of the sprite goes left or right when the sprite touches the ball or sumthing lol

---

<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:** [April 18, 2026, 2:34am UTC](https://forum.makecode.com/t/how-to-make-a-sprite-bounce-off-another-sprite-when-in-contact/43396/4 "2026-04-18T02:34:16Z")

</div>

How i’d go about it is using jwunderl/arcade-sprite-util to set the balls velocity at the angle from the player who touched it. However, your projects has extensions incompatible with sprite utils, so i don’t know. Maybe see if the incompatible extensions are actually used, or try a different approach.

---

<div class="post-metadata">

**Author:** ![YamJam](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/yamjam/32/29681_2.png) [@YamJam](https://forum.makecode.com/u/YamJam)\
**Post date:** [April 18, 2026, 2:52am UTC](https://forum.makecode.com/t/how-to-make-a-sprite-bounce-off-another-sprite-when-in-contact/43396/5 "2026-04-18T02:52:12Z")

</div>

This might not be much help, but you can look at the physics of the ball in this wallball game I made for my friends

> **[Wallball v. 1.3.2 SCORE HOARD](https://arcade.makecode.com/S98938-89018-20386-03750)**
>
> Press a to jump
> B to hit hard
> Ball will slow down
> Menu for shop
> C for character inv
> B for ball inv
> V for event menu
> Yeah I kinda quit since I dont know what to add and its too laggy

I think you just multiply to velocity by -1 to switch it from negative to positive and the other way around.

---

<div class="post-metadata">

**Author:** ![CodingGrizzlyBear](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/codinggrizzlybear/32/14838_2.png) [@CodingGrizzlyBear](https://forum.makecode.com/u/CodingGrizzlyBear)\
**Post date:** [April 18, 2026, 2:57am UTC](https://forum.makecode.com/t/how-to-make-a-sprite-bounce-off-another-sprite-when-in-contact/43396/6 "2026-04-18T02:57:41Z")

</div>

> [@Sprite Walls Engine – Extension](https://forum.makecode.com/t/sprite-walls-engine-extension/33627):
>
> Sprite Walls Engine – Extension Sprite Walls Engine is an extension that allows you to use sprites as walls instead of tiles. It also includes a pushable sprite block, that lets you, well push sprites. Features Sprite-Based Collision – Use sprites as solid walls. Pushable Objects – Create objects that can be pushed by the player or other sprites. Versatile Sprite Interaction – Works with both individual sprites and SpriteKind groups. How It Works This extension uses AABB (Axis-Aligned Boun…

---

<div class="post-metadata">

**Author:** ![RoboVacDev](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/robovacdev/32/29619_2.png) [@RoboVacDev](https://forum.makecode.com/u/RoboVacDev)\
**Post date:** [April 29, 2026, 11:24pm UTC](https://forum.makecode.com/t/how-to-make-a-sprite-bounce-off-another-sprite-when-in-contact/43396/7 "2026-04-29T23:24:23Z")

</div>

Show me how you did it

---

<div class="post-metadata">

**Author:** ![RoboVacDev](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/robovacdev/32/29619_2.png) [@RoboVacDev](https://forum.makecode.com/u/RoboVacDev)\
**Post date:** [April 29, 2026, 11:24pm UTC](https://forum.makecode.com/t/how-to-make-a-sprite-bounce-off-another-sprite-when-in-contact/43396/8 "2026-04-29T23:24:25Z")

</div>

That just takes away half of my code!!

---

<div class="post-metadata">

**Author:** ![YamJam](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/yamjam/32/29681_2.png) [@YamJam](https://forum.makecode.com/u/YamJam)\
**Post date:** [April 29, 2026, 11:29pm UTC](https://forum.makecode.com/t/how-to-make-a-sprite-bounce-off-another-sprite-when-in-contact/43396/9 "2026-04-29T23:29:02Z")

</div>

uhhhhhhh its rather long but heres the most important part:

 ![image](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/3X/2/9/29f406374b8ce56e8a14aa1bfaa3094692f4d924.png)  
the pick random is just to make the ball faster on contact, so the real magic is just the (ball) vx \* -1

---

<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:** [April 30, 2026, 2:12am UTC](https://forum.makecode.com/t/how-to-make-a-sprite-bounce-off-another-sprite-when-in-contact/43396/10 "2026-04-30T02:12:34Z")

</div>

I’m afraid that i no longer have a solution…

---

<div class="post-metadata">

**Author:** ![VoxelMaster64](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/voxelmaster64/32/32075_2.png) [@VoxelMaster64](https://forum.makecode.com/u/VoxelMaster64)\
**Post date:** [May 1, 2026, 7:40pm UTC](https://forum.makecode.com/t/how-to-make-a-sprite-bounce-off-another-sprite-when-in-contact/43396/11 "2026-05-01T19:40:34Z")

</div>

you could try to find the definition of the block in the github repository, and copy/paste it into your project
