# Emotes

Los emotes son los [entidades](https://github.com/decentraland/docs/blob/main/contributor/entities/README.md) que contienen animaciones para los avatares de los jugadores.

Incluyen archivos en formato GLB para diferentes body shapes.

### Punteros <a href="#pointers" id="pointers"></a>

Los emotes tienen exactamente un asociado [pointer](https://github.com/decentraland/docs/blob/main/contributor/pointers/README.md), que indica la colección a la que pertenecen y su índice dentro de ella. Son URNs de esta forma:

```
urn:decentraland:matic:collections-v2:<dirección de la colección>:<índice del elemento>
```

Para ilustrar, el `pointers` array para un emote se ve así:

```json
{
  "pointers": [
    "urn:decentraland:matic:collections-v2:0x2d9560df9dd8ba8b2dc3746bc1d217698d258fb5:0"
  ],
  // ... otras propiedades de la entidad
}
```

### Campos de metadata

Los emotes comparten la mayoría de sus campos básicos con [wearables](https://github.com/decentraland/docs/blob/main/contributor/entity-types/wearables/README.md). El `emoteDataADR74` propiedad es donde se encuentra la información específica del emote.

| Campo               | Valor                                                                                                                                                           |
| ------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                | El [pointer](https://github.com/decentraland/docs/blob/main/contributor/pointers/README.md) que resuelve (o solía resolver) a este emote.                       |
| `name`              | El título para mostrar de este emote en un [collection](https://github.com/decentraland/docs/blob/main/contributor/collections/README.md).                      |
| `description`       | Una descripción extendida para este emote.                                                                                                                      |
| `imagen`            | El [nombre de archivo interno](https://github.com/decentraland/docs/blob/main/contributor/entities/README.md#files) con una imagen para este emote.             |
| `miniatura`         | El [nombre de archivo interno](https://github.com/decentraland/docs/blob/main/contributor/entities/README.md#files) para una versión de 256x256 de la `imagen`. |
| `rareza`            | Uno de `común`, `poco común`, `raro`, `épico`, `legendario`, `exótico`, `mítico` o `único`.                                                                     |
| `i18n`              | Un array de traducciones para el campo `name` del.                                                                                                              |
| `collectionAddress` | La dirección de Ethereum de la colección que contiene este emote.                                                                                               |
| `metrics`           | Algunas mediciones útiles sobre las animaciones (ver abajo).                                                                                                    |
| `emoteDataADR74`    | Los metadatos extendidos para este emote, como se define en [ADR-74](https://adr.decentraland.org/adr/ADR-74) (ver abajo).                                      |

Así es como luce un JSON típico:

```json
{
  "id": "urn:decentraland:matic:collections-v2:0x2d9560df9dd8ba8b2dc3746bc1d217698d258fb5:0",
  "name": "Funny Dance",
  "description": "Move around like a champ",
  "image": "image.png",
  "thumbnail": "thumbnail.png",
  "rarity": "rare",
  "i18n": [
    { "code": "es", "text": "Danza Graciosa" }
  ],
  "collectionAddress": "0x2d9560df9dd8ba8b2dc3746bc1d217698d258fb5",
  "metrics": {
    // Objeto de mediciones (ver abajo).
  },
  "emoteDataADR74": {
    // Metadatos extendidos definidos en ADR-74 (ver abajo).
  }
}
```

### Métricas

En la `metadata.metrics` objeto, encontrarás algunas mediciones simples para la animación empaquetada con este emote. Un ejemplo:

```json
{
  "triangles": 0,
  "materials": 0,
  "textures": 0,
  "meshes": 0,
  "bodies": 0,
  "entities": 1
}
```

### Emote Data ADR-74

Este objeto contiene los campos que los World Explorers (u otras aplicaciones gráficas) necesitan para animar modelos con este emote.

| Campo             | Valor                                                                                          |
| ----------------- | ---------------------------------------------------------------------------------------------- |
| `category`        | Uno de `dance`, `stunt`, `greetings`, `fun`, `poses`, `reactions`, `horror` o `miscellaneous`. |
| `representations` | Un array de archivos de animación asociados a diferentes body shapes.                          |
| `tags`            | Un array de etiquetas (strings) descriptivas de este emote.                                    |
| `loop`            | `true` si la animación debe repetirse una vez que termina.                                     |

Un poco de JSON para mayor claridad:

```json
{
  "category": "dance",
  "representations": [
    // Información sobre la animación para diferentes body shapes (ver abajo).
  ],
  "tags": [ "carnaval", "dance" ],
  "loop": true
}
```

#### Representaciones

Cada elemento en el `metadata.emoteDataADR74.representations` campo define los archivos de animación apropiados para cada body shape.

| Campo        | Valor                                                                                                                                              |
| ------------ | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| `bodyShapes` | Un array de body shape aplicables [pointers](https://github.com/decentraland/docs/blob/main/contributor/pointers/README.md).                       |
| `mainFile`   | El [nombre de archivo interno](https://github.com/decentraland/docs/blob/main/contributor/entities/README.md#files) para el archivo GLB principal. |
| `contents`   | Todos los archivos, incluyendo `mainFile` y cualquier adicional que pueda referenciar.                                                             |

Por ejemplo, una `representation` entrada:

```json
{
  "bodyShapes": [ "urn:decentraland:off-chain:base-avatars:BaseMale" ],
  "mainFile": "male/funnydance.glb",
  "contents": [
    "male/funnydance.glb"
  ]
}
```

Comúnmente encontrarás dos entradas de representation, una para `BaseMale` y una para `BaseFemale`.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.decentraland.org/contributor/contributor-es/contenido/tipos-de-entity/emotes.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
