Combatintermediate9 min readupdated 11 Sept 2026

Disabling the weapon wheel on a FiveM server

The short answer

Every frame, disable the weapon-wheel control (DisableControlAction(0, 37, true)) and hide HUD components 19 and 20 (weapon wheel and its stats) with HideHudComponentThisFrame. Call SetWeaponsNoAutoswap(true) so the game does not switch weapons by itself. ox_inventory already does this and replaces the wheel with its own hotbar on keys 1–5.

On a server with an item-based inventory, the GTA weapon wheel is a liability: it lets players pull weapons the inventory does not know about, and it bypasses holster animations and item rules. Inventories such as ox_inventory disable it and use a hotbar instead; on other setups you can do the same in a few lines.

Disabling the weapon wheel on a FiveM server — illustrated with a FiveM-compatible minimap render

#Disabling the wheel

client.lua
SetWeaponsNoAutoswap(true)

CreateThread(function()
    while true do
        DisableControlAction(0, 37, true)   -- INPUT_SELECT_WEAPON (weapon wheel)
        HideHudComponentThisFrame(19)       -- weapon wheel
        HideHudComponentThisFrame(20)       -- weapon wheel stats
        Wait(0)
    end
end)

Disabling a control and hiding a HUD component only last one frame, which is why this is one of the legitimate permanent Wait(0) loops. The cost is three native calls per frame.

#ox_inventory does this for you

ox_inventory disables the weapon wheel and turns off auto-swap as part of its weapon handling, and players equip weapons from the inventory or the hotbar keys. Adding a second blocker is unnecessary and can fight its own logic. When a specific situation should allow the native wheel (a minigame, a vehicle mode), use the inventory’s own mechanism rather than re-enabling controls yourself.

#Why inventory servers remove it

  • The wheel shows any weapon the ped has, including ones given by a cheat — a mismatch the inventory then has to fix.
  • Instant switching skips holster animations and draw timing.
  • Inventory rules (durability, ammo items, attachments) only apply when weapons go through the inventory.

Draw animations to go with inventory equipping are covered in holster and draw animations.

#Other HUD components you may want to hide

IDComponent
1Wanted stars
2Weapon icon
3Cash
6Vehicle name
7Area name
8Vehicle class
9Street name
14Reticle (crosshair)
19Weapon wheel
20Weapon wheel stats
22HUD weapons

The reticle has its own guide: the crosshair.

#Keep the wheel but make it yours

Disabling is the right call for inventory-driven servers, but many PvP and freeroam servers keep the wheel because players expect TAB to work. The native wheel lives in hud.gfx and its textures in hud.ytd, so it can be restyled with no script running at all: streamed from a resource, it replaces the stock look for everyone on the server.

If you want that without editing scaleform files by hand, the custom weapon wheel studio builds a drop-in resource with your colours and your server logo in the centre, and you can try each design exactly like in game before you buy. The install walkthrough covers where the files go.

Share this guideXRedditFacebook

Questions

How do I disable the weapon wheel in FiveM?
Call DisableControlAction(0, 37, true) and HideHudComponentThisFrame(19) and (20) every frame in a client loop.
Does ox_inventory disable the weapon wheel?
Yes. It handles the wheel itself and uses its own hotbar, so you do not need an extra script.
Why do weapons switch by themselves?
The game auto-swaps when ammo runs out. SetWeaponsNoAutoswap(true) stops it.
Which control is the weapon wheel?
Control 37, INPUT_SELECT_WEAPON (TAB by default).

Ready to pick a map?

Twelve themes on three base map styles, $8 each, instant download.

Relevant to what you just read

The tool for this

Fifty-one wheel designs that replace the native HUD wheel From $15, built in the browser, exported as a drop-in resource.