Convert items from Sea of Claws and translate skills for vehicle roles #104

Merged
uberwald merged 7 commits from pallando/foundryvtt-wh4-lang-fr-fr:soc into v10 2024-10-11 20:09:51 +02:00
4 changed files with 100 additions and 1 deletions

View File

@ -0,0 +1,81 @@
{
"label": "Items (Sea of Claws)",
"mapping": {
"description": "system.description.value",
"trappings": "system.trappings",
"class": {
"path": "system.class.value",
"converter": "generic_localization"
},
"skills": {
"path": "system.skills",
"converter": "career_skills"
},
"careergroup": {
"path": "system.careergroup.value",
"converter": "career_careergroup"
},
"talents": {
"path": "system.talents",
"converter": "career_talents"
},
"pduration": {
"path": "system.duration.value",
"converter": "spells_duration_range_target_damage"
},
"prange": {
"path": "system.range.value",
"converter": "spells_duration_range_target_damage"
},
"ptarget": {
"path": "system.target.value",
"converter": "spells_duration_range_target_damage"
},
"pdamage": {
"path": "system.damage.value",
"converter": "spells_duration_range_target_damage"
},
"test": {
"path": "system.test",
"converter": "role_skills"
},
"tests": "system.tests.value",
"sduration": {
"path": "system.duration.value",
"converter": "spells_duration_range_target_damage"
},
"srange": {
"path": "system.range.value",
"converter": "spells_duration_range_target_damage"
},
"starget": {
"path": "system.target.value",
"converter": "spells_duration_range_target_damage"
},
"sdamage": {
"path": "system.damage.value",
"converter": "spells_duration_range_target_damage"
},
"penalty": "system.penalty.value",
"location": {
"path": "system.location.value",
"converter": "generic_localization"
},
"durationValue": "system.duration.value",
"durationUnit": "system.duration.unit",
"contraction": "system.contraction.value",
"incubationValue": "system.incubation.value",
"incubationUnit": "system.incubation.unit",
"symptoms": "system.symptoms.value",
"permanent": "system.permanent.value",
"special": "system.special.value",
"qualities": {
"path": "system.qualities.value",
"converter": "trapping_qualities_flaws"
},
"flaws": {
"path": "system.flaws.value",
"converter": "trapping_qualities_flaws"
}
}
}

View File

@ -193,6 +193,8 @@
"SETTINGS.TABLE_oops":"Maladresse!", "SETTINGS.TABLE_oops":"Maladresse!",
"SETTINGS.TABLE_species":"Espèces", "SETTINGS.TABLE_species":"Espèces",
"SETTINGS.TABLE_wrath":"Colère des Dieux", "SETTINGS.TABLE_wrath":"Colère des Dieux",
"SETTINGS.TABLE_port-stay-events":"Port Stay Events",
"SETTINGS.TABLE_shipboard-events":"Shipboard Events",
"SETTINGS.useWoMOvercast":"Utiliser les règles de sur-incantation de Winods of Magic", "SETTINGS.useWoMOvercast":"Utiliser les règles de sur-incantation de Winods of Magic",
"SETTINGS.useWoMOvercastHint":"Utiliser les règles de sur-incantation proposées par le supplément Winds of Magic, cf page 23.", "SETTINGS.useWoMOvercastHint":"Utiliser les règles de sur-incantation proposées par le supplément Winds of Magic, cf page 23.",
"SETTINGS.ChannellingIngredients":"Ingedients de Focalisation", "SETTINGS.ChannellingIngredients":"Ingedients de Focalisation",

View File

@ -400,7 +400,7 @@ Hooks.on('ready', () => {
} }
game.wfrp4e.config.difficultyLabels = { game.wfrp4e.config.difficultyLabels = {
"veasy": "Trés Facile (+60)", "veasy": "Très Facile (+60)",
"easy": "Facile (+40)", "easy": "Facile (+40)",
"banal": "Banal (+30)", "banal": "Banal (+30)",
"average": "Accessible (+20)", "average": "Accessible (+20)",

View File

@ -270,6 +270,11 @@ Hooks.once('init', () => {
} }
return skills_list return skills_list
}, },
"role_skills": (skills) => {
let skills_list = skills.split(',');
let skillsFR = game.babele.converters.career_skills(skills_list);
return skillsFR.join(', ')
},
"process_effects": (effectsData, translations, data, tc, tc_translations) => { "process_effects": (effectsData, translations, data, tc, tc_translations) => {
//console.log("Effects :", effectsData, translations, data, tc, tc_translations) //console.log("Effects :", effectsData, translations, data, tc, tc_translations)
for (let e of effectsData) { for (let e of effectsData) {
@ -510,6 +515,17 @@ Hooks.once('init', () => {
break; break;
} }
} }
} else if (trait_en.type == "vehicleRole") {
let validCompendiums = game.wfrp4e.tags.getPacksWithTag("vehicleRole")
for (let compData of validCompendiums) {
let role_fr = game.babele.translate(compData.metadata.id, trait_en, true);
if (role_fr?.system) {
trait_en.name = role_fr.name || trait_en.name
// DEBG: console.log(">>>>> Role ?", role_fr.name );
trait_en.system = foundry.utils.duplicate(role_fr.system);
break;
}
}
} else if (trait_en.type == "trapping" || trait_en.type == "weapon" || trait_en.type == "armour" || trait_en.type == "container" || trait_en.type == "money") { } else if (trait_en.type == "trapping" || trait_en.type == "weapon" || trait_en.type == "armour" || trait_en.type == "container" || trait_en.type == "money") {
let validCompendiums = game.wfrp4e.tags.getPacksWithTag(["trapping"], ["weapon", "armour", "container", "money"]) let validCompendiums = game.wfrp4e.tags.getPacksWithTag(["trapping"], ["weapon", "armour", "container", "money"])
for (let compData of validCompendiums) { for (let compData of validCompendiums) {