[Release] RadialMenu - Configurable menu for chat commands using Wheelnav.js

About

This resource enables multiple radial menus (aka pie menu) to execute client side chat commands using Wheelnav.js. The menu can be customized to fit your needs by editing the config.lua script which exposes the following options:

  • Menu size
  • Menu key bind
  • Menu enable hook function
  • Menu style (slices/titles, default/hover/selected states, icon size)
  • Wheel layout (including multiple wheels for a single menu)
  • Wheel text labels or icons
  • Commands to execute

Download

Demo

As an example the script uses Trundles Roleplay Animations and Simple Vehicle Control Script to demonstrate different menus on the same key bind (F6). The enableMenu configuration function is used to enable the emote menu when on foot and the vehicle control menu when in a vehicle.

Examples

Changes

  • VERSION_V1_21
    • Fixed keybindControls lookup table (keybinds are case sensitive)
  • VERSION_V1_20
    • Added icon size to config.lua
    • Updated vehicle controls example to use icons
    • Updated menu style settings
    • Removed unused Javascript files
  • VERSION_V1_10
    • Moved configuration options to separate config.lua file
    • Changed menu to use init/destroy on the fly to support multiple menus
    • Changed Javascript to auto-center menu in the middle of the screen
    • Added config function to enable/disable menu based on player context
    • Added sound effects for opening and clicking menu
  • VERSION_V1_01
    • Changed styling from CSS to Javascript to fix rendering issues (hopefully)
  • VERSION_V1_00
    • Initial release

Known Issues

  • none

Other Resources

71 Likes

client or server?

Awesome work thank you.

Client side chat commands e.g. /e emote

The text is all off I cant seem to figure out how to fix it. Anyone have a fix please let me know.

I have the same issue, restarting the resource sometimes fixes it but I’m not exactly sure why it does that. I’m terrible at HTML/CSS so if anyone knows how to fix the inconsistent formatting let me know and I can update the resource :slight_smile:

You sir, are a legend.
That’s exactly what i need.

2 Likes

Cool I guess! If you don’t want to use nativeUI or warmenu guess this works :man_shrugging:

PS: Demo vid not working

Also, just so everyone knows, you can always run ExecuteCommand() on a client script… (which is what this just does)

I changed the menu styling from CSS to Javascript and updated the release. I haven’t seen any issues on my end with this version, if you could try it and let me know if that fixes it for you I’d appreciate it!

Most menus I’ve seen are slow to navigate and not well suited for on-the-fly stuff like emotes or vehicle controls so I thought I’d try something different :slight_smile:

Not sure why the video doesn’t work, might be a browser issue on your end but you can try the direct link.

Ok Im giving it a good test real quick. Lets see if it works.

Edit: Everything seems to work fine now except for the cancel. It simply wont cancel the emotes. Anyone have a fix for this it would be greatly appreciated.

1 Like

Register a command that runs ClearPedTask, then just asign it to that button.

3 Likes

Fantastic release, so annoying anyway to make working circular UI in CSS, really good work.
Not sure if your continuing work, but I plan to make it dynamic so you can press multiple keybinds for different ‘wheels’.

3 Likes

Thank you very much!

Thank you, I thought about that and I think it will depend on how responsive the UI is if you init/destroy the menu every time to support multiple keys and menus. I have some other changes I’m working on for more configuration and sound feedback for clicks so I’ll see what I can do.

edit: The resource should handle all the paths correctly so you can also just have multiple copies with different resource names for each button as a quick and dirty solution.

Where should I be looking if I want to change the colour scheme? :slight_smile:

Actually that was my first idea, cheap and dirty copy, but I think the javascript close/open of the wheel was conflicting and the clone was toggle rather than a hold.
Will take another look when I get home. Again, really nice release, my community love it. I added walk styles and some more animations to it.

1 Like

Could it be used to display the inventory?

thank you for this awesome script but I have a problem and I just test >>

It is conflect with [RELEASE][ESX] KASHacters Multi Character for some reason I don’t know why if you could help me …

thank you …

1 Like

I use KASHacters, no conflicts.