Funciones LSL — Referencia Rápida

Una lista compacta de funciones de Linden Scripting Language de uso común con descripciones de una línea.

Consejo: Pase el cursor sobre los nombres de las funciones en su IDE para ver firmas completas y constantes.

Toque e Interacción

FunciónQué hace
llDetectedKey(i)Obtiene la clave (UUID) del i-ésimo tocador/colisionador detectado.
llDetectedName(i)Nombre del agente/objeto detectado en el índice i.
llDetectedType(i)Campo de bits que describe lo detectado (AGENT, ACTIVE, PASSIVE...).
llDetectedTouchFace(i)Índice de la cara tocada; -1 si se desconoce.
llDetectedTouchUV(i)Coordenadas UV del toque en la cara.
llGetOwner()Devuelve la clave del propietario del objeto.
llGetOwnerKey(id)Clave del propietario de un avatar/objeto por clave.
llGiveInventory(dst, name)Envía un artículo de inventario a un usuario u objeto.
llDialog(av, msg, buttons, chan)Muestra un diálogo a un avatar con botones; escucha en el canal.
llTextBox(av, msg, chan)Solicita al avatar una entrada de texto mediante un diálogo.

Movimiento y Física

FunciónQué hace
llSetPos(pos)Mueve el prim (en coordenadas de región); limitado para adjuntos.
llSetRot(rot)Establece la rotación local del prim.
llSetRegionPos(pos)Teletransporta el objeto dentro de los límites de la región (no físico).
llMoveToTarget(pos, tau)Aplica una fuerza de resorte suave para mover hacia una posición.
llStopMoveToTarget()Detiene el movimiento iniciado por llMoveToTarget.
llLookAt(rot, strength, damping)Aplica fuerzas para orientar el objeto hacia una rotación.
llSetStatus(flag, on)Habilita/deshabilita banderas de física (PHYSICS, TEMP_ON_REZ...).
llSetForce(force, local)Aplica una fuerza continua a un objeto físico.
llApplyImpulse(imp, local)Aplica un impulso instantáneo.
llSetVelocity(v, local)Establece la velocidad (físico) o "empuja" (no físico).

Objeto y Prim

FunciónQué hace
llGetLinkNumber()Devuelve el número de enlace del prim actual.
llGetLinkName(link)Nombre de un enlace específico en un conjunto de enlaces.
llGetNumberOfPrims()Total de prims en el conjunto de enlaces (o 1 si no está enlazado).
llSetLinkAlpha(link, alpha, face)Establece la transparencia para la(s) cara(s) de un enlace.
llSetLinkColor(link, color, face)Establece el color para la(s) cara(s) de un enlace.
llSetTexture(texture, face)Aplica una textura por nombre/UUID a una cara.
llScaleTexture(u, v, face)Escala las repeticiones de la textura.
llOffsetTexture(u, v, face)Desplaza el mapeo de la textura.
llRotateTexture(angle, face)Rota la textura en una cara.
llSetPrimitiveParams(params)Establece parámetros del prim en masa (tamaño, hueco, ruta, etc.).

Avatar y Adjunto

FunciónQué hace
llRequestPermissions(id, perms)Pide permisos a un avatar (animar, tomar controles...).
llTakeControls(controls, accept, pass_on)Escucha entradas de teclas del avatar cuando está adjunto/sentado.
llSetAlpha(alpha, face)Establece la transparencia del prim (también adjuntos).
llStartAnimation(name)Inicia una animación incorporada o personalizada en el avatar.
llStopAnimation(name)Detiene una animación en ejecución.
llAttachToAvatar(point)Adjunta el objeto a un punto de anclaje del avatar.
llDetachFromAvatar()Separa el objeto del avatar.
llRequestAgentData(id, data)Solicita información del agente (estado en línea, etc.).

Comunicación

FunciónQué hace
llSay(chan, msg)Chatea en el canal (0 = chat público, rango 20m).
llShout(chan, msg)Chatea más fuerte (rango 100m).
llWhisper(chan, msg)Chatea en voz baja (rango 10m).
llRegionSay(chan, msg)Entrega a toda la región en el canal.
llOwnerSay(msg)Mensaje privado al propietario del objeto.
llInstantMessage(id, msg)Envía un IM directo a un avatar/clave.
llMessageLinked(link, num, str, key)Envía un mensaje entre scripts en un conjunto de enlaces.
llListen(chan, name, id, msg)Registra un oyente para chat en un canal.
llListenRemove(handle)Detiene un oyente establecido previamente.

