31 lines
1.0 KiB
JavaScript
31 lines
1.0 KiB
JavaScript
|
if (!this.item.name.includes("(") || this.item.system.tests.value.includes("Terrain"))
|
||
|
{
|
||
|
let tests = this.item.system.tests.value
|
||
|
let name = this.item.name
|
||
|
|
||
|
// If name already specifies, make sure tests value reflects that
|
||
|
if (name.includes("("))
|
||
|
{
|
||
|
let terrain = name.split("(")[1].split(")")[0]
|
||
|
tests = tests.replace("the Terrain", terrain)
|
||
|
}
|
||
|
else // If no sense specified, provide dialog choice
|
||
|
{
|
||
|
let choice = await ItemDialog.create(ItemDialog.objectToArray({
|
||
|
coastal : "Coastal",
|
||
|
deserts : "Deserts",
|
||
|
marshes : "Marshes",
|
||
|
rocky : "Rocky",
|
||
|
tundra : "Tundra",
|
||
|
woodlands : "Woodlands"
|
||
|
}, this.item.img), 1, "Choose 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})
|
||
|
}
|