Divers ajouts
This commit is contained in:
@@ -40,6 +40,7 @@ export class HeritiersActorSheet extends ActorSheet {
|
||||
skills: this.actor.getSkills(),
|
||||
utileSkills :this.actor.organizeUtileSkills(),
|
||||
futileSkills :this.actor.organizeFutileSkills(),
|
||||
contacts: this.actor.organizeContacts(),
|
||||
armes: duplicate(this.actor.getWeapons()),
|
||||
monnaies: duplicate(this.actor.getMonnaies()),
|
||||
fee: duplicate(this.actor.getFee() || {} ),
|
||||
@@ -50,9 +51,13 @@ export class HeritiersActorSheet extends ActorSheet {
|
||||
atouts: duplicate(this.actor.getAtouts()),
|
||||
capacites: duplicate(this.actor.getCapacites()),
|
||||
desavantages: duplicate(this.actor.getDesavantages()),
|
||||
profils: duplicate(this.actor.getProfils()),
|
||||
pvMalus: this.actor.getPvMalus(),
|
||||
initiative: this.actor.getFlag("world", "last-initiative") || -1,
|
||||
description: await TextEditor.enrichHTML(this.object.system.biodata.description, {async: true}),
|
||||
revesetranges: await TextEditor.enrichHTML(this.object.system.biodata.revesetranges, {async: true}),
|
||||
secretsdecouverts: await TextEditor.enrichHTML(this.object.system.biodata.secretsdecouverts, {async: true}),
|
||||
questions: await TextEditor.enrichHTML(this.object.system.biodata.questions, {async: true}),
|
||||
habitat: await TextEditor.enrichHTML(this.object.system.biodata.habitat, {async: true}),
|
||||
options: this.options,
|
||||
owner: this.document.isOwner,
|
||||
|
||||
@@ -104,7 +104,7 @@ export class HeritiersActor extends Actor {
|
||||
|
||||
/* ----------------------- --------------------- */
|
||||
getEquipments() {
|
||||
return this.items.filter(item => item.type == "equipement")
|
||||
return this.items.filter(item => item.type == "equipement" || item.type == "accessoire")
|
||||
}
|
||||
getAvantages() {
|
||||
return this.items.filter(item => item.type == "avantage")
|
||||
@@ -133,6 +133,9 @@ export class HeritiersActor extends Actor {
|
||||
getFee() {
|
||||
return this.items.find(item => item.type == "fee")
|
||||
}
|
||||
getProfils() {
|
||||
return this.items.filter(item => item.type == "profil")
|
||||
}
|
||||
/* -------------------------------------------- */
|
||||
getSkills() {
|
||||
let comp = []
|
||||
@@ -145,6 +148,18 @@ export class HeritiersActor extends Actor {
|
||||
return HeritiersUtility.sortByName(comp)
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
prepareUtileSkill(item) {
|
||||
let specList = []
|
||||
if (item.system.categorie == "utile") {
|
||||
for (let spec of item.system.specialites) {
|
||||
specList.push(spec.name)
|
||||
}
|
||||
}
|
||||
item.nbSpec = specList.length
|
||||
item.specList = specList.toString()
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
organizeUtileSkills() {
|
||||
let comp = {}
|
||||
@@ -154,12 +169,25 @@ export class HeritiersActor extends Actor {
|
||||
for (let item of this.items) {
|
||||
if (item.type == "competence") {
|
||||
if (item.system.categorie == "utile") {
|
||||
this.prepareUtileSkill(item)
|
||||
comp[item.system.profil].push(item)
|
||||
}
|
||||
}
|
||||
}
|
||||
return comp
|
||||
}
|
||||
/* -------------------------------------------- */
|
||||
organizeContacts( ) {
|
||||
let contactList = {}
|
||||
for (let item of this.items) {
|
||||
if (item.type == "contact") {
|
||||
let c = contactList[item.system.contacttype] || { label: game.system.lesheritiers.config.contactType[item.system.contacttype], list: [] }
|
||||
c.list.push( item )
|
||||
contactList[item.system.contacttype] = c
|
||||
}
|
||||
}
|
||||
return contactList
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
organizeFutileSkills() {
|
||||
@@ -463,15 +491,18 @@ export class HeritiersActor extends Actor {
|
||||
rollData.tricherie = this.getTricherie()
|
||||
rollData.heritage = this.getHeritages()
|
||||
rollData.useTricherie = false
|
||||
rollData.useSpecialite = false
|
||||
rollData.useHeritage = false
|
||||
rollData.pvMalus = this.getPvMalus()
|
||||
|
||||
if (compId) {
|
||||
rollData.competence = duplicate(this.items.get(compId) || {})
|
||||
this.prepareUtileSkill(rollData.competence)
|
||||
rollData.actionImg = rollData.competence?.img
|
||||
}
|
||||
if (compName) {
|
||||
rollData.competence = duplicate(this.items.find(item => item.name.toLowerCase() == compName.toLowerCase()) || {})
|
||||
this.prepareUtileSkill(rollData.competence)
|
||||
rollData.actionImg = rollData.competence?.img
|
||||
}
|
||||
return rollData
|
||||
|
||||
@@ -16,6 +16,13 @@ export const HERITIERS_CONFIG = {
|
||||
"utile": "Utile",
|
||||
"futile": "Futile"
|
||||
},
|
||||
|
||||
contactType: {
|
||||
contact: "Contact",
|
||||
allie: "Allié",
|
||||
ennemi: "Ennemi",
|
||||
interet: "Personne d'interêt"
|
||||
},
|
||||
|
||||
competenceProfil : {
|
||||
"aventurier": "Aventurier",
|
||||
|
||||
@@ -15,8 +15,8 @@ export const defaultItemImg = {
|
||||
arme: "systems/fvtt-les-heritiers/assets/icons/weapon.webp",
|
||||
accessoire: "systems/fvtt-les-heritiers/assets/icons/item.webp",
|
||||
protection: "systems/fvtt-les-heritiers/assets/icons/armor.webp",
|
||||
fee: "systems/fvtt-les-heritiers/assets/icons/faery_type.webp"
|
||||
|
||||
fee: "systems/fvtt-les-heritiers/assets/icons/faery_type.webp",
|
||||
profil: "systems/fvtt-les-heritiers/assets/icons/profil.webp"
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -90,6 +90,9 @@ export class HeritiersRollDialog extends Dialog {
|
||||
html.find('#useTricherie').change((event) => {
|
||||
this.rollData.useTricherie = event.currentTarget.checked
|
||||
})
|
||||
html.find('#useSpecialite').change((event) => {
|
||||
this.rollData.useSpecialite = event.currentTarget.checked
|
||||
})
|
||||
html.find('#useHeritage').change((event) => {
|
||||
this.rollData.useHeritage = event.currentTarget.checked
|
||||
})
|
||||
|
||||
@@ -345,7 +345,8 @@ export class HeritiersUtility {
|
||||
//console.log("BEFORE COMP", rollData)
|
||||
if (rollData.competence) {
|
||||
let compmod = (rollData.competence.system.niveau == 0) ? -3 : 0
|
||||
rollData.diceFormula += `+${rollData.carac.value}+${rollData.competence.system.niveau}+${rollData.bonusMalusContext}+${compmod}`
|
||||
let specBonus = (rollData.useSpecialite) ? 1 : 0
|
||||
rollData.diceFormula += `+${rollData.carac.value}+${rollData.competence.system.niveau}+${specBonus}+${rollData.bonusMalusContext}+${compmod}`
|
||||
} else {
|
||||
rollData.diceFormula += `+${rollData.carac.value}+${rollData.bonusMalusContext}`
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user