Tiempo y Sensores

FunciónQué hace
llSetTimerEvent(sec)Activa el evento timer() en un intervalo.
llGetTime()Segundos desde el último reinicio del script.
llResetTime()Reinicia el temporizador del script.
llSensor(name, id, type, range, arc)Escaneo de sensor activo para cosas/avatares.
llSensorRepeat(name, id, type, range, arc, rate)Llamadas de sensor repetitivas.
llSensorRemove()Detiene un sensor repetitivo activo.
llVolumeDetect(on)Hace que el prim sea fantasma pero active eventos de colisión.

Inventario y Datos

FunciónQué hace
llGetInventoryNumber(type)Cuántos artículos de un tipo hay en el prim.
llGetInventoryName(type, i)Nombre del i-ésimo artículo de inventario del tipo dado.
llGiveInventoryList(dst, folder, list)Envía una carpeta de artículos de inventario.
llGetNotecardLine(name, line)Lee asincrónicamente una línea de una tarjeta de notas.
llGetNumberOfNotecardLines(name)Obtiene el total de líneas en una tarjeta de notas (asincrónico).
llCreateLink(target, parent)Enlaza dos objetos que posees.
llBreakLink(link)Desenlaza un prim de un conjunto de enlaces.
llGetObjectDetails(id, params)Recupera varios detalles (nombre, propietario, pos...).

Matemáticas, Cadenas y Listas

FunciónQué hace
llVecMag(v)Magnitud de un vector.
llVecNorm(v)Vector normalizado.
llRot2Euler(r)Convierte rotación de cuaternión a ángulos de Euler.
llEuler2Rot(v)Ángulos de Euler a rotación de cuaternión.
llRound(x)Redondea al entero más cercano.
llList2String(list, i)Obtiene un elemento de una lista como cadena.
llList2Integer(list, i)Obtiene un elemento como entero.
llListFindList(src, sub)Encuentra el índice de una sublista en una lista.
llParseString2List(str, delims, spacers)Divide texto en una lista.
llDumpList2String(list, sep)Une una lista en una cadena.

Entorno y Región

FunciónQué hace
llGetPos()Posición actual del objeto.
llGetRot()Rotación actual.
llGetRegionName()Nombre de la región actual (sim).
llGetRegionCorner()Coordenadas de esquina de la cuadrícula global de la región.
llGetEnv(var)Lee valores del entorno (ej. "owner", "agent_limit").
llSetEnvironment(pos, list)Modifica entorno de parcela/región (se requiere experiencia).
llRequestURL()Solicita una URL HTTP-in para el script.
llReleaseURL(url)Libera una URL HTTP-in.

HTTP y Redes

FunciónQué hace
llHTTPRequest(url, params, body)Realiza una solicitud HTTP(S) saliente.
llHTTPResponse(req, status, body)Envía respuesta a una solicitud HTTP-in entrante.
llEmail(address, subj, msg)Envía correo electrónico desde el objeto.
llGetFreeURLs()Cuántas URL HTTP-in aún puede solicitar.
llRequestSecureURL()Solicita URL HTTP-in HTTPS (cuando sea compatible).

Sonido y Medios

FunciónQué hace
llPlaySound(name, volume)Reproduce un sonido una vez en el prim.
llLoopSound(name, volume)Repite un sonido en bucle.
llStopSound()Detiene el sonido que se está reproduciendo.
llPreloadSound(name)Sugiere al visor que almacene en caché un sonido.
llSetSoundQueueing(on)Pone en cola múltiples disparadores de sonido suavemente.

Script y Estado

FunciónQué hace
llResetScript()Reinicia el script actual (el estado vuelve al predeterminado).
llSetMemoryLimit(bytes)Intenta establecer el límite de memoria para el script.
llGetScriptName()Devuelve el nombre del script en ejecución.
llGetFreeMemory()Bytes de memoria libre del script restantes.
llSetRemoteScriptAccessPin(pin)Permite la carga remota mediante pin.
llRemoteLoadScriptPin(id, name, pin, running, start_param)Carga un script en otro prim mediante pin.

