# engineSetElementMaterial (Cliente)

> Reemplaza los materiales elegidos de un único vehículo, ped u objeto por un material.

- **Plataforma**: MY Multiplayer (MYMP)
- **Tipo**: Función Lua
- **Lado**: Cliente
- **Categoría**: Materiales y shaders
- **URL**: https://wiki.mymp.gg/es/engineSetElementMaterial

## Sintaxis

```lua
bool engineSetElementMaterial(element element, int|string selector, material material [, int priority = 0])
```

## Parámetros

| Nombre | Tipo | Descripción |
| --- | --- | --- |
| `element` | `element` | Un vehículo, ped, jugador u objeto. |
| `selector` | `int\|string` | Qué material: su índice desde 1 o su nombre, como los lista `engineGetModelMaterials`. El nombre no distingue mayúsculas y acepta los comodines `*` y `?`. |
| `material` | `material` | El material que se dibuja en su lugar. |
| `priority` | `int` | Cuando varios recursos eligen el mismo material, gana la mayor prioridad; entre iguales, el más reciente. *(por defecto: `0`)* |

## Retorno

`true` cuando se aplicó.

Se aplica encima de lo que el modelo ya dibuja, incluidos los materiales definidos con `engineSetModelMaterial`. Vale mientras el elemento exista, dentro o fuera del streaming.

## Ejemplo

```lua
local gold = engineCreateMaterial("surface")
engineSetMaterialValue(gold, "metallicFactor", 1)

addCommandHandler("gold", function()
    local vehicle = getPedOccupiedVehicle(localPlayer)
    if vehicle then
        engineSetElementMaterial(vehicle, 1, gold)
    end
end)
```

### Atención

Un elemento que no es vehículo, ped, jugador u objeto es un error.

## Ver también

- [engineRestoreElementMaterial (Cliente)](https://wiki.mymp.gg/es/engineRestoreElementMaterial.md): Deshace lo que hizo engineSetElementMaterial de este recurso de un único vehículo, ped u objeto.
- [engineSetModelMaterial (Cliente)](https://wiki.mymp.gg/es/engineSetModelMaterial.md): Reemplaza los materiales elegidos de todas las instancias de un modelo por un material.
- [engineSetElementTexture (Cliente)](https://wiki.mymp.gg/es/engineSetElementTexture.md): Cambia una textura de un solo vehículo, ped, jugador u objeto. Las demás instancias del mismo modelo conservan sus texturas.
- [engineCreateMaterial (Cliente)](https://wiki.mymp.gg/es/engineCreateMaterial.md): Crea un material: un shader con valores de parámetros, que luego reemplaza o se superpone a los materiales de los modelos.
