Fix trait translation

This commit is contained in:
2023-09-16 15:27:37 +02:00
parent 959e0e0555
commit 0650e39019
2 changed files with 98 additions and 60 deletions

View File

@ -152,7 +152,7 @@ Hooks.once('init', () => {
let compendiumName = 'wfrp4e-core.skills' // Per default
if (game.system.version.match("7.")) {
compendiumName = 'wfrp4e-core.items'
}
}
//console.log( "Thru here ...", compendium, skills_list);
if (skills_list) {
let i;
@ -198,13 +198,13 @@ Hooks.once('init', () => {
return results
}
// Auto patch
if (results[0].text.includes("wfrp4e-core.career-descriptions") ) {
if (results[0].text.includes("wfrp4e-core.career-descriptions")) {
if (game.system.version.match("7.")) {
results[0].text = "wfrp4e-core.journals"
} else {
results[0].text = "wfrp4e-core.journal-entries"
results[0].text = "wfrp4e-core.journal-entries"
}
}
}
if (results[0].text.includes("wfrp4e-core.journal")) {
for (let data of results) {
let career = data.text.match(/{(.*)}/)
@ -237,7 +237,7 @@ Hooks.once('init', () => {
let compendiumName = 'wfrp4e-core.talents' // Per default
if (game.system.version.match("7.")) {
compendiumName = 'wfrp4e-core.items'
}
}
let i;
if (talents_list) {
let len = talents_list.length;
@ -261,7 +261,7 @@ Hooks.once('init', () => {
if (res2) {
transl = res2[1] + " (" + subword + ")";
} else {
transl = translw
transl = translw
}
}
}
@ -316,18 +316,23 @@ Hooks.once('init', () => {
let compendiumName = 'wfrp4e-core.traits' // Per default
if (game.system.version.match("7.")) {
compendiumName = 'wfrp4e-core.items'
}
}
let trait_fr = game.babele.translate(compendiumName, { name: name_en }, true);
//console.log(">>>>> Trait ?", name_en, nbt, trait_fr, trait_fr.name, special);
trait_fr.name = trait_fr.name || trait_en.name
trait_en.name = nbt + trait_fr.name + special;
if (trait_fr?.name) {
trait_fr.name = trait_fr.name || trait_en.name
trait_en.name = nbt + trait_fr.name + special;
}
if (trait_fr.system?.description?.value) {
trait_en.system.description.value = trait_fr.system.description.value;
} else if (game.modules.get('wfrp4e-eis')) { // No description in the FR compendium -> test other compendium if presenr
trait_fr = game.babele.translate('wfrp4e-eis.items', { name: name_en }, true);
trait_en.name = nbt + trait_fr.name + special;
if (trait_fr.system?.description?.value)
trait_en.system.description.value = trait_fr.system.description.value;
if (trait_fr?.name) {
trait_en.name = nbt + trait_fr.name + special
}
if (trait_fr.system?.description?.value) {
trait_en.system.description.value = trait_fr.system.description.value
}
}
if (trait_en.system?.specification && isNaN(trait_en.system.specification.value)) { // This is a string, so translate it
//console.log("Translating : ", trait_en.system.specification.value);
@ -343,7 +348,7 @@ Hooks.once('init', () => {
let compendiumSkills = 'wfrp4e-core.skills' // Per default
if (game.system.version.match("7.")) {
compendiumSkills = 'wfrp4e-core.items'
}
}
let trait_fr = game.babele.translate(compendiumSkills, { name: name_en }, true);
//console.log(">>>>> Skill ?", name_en, special, trait_fr.name, trait_fr);
trait_fr.name = trait_fr.name || name_en
@ -358,7 +363,7 @@ Hooks.once('init', () => {
let compendiumPrayers = 'wfrp4e-core.prayers' // Per default
if (game.system.version.match("7.")) {
compendiumPrayers = 'wfrp4e-core.items'
}
}
let trait_fr = game.babele.translate(compendiumPrayers, { name: name_en }, true);
//console.log(">>>>> Prayer ?", name_en, special, trait_fr.name );
trait_fr.name = trait_fr.name || name_en
@ -370,7 +375,7 @@ Hooks.once('init', () => {
let compendiumSpells = 'wfrp4e-core.spells' // Per default
if (game.system.version.match("7.")) {
compendiumSpells = 'wfrp4e-core.items'
}
}
let trait_fr = game.babele.translate(compendiumSpells, { name: name_en }, true)
if (trait_fr.name == name_en) { // If no translation, test eisspells
trait_fr = game.babele.translate('wfrp4e-eis.eisspells', { name: name_en }, true);
@ -383,8 +388,8 @@ Hooks.once('init', () => {
trait_en.name = trait_fr.name + special;
if (trait_fr.system?.description?.value)
trait_en.system.description.value = trait_fr.system.description.value;
} else if (trait_en.type == "talent") {
} else if (trait_en.type == "talent") {
if (name_en.includes("(") && name_en.includes(")")) { // Then process specific skills name with (xxxx) inside
let re = /(.*) +\((.*)\)/i;
let res = re.exec(name_en);
@ -394,7 +399,7 @@ Hooks.once('init', () => {
let compendiumTalents = 'wfrp4e-core.talents' // Per default
if (game.system.version.match("7.")) {
compendiumTalents = 'wfrp4e-core.items'
}
}
let trait_fr = game.babele.translate(compendiumTalents, { name: name_en }, true)
trait_fr.name = trait_fr.name || name_en // Security since babele v10
//console.log(">>>>> Talent ?", trait_fr, name_en, special, trait_fr.name);
@ -412,11 +417,11 @@ Hooks.once('init', () => {
let compendiumCareers = 'wfrp4e-core.careers' // Per default
if (game.system.version.match("7.")) {
compendiumCareers = 'wfrp4e-core.items'
}
}
let career_fr = game.babele.translate(compendiumCareers, { name: name_en }, true);
trait_en.name = career_fr.name || trait_en.name
//console.log(">>>>> Career ?", career_fr.name );
if ( career_fr?.system) {
if (career_fr?.system) {
trait_en.system = duplicate(career_fr.system);
}
@ -424,8 +429,8 @@ Hooks.once('init', () => {
let compendiumTrappings = 'wfrp4e-core.trappings' // Per default
if (game.system.version.match("7.")) {
compendiumTrappings = 'wfrp4e-core.items'
}
let trapping_fr = game.babele.translate(compendiumTrappings, { name: name_en }, true);
}
let trapping_fr = game.babele.translate(compendiumTrappings, { name: name_en }, true);
//console.log(">>>>> Trapping ?", name_en, trapping_fr.name);
trait_en.name = trapping_fr.name || trait_en.name
if (trapping_fr.system?.description?.value) {
@ -484,7 +489,7 @@ Hooks.once('init', () => {
let compendiumCareers = 'wfrp4e-core.careers' // Per default
if (game.system.version.match("7.")) {
compendiumCareers = 'wfrp4e-core.items'
}
}
let compendium = game.packs.find(p => p.collection === compendiumCareers);
if (compendium) {
let newName = game.babele.translate(compendiumCareers, { name: value }).name
@ -622,7 +627,7 @@ function registerUsageCount(registerKey) {
/*---------------------------------------------------------------------*/
Hooks.once('ready', () => {
registerUsageCount("wh4-fr-translation")