Compare commits

..

4 Commits

Author SHA1 Message Date
9448407e41 12.0.27 - Les vêtements d'Astrobazzarh 2024-12-07 20:31:34 +01:00
32adbb721f Suppression items inutiles
Les compétences de personnages ne sont pas
utilisables/visibles sur les entités
2024-12-07 20:31:33 +01:00
f3120f34d0 Rename compétence Équitation 2024-12-07 20:31:33 +01:00
c6feac41c6 Import compétences avec spécialisations
ie: Musique (Harpe) +6
2024-12-07 20:31:33 +01:00

View File

@ -195,17 +195,16 @@ export class RdDStatBlockParser {
const competences = await SystemCompendiums.getCompetences(actorData.flags.type);
//console.log("Competences : ", competences);
for (let competence of competences) {
let compSourceString = statString
let pushed = actorData.flags.type != "personnage"
let compNameToSearch = RdDStatBlockParser.fixCompName(competence.name)
let compMatch = XRegExp.exec(compSourceString, XRegExp("\\s" + compNameToSearch + compParser[actorData.flags.type], 'giu'))
while (compMatch) {
items.push(RdDStatBlockParser.prepareCompetence(actorData, competence, compMatch))
// pour gérer les compétences avec spécialisations, si elle est trouvée, chercher si elle apparaît dans la suite
compSourceString = compSourceString.substring(compSourceString.indexOf(compNameToSearch) + compNameToSearch.length)
compMatch = XRegExp.exec(compSourceString, XRegExp("\\s" + compNameToSearch + compParser[actorData.flags.type], 'giu'))
}
if (actorData.flags.type == "personnage" && compSourceString.length == statString.length) {
XRegExp.forEach(statString, XRegExp("\\s" + compNameToSearch + compParser[actorData.flags.type], 'giu'),
function (compMatch, i) {
items.push(RdDStatBlockParser.prepareCompetence(actorData, competence, compMatch))
if (!compMatch.special) {
pushed = true
}
})
if (!pushed) {
// ajout niveau de base
items.push(competence.toObject())
}