# \[Block Menu\] Icons & multi-column Edition

**URL:** https://forum.makecode.com/t/block-menu-icons-multi-column-edition/13286
**Category:** Arcade
**Created:** [April 26, 2022, 10:10pm UTC](https://forum.makecode.com/t/block-menu-icons-multi-column-edition/13286 "2022-04-26T22:10:10Z")
**Posts on this page:** 16
**Page:** 1

<div class="post-metadata">

### Author: ![AqeeAqee](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/aqeeaqee/32/5424_2.png) [@AqeeAqee](https://forum.makecode.com/u/AqeeAqee)
#### Post date: [April 26, 2022, 10:10pm UTC](https://forum.makecode.com/t/block-menu-icons-multi-column-edition/13286/1 "2022-04-26T22:10:10Z")

</div>

I need a multi-column grid and icons menu for my next WFC demo(choose tile manually instead of random)  
so based on @richard 's Block Menu, I added these features.  
Shared, in case anyone needed.

> **[block-menu-icon](https://arcade.makecode.com/11158-18248-69309-63621)**
>
> Made with ❤️ in Microsoft MakeCode Arcade.

As always, any freeback are welcome and appreciated.

---

<div class="post-metadata">

### Author: ![jackal](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/jackal/32/19506_2.png) [@jackal](https://forum.makecode.com/u/jackal)
#### Post date: [April 27, 2022, 5:18pm UTC](https://forum.makecode.com/t/block-menu-icons-multi-column-edition/13286/2 "2022-04-27T17:18:39Z")

</div>

Yo. Dude. THIS IS **AWESOME!**

---

<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: [April 27, 2022, 5:21pm UTC](https://forum.makecode.com/t/block-menu-icons-multi-column-edition/13286/3 "2022-04-27T17:21:00Z")

</div>

Will you make this into a blocks extension? Would love to add this to my list!

---

<div class="post-metadata">

### Author: ![Kiwiphoenix364](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/kiwiphoenix364/32/14368_2.png) [@Kiwiphoenix364](https://forum.makecode.com/u/Kiwiphoenix364)
#### Post date: [April 27, 2022, 8:46pm UTC](https://forum.makecode.com/t/block-menu-icons-multi-column-edition/13286/4 "2022-04-27T20:46:15Z")

</div>

THAT’S AWESOME! Good job! The only thing is that when you go all the way down, it loops to the top, but it also goes left (I think most menus go to the right when it loops like that.)

---

<div class="post-metadata">

### Author: ![AqeeAqee](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/aqeeaqee/32/5424_2.png) [@AqeeAqee](https://forum.makecode.com/u/AqeeAqee)
#### Post date: [April 27, 2022, 8:46pm UTC](https://forum.makecode.com/t/block-menu-icons-multi-column-edition/13286/5 "2022-04-27T20:46:21Z")

</div>

Yes, very glad to!  
I love your Awesome Arcade Extensions list, openning all the time for looking for an extension or its forum post. (BTW, I wanna applying my extensions adding into your list for a while, not sure these are good enough yet. So I am just waitting for more bug report/feedback.)

And actually, I am planning to try to change the implementation to the mode like game.splash() or so, which working at new scene created and pushed into scenes. This mode can solve the issue about button input, I think. So all updates are somewhat “big” comparing existing one.  
Which is the better way, update to origin richard’s repo, or public a new extension? I prefer the former, for keeping only one menu extension there for users. But no problem, I am fine also, if create a new one.

Hi @richard , what do you think about it?

---

<div class="post-metadata">

### Author: ![TZG](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/tzg/32/7392_2.png) [@TZG](https://forum.makecode.com/u/TZG)
#### Post date: [April 27, 2022, 8:46pm UTC](https://forum.makecode.com/t/block-menu-icons-multi-column-edition/13286/6 "2022-04-27T20:46:22Z")

</div>

I need this!

---

<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: [April 27, 2022, 11:47pm UTC](https://forum.makecode.com/t/block-menu-icons-multi-column-edition/13286/7 "2022-04-27T23:47:43Z")

</div>

Thanks! You can go ahead and send in Github issues or PRs for your extensions - they are very good! (there are some extensions on the list which are still work in progress I believe lol) Think it’s time to go through those issues cause they are piling up. 🤣

---

<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: [April 29, 2022, 6:56pm UTC](https://forum.makecode.com/t/block-menu-icons-multi-column-edition/13286/8 "2022-04-29T18:56:04Z")

</div>

I’m going to rewrite this extension from scratch eventually, so you should keep it in your fork! BTW, you don’t need to push a scene because I added an API for this issue specifically in the last arcade release:

> <https://github.com/microsoft/pxt-common-packages/pull/1323>
>
> I'd like to sneak this in for the patch release.
> 
> Currently only one event han…dler can be registered for each button; this means that extensions (like the storytelling extension) can't use any of the button events without overwriting the user's code. Thus, you have to resort to \[terrible hacks\](https://github.com/microsoft/arcade-storytelling/blob/main/menuState.ts#L93) to replicate this behavior.
> 
> This simply adds a JavaScript-only API that lets you add and remove event handlers in addition to the usual onEvent behavior. To the user, there will be absolutely no change. Registering more than one event for a button will override it.
> 
> I tested this pretty thoroughly in the sim, including:
> \* Registering multiple button handlers with onEvent to make sure they still get overwritten
> \* Doing lots of scene push/pop shenaningans to make sure events are saved/restored for the scene

The controller buttons now have addEventListener and removeEventListener which will not override the user’s button events

---

<div class="post-metadata">

### Author: ![AqeeAqee](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/aqeeaqee/32/5424_2.png) [@AqeeAqee](https://forum.makecode.com/u/AqeeAqee)
#### Post date: [April 29, 2022, 6:56pm UTC](https://forum.makecode.com/t/block-menu-icons-multi-column-edition/13286/9 "2022-04-29T18:56:42Z")

</div>

Yep. It could be another choice I think, that public as a new extension first, then waiting richard reply when his’s free.  
I have applied for my [raycasting](https://github.com/UnsignedArduino/Awesome-Arcade-Extensions/issues/52) and [this](https://github.com/UnsignedArduino/Awesome-Arcade-Extensions/issues/53) extensions as issue in your list repo.  
BTW, I was glad to see you have embody my snapshot extension also, thanks for you like it, that encouraged me to make more.

---

<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: [April 29, 2022, 8:41pm UTC](https://forum.makecode.com/t/block-menu-icons-multi-column-edition/13286/10 "2022-04-29T20:41:18Z")

</div>

I’ve put them in! Your extensions are amazing!

If anyone ever makes an extension or a tool, please do not hesitate to put it in! Just make a new issue and there will be a template for new extensions and tools! (Or even better, a pull request! 😉 )

* * *

Also on a totally unrelated side note, we’ve hit over 50 extensions and tools on the list! 🎉(To be exact, 55!)

---

<div class="post-metadata">

### Author: ![Segatendo](https://avatars.discourse-cdn.com/v4/letter/s/898d66/32.png) [@Segatendo](https://forum.makecode.com/u/Segatendo)
#### Post date: [May 2, 2022, 4:51pm UTC](https://forum.makecode.com/t/block-menu-icons-multi-column-edition/13286/11 "2022-05-02T16:51:19Z")

</div>

i tried to use this extension but when i added it the editor said the extension had errors so it wouldnt work  
but other than that this is a great extension you could do like a level select like in mario party 8

---

<div class="post-metadata">

### Author: ![AqeeAqee](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/aqeeaqee/32/5424_2.png) [@AqeeAqee](https://forum.makecode.com/u/AqeeAqee)
#### Post date: [May 3, 2022, 5:23pm UTC](https://forum.makecode.com/t/block-menu-icons-multi-column-edition/13286/12 "2022-05-03T17:23:18Z")

</div>

Thanks for your feedback!  
Would you please take a snapshot about the error?  
I will fix it ASAP, thanks!

---

<div class="post-metadata">

### Author: ![AqeeAqee](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/aqeeaqee/32/5424_2.png) [@AqeeAqee](https://forum.makecode.com/u/AqeeAqee)
#### Post date: [May 3, 2022, 5:23pm UTC](https://forum.makecode.com/t/block-menu-icons-multi-column-edition/13286/13 "2022-05-03T17:23:38Z")

</div>

BTW, thanks for your continuously support.  
Love your extension list very useful and handy.  
And love your games, all of them are wonderful and funny. I almost can’t believe you build so complicate games with only blocks. 👍

---

<div class="post-metadata">

### Author: ![AqeeAqee](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/aqeeaqee/32/5424_2.png) [@AqeeAqee](https://forum.makecode.com/u/AqeeAqee)
#### Post date: [May 5, 2022, 5:00pm UTC](https://forum.makecode.com/t/block-menu-icons-multi-column-edition/13286/14 "2022-05-05T17:00:39Z")

</div>

> [@UnsignedArduino](#):
>
> Will you make this into a blocks extension?

Yes, it comes:

> **[demoBlockMenuIcon](https://arcade.makecode.com/30513-35546-19532-00785)**
>
> Made with ❤️ in Microsoft MakeCode Arcade.

extension URL: [https://github.com/aqeeaqee/arcade-custom-menu/](https://github.com/aqeeaqee/arcade-custom-menu/)

---

<div class="post-metadata">

### Author: ![Maggie46](https://avatars.discourse-cdn.com/v4/letter/m/85e7bf/32.png) [@Maggie46](https://forum.makecode.com/u/Maggie46)
#### Post date: [June 25, 2024, 4:03am UTC](https://forum.makecode.com/t/block-menu-icons-multi-column-edition/13286/15 "2024-06-25T04:03:15Z")

</div>

I’m not the best at coding when it comes to lists, and I want to make a check list that I can add as many items as I want but I can also select multiple items at a time or just have them display a check when you click on that item, do you know how to do anything like that?Thanks 🙂 Either way.

---

<div class="post-metadata">

### Author: ![AqeeAqee](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/aqeeaqee/32/5424_2.png) [@AqeeAqee](https://forum.makecode.com/u/AqeeAqee)
#### Post date: [June 27, 2024, 4:54pm UTC](https://forum.makecode.com/t/block-menu-icons-multi-column-edition/13286/16 "2024-06-27T16:54:19Z")

</div>

This doesn’t multi-select.
