> ## Documentation Index
> Fetch the complete documentation index at: https://rust-co.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# API & événements

> Intégrations publiques RCO Appearance pour éditeurs, apparence, vêtements, dress/undress, wardrobe et Quick Clothing.

Règle principale : **un changement visible sur le ped n'est pas automatiquement sauvegardé pour le personnage**.

## Éditeurs persistants

Depuis du code server fiable :

```lua theme={"dark"}
exports['rco-appearance']:OpenEditor(source, { mode = 'barber' })
exports['rco-appearance']:OpenWardrobe(source)
```

Les ouvertures persistantes côté client retournent `false, 'server_authorization_required'`. `OpenEditorLocal(options)` est uniquement local/visuel.

## Apparence visuelle

```lua theme={"dark"}
exports['rco-appearance']:ApplyAppearance(snapshot)
local snapshot = exports['rco-appearance']:GetAppearance(ped)
exports['rco-appearance']:ReloadAppearance()
```

Server :

```lua theme={"dark"}
exports['rco-appearance']:ReloadAppearance(source)
```

`ApplyAppearance` ne sauvegarde pas en base de données.

## Helpers vêtements

```lua theme={"dark"}
local item = exports['rco-appearance']:GetEquipped('hats')
exports['rco-appearance']:EquipCategory('hats', itemData)
exports['rco-appearance']:UnequipCategory('hats')
```

Ils agissent sur le ped live, pas sur la persistance.

## Dress / Undress

```lua theme={"dark"}
exports['rco-appearance']:Undress()
exports['rco-appearance']:Dress()
exports['rco-appearance']:SetUndressed(true)
exports['rco-appearance']:SetUndressed(false)
```

`Undress` retire les vêtements visuellement. `Dress` redemande l'apparence RCO sauvegardée. Un undress temporaire ne réécrit pas le snapshot enregistré.

## État de l'éditeur

```lua theme={"dark"}
local open = exports['rco-appearance']:IsEditorOpen()
```

## Persistance / outfits

```lua theme={"dark"}
exports['rco-appearance']:GetAppearanceForCharacter(charId, function(snapshot, err) end)
exports['rco-appearance']:SetAppearanceForCharacter(charId, snapshot, function(ok, err) end)
exports['rco-appearance']:ListOutfits(source, function(outfits, err) end)
```

## Quick Clothing

```lua theme={"dark"}
exports['rco-appearance']:ToggleClothing('hat')
exports['rco-appearance']:ToggleClothing('holsters')
exports['rco-appearance']:SetClothingVisible('coat', false)
exports['rco-appearance']:ToggleSleeves()
exports['rco-appearance']:SetSleeves('rolled')
exports['rco-appearance']:ToggleCollar()
exports['rco-appearance']:SetCollar('open')
exports['rco-appearance']:TogglePantsTuck()
exports['rco-appearance']:SetPantsTucked(true)
exports['rco-appearance']:ToggleGunBelt()
exports['rco-appearance']:ToggleClosedCoat()
```

Pour les gun holsters, utilisez la catégorie `holsters`. `ToggleGunBelt()` est un helper pour `gunbelt`; `ToggleClosedCoat()` est un alias du groupe logique `coat`.

Server :

```lua theme={"dark"}
exports['rco-appearance']:SetPlayerClothingVisible(source, 'hat', false)
exports['rco-appearance']:TogglePlayerClothing(source, 'holsters')
exports['rco-appearance']:SetPlayerClothingTransform(source, 'sleeves', 'rolled')
exports['rco-appearance']:ResetPlayerClothingToggles(source)
```

Voir [Quick Clothing](/fr/rco-appearance/quick-clothing).
