---
description: Updates ped appearance.
---

# Update Appearance

## May be used anywhere

### SetPedAppearance

Updates everything from the head\_blend to the tattoos.

```lua
---@param entityPed number
---@param payload table
---@param forceUpdate nil | boolean?
---If forceUpdate is nil, updates SkinChanger.skinData
exports['nf-skin']:SetPedAppearance(entityPed, payload, forceUpdate)
```

### SetPedComponents

```lua
---@param entityPed number
---@param payload table
---@param forceUpdate nil | boolean?
---If forceUpdate is nil, updates SkinChanger.skinData

exports['nf-skin']:SetPedComponents(entityPed, {
    ['mask']      = { 0, 0 },
    ['arms']      = { 15, 0 },
    ['pants']     = { 15, 0 },
    ['bag']       = { 0, 0 },
    ['shoes']     = { 35, 0 },
})
```

### SetPedComponent

```lua
---@param entityPed number
---@param index string
---@param payload table
---@param forceUpdate nil | boolean?
---If forceUpdate is nil, updates SkinChanger.skinData

exports['nf-skin']:SetPedComponent(entityPed, 'mask', { 0, 0 })
```

### SetPedProps

```lua
---@param entityPed number
---@param payload table
---@param forceUpdate nil | boolean?
---If forceUpdate is nil, updates SkinChanger.skinData

exports['nf-skin']:SetPedProps(entityPed, {
    ['hat']      = { -1, 0 },
    ['glass']    = { -1, 0 },
})
```

### SetPedProp

```lua
---@param entityPed number
---@param index string
---@param payload table
---@param forceUpdate nil | boolean?
---If forceUpdate is nil, updates SkinChanger.skinData

exports['nf-skin']:SetPedProp(entityPed, 'hat', { -1, 0 })
```

## Should Used Only via UI

### SetPedHeadBlend

Updates heredity of ped.

```lua
---@param entityPed number
---@param payload table
---@param forceUpdate nil | boolean?
---If forceUpdate is nil, updates SkinChanger.skinData

exports['nf-skin']:SetPedHeadBlend(entityPed, {
    firstShape = 45,
    secondShape = 2,
    thirdShape = 21,
    firstSkin = 22,
    secondSkin = 13,
    thirdSkin = 7,
    shapeMix = 1.0,
    skinMix = 1.0,
    thirdMix = 1.0
})
```

### SetPedFaceFeatures

Updates micro morphs of ped.

```lua
---@param entityPed number
---@param payload table
---@param forceUpdate nil | boolean?
---If forceUpdate is nil, updates SkinChanger.skinData

exports['nf-skin']:SetPedFaceFeatures(entityPed, {
    ['eyebrow'] = { 1.0, 1.0 }
    ['chin_length_height'] = { 0.0, 0.0 }
})
```

### SetPedFaceFeature

Updates micro morph of ped.

```lua
---@param entityPed number
---@param index string
---@param payload table
---@param forceUpdate nil | boolean?
---If forceUpdate is nil, updates SkinChanger.skinData

exports['nf-skin']:SetPedFaceFeature(entityPed, 'eyebrow', { 1.0, 1.0 })
```

### SetPedHeadOverlays

Updates overlays of ped.

```lua
---@param entityPed number
---@param payload table
---@param forceUpdate nil | boolean?
---If forceUpdate is nil, updates SkinChanger.skinData

exports['nf-skin']:SetPedHeadOverlays(entityPed, {
    ['blush'] = { 2, 1.0, 4 }
    ['eyebrows'] = { 2, 0.0, 21 }
})
```

### SetPedHeadOverlay

Updates micro morph of ped.

```lua
---@param entityPed number
---@param index string
---@param payload table
---@param forceUpdate nil | boolean?
---If forceUpdate is nil, updates SkinChanger.skinData

exports['nf-skin']:SetPedHeadOverlay(entityPed, 'eyebrows', { 2, 1.0, 21 })
```

### ShrinkPedHead

Restrict head clipping through masks.

If current mask has restriction tag `SHRINK_HEAD` then changes your head\_blend.

```lua
---@param entityPed number
exports['nf-skin']:ShrinkPedHead(entityPed)
```
