

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Ejemplo: Comparar atributos entre todos los jugadores
<a name="match-examples-6"></a>

Este ejemplo ilustra cómo comparar los atributos de los jugadores entre un grupo de jugadores. 

El conjunto de reglas del ejemplo describe un emparejamiento con las siguientes características: 
+ Estructura del equipo: dos equipos de un solo jugador
+ Atributos de los jugadores: 
  + *gameMode*: tipo de juego elegido por el jugador (si no se proporciona, el valor predeterminado es "turn-based" (por turnos)).
  + *gameMap*: mundo del juego elegido por el jugador (si no se proporciona, el valor predeterminado es 1).
  + *character* (personaje): personaje elegido por el jugador (si no hay ningún valor predeterminado, significa que los jugadores deben especificar un personaje).
+ Reglas de emparejamiento: los jugadores deben emparejarse de acuerdo con los requisitos siguientes: 
  + Los jugadores deben elegir el mismo modo de juego.
  + Los jugadores deben elegir el mismo mapa de juego.
  + Los jugadores deben elegir personajes distintos.

Notas sobre el uso de este conjunto de reglas: 
+ Para implementar la regla de emparejamiento, en este ejemplo se utilizan reglas de comparación para comprobar todos los valores de los atributos de los jugadores. Para el modo y el mapa de juego, la regla verifica que los valores sean los mismos. Para el personaje, la regla verifica que los valores sean distintos. 
+ En este ejemplo se utiliza una definición de jugador con una propiedad de cantidad para crear ambos equipos de jugadores. Al equipo se le asignan los siguientes nombres: "jugador\$11" y "jugador\$12".

```
{
    "name": "",
    "ruleLanguageVersion": "1.0",

    "playerAttributes": [{
        "name": "gameMode",
        "type": "string",
        "default": "turn-based"
    }, {
        "name": "gameMap",
        "type": "number",
        "default": 1
    }, {
        "name": "character",
        "type": "number"
    }],

    "teams": [{
        "name": "player",
        "minPlayers": 1,
        "maxPlayers": 1,
        "quantity": 2
    }],

    "rules": [{
        "name": "SameGameMode",
        "description": "Only match players when they choose the same game type",
        "type": "comparison",
        "operation": "=",
        "measurements": ["flatten(teams[*].players.attributes[gameMode])"]
    }, {
        "name": "SameGameMap",
        "description": "Only match players when they're in the same map",
        "type": "comparison",
        "operation": "=",
        "measurements": ["flatten(teams[*].players.attributes[gameMap])"]
    }, {
        "name": "DifferentCharacter",
        "description": "Only match players when they're using different characters",
        "type": "comparison",
        "operation": "!=",
        "measurements": ["flatten(teams[*].players.attributes[character])"]
    }]
}
```