forked from public/swade-fr-content
Fix missing translation + translate requirements + add deadlands compendiums
This commit is contained in:
@ -43,6 +43,28 @@ Hooks.once('translateCompendiumFolders', () => {
|
||||
console.log("LOADED !!!!!!")
|
||||
});
|
||||
|
||||
/************************************************************************************/
|
||||
class swadeFrTranslator {
|
||||
static getRank( rank) {
|
||||
if ( rank == 'Novice') return 'Novice';
|
||||
if ( rank == 'Seasoned') return 'Aguerri';
|
||||
if ( rank == 'Veteran') return 'Vétéran';
|
||||
if ( rank == 'Heroic') return 'Héroïque';
|
||||
if ( rank == 'Legendary') return 'Légendaire';
|
||||
return false
|
||||
}
|
||||
static getAttribute( attr) {
|
||||
console.log("Attr is", attr)
|
||||
if ( attr == "Agility") return 'Agilité';
|
||||
if ( attr == "Smarts") return 'Intellect';
|
||||
if ( attr == "Spirit") return 'Ame';
|
||||
if ( attr == "Strength") return 'Force';
|
||||
if ( attr == "Vigor") return 'Vigueur';
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/************************************************************************************/
|
||||
Hooks.once('init', () => {
|
||||
|
||||
@ -57,12 +79,49 @@ Hooks.once('init', () => {
|
||||
|
||||
Babele.get().registerConverters({
|
||||
"gear_skill": (skill) => {
|
||||
let transl = skill
|
||||
if (skill) {
|
||||
if (skill == 'Fighting') return 'Combat';
|
||||
if (skill == 'Shooting') return 'Tir';
|
||||
console.log("UNKOWN SKILL", skill);
|
||||
let translated = game.babele.translate( "swade-core-rules.swade-skills", {name: skill.trim()}, true )
|
||||
transl = translated.name
|
||||
}
|
||||
return skill;
|
||||
return transl
|
||||
},
|
||||
"edge_requirements": (req) => {
|
||||
let reqTab = req.split(",")
|
||||
let results = []
|
||||
for (let item of reqTab) {
|
||||
let keyName = item.match(/([\w\s\(\)]+) (d[\w\+]*)/)
|
||||
//console.log("Keyword", item, keyName)
|
||||
if (keyName && keyName[2]) { // This is a skill or attribute
|
||||
let toTranslate = keyName[1].trim()
|
||||
let attr = swadeFrTranslator.getAttribute( toTranslate)
|
||||
if ( attr) { // Test if attribute
|
||||
results.push( attr + " " + keyName[2].trim())
|
||||
} else { // Test if skill
|
||||
let translated = game.babele.translate( "swade-core-rules.swade-skills", {name: toTranslate}, true )
|
||||
if ( !translated.name) {
|
||||
translated = game.babele.translate( "deadlands-core-rules.deadlands-skills", {name: toTranslate }, true )
|
||||
}
|
||||
let transResult = translated.name || toTranslate
|
||||
results.push( transResult + " " + keyName[2].trim() )
|
||||
}
|
||||
} else { // Rank or edge
|
||||
let itemName = item.trim()
|
||||
let rank = swadeFrTranslator.getRank(itemName)
|
||||
if (rank) {
|
||||
results.push( rank )
|
||||
} else {
|
||||
let translated = game.babele.translate( "swade-core-rules.swade-edges", {name: itemName }, true )
|
||||
if ( !translated.name) {
|
||||
translated = game.babele.translate( "deadlands-core-rules.deadlands-edges", {name: itemName }, true )
|
||||
}
|
||||
let transResult = translated.name || itemName
|
||||
results.push( transResult )
|
||||
}
|
||||
}
|
||||
}
|
||||
console.log(">>>>>>>>>>>>>>>>>>>>>>>>><REQ !!!!", req, results)
|
||||
return results.join(", ")
|
||||
},
|
||||
"gear_range": (range) => {
|
||||
if (range) {
|
||||
@ -110,11 +169,7 @@ Hooks.once('init', () => {
|
||||
return range;
|
||||
},
|
||||
"powers_rank": (rank) => {
|
||||
if ( rank == 'Novice') return 'Novice';
|
||||
if ( rank == 'Seasoned') return 'Aguerri';
|
||||
if ( rank == 'Veteran') return 'Vétéran';
|
||||
if ( rank == 'Heroic') return 'Héroïque';
|
||||
return rank;
|
||||
return swadeFrTranslator.getRank( rank)
|
||||
}
|
||||
} );
|
||||
}
|
||||
@ -143,6 +198,7 @@ function registerUsageCount( registerKey ) {
|
||||
name: "Unique world key",
|
||||
scope: "world",
|
||||
config: false,
|
||||
default: "",
|
||||
type: String
|
||||
});
|
||||
|
||||
|
Reference in New Issue
Block a user