

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Esempio: crea una regola che utilizza la lista dei blocchi di un giocatore
<a name="match-examples-11"></a>

Questo esempio illustra un set di regole che consente ai giocatori di evitare di essere abbinati a determinati altri giocatori. I giocatori possono creare una lista di blocco, che il matchmaker valuta durante la selezione dei giocatori per una partita. Per ulteriori informazioni su come aggiungere una lista di blocco o evitare la funzione di elenco, consulta [Games AWS Blog](https://aws.amazon.com/blogs/gametech/category/game-development/amazon-gamelift/).

Questo esempio riporta le seguenti istruzioni:
+ Crea due squadre composte esattamente da cinque giocatori.
+ Inserisci la lista di blocco di un giocatore, che è una lista di giocatori IDs (fino a 100).
+ Confronta tutti i giocatori con la lista di blocco di ogni giocatore e rifiuta una partita proposta se IDs ne trovi uno bloccato.

Note sull'utilizzo di questo set di regole: 
+ Quando si valuta un nuovo giocatore da aggiungere a una partita proposta (o per recuperare un posto in una partita esistente), il giocatore potrebbe essere respinto per uno dei seguenti motivi: 
  + Se il nuovo giocatore è in una lista di blocco per tutti i giocatori che sono già stati selezionati per la partita. 
  + Se alcuni giocatori già selezionati per la partita sono nella lista di blocco del nuovo giocatore.
+ Come mostrato, questo set di regole impedisce di abbinare un giocatore a qualsiasi giocatore nella sua lista di blocco. Puoi modificare questo requisito in una preferenza (chiamata anche lista «da evitare») aggiungendo un'espansione della regola e aumentando il `maxCount` valore.

```
{
    "name": "Player Block List",
    "ruleLanguageVersion": "1.0",
    "teams": [{
        "maxPlayers": 5,
        "minPlayers": 5,
        "name": "red"
    }, {
        "maxPlayers": 5,
        "minPlayers": 5,
        "name": "blue"
    }],
    "playerAttributes": [{
        "name": "BlockList",
        "type": "string_list",
        "default": []
    }],
    "rules": [{
        "name": "PlayerIdNotInBlockList",
        "type": "collection",
        "operation": "reference_intersection_count",
        "measurements": "flatten(teams[*].players.attributes[BlockList])",
        "referenceValue": "flatten(teams[*].players[playerId])",
        "maxCount": 0
    }]
}
```