From 560befa481d93af4d50b9d6bb6bc06780ac0d07a Mon Sep 17 00:00:00 2001 From: Matheus Clemente Date: Wed, 31 Jan 2024 20:12:34 -0300 Subject: [PATCH] Fix for Unavailable languages on actors --- src/module/providers/pf2e.js | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) diff --git a/src/module/providers/pf2e.js b/src/module/providers/pf2e.js index bc59d72..51f4f5b 100644 --- a/src/module/providers/pf2e.js +++ b/src/module/providers/pf2e.js @@ -310,21 +310,16 @@ export default class pf2eLanguageProvider extends LanguageProvider { getUserLanguages(actor) { let knownLanguages = new Set(); let literateLanguages = new Set(); - if (actor.system?.details?.languages) { - for (let lang of actor.system.details.languages.value) { - if (lang === "common") { - const common = game.settings.get("pf2e", "homebrew.languageRarities").commonLanguage; - knownLanguages.add(common); - } else if (lang in CONFIG.PF2E.languages) { + const languageRarities = game.settings.get("pf2e", "homebrew.languageRarities"); + const actorLanguages = actor.system?.details?.languages; + if (actorLanguages) { + for (let lang of actorLanguages.value) { + if (lang === "common" && languageRarities.commonLanguage) { + knownLanguages.add(languageRarities.commonLanguage); + } else if (lang in CONFIG.PF2E.languages && !languageRarities.unavailable.has(lang)) { knownLanguages.add(lang); } } - if (actor.system.details.languages.custom) { - for (let lang of actor.system.details.languages.custom.split(/[,;]/)) { - const key = lang.trim().toLowerCase(); - knownLanguages.add(key); - } - } } return [knownLanguages, literateLanguages]; }