Compare commits
13 Commits
12.0.26
...
63265e0d1c
Author | SHA1 | Date | |
---|---|---|---|
63265e0d1c | |||
5afe8a0193 | |||
78a0b7717a | |||
87179f31b8 | |||
2e2684ad6e | |||
ab365e9780 | |||
3739519610 | |||
f7fc7fbefb | |||
d5686b81ed | |||
5bf1ecaea3 | |||
81d826ee2e | |||
2a164f6a32 | |||
6479f00642 |
@ -3,7 +3,7 @@
|
||||
- bouton pour le don de haut-rêve en un clic
|
||||
- les compétences de draconic ne sont plus précédées de "Voie de"
|
||||
- migration des compétences & compendiums
|
||||
- Correction feuille simplifiée qui ne s'affichait pas en ccas de sort variable
|
||||
- Correction feuille simplifiée qui ne s'affichait pas en cas de sort variable
|
||||
|
||||
## 12.0.24 - Les ajustements d'Astrobazzarh
|
||||
- amélioration
|
||||
|
@ -21,7 +21,7 @@ export class RdDBaseActorSangSheet extends RdDBaseActorReveSheet {
|
||||
this.html.find('.creer-blessure-grave').click(async event => RdDItemBlessure.createBlessure(this.actor, 4));
|
||||
this.html.find('.creer-blessure-critique').click(async event => RdDItemBlessure.createBlessure(this.actor, 6));
|
||||
|
||||
this.html.find('.subir-blessure-contusion').click(async event => RdDItemBlessure.applyFullBlessure(this.actor, 2));
|
||||
this.html.find('.subir-blessure-contusion').click(async event => RdDItemBlessure.applyFullBlessure(this.actor, 0));
|
||||
this.html.find('.subir-blessure-legere').click(async event => RdDItemBlessure.applyFullBlessure(this.actor, 2));
|
||||
this.html.find('.subir-blessure-grave').click(async event => RdDItemBlessure.applyFullBlessure(this.actor, 4));
|
||||
this.html.find('.subir-blessure-critique').click(async event => RdDItemBlessure.applyFullBlessure(this.actor, 6));
|
||||
|
@ -17,11 +17,20 @@ const XREGEXP_COMP_CREATURE = WHITESPACES + "(?<carac>\\d+)"
|
||||
|
||||
// Skill parser depending on the type of actor
|
||||
const compParser = {
|
||||
personnage: "(\\D+)*" + WHITESPACES + NUMERIC_VALUE,
|
||||
personnage: "(\\s+\\((?<special>[^\\)]+)\\))?(,\\s*\\p{Letter}+)*(\\s+(?<malus>avec armure))?" + WHITESPACES + NUMERIC_VALUE,
|
||||
creature: XREGEXP_COMP_CREATURE,
|
||||
entite: XREGEXP_COMP_CREATURE
|
||||
}
|
||||
|
||||
const MANIEMENTS = {
|
||||
'de lancer': (weapon) => { return { name: weapon.system.lancer, categorie: 'lancer' } },
|
||||
'de jet': (weapon) => { return { name: weapon.system.lancer, categorie: 'lancer' } },
|
||||
'à une main': (weapon) => { return { name: weapon.system.competence, categorie: 'melee' } },
|
||||
'à deux main': (weapon) => { return { name: weapon.system.competence.replace("à 1 main", "à 2 main"), categorie: 'melee' } },
|
||||
'mêlée': (weapon) => { return { name: weapon.system.competence, categorie: 'melee' } },
|
||||
}
|
||||
const XREGEXP_WEAPON_MANIEMENT = "(?<maniement>(" + Misc.join(Object.keys(MANIEMENTS), '|') + "))"
|
||||
|
||||
const XREGEXP_SORT_VOIE = "(?<voies>[OHNT](\\/[OHNT])*)"
|
||||
const XREGEXP_SORT_NAME = "(?<name>[^\\(]+)"
|
||||
const XREGEXP_SORT_CASE = "\\((?<case>([A-Za-zÀ-ÖØ-öø-ÿ\\s\\-]+|[A-M]\\d{1,2})+)\\)";
|
||||
@ -105,6 +114,12 @@ export class RdDStatBlockParser {
|
||||
return "vaisseau";
|
||||
}
|
||||
|
||||
static fixCompName(name) {
|
||||
name = name.replace("Voie d'", "");
|
||||
name = name.replace("Voie de ", "");
|
||||
return name
|
||||
}
|
||||
|
||||
static async parseStatBlock(statString) {
|
||||
|
||||
//statString = statBlock03;
|
||||
@ -127,6 +142,9 @@ export class RdDStatBlockParser {
|
||||
|
||||
// Now start carac
|
||||
let actorData = foundry.utils.deepClone(game.model.Actor[type]);
|
||||
let items = [];
|
||||
|
||||
actorData.flags = { hautRevant: false, malusArmure: 0, type }
|
||||
for (let key in actorData.carac) {
|
||||
let caracDef = actorData.carac[key];
|
||||
// Parse the stat string for each caracteristic
|
||||
@ -145,91 +163,135 @@ export class RdDStatBlockParser {
|
||||
RdDStatBlockParser.parseEntite(statString, actorData)
|
||||
break
|
||||
}
|
||||
if (type == "personnage") {
|
||||
// Now process armors
|
||||
await RdDStatBlockParser.parseArmors(statString, actorData, items);
|
||||
}
|
||||
|
||||
let items = [];
|
||||
// Get skills from compendium
|
||||
const competences = await SystemCompendiums.getCompetences(type);
|
||||
await RdDStatBlockParser.parseCompetences(statString, actorData, items);
|
||||
|
||||
|
||||
if (type == "personnage") {
|
||||
// Now process weapons
|
||||
await RdDStatBlockParser.parseWeapons(statString, items);
|
||||
|
||||
await RdDStatBlockParser.parseHautReve(statString, actorData, items);
|
||||
RdDStatBlockParser.parsePersonnage(statString, actorData);
|
||||
}
|
||||
|
||||
const name = RdDStatBlockParser.extractName(type, statString);
|
||||
|
||||
actorData.flags = undefined
|
||||
console.log(actorData);
|
||||
|
||||
let newActor = await RdDBaseActorReve.create({ name, type, system: actorData, items });
|
||||
await newActor.remiseANeuf()
|
||||
await RdDStatBlockParser.setValeursActuelles(newActor, statString)
|
||||
await newActor?.sheet.render(true)
|
||||
}
|
||||
|
||||
static async parseCompetences(statString, actorData, items) {
|
||||
const competences = await SystemCompendiums.getCompetences(actorData.flags.type);
|
||||
//console.log("Competences : ", competences);
|
||||
for (let comp of competences) {
|
||||
let compMatch = XRegExp.exec(statString, XRegExp(comp.name + compParser[type], 'giu'));
|
||||
if (compMatch) {
|
||||
comp = comp.toObject()
|
||||
comp.system.niveau = Number(compMatch.value);
|
||||
if (type == "creature" || type == "entite") {
|
||||
comp.system.carac_value = Number(compMatch.carac);
|
||||
if (compMatch.dommages != undefined) {
|
||||
comp.system.dommages = Number(compMatch.dommages);
|
||||
comp.system.iscombat = true;
|
||||
}
|
||||
}
|
||||
items.push(comp)
|
||||
for (let competence of competences) {
|
||||
let compSourceString = statString
|
||||
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'))
|
||||
}
|
||||
else if (type == "personnage") {
|
||||
comp = comp.toObject()
|
||||
items.push(comp)
|
||||
if (actorData.flags.type == "personnage" && compSourceString.length == statString.length) {
|
||||
// ajout niveau de base
|
||||
items.push(competence.toObject())
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
static prepareCompetence(actorData, competence, compMatch) {
|
||||
const comp = competence.toObject();
|
||||
if (compMatch.special) {
|
||||
comp._id = undefined
|
||||
comp.name = `${comp.name} (${compMatch.special})`
|
||||
}
|
||||
comp.system.niveau = Number(compMatch.value);
|
||||
if (compMatch.malus) {
|
||||
comp.system.niveau = Number(compMatch.value) - actorData.flags.malusArmure
|
||||
}
|
||||
if (comp.system.categorie == 'draconic' && comp.system.niveau > -11) {
|
||||
actorData.flags.hautRevant = true
|
||||
}
|
||||
if (["creature", "entite"].includes(actorData.flags.type)) {
|
||||
comp.system.carac_value = Number(compMatch.carac);
|
||||
if (compMatch.dommages != undefined) {
|
||||
comp.system.dommages = Number(compMatch.dommages)
|
||||
comp.system.iscombat = true
|
||||
}
|
||||
}
|
||||
return comp
|
||||
}
|
||||
|
||||
// Now process weapons
|
||||
const weapons = await SystemCompendiums.getWorldOrCompendiumItems("arme", "equipement")
|
||||
//console.log("Equipement : ", equipment);
|
||||
// TODO: les noms d'armes peuvent avoir un suffixe (à une main, lancée) qui détermine la compétence correspondante
|
||||
// TODO: une arme peut être spécifique ("fourche"), ajouter une compétence dans ces cas là?
|
||||
for (let weapon of weapons) {
|
||||
let weapMatch = XRegExp.exec(statString, XRegExp(weapon.name + "\\s+(?<value>\\+\\d+)", 'giu'));
|
||||
if (weapMatch) {
|
||||
weapon = weapon.toObject()
|
||||
weapon.system.equipe = 'true'
|
||||
items.push(weapon)
|
||||
// now process the skill
|
||||
if (weapon.system?.competence != "") {
|
||||
let wComp = items.find(i => Grammar.equalsInsensitive(i.name, weapon.system.competence))
|
||||
if (wComp) {
|
||||
wComp.system.niveau = Number(weapMatch.value);
|
||||
}
|
||||
}
|
||||
if (weapon.system?.tir != "") {
|
||||
let wComp = items.find(i => Grammar.equalsInsensitive(i.name, weapon.system.tir))
|
||||
if (wComp) {
|
||||
wComp.system.niveau = Number(weapMatch.value);
|
||||
}
|
||||
}
|
||||
if (weapon.system?.lancer != "") {
|
||||
let wComp = items.find(i => Grammar.equalsInsensitive(i.name, weapon.system.lancer))
|
||||
if (wComp) {
|
||||
wComp.system.niveau = Number(weapMatch.value);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Now process armors
|
||||
const armors = await SystemCompendiums.getWorldOrCompendiumItems("armure", "equipement")
|
||||
static async parseArmors(statString, actorData, items) {
|
||||
const armors = await SystemCompendiums.getWorldOrCompendiumItems("armure", "equipement");
|
||||
for (let armor of armors) {
|
||||
let matchArmor = XRegExp.exec(statString, XRegExp(armor.name, 'giu'));
|
||||
if (matchArmor) {
|
||||
armor = armor.toObject()
|
||||
armor.system.equipe = true
|
||||
items.push(armor);
|
||||
actorData.flags.malusArmure = armor.system.malus
|
||||
items.push(armor)
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (type == "personnage") {
|
||||
await RdDStatBlockParser.parseHautReve(statString, actorData, items);
|
||||
RdDStatBlockParser.parsePersonnage(statString, actorData);
|
||||
}
|
||||
|
||||
let name = RdDStatBlockParser.extractName(type, statString);
|
||||
|
||||
let newActor = await RdDBaseActorReve.create({ name, type: type, system: actorData, items });
|
||||
await newActor.remiseANeuf()
|
||||
await RdDStatBlockParser.setValActuelle(newActor, statString)
|
||||
// DUmp....
|
||||
console.log(actorData);
|
||||
}
|
||||
|
||||
static async setValActuelle(newActor, statString) {
|
||||
static async parseWeapons(statString, items) {
|
||||
const weapons = await SystemCompendiums.getWorldOrCompendiumItems("arme", "equipement");
|
||||
//console.log("Equipement : ", equipment);
|
||||
// TODO: les noms d'armes peuvent avoir un suffixe (à une main, lancée) qui détermine la compétence correspondante
|
||||
// TODO: une arme peut être spécifique ("fourche"), ajouter une compétence dans ces cas là?
|
||||
for (let weapon of weapons) {
|
||||
let nomArmeManiement = XRegExp.exec(weapon.name, XRegExp(".*" + XREGEXP_WEAPON_MANIEMENT));
|
||||
if (nomArmeManiement) {
|
||||
continue // ignore les objets 'Dague de jet" ou "dague mêlée"
|
||||
}
|
||||
let weapMatch = XRegExp.exec(statString, XRegExp(weapon.name
|
||||
+ "(\\s*" + XREGEXP_WEAPON_MANIEMENT + ")?"
|
||||
+ "\\s+(?<value>\\+\\d+)", 'giu'));
|
||||
if (weapMatch) {
|
||||
weapon = weapon.toObject();
|
||||
weapon.system.equipe = 'true';
|
||||
items.push(weapon);
|
||||
|
||||
const niveau = Number(weapMatch.value);
|
||||
// now process the skill
|
||||
if (weapMatch?.maniement) {
|
||||
RdDStatBlockParser.setNiveauCompetenceArme(items, MANIEMENTS[weapMatch.maniement](weapon), niveau)
|
||||
}
|
||||
else {
|
||||
RdDStatBlockParser.setNiveauCompetenceArme(items, { name: weapon.system.competence, categorie: 'melee' }, niveau)
|
||||
RdDStatBlockParser.setNiveauCompetenceArme(items, { name: weapon.system.tir, categorie: 'tir' }, niveau)
|
||||
RdDStatBlockParser.setNiveauCompetenceArme(items, { name: weapon.system.lancer, categorie: 'lancer' }, niveau)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static setNiveauCompetenceArme(items, competence, niveau) {
|
||||
if (competence != "") {
|
||||
const item = items.find(i => i.system.categorie == competence.categorie && Grammar.equalsInsensitive(i.name, competence.name))
|
||||
if (item) {
|
||||
item.system.niveau = niveau
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static async setValeursActuelles(newActor, statString) {
|
||||
const updates = {
|
||||
}
|
||||
const endurance = XRegExp.exec(statString, XRegExp("endurance\\s+(?<value>\\d+)\\s+(\\(actuelle\\s*:\\s+(?<actuelle>\\d+)\\))?", 'giu'));
|
||||
@ -255,7 +317,6 @@ export class RdDStatBlockParser {
|
||||
}
|
||||
|
||||
static async parseHautReve(statString, actorData, items) {
|
||||
let hautRevant = false;
|
||||
// Attemp to detect spell
|
||||
let sorts = await SystemCompendiums.getWorldOrCompendiumItems("sort", "sorts-oniros");
|
||||
sorts = sorts.concat(await SystemCompendiums.getWorldOrCompendiumItems("sort", "sorts-hypnos"));
|
||||
@ -267,7 +328,7 @@ export class RdDStatBlockParser {
|
||||
const sortName = Grammar.toLowerCaseNoAccent(matchSort.name).trim().replace("’", "'");
|
||||
let sort = sorts.find(s => Grammar.toLowerCaseNoAccent(s.name) == sortName)
|
||||
if (sort) {
|
||||
hautRevant = true;
|
||||
actorData.flags.hautRevant = true
|
||||
sort = sort.toObject();
|
||||
if (matchSort.bonus && matchSort.bonuscase) {
|
||||
sort.system.bonuscase = `${matchSort.bonuscase}:${matchSort.bonus}`;
|
||||
@ -279,7 +340,7 @@ export class RdDStatBlockParser {
|
||||
}
|
||||
});
|
||||
|
||||
if (hautRevant) {
|
||||
if (actorData.flags.hautRevant) {
|
||||
const donHR = await RdDItemTete.teteDonDeHautReve();
|
||||
if (donHR) {
|
||||
items.push(donHR.toObject());
|
||||
@ -292,6 +353,7 @@ export class RdDStatBlockParser {
|
||||
|
||||
static parsePersonnage(statString, actorData) {
|
||||
actorData.reve.seuil.value = actorData.carac.reve.value
|
||||
actorData.compteurs.chance.value = actorData.carac.chance.value
|
||||
|
||||
const reveActuel = XRegExp.exec(statString, XRegExp("Rêve actuel\\s+(?<value>\\d+)", 'giu'))
|
||||
actorData.reve.reve.value = reveActuel?.value ? Number(reveActuel.value) : actorData.reve.seuil.value
|
||||
@ -314,7 +376,7 @@ export class RdDStatBlockParser {
|
||||
actorData.taille = taille.value;
|
||||
}
|
||||
// Get weight
|
||||
const poids = XRegExp.exec(statString, XRegExp("(?<value>\\d+) kg", 'giu'));
|
||||
const poids = XRegExp.exec(statString, XRegExp("(?<value>\\d+ kg)", 'giu'));
|
||||
if (poids?.value) {
|
||||
actorData.poids = poids.value;
|
||||
}
|
||||
@ -377,8 +439,14 @@ export class RdDStatBlockParser {
|
||||
static extractName(actorType, statString) {
|
||||
switch (actorType) {
|
||||
case "personnage":
|
||||
// Name is all string before first comma ','
|
||||
const namePersonnage = XRegExp.exec(statString, XRegExp("(?<value>[\\p{Letter}\\s\\d]+),", 'giu'));
|
||||
// Check if ',né le' is present
|
||||
let namePersonnage = "Importé"
|
||||
if (statString.includes(", né")) {
|
||||
// Name is all string before first comma ','
|
||||
namePersonnage = XRegExp.exec(statString, XRegExp("(?<value>[\\p{Letter}\\s\\d]+),", 'giu'));
|
||||
} else {
|
||||
namePersonnage = XRegExp.exec(statString, XRegExp("(?<value>[\\p{Letter}\\s\\d]+)\\s+TAILLE", 'giu'));
|
||||
}
|
||||
if (namePersonnage?.value) {
|
||||
return Misc.upperFirst(namePersonnage?.value);
|
||||
}
|
||||
|
@ -48,8 +48,9 @@ export class RdDItemBlessure extends RdDItem {
|
||||
let lostEndurance = 0
|
||||
let lostVie = 0
|
||||
if (definition.endurance) {
|
||||
lostEndurance = await new Roll(definition.endurance).roll().total;
|
||||
actor.santeIncDec("endurance", -Number(lostEndurance));
|
||||
lostEndurance = new Roll(definition.endurance)
|
||||
await lostEndurance.roll();
|
||||
actor.santeIncDec("endurance", -Number(lostEndurance.total));
|
||||
}
|
||||
if (definition.vie) {
|
||||
lostVie = definition.vie
|
||||
|
@ -122,6 +122,7 @@ export class RdDUtility {
|
||||
'systems/foundryvtt-reve-de-dragon/templates/actor/header-hautreve.html',
|
||||
'systems/foundryvtt-reve-de-dragon/templates/actor/archetype.hbs',
|
||||
'systems/foundryvtt-reve-de-dragon/templates/actor/vue-detaillee.html',
|
||||
'systems/foundryvtt-reve-de-dragon/templates/actor/armures.hbs',
|
||||
'systems/foundryvtt-reve-de-dragon/templates/actor/carac-main.html',
|
||||
'systems/foundryvtt-reve-de-dragon/templates/actor/carac-derivee.html',
|
||||
'systems/foundryvtt-reve-de-dragon/templates/actor/carac-creature.html',
|
||||
@ -264,12 +265,12 @@ export class RdDUtility {
|
||||
Handlebars.registerHelper('either', (a, b) => a ?? b);
|
||||
Handlebars.registerHelper('upperFirst', str => Misc.upperFirst(str ?? 'Null'));
|
||||
Handlebars.registerHelper('lowerFirst', str => Misc.lowerFirst(str ?? 'Null'));
|
||||
Handlebars.registerHelper('upper', str => str?.toUpperCase() ?? '');
|
||||
Handlebars.registerHelper('uppercase', str => str?.toUpperCase() ?? '');
|
||||
Handlebars.registerHelper('lowercase', str => str?.toLowerCase() ?? '');
|
||||
Handlebars.registerHelper('le', str => Grammar.articleDetermine(str));
|
||||
Handlebars.registerHelper('apostrophe', (article, str) => Grammar.apostrophe(article, str));
|
||||
Handlebars.registerHelper('un', str => Grammar.articleIndetermine(str));
|
||||
Handlebars.registerHelper('accord', (genre, ...args) => Grammar.accord(genre, args));
|
||||
Handlebars.registerHelper('grammar-le', str => Grammar.articleDetermine(str));
|
||||
Handlebars.registerHelper('grammar-apostrophe', (article, str) => Grammar.apostrophe(article, str));
|
||||
Handlebars.registerHelper('grammar-un', str => Grammar.articleIndetermine(str));
|
||||
Handlebars.registerHelper('grammar-accord', (genre, ...args) => Grammar.accord(genre, args));
|
||||
|
||||
Handlebars.registerHelper('RDD_CONFIG', path => RDD_CONFIG[path])
|
||||
Handlebars.registerHelper('computeResolutionScore', (row, col) => RdDResolutionTable.computePercentage(row, col));
|
||||
|
@ -1400,7 +1400,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!1Nng9d8r6lrPHCaJ.MxFDPQmm1900bWin'
|
||||
- _id: bNUVmIoLEROEIOIm
|
||||
name: Cuir / Metal
|
||||
name: Cuir / Métal
|
||||
type: armure
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/armes_armures/cuir_metal.webp
|
||||
effects: []
|
||||
|
@ -767,7 +767,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!ryUZTa17LzNv25UY.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
flags: {}
|
||||
|
@ -767,7 +767,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!ohmz9Jn4jxD88Kll.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
flags: {}
|
||||
|
@ -767,7 +767,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!JARnWt2MQWDyRwQt.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
flags: {}
|
||||
|
@ -742,7 +742,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!SJb0c8FDcYdd41rB.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -767,7 +767,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!JQCwAOK64Yijwtch.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
flags: {}
|
||||
@ -2297,7 +2297,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!JQCwAOK64Yijwtch.9mOVjXVNdvnf7isr'
|
||||
- _id: ISONFNOaWkW2TaE8
|
||||
name: Cuir / Metal
|
||||
name: Cuir / Métal
|
||||
type: armure
|
||||
sort: 8400000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/armes_armures/cuir_metal.webp
|
||||
|
@ -767,7 +767,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!CRRP8ucJpljX6tq8.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
flags: {}
|
||||
|
@ -767,7 +767,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!51vL4MhEE0asjgF2.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
flags: {}
|
||||
|
@ -767,7 +767,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!NX1nAqKKIcQlyGua.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
flags: {}
|
||||
|
@ -767,7 +767,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!IeKSXignUpfUTU4m.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
flags: {}
|
||||
|
@ -767,7 +767,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!2bRaEDuwZezKAyEq.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
flags: {}
|
||||
|
@ -743,7 +743,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!pSM0ku0RJNLvHSvF.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -743,7 +743,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!5xPFHgrY5AIP9Mnb.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -767,7 +767,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!U9NNcXQBJmsI9Ttk.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
flags: {}
|
||||
|
@ -742,7 +742,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!oLDROOdwfctyRusH.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -742,7 +742,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!2KN3nKGZ36Qkn7Mf.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -768,7 +768,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!V2WOs8deCYdBT2Jo.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
flags: {}
|
||||
|
@ -768,7 +768,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!UNs4RBLYiGbfxd1c.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 1050000
|
||||
flags: {}
|
||||
|
@ -768,7 +768,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!jfXs7qaHEWQpIHud.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 1050000
|
||||
flags: {}
|
||||
|
@ -767,7 +767,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!awZg7bGbTjEGRMiw.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
flags: {}
|
||||
|
@ -767,7 +767,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!dMdBctaRRdGJgced.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
flags: {}
|
||||
|
@ -1,4 +1,4 @@
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
_id: F5iQNrZSeJsfyTnV
|
||||
|
@ -4,98 +4,6 @@ type: entite
|
||||
sort: 100001
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/entites/squelette.webp
|
||||
items:
|
||||
- _id: QNJH22nturvz1CnL
|
||||
name: Épée à 2 mains
|
||||
type: competence
|
||||
sort: 100000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_epee_2_mains.webp
|
||||
effects: []
|
||||
system:
|
||||
description: >-
|
||||
<p>Ces compétences permettent l’utilisation des sept types d’épées de
|
||||
Rêve de Dragon pour attaquer ou parer.</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p> </p>
|
||||
descriptionmj: ''
|
||||
niveau: -6
|
||||
default_diffLibre: 0
|
||||
base: -6
|
||||
categorie: melee
|
||||
xp: 0
|
||||
defaut_carac: melee
|
||||
niveau_archetype: 0
|
||||
xp_sort: 0
|
||||
folder: null
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!Fl95F6S0OrCbqQbY.QNJH22nturvz1CnL'
|
||||
- _id: 9rHJziIIEQlwezim
|
||||
name: Épée à 2 mains
|
||||
type: competence
|
||||
sort: 200000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_epee_2_mains.webp
|
||||
effects: []
|
||||
system:
|
||||
description: >-
|
||||
<p>Ces compétences permettent l’utilisation des sept types d’épées de
|
||||
Rêve de Dragon pour attaquer ou parer.</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p> </p>
|
||||
descriptionmj: ''
|
||||
niveau: -6
|
||||
default_diffLibre: 0
|
||||
base: -6
|
||||
categorie: melee
|
||||
xp: 0
|
||||
defaut_carac: melee
|
||||
niveau_archetype: 0
|
||||
xp_sort: 0
|
||||
folder: null
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!Fl95F6S0OrCbqQbY.9rHJziIIEQlwezim'
|
||||
- _id: ltZQyOyxJdWsIkpK
|
||||
name: Equitation
|
||||
type: competence
|
||||
sort: 300000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
effects: []
|
||||
system:
|
||||
description: >-
|
||||
<p>Monter à cheval, et, d’une manière générale, connaissance des
|
||||
chevaux. Peut s’appliquer aux autres montures de Rêve de Dragon :
|
||||
aligates, zyglutes, etc.</p>
|
||||
|
||||
<p> </p>
|
||||
descriptionmj: ''
|
||||
niveau: -8
|
||||
default_diffLibre: 0
|
||||
base: -8
|
||||
categorie: particuliere
|
||||
xp: 0
|
||||
defaut_carac: agilite
|
||||
niveau_archetype: 0
|
||||
xp_sort: 0
|
||||
folder: null
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!Fl95F6S0OrCbqQbY.ltZQyOyxJdWsIkpK'
|
||||
- _id: iwfr7ekbLFzDCayP
|
||||
name: Esquive
|
||||
type: competencecreature
|
||||
|
@ -4,98 +4,6 @@ type: entite
|
||||
sort: 100001
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/entites/vaseux.webp
|
||||
items:
|
||||
- _id: QNJH22nturvz1CnL
|
||||
name: Épée à 2 mains
|
||||
type: competence
|
||||
sort: 100000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_epee_2_mains.webp
|
||||
effects: []
|
||||
system:
|
||||
description: >-
|
||||
<p>Ces compétences permettent l’utilisation des sept types d’épées de
|
||||
Rêve de Dragon pour attaquer ou parer.</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p> </p>
|
||||
descriptionmj: ''
|
||||
niveau: -6
|
||||
default_diffLibre: 0
|
||||
base: -6
|
||||
categorie: melee
|
||||
xp: 0
|
||||
defaut_carac: melee
|
||||
niveau_archetype: 0
|
||||
xp_sort: 0
|
||||
folder: null
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!cmWQYuyzVsz02NMt.QNJH22nturvz1CnL'
|
||||
- _id: 9rHJziIIEQlwezim
|
||||
name: Épée à 2 mains
|
||||
type: competence
|
||||
sort: 200000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_epee_2_mains.webp
|
||||
effects: []
|
||||
system:
|
||||
description: >-
|
||||
<p>Ces compétences permettent l’utilisation des sept types d’épées de
|
||||
Rêve de Dragon pour attaquer ou parer.</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p> </p>
|
||||
descriptionmj: ''
|
||||
niveau: -6
|
||||
default_diffLibre: 0
|
||||
base: -6
|
||||
categorie: melee
|
||||
xp: 0
|
||||
defaut_carac: melee
|
||||
niveau_archetype: 0
|
||||
xp_sort: 0
|
||||
folder: null
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!cmWQYuyzVsz02NMt.9rHJziIIEQlwezim'
|
||||
- _id: ltZQyOyxJdWsIkpK
|
||||
name: Equitation
|
||||
type: competence
|
||||
sort: 300000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
effects: []
|
||||
system:
|
||||
description: >-
|
||||
<p>Monter à cheval, et, d’une manière générale, connaissance des
|
||||
chevaux. Peut s’appliquer aux autres montures de Rêve de Dragon :
|
||||
aligates, zyglutes, etc.</p>
|
||||
|
||||
<p> </p>
|
||||
descriptionmj: ''
|
||||
niveau: -8
|
||||
default_diffLibre: 0
|
||||
base: -8
|
||||
categorie: particuliere
|
||||
xp: 0
|
||||
defaut_carac: agilite
|
||||
niveau_archetype: 0
|
||||
xp_sort: 0
|
||||
folder: null
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!cmWQYuyzVsz02NMt.ltZQyOyxJdWsIkpK'
|
||||
- _id: NDwCYUzJVRIUFc77
|
||||
name: Tentacules
|
||||
type: competencecreature
|
||||
|
@ -1,5 +1,5 @@
|
||||
_id: fDwsTMuug0Z5BdaA
|
||||
name: Cuir / Metal
|
||||
name: Cuir / Métal
|
||||
type: armure
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/armes_armures/cuir_metal.webp
|
||||
effects: []
|
||||
|
@ -742,7 +742,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!qscItDC5z6Hr2Lrh.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -741,7 +741,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!zACge7QxwyJkC6nD.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2700000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -742,7 +742,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!esJWonwDGLFaMRK3.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -742,7 +742,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!gscYFtwk73WrGvA5.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -742,7 +742,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!dW4RMKpz2WaXbW3h.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -742,7 +742,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!ncXFs8oaZWG68Tzn.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -742,7 +742,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!OKMXH6YpPXUyvqzN.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -742,7 +742,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!EzV1Zxuwi7jwa6bj.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -742,7 +742,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!YQ6vavAVyZecPvGQ.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -742,7 +742,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!b7ThiitioBVXxU7D.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -742,7 +742,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!XnBXyRyE2BUVVT1k.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -742,7 +742,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!kKI9izKrKftYVnvs.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -742,7 +742,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!nzw2q9BHSDN6TIQQ.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -742,7 +742,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!Pf4cLn0kandYzviD.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -768,7 +768,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!xGtM3z3KM6N6lpd5.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
flags: {}
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -743,7 +743,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!z87rV5CJ3inc6ZPc.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -743,7 +743,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!I8Q3Aj4ZUrsU4yBg.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -742,7 +742,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!kB7OSWKvd6m9v0dB.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -814,7 +814,7 @@ pages:
|
||||
Epais}</td><td style="width:25%;height:10px">2</td><td
|
||||
style="width:15%;height:10px">10s</td></tr><tr style="height:10px"><td
|
||||
style="width:60%;height:10px">@Compendium[foundryvtt-reve-de-dragon.equipement.fDwsTMuug0Z5BdaA]{Cuir
|
||||
/ Metal}</td><td style="width:25%;height:10px">4</td><td
|
||||
/ Métal}</td><td style="width:25%;height:10px">4</td><td
|
||||
style="width:15%;height:10px">20s</td></tr><tr style="height:10px"><td
|
||||
style="width:60%;height:10px">@Compendium[foundryvtt-reve-de-dragon.equipement.KQZIK8ltQ3sQiDGe]{Mailles
|
||||
de Fer}</td><td style="width:25%;height:10px">6</td><td
|
||||
|
@ -743,7 +743,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!GJWEoGXy5kSd4sT8.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -743,7 +743,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!m63oPEPvCrds4akp.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -743,7 +743,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!jtJqqegMrF3fuND3.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -743,7 +743,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!8Jeas59CdpnnYabL.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -743,7 +743,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!7WgNJwO7p5QNraXA.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -742,7 +742,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!N5ybrpVwbpL8aPG0.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
effects: []
|
||||
|
@ -742,7 +742,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!X9d5McdSAT1Ivp39.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
effects: []
|
||||
|
@ -743,7 +743,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!hvNej1XRliayVZu1.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -743,7 +743,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!4bI9HX4oomMEXrOT.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -743,7 +743,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!AZBxORb7IYgXaOfb.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -743,7 +743,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!OOIjBdFjCKdgJKff.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -743,7 +743,7 @@ items:
|
||||
coreVersion: '12.331'
|
||||
_key: '!actors.items!Jas7Wr22jSllfkin.MLIEbxSJHkY1m3No'
|
||||
- _id: F5iQNrZSeJsfyTnV
|
||||
name: Equitation
|
||||
name: Équitation
|
||||
type: competence
|
||||
sort: 2600000
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_equitation.webp
|
||||
|
@ -459,7 +459,7 @@
|
||||
"chance": {
|
||||
"value": 0,
|
||||
"max": 0,
|
||||
"label": "Chance",
|
||||
"label": "Chance actuelle",
|
||||
"isInput": true
|
||||
},
|
||||
"destinee": {
|
||||
|
25
templates/actor/armures.hbs
Normal file
25
templates/actor/armures.hbs
Normal file
@ -0,0 +1,25 @@
|
||||
{{#if armures}}
|
||||
{{#each armures as |armure|}}
|
||||
<li class="caracteristique item flexrow list-item" data-item-id="{{armure.id}}">
|
||||
<span class="flex-grow">
|
||||
<img class="sheet-competence-img subacteur-open" src="{{armure.img}}" data-tooltip="{{armure.name}}"/>
|
||||
<a class="item-equip" data-tooltip="Equiper">{{#if armure.system.equipe}}<i class="fas fa-hand-rock"></i>{{else}}<i class="far fa-hand-paper"></i>{{/if}}</a>
|
||||
<a>{{armure.name}}</a>
|
||||
{{#if armure.system.malus}}
|
||||
<span class="derivee-value">({{armure.system.malus}})</span>
|
||||
{{/if}}
|
||||
</span>
|
||||
<input class="derivee-value" type="text" disabled value="{{armure.system.protection}}"/>
|
||||
</li>
|
||||
{{/each}}
|
||||
{{/if}}
|
||||
{{#if (or options.isGM (gt system.attributs.protection.value 0))}}
|
||||
<li class="caracteristique flexrow list-item">
|
||||
<label for="system.attributs.protection.value" >Protection naturelle</label>
|
||||
<input class="derivee-value" type="number" {{#unless options.isGM}}disabled{{/unless}} name="system.attributs.protection.value" value="{{system.attributs.protection.value}}" data-dtype="number"/>
|
||||
</li>
|
||||
{{/if}}
|
||||
<li class="caracteristique flexrow list-item" >
|
||||
<label class="derivee-label">Malus armure</label>
|
||||
<input class="derivee-value" type="number" disabled value="{{calc.malusArmure}}" data-dtype="number"/>
|
||||
</li>
|
@ -5,15 +5,23 @@
|
||||
<label class="derivee-value"></label>
|
||||
</li>
|
||||
<br>
|
||||
<li class="caracteristique flexrow list-item">
|
||||
<label class="flexrow derivee-label">{{system.compteurs.stress.label}}
|
||||
<a class="stress-test" data-tooltip="Transformer le stress"><i class="fa-regular fa-moon"></i></a>
|
||||
</label>
|
||||
<input class="derivee-value" type="number" name="system.compteurs.stress.value" value="{{system.compteurs.stress.value}}" data-dtype="number"/>
|
||||
{{>"systems/foundryvtt-reve-de-dragon/templates/actor/armures.hbs"}}
|
||||
<br>
|
||||
<li class="caracteristique flexrow list-item" >
|
||||
<label class="derivee-label">Seuil enc.</label>
|
||||
<input class="derivee-value" type="number" disabled value="{{system.attributs.encombrement.value}}"/>
|
||||
</li>
|
||||
<li class="caracteristique flexrow list-item" >
|
||||
<label class="derivee-label">Bonus dom.</label>
|
||||
<input class="derivee-value" type="text" disabled value="{{plusMoins system.attributs.plusdom.value}}"/>
|
||||
</li>
|
||||
<li class="caracteristique flexrow list-item" >
|
||||
<label class="derivee-label" name="system.attributs.sconst.label">{{system.attributs.sconst.label}}</label>
|
||||
<input class="derivee-value" type="number" disabled value="{{system.attributs.sconst.value}}"/>
|
||||
</li>
|
||||
<br>
|
||||
<li class="caracteristique flexrow list-item">
|
||||
<label class="derivee-label">{{system.compteurs.moral.label}}
|
||||
|
||||
<span>
|
||||
<a class="flex-shrink moral-malheureux" data-tooltip="Jet de moral situation malheureuse"><i class="fa-regular fa-face-frown"></i></a>
|
||||
<a class="flex-shrink moral-neutre" data-tooltip="Jet de moral situation neutre"><i class="fa-regular fa-face-meh"></i></a>
|
||||
@ -38,6 +46,12 @@
|
||||
<label class="derivee-label">voyage</label>
|
||||
<input class="derivee-value" type="number" name="system.compteurs.voyage.value" value="{{system.compteurs.voyage.value}}" data-dtype="number"/>
|
||||
</li>
|
||||
<li class="caracteristique flexrow list-item">
|
||||
<label class="flexrow derivee-label">{{system.compteurs.stress.label}}
|
||||
<a class="stress-test" data-tooltip="Transformer le stress"><i class="fa-regular fa-moon"></i></a>
|
||||
</label>
|
||||
<input class="derivee-value" type="number" name="system.compteurs.stress.value" value="{{system.compteurs.stress.value}}" data-dtype="number"/>
|
||||
</li>
|
||||
|
||||
<br>
|
||||
<li class="caracteristique flexrow list-item">
|
||||
@ -45,40 +59,18 @@
|
||||
<input class="derivee-value" type="number" disabled value="{{system.attributs.sust.value}}"/>
|
||||
<label class="derivee-label" for="system.compteurs.sust.value">mangé</label>
|
||||
<input class="derivee-value" type="number" name="system.compteurs.sust.value" value="{{system.compteurs.sust.value}}" data-dtype="number"/>
|
||||
</li>
|
||||
</li>
|
||||
<li class="caracteristique flexrow list-item">
|
||||
<label class="derivee-label"></label>
|
||||
<label class="derivee-value"></label>
|
||||
<label class="derivee-label" for="system.compteurs.eau.value">bu</label>
|
||||
<input class="derivee-value" type="number" name="system.compteurs.eau.value" value="{{system.compteurs.eau.value}}" data-dtype="number"/>
|
||||
</li>
|
||||
</li>
|
||||
<li class="caracteristique flexrow list-item" data-tooltip="Niveau d'éthylisme">
|
||||
<label class="derivee-label" for="system.compteurs.ethylisme.value">{{system.compteurs.ethylisme.label}}</label>
|
||||
<select class="derivee-value" name="system.compteurs.ethylisme.value" data-dtype="Number">
|
||||
{{selectOptions (RDD_CONFIG 'niveauEthylisme') selected=system.compteurs.ethylisme.value valueAttr="value" nameAttr="value" labelAttr="label"}}
|
||||
</select>
|
||||
</li>
|
||||
|
||||
<br>
|
||||
<li class="caracteristique flexrow list-item" >
|
||||
<label class="carac-label">Seuil enc.</label>
|
||||
<input class="derivee-value" type="number" disabled value="{{system.attributs.encombrement.value}}"/>
|
||||
</li>
|
||||
<li class="caracteristique flexrow list-item" >
|
||||
<label class="carac-label">Bonus dom.</label>
|
||||
<input class="derivee-value" type="text" disabled value="{{plusMoins system.attributs.plusdom.value}}"/>
|
||||
</li>
|
||||
<li class="caracteristique flexrow list-item" >
|
||||
<label class="carac-label">Malus armure</label>
|
||||
<input class="derivee-value" type="number" disabled value="{{calc.malusArmure}}" data-dtype="number"/>
|
||||
</li>
|
||||
<li class="caracteristique flexrow list-item">
|
||||
<label class="carac-label" for="system.attributs.protection.value" >Protection naturelle</label>
|
||||
<input class="derivee-value" type="number" {{#unless options.isGM}}disabled{{/unless}} name="system.attributs.protection.value" value="{{system.attributs.protection.value}}" data-dtype="number"/>
|
||||
</li>
|
||||
<li class="caracteristique flexrow list-item" >
|
||||
<label class="carac-label" name="system.attributs.sconst.label">{{system.attributs.sconst.label}}</label>
|
||||
<input class="derivee-value" type="number" disabled value="{{system.attributs.sconst.value}}"/>
|
||||
</select>
|
||||
</li>
|
||||
<br>
|
||||
</ul>
|
||||
|
@ -2,10 +2,10 @@
|
||||
<div>
|
||||
{{#if carac.rollClass}}
|
||||
<a class="{{carac.rollClass}}" data-carac-name="{{carac.column}}">
|
||||
{{upper carac.colName}}
|
||||
{{uppercase carac.colName}}
|
||||
</a>
|
||||
{{else}}
|
||||
{{upper carac.colName}}
|
||||
{{uppercase carac.colName}}
|
||||
{{/if}}
|
||||
<a class="{{button-name}}-moins"><i class="fa-regular fa-square-minus"></i></a>
|
||||
<a class="{{button-name}}-plus"><i class="fa-regular fa-square-plus"></i></a>
|
||||
|
@ -1,9 +1,9 @@
|
||||
<div class="flexrow">
|
||||
<div>
|
||||
{{#if carac.rollClass}}
|
||||
<a class="{{carac.rollClass}}" data-carac-name="{{carac.column}}">{{upper carac.colName}}</a>
|
||||
<a class="{{carac.rollClass}}" data-carac-name="{{carac.column}}">{{uppercase carac.colName}}</a>
|
||||
{{else}}
|
||||
{{upper carac.colName}}
|
||||
{{uppercase carac.colName}}
|
||||
{{/if}}
|
||||
</div>
|
||||
<div class="flex-group-right">{{carac.value}}</div>
|
||||
|
@ -1,6 +1,6 @@
|
||||
<img class="chat-icon" src="{{competence.img}}" data-tooltip="{{competence.name}}"/>
|
||||
<h4 data-categorie="tmr" data-actor-id="{{actor._id}}">
|
||||
{{alias}} tente de {{maitrise.verbe}} {{le tmr.genre}}
|
||||
{{alias}} tente de {{maitrise.verbe}} {{grammar-le tmr.genre}}
|
||||
{{#if isTMRCache}}
|
||||
{{caseTmr-type tmr.coord}}
|
||||
{{else}}
|
||||
@ -18,7 +18,7 @@
|
||||
<span>
|
||||
{{alias}}
|
||||
{{#if rolled.isSuccess}}parvient à{{else}}échoue à{{/if}}
|
||||
{{maitrise.verbe}} {{le tmr.genre}}
|
||||
{{maitrise.verbe}} {{grammar-le tmr.genre}}
|
||||
{{#if isTMRCache}}
|
||||
{{caseTmr-type tmr.coord}}
|
||||
{{else}}
|
||||
|
@ -1,8 +1,8 @@
|
||||
<img class="chat-icon" src="icons/svg/lightning.svg" data-tooltip="Météo" />
|
||||
<h4>Météo aléatoire</h4>
|
||||
<ul>
|
||||
<li>Vent: {{lowerFirst vent.description}} {{apostrophe 'de' vent.direction}}, force {{vent.force}}</li>
|
||||
<li>Mer {{lowerFirst mer.description}}, {{apostrophe 'de' mer.direction}}, force {{mer.force}}</li>
|
||||
<li>Vent: {{lowerFirst vent.description}} {{grammar-apostrophe 'de' vent.direction}}, force {{vent.force}}</li>
|
||||
<li>Mer {{lowerFirst mer.description}}, {{grammar-apostrophe 'de' mer.direction}}, force {{mer.force}}</li>
|
||||
<li>Température {{lowerFirst temperature.description}} ({{plusMoins temperature.force}})</li>
|
||||
<li>Couverture nuageuse: {{lowerFirst nuage.description}}</li>
|
||||
<li>Pluie: {{lowerFirst pluie.description}}</li>
|
||||
|
Reference in New Issue
Block a user