Fuer Skript-Entwickler

ox_target, qtarget, qb-target

Ruf sie auf wie immer. HZ-TextUi beantwortet 24 ox_target-Exports:

addBoxZone, addSphereZone, addPolyZone, removeZone, zoneExists, addGlobalPed, addGlobalVehicle, addGlobalObject, addGlobalPlayer, addGlobalOption und ihre remove*, addModel / removeModel, addLocalEntity / removeLocalEntity, addEntity / removeEntity, getTargetOptions, isActive, disableTargeting.

Die PascalCase-Namen von qtarget und qb-target werden ebenfalls bedient: AddBoxZone, AddCircleZone, AddPolyZone, AddEntityZone, AddTargetModel, AddTargetEntity, AddTargetBone, AddGlobalPed / Vehicle / Object / Player, und ihre Remove*. Job-, Gang- und Item-Filter werden uebernommen.

Die Optionsfelder folgen ox_target und qb-target: label, icon, distance, onSelect, canInteract, groups, items, menuName, openMenu.

Die HZ-Prompts

Acht Exports steuern das 3D-TextUI direkt, mit einem Pin, der bei Naehe statt auf Alt sichtbar wird:

exports['hz_textui']:create3DTextUI('my-id', {
    coords = vector3(-1461.18, -31.48, 54.63),
    displayDist = 6.0,     -- Entfernung, ab der der Pin erscheint
    interactDist = 2.0,    -- Entfernung, ab der sich das Label oeffnet
    enableKeyClick = true,
    keyNum = 38, key = 'E',
    text = 'My interaction',
    theme = 'green',       -- 'green' oder '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')

Die uebrigen: create3DTextUIOnEntity, create3DTextUIOnPlayers, delete3DTextUIOnPlayers, openTextUi fuer ein scrollbares 3D-Menue, und closeTextUi.

Das eine, was du ueber canInteract wissen musst

Optionen werden per Referenz im Lua-Zustand von HZ-TextUi gehalten. Startet deine Ressource neu, ohne das Registrierte zu entfernen, zeigt ihr canInteract in einen Zustand, den es nicht mehr gibt, und schlaegt bei jeder Pruefung fehl.

HZ-TextUi verwirft die Option nach drei Fehlschlaegen und schreibt, welche Option aus welcher Ressource — statt deine Konsole zu fluten.

Entferne beim Stoppen deiner Ressource, was du registriert hast, oder registriere es beim Start erneut.