# attachElements (Compartido)

> Cuelga un elemento de otro. A partir de ahí sigue al objetivo hasta que se suelte.

- **Plataforma**: MY Multiplayer (MYMP)
- **Tipo**: Función Lua
- **Lado**: Compartido
- **Categoría**: Adjuntos
- **URL**: https://wiki.mymp.gg/es/attachElements

## Sintaxis

```lua
bool attachElements(element element, element target [, float x, y, z = 0, 0, 0, float rx, ry, rz = 0, 0, 0, string|int socket = nil])
```

## Parámetros

| Nombre | Tipo | Descripción |
| --- | --- | --- |
| `element` | `element` | El elemento que se adjunta. |
| `target` | `element` | El elemento del que queda colgado. |
| `x, y, z` | `float` | Desplazamiento respecto al objetivo. *(por defecto: `0, 0, 0`)* |
| `rx, ry, rz` | `float` | Rotación respecto al objetivo. *(por defecto: `0, 0, 0`)* |
| `socket` | `string\|int` | Dónde sujetarlo en el objetivo: el hueso de un ped (el id de MTA o el nombre en el rig) o el componente o frame de un vehículo u objeto. Un número solo vale para peds, jugadores y objetos. Sin socket, el elemento sigue la raíz del objetivo. *(por defecto: `nil`)* |

## Retorno

`true` si se adjuntó. `false` cuando alguno de los dos no se puede adjuntar, cuando formaría un ciclo, cuando están en dimensiones distintas, cuando el objetivo no tiene ese socket o cuando se canceló `onElementAttach`.

Se pueden adjuntar jugadores, peds, vehículos, objetos, sonidos, efectos y luces del cliente. Adjuntarlo a otro objetivo lo suelta del actual. Cuando el objetivo se destruye, el elemento se suelta donde está.

## Ejemplo

```lua
local vehicle = createVehicle("infernus", 1544.0, -1675.0, 13.6)
local ped = createPed("male01", 1544.0, -1675.0, 15.0)
attachElements(ped, vehicle, 0, 0, 1.2)
```

### Si vienes de MTA

Funciona como en MTA, con el socket como argumento extra.

## Ver también

- [detachElements (Compartido)](https://wiki.mymp.gg/es/detachElements.md): Suelta un elemento del elemento del que cuelga. Se queda donde está.
- [setElementAttachedOffsets (Compartido)](https://wiki.mymp.gg/es/setElementAttachedOffsets.md): Cambia el desplazamiento, la rotación y, si se pide, el socket de un elemento adjunto.
- [getAttachedElements (Compartido)](https://wiki.mymp.gg/es/getAttachedElements.md): Lista los elementos adjuntos directamente a un elemento.
- [onElementAttach (Servidor)](https://wiki.mymp.gg/es/onElementAttach.md): Se dispara cuando el servidor llama a attachElements, antes de adjuntar el elemento. Cancelar el evento impide el adjunto y hace que attachElements devuelva false.
