Skip to content

Exports

Exports

BUPA AnimPos biedt drie client-exports zodat andere resources de tool programmatically kunnen aansturen. Alles draait onder de resource-naam bupa-animpos.

Open

Opent de tool. Dit voert de volledige controlepipeline uit — reeds-in-gebruik, cooldown, permissie, statebeperkingen en de Config.CanUse hook — precies alsof de speler het commando of de keybind heeft gebruikt. Retourneert true als de tool daadwerkelijk is geopend, anders false.

client
local opened = exports['bupa-animpos']:Open()
if opened then
    print('Positioning mode started')
end

Close

Vraagt de tool om te sluiten als deze momenteel actief is. Dit gedraagt zich hetzelfde als op annuleren drukken — het personage wordt teruggezet naar de startpositie en -richting.

client
exports['bupa-animpos']:Close()

IsActive

Retourneert een boolean die aangeeft of de positioneringsmodus momenteel geopend is voor de lokale speler.

client
if exports['bupa-animpos']:IsActive() then
    -- e.g. block another interaction while the tool is open
end

Example — pair with an emote menu

client
-- After playing an emote, let the player nudge it into place
RegisterCommand('fixpos', function()
    if not exports['bupa-animpos']:IsActive() then
        exports['bupa-animpos']:Open()
    end
end)

Naast de exports is Config.CanUse een client-side hook die wordt uitgevoerd bij elke openpoging (inclusief via Open()). Retourneer false om te blokkeren en optioneel een berichttekenreeks om aan de speler te tonen. Dit is de bedoelde plek voor serverspecifieke logica (gevechten, schade, aangepaste staten).

config.lua
Config.CanUse = function()
    -- return false, 'You cannot do this right now!'
    return true
end