Para desarrolladores
ox_target, qtarget, qb-target
Llámalos como siempre. HZ-TextUi responde a 24 exports de ox_target:
addBoxZone, addSphereZone, addPolyZone, removeZone, zoneExists, addGlobalPed, addGlobalVehicle, addGlobalObject, addGlobalPlayer, addGlobalOption y sus remove*, addModel / removeModel, addLocalEntity / removeLocalEntity, addEntity / removeEntity, getTargetOptions, isActive, disableTargeting.
Los nombres PascalCase de qtarget y qb-target también se sirven: AddBoxZone, AddCircleZone, AddPolyZone, AddEntityZone, AddTargetModel, AddTargetEntity, AddTargetBone, AddGlobalPed / Vehicle / Object / Player, y sus Remove*. Los filtros de job, gang e item se mantienen.
Los campos de opción siguen a ox_target y qb-target: label, icon, distance, onSelect, canInteract, groups, items, menuName, openMenu.
Los prompts HZ
Ocho exports manejan el TextUI 3D directamente, con un pin visible por proximidad en vez de con Alt:
exports['hz_textui']:create3DTextUI('my-id', {
coords = vector3(-1461.18, -31.48, 54.63),
displayDist = 6.0, -- distancia a la que aparece el pin
interactDist = 2.0, -- distancia a la que se abre la etiqueta
enableKeyClick = true,
keyNum = 38, key = 'E',
text = 'My interaction',
theme = 'green', -- 'green' o 'red'
job = 'all',
canInteract = function() return true end,
triggerData = { triggerName = 'my:event', isServer = false, args = {} },
})
exports['hz_textui']:update3DTextUI('my-id', 'New text', 'red')
exports['hz_textui']:delete3DTextUI('my-id')
Los demás: create3DTextUIOnEntity, create3DTextUIOnPlayers, delete3DTextUIOnPlayers, openTextUi para un menú 3D con scroll, y closeTextUi.
Lo único que hay que saber sobre canInteract
canInteract apunta a un estado que ya no existe y falla en cada comprobación.HZ-TextUi descarta la opción tras tres fallos e imprime cual y desde que recurso, en lugar de llenarte la consola.
Retira lo que registraste cuando tu recurso se detenga, o registralo de nuevo al arrancar.