Dinero y Comercio

FunciónQué hace
llSetPayPrice(default, quicklist)Establece valores del botón de pago en el objeto.
llRequestPermissions(id, PERMISSION_DEBIT)Solicita permiso para tomar dinero.
llTransferLindenDollars(id, amount)Inicia una transferencia de L$ (requiere permiso de débito).

Partículas

FunciónQué hace
llParticleSystem(params)Inicia/detiene efectos de partículas usando una lista de parámetros.
llLinkParticleSystem(link, params)Partículas en un enlace específico en un conjunto de enlaces.
llMakeSmoke(alpha, scale, glow)Ayudante heredado para hacer humo (estilo obsoleto).

Dataserver y Asincronía

FunciónQué hace
llRequestInventoryData(name)Solicita la clave de un activo; resultado vía evento dataserver.
llRequestAgentData(id, data)Información del agente (en línea, fecha nacimiento…); resultado asincrónico.
llRequestUsername(id)Obtiene nombre de usuario (asincrónico) desde una clave.
llRequestDisplayName(id)Obtiene nombre para mostrar (asincrónico).

Texto y Flotante

FunciónQué hace
llSetText(text, color, alpha)Texto flotante sobre el prim.
llSetLinkPrimitiveParamsFast(link, params)Cambios rápidos de parámetros en masa; bueno para actualizaciones frecuentes.

Teletransporte y Sentarse

FunciónQué hace
llSitTarget(offset, rot)Define dónde se sienta un avatar en el prim.
llUnSit(av)Levanta a un avatar del objeto.
llTeleportAgent(av, sim, pos, look)Teletransporta a un avatar (necesita experiencia y permisos).
llTeleportAgentGlobalCoords(av, global, look)Teletransporta vía coordenadas globales (requiere experiencia).

OSSL (Extensiones OpenSimulator)

FunciónQué hace
osTeleportAgent(...)Teletransporta un avatar especificado a una región/posición (requiere permisos).
osTeleportOwner(...)Teletransporta al propietario del objeto a una ubicación objetivo.
osTeleportAgentHome(key)Envía un avatar de vuelta a su ubicación de hogar.
osMessageObject(key, msg)Envía un mensaje directo a otro objeto por UUID.
osRegionSayTo(key, chan, msg)Envía chat a un avatar específico en cualquier parte de la región.
osSetDynamicTextureData(params, data)Renderiza imagen/texto dinámico en el prim usando datos (ej. comandos de dibujo).
osSetDynamicTextureDataFace(params, data, face)Igual que arriba, pero apunta a una cara específica.
osSetDynamicTextureURL(url, params)Aplica imagen desde una URL como textura dinámica.
osSetDynamicTextureURLFace(url, params, face)Textura dinámica basada en URL en una sola cara.
osNpcCreate(first, last, pos, clone)Crea un NPC en una posición (opcionalmente clonado de un avatar).
osNpcRemove(key)Elimina un NPC por UUID.
osNpcMoveToTarget(key, pos, speed)Mueve un NPC hacia una posición objetivo.
osNpcSay(key, msg)Hace que un NPC hable en el chat.
osAvatarName2Key(name)Resuelve "Nombre Apellido" (o nombre de usuario único) a un UUID.
osKey2Name(key)Obtiene el nombre de un avatar desde UUID.
osGetAgents()Devuelve una lista de UUIDs de avatares actualmente en la región.
osGetGridName()Devuelve el nombre de la grid (ej. "OSGrid").
osGetGridGatekeeperURI()Obtiene la URI del gatekeeper de la grid para Hypergrid.
osGetRegionSize()Devuelve el vector de tamaño de la región (soporta varregions).
osFormatString(fmt, args...)Ayudante de formato de cadena estilo printf.

Nota: Las funciones OSSL requieren permisos específicos de estado ("ThreatLevel") y pueden estar deshabilitadas en su grid. Consulte con el propietario de su grid/estado si una llamada devuelve un error.

Notas

  • Esta es una lista compacta; LSL tiene muchas más funciones y constantes.
  • Algunas funciones requieren permisos específicos, derechos de parcela o una Experiencia.
  • Las llamadas asincrónicas devuelven resultados en eventos como dataserver, http_response, timer, etc.