AddMenu/AddButton e chamar Open para exibir. Ao clicar num botão, o menu fecha e dispara o evento configurado (cliente ou servidor). Ao fechar, o estado interno é resetado, portanto os itens devem ser registrados de novo a cada abertura.
O cliente monta uma árvore (BuildTree): itens menu viram submenus e button viram ações, ligados por Id/ParentId.
Funcionalidades
O recurso já inclui menus prontos.F9 — Menu pessoal
PlayerFunctions: Armário, Roupas, Veículo/Portas, Computador (painéis de grupos/MDT/EMS) e Outros.F10 — Menu emergencial
EmergencyFunctions: menu para Polícia/Médico (10-codes, fardamentos).H — Agarrar jogador
GrabPlayer: agarra a pessoa mais próxima (Polícia/Médico).Dependências
vrp
Proxy/Tunnel e configs.
PolyZone
Tunnels usados pelos menus prontos:
skinshop, keyboard. Lê as globais Groups (menu Computador) e Theme (cor).Exports
Todos client-side. Empilhe os itens e chameOpen.
Open() / Close()
Open() / Close()
Renderiza/exibe a NUI / fecha e reseta o estado empilhado.
Eventos
A interface TunnelbindInterface("dynamic", Core) (servidor) expõe Core.Clothes() (lista os fardamentos/roupas salvos do jogador, com limite por permissão) e Core.Save() (persiste a roupa atual no armário pessoal).
Recebidos no servidor
Cliente
NUI Callbacks
Customização
Cor
Global
Theme.main (fallback #0143bb).Teclas
RegisterKeyMapping (F9, F10, H), reconfiguráveis pelo jogador.Menus prontos / 10-codes
Definidos inline em
client-side/core.lua e server-side/core.lua (tabela Codes).
