# A couple of questions about extensions

**URL:** <https://forum.makecode.com/t/a-couple-of-questions-about-extensions/45999>\
**Category:** Help\
**Created:** [September 20, 2026, 8:32pm UTC](https://forum.makecode.com/t/a-couple-of-questions-about-extensions/45999 "2026-09-20T20:32:01Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![Sword\_Studios](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/sword_studios/32/35216_2.png) [@Sword\_Studios](https://forum.makecode.com/u/Sword_Studios)\
**Post date:** [September 20, 2026, 8:32pm UTC](https://forum.makecode.com/t/a-couple-of-questions-about-extensions/45999/1 "2026-09-20T20:32:01Z")

</div>

So I have a few questions about extensions.

1. How do you change what the icon for the extension looks like?
2. How do you make a boolean block?
3. How do you make a dropdown?

Not related to extensions but how do I make the volume go lower like generally? I tried

```auto
for (let index = 0; index < 4; index++) {

    volume += 1

    music.setVolume(volume)

    pause(100)

}

```

but it wouldn’t work. Any tips would be much appreciated!  
Oh and I would include a share link but my wifi’s wonky right now

---

<div class="post-metadata">

**Author:** ![TheEarth](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/theearth/32/34579_2.png) [@TheEarth](https://forum.makecode.com/u/TheEarth)\
**Post date:** [September 21, 2026, 6:12am UTC](https://forum.makecode.com/t/a-couple-of-questions-about-extensions/45999/2 "2026-09-21T06:12:00Z")

</div>

1 there was a website and you have to use icon=

2 Use a return value and return a Boolean

3 Use an enum

---

<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:** [September 21, 2026, 6:18am UTC](https://forum.makecode.com/t/a-couple-of-questions-about-extensions/45999/3 "2026-09-21T06:18:19Z")

</div>

I’m sorry I can’t be more helpful specifically but maybe [https://makecode.com/playground](https://makecode.com/playground) can help with your block definitions

---

<div class="post-metadata">

**Author:** ![CodaKnight](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/codaknight/32/33491_2.png) [@CodaKnight](https://forum.makecode.com/u/CodaKnight)\
**Post date:** [September 21, 2026, 6:19am UTC](https://forum.makecode.com/t/a-couple-of-questions-about-extensions/45999/4 "2026-09-21T06:19:28Z")

</div>

Easy:

1:

1. Go to this website: [Font Awesome Search](https://fontawesome.com/search)
2. Then, pick an icon and copy its unicode id (Ex: f2bd)  
(NOTE: Must be I’m pretty sure v4 or less for the icon to be used)
3. Then, at the top of a namespace of the extension, use **//%icon=** and after the equal sign, put **\u** and the **unicode id**

2:

It depends on what you mean by a “boolean block”  
If you want a regular **true or false statement** , you’ll just have to set the parameter to use a **boolean take-in**.

If you want it to say something like **on/off** , you need to use a special block annotation. Check out the [MakeCode PlayGround](https://makecode.com/playground) to see on how to do this and other useful extension tips

3:

This also depends on what you mean by a “dropdown.” I can’t really give you enough information since you need to specify what the dropdown should do; e.g., show something like picking a state, showing the sprite kind dropdown, an enum dropdown, etc.

4:

Also, your code does work, but if you’re playing like a song, you have to manually restart the song to hear the difference I’m pretty sure.

---

<div class="post-metadata">

**Author:** ![Sword\_Studios](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/sword_studios/32/35216_2.png) [@Sword\_Studios](https://forum.makecode.com/u/Sword_Studios)\
**Post date:** [September 21, 2026, 10:14pm UTC](https://forum.makecode.com/t/a-couple-of-questions-about-extensions/45999/5 "2026-09-21T22:14:20Z")

</div>

Thanks so much you guys

@TheEarth @CodaKnight @UnsignedArduino

---

<div class="post-metadata">

**Author:** ![Sword\_Studios](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/sword_studios/32/35216_2.png) [@Sword\_Studios](https://forum.makecode.com/u/Sword_Studios)\
**Post date:** [October 1, 2026, 3:39am UTC](https://forum.makecode.com/t/a-couple-of-questions-about-extensions/45999/6 "2026-10-01T03:39:05Z")

</div>

Also how to create an image? I tried `i:Image` but as a result I got:

![image](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/3X/0/9/09fbdfb28515cb65cf0f6959edd28e210c8b8517.png)

---

<div class="post-metadata">

**Author:** ![TheEarth](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/theearth/32/34579_2.png) [@TheEarth](https://forum.makecode.com/u/TheEarth)\
**Post date:** [October 2, 2026, 1:48am UTC](https://forum.makecode.com/t/a-couple-of-questions-about-extensions/45999/7 "2026-10-02T01:48:51Z")

</div>

use //% image.shadow=“screen\_image\_picker” replace image with your param for the image
