hz_lib

Apresentacao

hz_lib e a base compartilhada utilizada por todos os recursos Hz-Scripts. Ele detecta automaticamente o ambiente do seu servidor e fornece uma API unificada para que cada Hz-Script funcione imediatamente, independentemente do seu framework ou combinacao de addons.
Asset gratuito — hz_lib esta disponivel gratuitamente na loja Hz-Scripts. Baixe uma vez e todos os scripts compativeis o utilizarao automaticamente.

Para que serve?

Em vez de cada script embutir seu proprio codigo de deteccao de framework e adaptador, o hz_lib gerencia isso de forma centralizada:

ModuloO que ele detecta
FrameworkESX, QBCore, QBox, Ox Core, vRP, Standalone
Inventarioox\_inventory, hz\_inventory, qs-inventory, ps-inventory, codem, core, origen, tgiann, ak47, qb-inventory, framework
Notificacoesox\_lib, okokNotify, mythic\_notify, codem, pNotify, framework, GTA nativo
Targetox\_target, qb-target, interact, TextUI integrado
Menu / UIox\_lib (completo), qb-menu + qb-input, ESX menu, fallback GTA nativo
Dispatchcd\_dispatch, ps-dispatch, qs-dispatch, rcore\_dispatch, emergencydispatch, integrado
Banco / Sociedadehz\_banking, qb-banking, qb-management, Renewed-Banking, okokBanking, qs-banking, tgg-banking, crm-banking, tgiann-bank, esx\_society
CallbacksBidirecional (cliente-servidor) com limitacao de taxa e timeout
MinigamesBarra de progresso, skill check, sequencia
Ele tambem inclui um painel de administracao centralizado (/hzpanel) — cada modulo HZ-Script declara seu schema de configuracao, e o painel constroi automaticamente um editor tipado no jogo para modificar tudo sem tocar nos arquivos nem reiniciar. Veja Painel de administracao.

Além disso, ele desenha dois elementos na tela compartilhados por todos os scripts HZ: uma caixa de diálogo com NPC (a fala é digitada no ritmo da voz e depois aparecem até quatro escolhas) e um rastreador de objetivos para trabalhos e missões. Veja Diálogo com NPC e Rastreador de objetivos.


Vantagens principais

  • Instalacao unica — Todos os Hz-Scripts compartilham o mesmo bridge, sem codigo duplicado
  • Deteccao automatica — Deixe tudo em 'auto' e o hz_lib detecta sua configuracao
  • Override quando necessario — Force um sistema especifico em um unico arquivo de configuracao
  • 140+ exports — Use o bridge a partir dos seus proprios scripts tambem
  • Interface admin centralizada — /hzpanel abre um unico painel para cada modulo HZ-Script (saiba mais)
  • Tema unificado — altere o destaque, as superficies, a escala de arredondamento em um unico lugar, cada NUI HZ se retinta ao vivo
  • Zero impacto na performance — A deteccao e executada uma vez na inicializacao, os exports sao instantaneos

Sistemas suportados

Frameworks

FrameworkRecursoStatus
ESXes_extendedCompleto
QBCoreqb-coreCompleto
QBoxqbx_coreCompleto
Ox Coreox_coreCompleto
vRPvRPCompleto
Standalone—Completo

Inventarios

InventarioRecursoStatus
ox\_inventoryox_inventoryCompleto
qs-inventoryqs-inventoryCompleto
ps-inventoryps-inventoryCompleto
codem-inventorycodem-inventoryCompleto
core\_inventorycore_inventoryCompleto
origen\_inventoryorigen_inventoryCompleto
tgiann-inventorytgiann-inventoryCompleto
ak47\_inventoryak47_inventoryCompleto
qb-inventoryqb-inventoryCompleto
hz\_inventoryhz_inventoryCompleto (adaptador ox\_inventory)
Framework nativo—Basico

Sistemas de menu

Sistema de menuRecursoFuncionalidades
ox\_libox_libContext, Input, Alert, TextUI, Progress, Menu lista
qb-menuqb-menuContext, Input (via qb-input), TextUI (via qb-core)
ESX menuesx_menu_defaultContext, Menu lista, TextUI (via esx\_textui)
Nativo—Entrada de teclado GTA, texto de ajuda, fallback basico

Inicio rapido

  1. Baixe o hz_lib na loja (gratuito)
  2. Coloque-o na sua pasta resources/
  3. Adicione ensure hz_lib no seu server.cfg antes de qualquer Hz-Script
  4. Pronto — todos os Hz-Scripts o detectarao automaticamente
Consulte o guia de Instalacao para todos os detalhes.

Para desenvolvedores

O hz_lib expoe 140+ exports que voce pode usar nos seus proprios scripts:

-- Framework
local job = exports['hz_lib']:GetPlayerJob()

-- Notificacoes
exports['hz_lib']:Notify('Hello!', 'success', 3000)

-- Inventory (server)
exports['hz_lib']:AddItem(source, 'bread', 5)

-- Menu (client)
exports['hz_lib']:ContextMenu('my_menu', 'My Menu', {
    { title = 'Option 1', onSelect = function() print('selected') end },
})

-- Callbacks
exports['hz_lib']:RegisterCallback('myResource:getData', function(source)
    return { money = 1000 }
end)

Consulte a referencia completa Exports & API.