if (!this.item.name.includes("(") || this.item.system.tests.value.includes("Terrain") || this.item.system.tests.value.toLowerCase().includes("(any)"))
{
    let tests = this.item.system.tests.value
    let name = this.item.name

    // Si le nom précise déjà un terrain, on met à jour la valeur de tests
    if (name.includes("(") && !name.toLowerCase().includes("(any)"))
    {
        let terrain = name.split("(")[1].split(")")[0]
        tests = tests.replace("the Terrain", terrain)
    }
    else // Sinon, on propose un choix par dialogue
    {
        let choice = await ItemDialog.create(ItemDialog.objectToArray({
            coastal : "Littoral",
            deserts : "Déserts",
            marshes : "Marécages",
            rocky : "Rocailleux",
            tundra : "Toundra",
            woodlands : "Régions boisées"
        }, this.item.img), 1, "Choisissez un Terrain");
        if (choice[0])
        {
            name = `${name.split("(")[0].trim()} (${choice[0].name})`
            tests = tests.replace("the Terrain", choice[0].name + " Terrain")
        }
    }

    this.effect.updateSource({name})
    this.item.updateSource({name, "system.tests.value" : tests})
}