# I need a variable go in a zig-zag

**URL:** <https://forum.makecode.com/t/i-need-a-variable-go-in-a-zig-zag/21509>\
**Category:** Help\
**Created:** [July 26, 2023, 5:01pm UTC](https://forum.makecode.com/t/i-need-a-variable-go-in-a-zig-zag/21509 "2023-07-26T17:01:10Z")\
**Posts on this page:** 14\
**Page:** 1

<div class="post-metadata">

**Author:** ![urassari](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/urassari/32/9535_2.png) [@urassari](https://forum.makecode.com/u/urassari)\
**Post date:** [July 26, 2023, 5:01pm UTC](https://forum.makecode.com/t/i-need-a-variable-go-in-a-zig-zag/21509/1 "2023-07-26T17:01:10Z")

</div>

i have a variable that goes up like a timer, and i need to use it to make another variable that goes like…

![image](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/2X/0/0523d0259e295c405a83283d625ed05402eea80b.png)

in a zig-zag motion. i need it. right now.

---

<div class="post-metadata">

**Author:** ![UnsignedArduino](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/unsignedarduino/32/592_2.png) [@UnsignedArduino](https://forum.makecode.com/u/UnsignedArduino)\
**Post date:** [July 26, 2023, 5:17pm UTC](https://forum.makecode.com/t/i-need-a-variable-go-in-a-zig-zag/21509/2 "2023-07-26T17:17:38Z")

</div>

If you want to do it using only “regular math”:

With a little bit of experimentation, I was able to get this:

 ![image](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/2X/f/f2559199d79755239c671eacac2a639fc3f11484.png)

~~Unfortunately, I can’t find `sin` in blocks~~ `sin` is available in blocks; `pi` is exposed in the `arcade-sprite-utils` extension.

Using a piece-wise function, I was able to get this:

 ![image](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/2X/e/e1a4fd17d7196c235cdf1d5b4586a04969da4b78.png)

It should be easy to implement in blocks, as `mod` is in blocks. (as the `remainder of [num] / [num]`)

Share link to the equations: [https://www.desmos.com/calculator/skuazm3gad](https://www.desmos.com/calculator/skuazm3gad)

---

<div class="post-metadata">

**Author:** ![jwunderl](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/jwunderl/32/5308_2.png) [@jwunderl](https://forum.makecode.com/u/jwunderl)\
**Post date:** [July 26, 2023, 5:18pm UTC](https://forum.makecode.com/t/i-need-a-variable-go-in-a-zig-zag/21509/3 "2023-07-26T17:18:34Z")

</div>

![sinywave](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/2X/b/b9d86a203fc0de25966f150c26a45f57884966b1.gif)

oh boy do we got sine’s

---

<div class="post-metadata">

**Author:** ![urassari](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/urassari/32/9535_2.png) [@urassari](https://forum.makecode.com/u/urassari)\
**Post date:** [July 26, 2023, 9:24pm UTC](https://forum.makecode.com/t/i-need-a-variable-go-in-a-zig-zag/21509/4 "2023-07-26T21:24:58Z")

</div>

@UnsignedArduino and how do I turn this into blocks?

---

<div class="post-metadata">

**Author:** ![richard](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/richard/32/5417_2.png) [@richard](https://forum.makecode.com/u/richard)\
**Post date:** [July 26, 2023, 9:35pm UTC](https://forum.makecode.com/t/i-need-a-variable-go-in-a-zig-zag/21509/5 "2023-07-26T21:35:04Z")

</div>

@urassari like this?

> **[sine-wave-example](https://arcade.makecode.com/73570-83824-44530-76651)**
>
> Made with ❤️ in Microsoft MakeCode Arcade.

---

<div class="post-metadata">

**Author:** ![richard](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/richard/32/5417_2.png) [@richard](https://forum.makecode.com/u/richard)\
**Post date:** [July 26, 2023, 9:44pm UTC](https://forum.makecode.com/t/i-need-a-variable-go-in-a-zig-zag/21509/6 "2023-07-26T21:44:45Z")

</div>

or if you really want it to be linear:

> **[linear-wave-example](https://arcade.makecode.com/78432-67499-66089-64317)**
>
> Made with ❤️ in Microsoft MakeCode Arcade.

---

<div class="post-metadata">

**Author:** ![UnsignedArduino](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/unsignedarduino/32/592_2.png) [@UnsignedArduino](https://forum.makecode.com/u/UnsignedArduino)\
**Post date:** [July 26, 2023, 9:46pm UTC](https://forum.makecode.com/t/i-need-a-variable-go-in-a-zig-zag/21509/7 "2023-07-26T21:46:42Z")

</div>

Here’s what I did:

Had to modify the equations a bit to not use negative mod: (still exactly the same output) (as it’s funky in JavaScript)

> **[Desmos | Graphing Calculator](https://www.desmos.com/calculator/oluugmjqve)**
>
> Explore math with our beautiful, free online graphing calculator. Graph functions, plot points, visualize algebraic equations, add sliders, animate graphs, and more.

 ![image](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/2X/0/0095f49747be62191f39bc1b42f02b637f43d405.png)

> **[zig zag graph](https://arcade.makecode.com/67751-56935-60050-45608)**
>
> Made with ❤️ in Microsoft MakeCode Arcade.

---

<div class="post-metadata">

**Author:** ![urassari](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/urassari/32/9535_2.png) [@urassari](https://forum.makecode.com/u/urassari)\
**Post date:** [July 26, 2023, 11:20pm UTC](https://forum.makecode.com/t/i-need-a-variable-go-in-a-zig-zag/21509/8 "2023-07-26T23:20:36Z")

</div>

@UnsignedArduino I’m so tired of my brain trying to understand how am I going to implement this to my game. [https://arcade.makecode.com/S43710-98942-32379-76387](https://arcade.makecode.com/S43710-98942-32379-76387) here is the game. Just… Fix it. Because I can’t.

---

<div class="post-metadata">

**Author:** ![UnsignedArduino](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/unsignedarduino/32/592_2.png) [@UnsignedArduino](https://forum.makecode.com/u/UnsignedArduino)\
**Post date:** [July 27, 2023, 12:24am UTC](https://forum.makecode.com/t/i-need-a-variable-go-in-a-zig-zag/21509/9 "2023-07-27T00:24:53Z")

</div>

What have you tried? I don’t see an obvious place to put it.

---

<div class="post-metadata">

**Author:** ![urassari](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/urassari/32/9535_2.png) [@urassari](https://forum.makecode.com/u/urassari)\
**Post date:** [July 27, 2023, 4:13pm UTC](https://forum.makecode.com/t/i-need-a-variable-go-in-a-zig-zag/21509/10 "2023-07-27T16:13:40Z")

</div>

i fixed it.

---

<div class="post-metadata">

**Author:** ![YuHayate](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/yuhayate/32/8275_2.png) [@YuHayate](https://forum.makecode.com/u/YuHayate)\
**Post date:** [July 27, 2023, 5:39pm UTC](https://forum.makecode.com/t/i-need-a-variable-go-in-a-zig-zag/21509/11 "2023-07-27T17:39:41Z")

</div>

here set the variable’s y to `2 *(((y1 / 2) * (x / x1 % 2)) - (y1 * (Math.floor(x/x1) % 2))) / (-1) ** Math.floor(x / x1); `  
were x = time since game start / speed  
x1 is the horizontal distance between peek’s  
y1 is the height the peek’s

 ![image](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/2X/e/e9276f92f3697246d62abd1f733079fa7bc20958.png)  
i will try to make this formula simpler

---

<div class="post-metadata">

**Author:** ![YuHayate](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/yuhayate/32/8275_2.png) [@YuHayate](https://forum.makecode.com/u/YuHayate)\
**Post date:** [July 27, 2023, 6:25pm UTC](https://forum.makecode.com/t/i-need-a-variable-go-in-a-zig-zag/21509/12 "2023-07-27T18:25:06Z")

</div>

i did it here is the simpler version

```auto
y = (y1 / x1) * (((-1) ** floor(x / x1) * x) % x1)

```

 ![image](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/2X/2/2bbebd3b7f7bef3c6bc2e4cfd6224c16b3ab8b9d.png)

---

<div class="post-metadata">

**Author:** ![YuHayate](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/yuhayate/32/8275_2.png) [@YuHayate](https://forum.makecode.com/u/YuHayate)\
**Post date:** [July 27, 2023, 6:25pm UTC](https://forum.makecode.com/t/i-need-a-variable-go-in-a-zig-zag/21509/13 "2023-07-27T18:25:10Z")

</div>

in total i made 3 versions that work

---

<div class="post-metadata">

**Author:** ![Sarge](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/sarge/32/19590_2.png) [@Sarge](https://forum.makecode.com/u/Sarge)\
**Post date:** [August 21, 2023, 5:04pm UTC](https://forum.makecode.com/t/i-need-a-variable-go-in-a-zig-zag/21509/14 "2023-08-21T17:04:40Z")

</div>

\> asks for help  
\> can’t figure out the equasions  
\> fixes issue on his own, without any explanation  
\> refuses to elaborate  
\> leaves

 ![image](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/2X/4/4657b3f95192ca2ddd01b573a68d11c1222acd44.jpeg)
