Skip to main content

Overview

local groupKey = exports['nv-interactions']:AddInteraction(data, options, details)

Return Value

NameTypeDescription
groupKeystringfalseUnique identifier for the interaction group. Returns false on failure.

Parameters

data

FieldTypeRequiredDescription
namestringYesDisplay name in menu
keystringYesKeyboard key
typestringYescoord, entity, 3dtext

options

FieldTypeRequiredDescription
textstringYesOption label
iconstringNoFontAwesome icon
distancenumberYesInteraction distance
dotdistancenumberNoDot visibility distance
disabledbooleanNoDisable option
onselectedfunctionNoCallback
eventstringNoClient event

details

TypeDescription
vector3Single coordinate
vector3[]Multiple coordinates
numberEntity id

Interaction State Management

Disable Interaction

exports['nv-interactions']:DisableInteraction('coord', groupKey)

Enable Interaction

exports['nv-interactions']:EnableInteraction('coord', groupKey)

Edit Interaction

exports['nv-interactions']:EditInteraction('coord', groupKey, {
  name = 'Updated Interaction',
  key = 'F',
})

Examples

Single Coordinate

exports['nv-interactions']:AddInteraction({
  name = 'Test Interaction',
  key = 'E',
  type = 'coord',
}, {
  {
    text = 'Test Option',
    distance = 2.0,
    onselected = function()
      print('Selected')
    end
  }
}, vec(1.0, 1.0, 1.0))

Multiple Coordinates

exports['nv-interactions']:AddInteraction({
  name = 'Multiple Locations',
  key = 'E',
  type = 'coord',
}, {
  {
    text = 'Interact',
    distance = 2.0,
  }
}, {
  vec(1.0,1.0,1.0),
  vec(2.0,2.0,2.0)
})

Entity Interaction

exports['nv-interactions']:AddInteraction({
  name = 'Entity Interaction',
  key = 'E',
  type = 'entity',
}, {
  {
    text = 'Talk',
    distance = 2.0,
  }
}, entityId)

3D Text Interaction

exports['nv-interactions']:AddInteraction({
  name = '3D Text',
  type = '3dtext',
}, {
  {
    text = 'Read',
    distance = 2.0,
  }
}, vec(10.0,10.0,10.0))