Update scripts

This commit is contained in:
2024-10-08 20:52:09 +02:00
parent 1f1d871e53
commit fc4fa1deb5
178 changed files with 12247 additions and 10701 deletions

View File

@ -1,129 +1,129 @@
let choice1 = [
{
type: "armour",
name: "Chausses de Mailles"
},
{
type: "armour",
name: "Cotte de Mailles"
},
{
type: "armour",
name: "Coiffe de Mailles"
},
{
type : "armour",
name : "Mail Chausses"
},
{
type : "armour",
name : "Mail Coat"
},
{
type : "armour",
name : "Mail Coif"
},
]
let choice2 = [
{
type: "armour",
name: "Chausses de Mailles"
},
{
type: "armour",
name: "Cotte de Mailles"
},
{
type: "armour",
name: "Coiffe de Mailles"
},
{
type: "armour",
name: "Jambières de Cuir"
},
{
type: "armour",
name: "Calotte de Cuir"
},
{
type: "armour",
name: "Veste de Cuir"
},
{
type : "armour",
name : "Mail Chausses"
},
{
type : "armour",
name : "Mail Coat"
},
{
type : "armour",
name : "Mail Coif"
},
{
type : "armour",
name : "Leather Leggings"
},
{
type : "armour",
name : "Leather Skullcap"
},
{
type : "armour",
name : "Leather Jack"
},
]
let choice3 = [
{
type: "armour",
name: "Plastron d'acier"
},
{
type: "armour",
name: "Brassards"
},
{
type: "armour",
name: "Heaume"
},
{
type: "armour",
name: "Jambières d'acier"
},
{
type : "armour",
name : "Plate Breastplate"
},
{
type : "armour",
name : "Plate Bracers"
},
{
type : "armour",
name : "Plate Helm"
},
{
type : "armour",
name : "Plate Leggings"
},
]
let choice = await new Promise((resolve, reject) => {
new Dialog({
title: "Choix",
content:
`<p>
Selectionnez votre choix
new Dialog({
title : "Choice",
content :
`<p>
Select your choice
</p>
<ol>
<li>Mailles</li>
<li>Mailles & Cuir</li>
<li>Plates</li>
<li>Mail</li>
<li>Mail & Leather</li>
<li>Plate</li>
</ol>
`,
buttons: {
1: {
label: "Mailles",
callback: () => {
resolve(choice1)
buttons : {
1 : {
label : "Mail",
callback : () => {
resolve(choice1)
}
},
2 : {
label : "Mail & Leather",
callback : () => {
resolve(choice2)
}
},
3 : {
label : "Plate",
callback : () => {
resolve(choice3)
}
}
}
},
2: {
label: "Mailles & Cuir",
callback: () => {
resolve(choice2)
}
},
3: {
label: "Plates",
callback: () => {
resolve(choice3)
}
}
}
}).render(true)
})
}).render(true)
})
let updateObj = this.actor.toObject();
let items = []
for (let c of choice) {
let existing
if (c.type == "skill") {
existing = updateObj.items.find(i => i.name == c.name && i.type == c.type)
if (existing && c.diff?.system?.advances?.value) {
existing.system.advances.value += c.diff.system.advances.value
for (let c of choice)
{
let existing
if (c.type == "skill")
{
existing = updateObj.items.find(i => i.name == c.name && i.type == c.type)
if (existing && c.diff?.system?.advances?.value)
{
existing.system.advances.value += c.diff.system.advances.value
}
}
}
if (!existing) {
let item = await game.wfrp4e.utility.find(c.name, c.type)
if (item) {
item = item.toObject()
equip(item);
items.push(foundry.utils.mergeObject(item, (c.diff || {})))
if (!existing)
{
let item = await game.wfrp4e.utility.find(c.name, c.type)
if (item)
{
let equip = item.system.tags.has("equippable");
item = item.toObject()
if (equip)
{
item.system.equipped.value = true;
}
items.push(foundry.utils.mergeObject(item, (c.diff || {})))
}
else
ui.notifications.warn(`Impossible de trouver ${c.name}`, {permanent : true})
}
else
ui.notifications.warn(`Impossible de trouver ${c.name}`, { permanent: true })
}
}
await this.actor.update(updateObj)
this.actor.createEmbeddedDocuments("Item", items);
function equip(item) {
if (item.type == "armour")
item.system.worn.value = true
else if (item.type == "weapon")
item.system.equipped = true
else if (item.type == "trapping" && item.system.trappingType.value == "clothingAccessories")
item.system.worn = true
}