Compare commits

...

47 Commits

Author SHA1 Message Date
63d1c5847b Fix carac secondaires 2022-11-13 10:29:36 +01:00
866a079c69 Allow items links in editors 2022-09-28 15:44:25 +02:00
fa0b989c86 Allow items links in editors 2022-09-28 15:43:48 +02:00
895a722f4c Allow items links in editors 2022-09-28 15:42:45 +02:00
4442050b11 First v10 migration 2022-09-21 11:42:58 +02:00
aee6b2feae First v10 migration 2022-09-21 11:42:09 +02:00
a613571d7e Fix yggdrasil 2022-09-21 11:19:30 +02:00
545807d533 Remove warnings 2022-08-04 21:06:32 +02:00
42736e02a7 Sync 2022-05-21 14:21:55 +02:00
0e3c5ef749 Merge branch 'Archonoir-main-patch-99586' into 'main'
Update template.json

See merge request LeRatierBretonnien/fvtt-yggdrasill!2
2022-02-21 22:38:03 +00:00
Archonoir-dev
4b3b59516a Update template.json 2022-02-21 22:35:18 +00:00
6b42e9dc3f Merge branch 'Archonoir-main-patch' into 'main'
Update template.json

See merge request LeRatierBretonnien/fvtt-yggdrasill!1
2022-02-21 22:25:35 +00:00
Archonoir-dev
9886ebc85b Update system.json 2022-02-21 22:12:48 +00:00
Archonoir-dev
b67fffb26c Update templates/actor-sheet.html 2022-02-21 21:59:04 +00:00
Archonoir-dev
d3ffc93738 Update modules/yggdrasill-actor-sheet.js 2022-02-21 21:57:10 +00:00
Archonoir-dev
d4a005fafb Update modules/yggdrasill-actor-sheet.js 2022-02-21 21:54:45 +00:00
Archonoir-dev
7f029f67f2 Update modules/yggdrasill-actor.js 2022-02-21 21:51:38 +00:00
Archonoir-dev
6ea56b85e6 sheet bouclier 2022-02-21 21:47:35 +00:00
Archonoir-dev
3ca4a1c844 Update template.json 2022-02-21 21:43:30 +00:00
583cc2b87a Use another server for measures 2022-02-19 09:30:57 +01:00
85030243fa Sync 2022-02-05 12:37:04 +01:00
6506023e2d Compendium update 2022-02-03 20:57:02 +01:00
3c684ca7b9 Sync yggdrasill 2022-01-30 21:10:44 +01:00
95337a35c2 Sync yggdrasill 2022-01-30 21:07:51 +01:00
e371d57963 Sync yggdrasill 2022-01-30 21:01:59 +01:00
d1da5bfe23 Sync yggdrasill 2022-01-30 21:01:10 +01:00
1dc804697e Sync 2022-01-23 22:01:13 +01:00
e7c67fe479 Do not add carac value 2022-01-23 21:41:13 +01:00
57afc103c6 Do not add carac value 2022-01-23 21:39:30 +01:00
24f03af66e Fix CSS 2022-01-23 14:53:09 +01:00
26491b5594 Mod carac 2022-01-23 14:05:01 +01:00
af38cb1e7c Sync carrières 2022-01-23 10:48:19 +01:00
f5557f46a6 Biodatas 2022-01-23 10:07:25 +01:00
da5b2bf785 Fix rolls and various glitches 2022-01-23 00:07:47 +01:00
26a5cdcffb Fix blesse 2022-01-16 10:09:16 +01:00
bafaaad6b4 Fix v9 2022-01-12 12:09:36 +01:00
45922a1277 Fix v9 2022-01-12 11:58:17 +01:00
35aab26384 Fix v9 2022-01-12 11:58:05 +01:00
e4f8505cc7 Fix v9 2022-01-12 11:32:08 +01:00
c28c7d8c0d Fix v9 2022-01-12 09:19:08 +01:00
9a94798102 Fix v9 2022-01-12 09:13:47 +01:00
96e02cdb7a Fix infinite loop + dices 2022-01-11 18:19:13 +01:00
1eb5c5ecb3 Sync 2022-01-10 22:31:22 +01:00
42904b1391 Initial import 2022-01-09 10:01:15 +01:00
51fb0deba2 Initial import 2022-01-09 09:54:41 +01:00
ba05e0485f Initial import 2022-01-09 09:52:43 +01:00
4cff41d648 Initial import 2022-01-09 09:51:00 +01:00
52 changed files with 903 additions and 562 deletions

View File

@ -17,7 +17,7 @@ test:
build:
stage: build
script:
- zip fvtt-yggdrasill.zip -r *.js *.json *.md module styles templates -x ".*"
- zip fvtt-yggdrasill.zip -r *.js *.json *.md fonts images packs module styles templates -x ".*"
artifacts:
name: fvtt-yggdrasill
when: on_success

View File

@ -1,2 +1,11 @@
# fvtt-yggdrasill
# Yggdrasill (7ième Cercle) pour FoundryVTT
Ce système non-officiel est le portage du JdR Yggdrasill (7ième Cercle) pour le système FoundryVTT.
https://www.7emecercle.com/7C_site/jeux-de-roles/yggdrasill/
Le livre de base d'Yggdrasill, disponible sur le site de 7ième cercle est nécessaire pour jouer.
Yggdrasill le jeu de rôle est la propriété de 7ième Cercle.
The Vinque font used in this system is properly licensed for Web usage. The proof of the license agreement can be provided thru mail from here or on the French Discord (user @Thelvyn).

View File

@ -14,8 +14,8 @@ export class YggdrasillActorSheet extends ActorSheet {
return mergeObject(super.defaultOptions, {
classes: ["yggdrasill", "sheet", "actor"],
template: "systems/fvtt-yggdrasill/templates/actor-sheet.html",
width: 640,
height: 720,
width: 680,
height: 740,
tabs: [{ navSelector: ".sheet-tabs", contentSelector: ".sheet-body", initial: "stats" }],
dragDrop: [{ dragSelector: ".item-list .item", dropSelector: null }],
editScore: false
@ -23,8 +23,8 @@ export class YggdrasillActorSheet extends ActorSheet {
}
/* -------------------------------------------- */
getData() {
const objectData = YggdrasillUtility.data(this.object);
async getData() {
const objectData = duplicate(this.object)
let formData = {
title: this.title,
@ -34,7 +34,7 @@ export class YggdrasillActorSheet extends ActorSheet {
name: objectData.name,
editable: this.isEditable,
cssClass: this.isEditable ? "editable" : "locked",
data: foundry.utils.deepClone(YggdrasillUtility.templateData(this.object)),
data: foundry.utils.deepClone(objectData.system),
effects: this.object.effects.map(e => foundry.utils.deepClone(e.data)),
limited: this.object.limited,
isEpuise: this.actor.isEpuise(),
@ -48,19 +48,26 @@ export class YggdrasillActorSheet extends ActorSheet {
blessures: this.actor.getBlessures(),
armes: this.actor.getArmes(),
armures: this.actor.getArmures(),
boucliers: this.actor.getBoucliers(),
prouessesMartiales: this.actor.getProuessesMartiales(),
equipements: this.actor.getToutEquipements(),
effetsmagiques: this.actor.getEffetsMagiques(),
effetsRunes: this.actor.getEffetsDeRunes(),
encTotal: this.actor.getEncTotal(),
protectionTotal: this.actor.getProtectionTotal(),
dpBouclier: this.actor.getDpBouclier(),
monnaies: this.actor.getMonnaies(),
sortsSejdr:this.actor.getSortsSejdr(),
sortsGaldr:this.actor.getSortsGaldr(),
runes: this.actor.getRunes(),
optionsCarac: YggdrasillUtility.createDirectOptionList(0, 20),
optionsDMDP: YggdrasillUtility.createDirectSortedOptionList(-10, +10),
optionsBase: YggdrasillUtility.createDirectOptionList(0, 20),
optionsFuror: YggdrasillUtility.createDirectOptionList(0, 15),
optionsFuror: YggdrasillUtility.createDirectOptionList(0, 15),
tiragerunes: await TextEditor.enrichHTML(this.object.system.tiragesrunes, {async: true}),
description: await TextEditor.enrichHTML(this.object.system.description, {async: true}),
notes: await TextEditor.enrichHTML(this.object.system.notes, {async: true}),
gmnotes: await TextEditor.enrichHTML(this.object.system.biodata.gmnotes, {async: true}),
options: this.options,
owner: this.document.isOwner,
editScore: this.options.editScore,
@ -80,10 +87,10 @@ export class YggdrasillActorSheet extends ActorSheet {
dm.total = dm.max + Number(dm.bonusmalus);
}
/* -------------------------------------------- */
updateDP( data ) {
updateDP( data ) {
let dp = data.caracsecondaire.defensephy;
dp.total = dp.max + Number(dp.bonusmalus);
dp.total += (dp.bouclierequipe) ? 3 : 0;
dp.total += this.actor.getDpBouclier();
}
/* -------------------------------------------- */
@ -97,7 +104,7 @@ export class YggdrasillActorSheet extends ActorSheet {
// Update Inventory Item
html.find('.item-edit').click(ev => {
const li = $(ev.currentTarget).parents(".item");
const item = this.actor.getOwnedItem(li.data("item-id"));
const item = this.actor.items.get(li.data("item-id"));
item.sheet.render(true);
});
// Delete Inventory Item
@ -112,12 +119,12 @@ export class YggdrasillActorSheet extends ActorSheet {
html.find('.munition-moins').click(event => {
const li = $(event.currentTarget).parents(".item");
const item = this.actor.getOwnedItem(li.data("item-id"));
const item = this.actor.items.get(li.data("item-id"));
this.actor.decrementeMunition( item );
} );
html.find('.munition-plus').click(event => {
const li = $(event.currentTarget).parents(".item");
const item = this.actor.getOwnedItem(li.data("item-id"));
const item = this.actor.items.get(li.data("item-id"));
this.actor.incrementeMunition( item );
} );
html.find('.equipement-moins').click(event => {
@ -176,7 +183,7 @@ export class YggdrasillActorSheet extends ActorSheet {
});
html.find('.weapon-damage').click((event) => {
const li = $(event.currentTarget).parents(".item");
const weapon = this.actor.getOwnedItem(li.data("item-id"));
const weapon = this.actor.items.get(li.data("item-id"));
this.actor.rollDamage(weapon, 'damage');
});
html.find('.competence-base').change((event) => {
@ -190,7 +197,7 @@ export class YggdrasillActorSheet extends ActorSheet {
});
html.find('.item-link a').click((event) => {
const itemId = $(event.currentTarget).data("item-id");
const item = this.actor.getOwnedItem(itemId);
const item = this.actor.items.get(itemId);
item.sheet.render(true);
});
html.find('.item-equip').click(ev => {

View File

@ -175,15 +175,15 @@ export class YggdrasillActor extends Actor {
async prepareData() {
if ( this.type == "personnage") {
this.computeCaracSecondaire();
if (this.data.data.furor.value == 0)
if (this.system.furor.value == 0)
await this.setEpuise();
else
await this.cleanEpuise();
if ( this.data.data.caracsecondaire.pv.value < (this.data.data.caracsecondaire.pv.max/4) )
if ( this.system.caracsecondaire.pv.value < (this.system.caracsecondaire.pv.max/4) )
await this.setMeurtri();
else
await this.cleanMeurtri();
if ( this.data.data.caracsecondaire.pv.value < (this.data.data.caracsecondaire.pv.max/2) )
if ( this.system.caracsecondaire.pv.value < (this.system.caracsecondaire.pv.max/2) )
await this.setBlesse();
else
await this.cleanBlesse();
@ -193,23 +193,24 @@ export class YggdrasillActor extends Actor {
/* -------------------------------------------- */
_preUpdate(changed, options, user) {
if ( changed.data?.caracsecondaire?.pv?.value ) {
if ( changed.data.caracsecondaire.pv.value < 0 )
changed.data.caracsecondaire.pv.value = 0;
if ( changed.data.caracsecondaire.pv.value > this.data.data.caracsecondaire.pv.max )
changed.data.caracsecondaire.pv.value = this.data.data.caracsecondaire.pv.max;
if ( changed.system?.caracsecondaire?.pv?.value ) {
if ( changed.system.caracsecondaire.pv.value < 0 )
changed.system.caracsecondaire.pv.value = 0;
if ( changed.system.caracsecondaire.pv.value > this.system.caracsecondaire.pv.max )
changed.system.caracsecondaire.pv.value = this.system.caracsecondaire.pv.max;
}
if ( changed.data?.furor?.value ) {
if ( changed.data.furor.value < 0 )
changed.data.furor.value = 0;
if ( changed.data.furor.value > this.data.data.furor.max )
changed.data.furor.value = this.data.data.furor.max;
if ( changed.system?.furor?.value ) {
if ( changed.system.furor.value < 0 )
changed.system.furor.value = 0;
if ( changed.system.furor.value > this.system.furor.max )
changed.system.furor.value = this.system.furor.max;
}
super._preUpdate(changed, options, user);
}
/* -------------------------------------------- */
getCompetences() {
let comp = this.data.items.filter( item => item.type == 'competence');
let comp = this.items.filter( item => item.type == 'competence');
return comp;
}
/* -------------------------------------------- */
@ -224,87 +225,97 @@ export class YggdrasillActor extends Actor {
}
/* -------------------------------------------- */
getInitiativeScore() {
return this.data.data.caracsecondaire.reaction.max;
if ( this.type == 'personnage') {
return this.system.caracsecondaire.reaction.max;
} else {
return this.system.attributs.physique.values.defaut.value;
}
}
/* -------------------------------------------- */
getCompetencesGenerales() {
let comp = this.data.items.filter( item => item.type == 'competence' && item.data.data.categorie == 'generale');
let comp = this.items.filter( item => item.type == 'competence' && item.system.categorie == 'generale');
return comp.sort( this.compareName );
}
/* -------------------------------------------- */
getCompetencesMartiales() {
let comp = this.data.items.filter( item => item.type == 'competence' && item.data.data.categorie == 'martiale');
let comp = this.items.filter( item => item.type == 'competence' && item.system.categorie == 'martiale');
return comp.sort( this.compareName );
}
/* -------------------------------------------- */
getCompetencesMagiques() {
let comp = this.data.items.filter( item => item.type == 'competence' && item.data.data.categorie == 'magique');
let comp = this.items.filter( item => item.type == 'competence' && item.system.categorie == 'magique');
return comp.sort( this.compareName );
}
/* -------------------------------------------- */
getDons( ) {
let dons = this.data.items.filter( item => item.type == 'don');
let dons = this.items.filter( item => item.type == 'don');
return dons.sort( this.compareName );
}
/* -------------------------------------------- */
getEffetsMagiques( ) {
let effets = this.data.items.filter( item => item.type == 'effetmagique');
let effets = this.items.filter( item => item.type == 'effetmagique');
return effets.sort( this.compareName );
}
/* -------------------------------------------- */
getEffetsDeRunes( ) {
let effets = this.data.items.filter( item => item.type == 'effetderune');
let effets = this.items.filter( item => item.type == 'effetderune');
return effets.sort( this.compareName );
}
/* -------------------------------------------- */
getMonnaies( ) {
let monnaies = this.data.items.filter( item => item.type == 'monnaie');
let monnaies = this.items.filter( item => item.type == 'monnaie');
return monnaies.sort( this.compareName );
}
/* -------------------------------------------- */
getFaiblesses( ) {
let faib = this.data.items.filter( item => item.type == 'faiblesse');
let faib = this.items.filter( item => item.type == 'faiblesse');
return faib.sort( this.compareName );
}
/* -------------------------------------------- */
getBlessures( ) {
return this.data.items.filter( item => item.type == 'blessure');
return this.items.filter( item => item.type == 'blessure');
}
/* -------------------------------------------- */
getToutEquipements() {
return this.data.items.filter( item => item.type == 'equipement' || item.type == 'armure' || item.type == 'armecc' || item.type == 'armedist');
return this.items.filter( item => item.type == 'equipement' || item.type == 'armure' || item.type == 'armecc' || item.type == 'armedist' || item.type == 'bouclier');
}
/* -------------------------------------------- */
getArmes() {
return this.data.items.filter( item => (item.type == 'armecc' || item.type == 'armedist') && item.data.data.equipe );
return this.items.filter( item => (item.type == 'armecc' || item.type == 'armedist') && item.system.equipe );
}
/* -------------------------------------------- */
getArmures() {
return this.data.items.filter( item => item.type == 'armure' && item.data.data.equipe );
return this.items.filter( item => item.type == 'armure' && item.system.equipe );
}
getBoucliers() {
return this.items.filter( item => item.type == 'bouclier' && item.system.equipe );
}
getProuessesMartiales() {
let prouesse = this.data.items.filter( item => item.type == 'prouesse' );
let prouesse = this.items.filter( item => item.type == 'prouesse' );
return prouesse.sort( this.compareName );
}
getSortsSejdr() {
let sort = this.data.items.filter( item => item.type == 'sortsejdr' );
let sort = this.items.filter( item => item.type == 'sortsejdr' );
return sort.sort( this.compareName );
}
getSortsGaldr() {
let sort = this.data.items.filter( item => item.type == 'sortgaldr' );
let sort = this.items.filter( item => item.type == 'sortgaldr' );
return sort.sort( this.compareName );
}
getRunes() {
let sort = this.data.items.filter( item => item.type == 'rune' );
let sort = this.items.filter( item => item.type == 'rune' );
return sort.sort( this.compareName );
}
/* -------------------------------------------- */
async setEpuise( ) {
await this.update({ 'data.status.epuise': true});
this.data.data.status.epuise = true;
if (!this.system.status.epuise) {
await this.update({ 'system.status.epuise': true});
this.system.status.epuise = true;
}
/*let effect = this.getEffectByLabel('Epuisé');
if ( !effect ) {
let effect = statusEffects.find( ef => ef.id == 'epuise');
@ -313,8 +324,10 @@ export class YggdrasillActor extends Actor {
}
/* -------------------------------------------- */
async cleanEpuise() {
await this.update({ 'data.status.epuise': false});
this.data.data.status.epuise = false;
if (this.system.status.epuise) {
await this.update({ 'system.status.epuise': false});
this.system.status.epuise = false;
}
/*let effect = this.getEffectByLabel('Epuisé');
if ( effect ) {
await this.deleteEmbeddedDocuments("ActiveEffect", [ effect.id ]);
@ -322,7 +335,7 @@ export class YggdrasillActor extends Actor {
}
/* -------------------------------------------- */
async toggleEpuise( ) {
if ( this.data.data.status.epuise ) {
if ( this.system.status.epuise ) {
await this.cleanEpuise();
} else {
await this.setEpuise();
@ -330,14 +343,15 @@ export class YggdrasillActor extends Actor {
}
/* -------------------------------------------- */
isEpuise() {
return this.data.data.status.epuise;
return this.system.status.epuise;
}
/* -------------------------------------------- */
async setBlesse( ) {
await this.update({ 'data.status.blesse': true} );
this.data.data.status.blesse = true;
console.log("BLESSSE !!!!");
if (!this.system.status.blesse) {
await this.update({ 'system.status.blesse': true} );
this.system.status.blesse = true;
}
/*let effect = this.getEffectByLabel('Blessé');
if ( !effect ) {
let effect = statusEffects.find( ef => ef.id == 'blesse');
@ -346,8 +360,10 @@ export class YggdrasillActor extends Actor {
}
/* -------------------------------------------- */
async cleanBlesse() {
await this.update({ 'data.status.blesse': false} );
this.data.data.status.blesse = false;
if (this.system.status.blesse) {
await this.update({ 'system.status.blesse': false} );
this.system.status.blesse = false;
}
/*let effect = this.getEffectByLabel('Blessé');
if ( effect ) {
await this.deleteEmbeddedDocuments("ActiveEffect", [ effect.id ]);
@ -356,33 +372,37 @@ export class YggdrasillActor extends Actor {
/* -------------------------------------------- */
isBlesse() {
return this.data.data.status.blesse;
return this.system.status.blesse;
//return this.getEffectByLabel('Blessé');
}
/* -------------------------------------------- */
async setMeurtri( ) {
await this.setBlesse();
await this.update({ 'data.status.meurtri': true});
this.data.data.status.meurtri = true;
if (!this.system.status.meurtri) {
await this.update({ 'system.status.meurtri': true});
this.system.status.meurtri = true;
}
}
/* -------------------------------------------- */
async cleanMeurtri() {
await this.update({ 'data.status.meurtri': false});
this.data.data.status.meurtri = false;
if (this.system.status.meurtri) {
await this.update({ 'system.status.meurtri': false});
this.system.status.meurtri = false;
}
}
/* -------------------------------------------- */
isMeurtri() {
return this.data.data.status.meurtri;
return this.system.status.meurtri;
}
/* -------------------------------------------- */
async decrementFuror( nbFuror) {
await this.update( { 'data.furor.value': this.data.data.furor.value - nbFuror } );
await this.update( { 'system.furor.value': this.system.furor.value - nbFuror } );
}
/* -------------------------------------------- */
getCurrentFuror() {
return this.data.data.furor.value;
return this.system.furor.value;
}
/* -------------------------------------------- */
@ -401,8 +421,8 @@ export class YggdrasillActor extends Actor {
/* -------------------------------------------- */
getCarac( caracName ) {
for( let key in this.data.data.carac) {
let categ = this.data.data.carac[key];
for( let key in this.system.carac) {
let categ = this.system.carac[key];
for( let carac in categ.carac) {
if (carac.toLowerCase() == caracName.toLowerCase() ) {
return deepClone(categ.carac[carac]);
@ -414,50 +434,72 @@ export class YggdrasillActor extends Actor {
/* -------------------------------------------- */
computeCaracSecondaire( ) {
if ( this.type == "personnage") {
let basecorps = this.data.data.carac.corps.carac;
let basecorps = this.system.carac.corps.carac;
let sumcorps = basecorps.puissance.value + basecorps.agilite.value + basecorps.vigueur.value
let baseesprit = this.data.data.carac.esprit.carac;
let baseesprit = this.system.carac.esprit.carac;
let sumesprit = baseesprit.intellect.value + baseesprit.perception.value + baseesprit.tenacite.value
let baseame = this.data.data.carac.ame.carac;
let baseame = this.system.carac.ame.carac;
let sumame = baseame.charisme.value + baseame.communication.value + baseame.instinct.value
let newPV = (sumcorps*3) + (sumesprit *2) + sumame;
if ( newPV != this.data.data.caracsecondaire.pv.max) {
this.data.data.caracsecondaire.pv.max = newPV;
this.update( { 'data.caracsecondaire.pv.max': newPV });
if ( newPV != this.system.caracsecondaire.pv.max) {
this.system.caracsecondaire.pv.max = newPV;
this.update( { 'system.caracsecondaire.pv.max': newPV });
}
this.data.data.caracsecondaire.reaction.value = baseesprit.intellect.value + baseesprit.perception.value + baseame.instinct.value;
this.data.data.caracsecondaire.reaction.max = baseesprit.intellect.value + baseesprit.perception.value + baseame.instinct.value;
this.system.caracsecondaire.reaction.value = baseesprit.intellect.value + baseesprit.perception.value + baseame.instinct.value;
let newReac = baseesprit.intellect.value + baseesprit.perception.value + baseame.instinct.value;
if ( newReac != this.system.caracsecondaire.reaction.max) {
this.system.caracsecondaire.reaction.max = newReac
this.update( { 'system.caracsecondaire.reaction.max': newReac });
}
this.data.data.caracsecondaire.defensephy.value = basecorps.agilite.value + basecorps.vigueur.value + baseame.instinct.value;
this.data.data.caracsecondaire.defensephy.max = basecorps.agilite.value + basecorps.vigueur.value + baseame.instinct.value;
this.system.caracsecondaire.defensephy.value = basecorps.agilite.value + basecorps.vigueur.value + baseame.instinct.value;
let newDef = basecorps.agilite.value + basecorps.vigueur.value + baseame.instinct.value;
if ( newDef != this.system.caracsecondaire.defensephy.max) {
this.system.caracsecondaire.defensephy.max = newDef
this.update( { 'system.caracsecondaire.defensephy.max': newDef });
}
this.data.data.caracsecondaire.defensemen.value = baseesprit.tenacite.value + baseame.instinct.value + baseesprit.intellect.value;
this.data.data.caracsecondaire.defensemen.max = baseesprit.tenacite.value + baseame.instinct.value + baseesprit.intellect.value;
this.system.caracsecondaire.defensemen.value = baseesprit.tenacite.value + baseame.instinct.value + baseesprit.intellect.value;
newDef = baseesprit.tenacite.value + baseame.instinct.value + baseesprit.intellect.value;
if ( newDef != this.system.caracsecondaire.defensemen.max) {
this.system.caracsecondaire.defensemen.max = newDef
this.update( { 'system.caracsecondaire.defensemen.max': newDef });
}
this.data.data.caracsecondaire.deplacement.value = basecorps.agilite.value + basecorps.vigueur.value;
this.data.data.caracsecondaire.deplacement.max = basecorps.agilite.value + basecorps.vigueur.value;
this.system.caracsecondaire.deplacement.value = basecorps.agilite.value + basecorps.vigueur.value;
let depl = basecorps.agilite.value + basecorps.vigueur.value;
if ( depl != this.system.caracsecondaire.deplacement.max) {
this.system.caracsecondaire.deplacement.max = depl
this.update( { 'system.caracsecondaire.deplacement.max': depl });
}
this.data.data.caracsecondaire.capaenc.value = (basecorps.puissance.value * 2) + basecorps.vigueur.value;
this.data.data.caracsecondaire.capaenc.max = (basecorps.puissance.value * 2) + basecorps.vigueur.value;
this.system.caracsecondaire.capaenc.value = (basecorps.puissance.value * 2) + basecorps.vigueur.value;
let enc = (basecorps.puissance.value * 2) + basecorps.vigueur.value;
if ( enc != this.system.caracsecondaire.capaenc.max ) {
this.system.caracsecondaire.capaenc.max = enc
this.update( { 'system.caracsecondaire.capaenc.max': enc });
}
//console.log("CARAC SEC", this.system.caracsecondaire)
}
}
/* -------------------------------------------- */
async equiperObject( equipementId ) {
let item = this.data.items.find( item => item.id == equipementId );
if (item && item.data.data) {
let update = { _id: item.id, "data.equipe": !item.data.data.equipe };
let item = this.items.find( item => item.id == equipementId );
if (item && item.system) {
let update = { _id: item.id, "data.equipe": !item.system.equipe };
await this.updateEmbeddedDocuments('Item', [update]); // Updates one EmbeddedEntity
}
}
/* -------------------------------------------- */
async updateCompetence( compId, niveau) {
let comp = this.data.items.find( item => item.type == 'competence' && item.id == compId);
let comp = this.items.find( item => item.type == 'competence' && item.id == compId);
console.log("Comp updated!!!!", compId, niveau);
if (comp) {
const update = { _id: comp.id, 'data.niveau': niveau };
const update = { _id: comp.id, 'system.niveau': niveau };
await this.updateEmbeddedDocuments('Item', [update]); // Updates one EmbeddedEntity
} else {
ui.notifications.warn("Compétence inconnue", compId)
@ -471,9 +513,9 @@ export class YggdrasillActor extends Actor {
/* -------------------------------------------- */
async rollAttribute( attrkey, subAttrKey = 'defaut') {
let attr = duplicate(this.data.data.attributs[attrkey]);
let subAttr = duplicate(this.data.data.attributs[attrkey].values[subAttrKey] );
console.log("ATTR : ", attr, subAttr);
let attr = duplicate(this.system.attributs[attrkey]);
console.log("ATTR : ", attr, attrkey, subAttrKey);
let subAttr = duplicate(this.system.attributs[attrkey].values[subAttrKey] );
if ( attr ) {
subAttr.label = subAttr.label || "";
let title = `Attribut : ${attr.label} ${subAttr.label} : ${subAttr.value}`;
@ -483,13 +525,15 @@ export class YggdrasillActor extends Actor {
actorImg: this.img,
actorId: this.id,
attr: attr,
valuePhysique: this.data.data.attributs["physique"].values["defaut"].value,
valuePhysique: this.system.attributs["physique"].values["defaut"].value,
subAttr: subAttr,
rollMode: game.settings.get("core", "rollMode"),
title: title,
isBlesse: this.data.data.etat.etat == "blesse",
optionsBonusMalus: YggdrasillUtility.buildListOptions(-6, +6),
isBlesse: this.system.etat.etat == "blesse",
optionsBonusMalus: YggdrasillUtility.buildListOptions(-15, +15),
bonusMalus: 0,
bonusdefense: 0,
optionsBD: YggdrasillUtility.buildListOptions(0, +15),
optionsSR: YggdrasillUtility.buildSROptions( ),
sr: 0
}
@ -503,8 +547,8 @@ export class YggdrasillActor extends Actor {
/* -------------------------------------------- */
async rollCarac( categName, caracName) {
let carac = duplicate(this.data.data.carac[categName].carac[caracName]);
console.log("CARAC : ", carac, this.data.data.carac);
let carac = duplicate(this.system.carac[categName].carac[caracName]);
console.log("CARAC : ", carac, this.system.carac);
if ( carac) {
let rollData = {
mode: "carac",
@ -518,11 +562,12 @@ export class YggdrasillActor extends Actor {
isEpuise: this.isEpuise(),
isBlesse: this.isBlesse(),
isMeurtri: this.isMeurtri(),
optionsBonusMalus: YggdrasillUtility.buildListOptions(-6, +6),
optionsBonusMalus: YggdrasillUtility.buildListOptions(-15, +15),
bonusMalus: 0,
optionsFuror: YggdrasillUtility.buildListOptions(0, this.getCurrentFuror() ),
furorUsage: 0,
optionsSR: YggdrasillUtility.buildSROptions( ),
optionsBD: YggdrasillUtility.buildListOptions(0, +15),
sr: 0
}
let rollDialog = await YggdrasillRoll.create( this, rollData);
@ -536,7 +581,7 @@ export class YggdrasillActor extends Actor {
/* -------------------------------------------- */
async rollCompetence( competenceId ) {
let competence = this.data.items.find( item => item.type == 'competence' && item.id == competenceId);
let competence = this.items.find( item => item.type == 'competence' && item.id == competenceId);
if ( competence) {
let rollData = {
mode: "competence",
@ -545,12 +590,12 @@ export class YggdrasillActor extends Actor {
actorId: this.id,
img: competence.img,
rollMode: game.settings.get("core", "rollMode"),
title: `Compétence ${competence.name} : ${competence.data.data.niveau}`,
title: `Compétence ${competence.name} : ${competence.system.niveau}`,
competence: duplicate(competence),
isEpuise: this.isEpuise(),
isBlesse: this.isBlesse(),
isMeurtri: this.isMeurtri(),
optionsBonusMalus: YggdrasillUtility.buildListOptions(-6, +6),
optionsBonusMalus: YggdrasillUtility.buildListOptions(-15, +15),
bonusMalus: 0,
optionsFuror: YggdrasillUtility.buildListOptions(0, this.getCurrentFuror() ),
furorUsage: 0,
@ -570,18 +615,18 @@ export class YggdrasillActor extends Actor {
let attackData = duplicate(attackMode[mode]);
if ( attackData){
attackData.mode = mode;
attackData.carac = duplicate(this.data.data.carac[attackData.categName].carac[attackData.caracName]);
attackData.carac = duplicate(this.system.carac[attackData.categName].carac[attackData.caracName]);
if ( attackData.malus != 0) {
let malusTab = attackData.malus.split(';');
attackData.malus = this.data.data.carac[attackData.categName].carac[malusTab[0]].value * Number(malusTab[1])
attackData.malus = this.system.carac[attackData.categName].carac[malusTab[0]].value * Number(malusTab[1])
}
if ( attackData.protection != 0) {
let malusTab = attackData.protection.split(';');
attackData.protection = this.data.data.carac[attackData.categName].carac[malusTab[0]].value * Number(malusTab[1])
attackData.protection = this.system.carac[attackData.categName].carac[malusTab[0]].value * Number(malusTab[1])
}
if ( attackData.bonusdegats != 0) {
let malusTab = attackData.bonusdegats.split(';');
attackData.bonusdegats = this.data.data.carac[attackData.categName].carac[malusTab[0]].value * Number(malusTab[1])
attackData.bonusdegats = this.system.carac[attackData.categName].carac[malusTab[0]].value * Number(malusTab[1])
}
}
return attackData;
@ -592,18 +637,18 @@ export class YggdrasillActor extends Actor {
let attackData = duplicate( tirMode[mode] );
if ( attackData){
attackData.mode = mode;
attackData.carac = duplicate(this.data.data.carac[attackData.categName].carac[attackData.caracName]);
attackData.carac = duplicate(this.system.carac[attackData.categName].carac[attackData.caracName]);
if ( attackData.malus != 0) {
let malusTab = attackData.malus.split(';');
attackData.malus = this.data.data.carac[attackData.categName].carac[malusTab[0]].value * Number(malusTab[1])
attackData.malus = this.system.carac[attackData.categName].carac[malusTab[0]].value * Number(malusTab[1])
}
if ( attackData.protection != 0) {
let malusTab = attackData.protection.split(';');
attackData.protection = this.data.data.carac[attackData.categName].carac[malusTab[0]].value * Number(malusTab[1])
attackData.protection = this.system.carac[attackData.categName].carac[malusTab[0]].value * Number(malusTab[1])
}
if ( attackData.bonusdegats != 0) {
let malusTab = attackData.bonusdegats.split(';');
attackData.bonusdegats = this.data.data.carac[attackData.categName].carac[malusTab[0]].value * Number(malusTab[1])
attackData.bonusdegats = this.system.carac[attackData.categName].carac[malusTab[0]].value * Number(malusTab[1])
}
}
return attackData;
@ -611,23 +656,24 @@ export class YggdrasillActor extends Actor {
/* -------------------------------------------- */
async rollSort( sortId, magie) {
let sort = this.data.items.find( item => item.id == sortId);
let competence = this.data.items.find( item => item.type == 'competence' && item.name.toLowerCase().includes(magie));
let sort = this.items.find( item => item.id == sortId);
let competence = this.items.find( item => item.type == 'competence' && item.name.toLowerCase().includes(magie));
console.log("SORT :", sortId, sort, competence );
let carac;
if ( magie == "sejdr") {
carac = duplicate(this.data.data.carac.ame.carac.instinct);
carac = duplicate(this.system.carac.ame.carac.instinct);
} else if ( magie == "rune") {
carac = duplicate(this.data.data.carac.ame.carac.communication);
carac = duplicate(this.system.carac.ame.carac.communication);
} else {
carac = duplicate(this.data.data.carac.ame.carac.charisme);
carac = duplicate(this.system.carac.ame.carac.charisme);
}
if ( sort && competence) {
let rollData = {
mode: magie,
isMagie: true,
alias: this.name,
actorImg: this.img,
actorId: this.id,
@ -635,8 +681,8 @@ export class YggdrasillActor extends Actor {
rollMode: game.settings.get("core", "rollMode"),
title: magie + " - " + sort.name,
selectedCarac: carac,
agiliteCarac: duplicate(this.data.data.carac.corps.carac.agilite),
instinctCarac: duplicate(this.data.data.carac.ame.carac.instinct),
agiliteCarac: duplicate(this.system.carac.corps.carac.agilite),
instinctCarac: duplicate(this.system.carac.ame.carac.instinct),
sort: duplicate(sort),
competence: duplicate(competence),
dureeGaldr: "1d5a",
@ -646,8 +692,8 @@ export class YggdrasillActor extends Actor {
isEpuise: this.isEpuise(),
isBlesse: this.isBlesse(),
isMeurtri: this.isMeurtri(),
optionsBonusMalus: YggdrasillUtility.buildListOptions(-6, +6),
optionsBD: YggdrasillUtility.buildListOptions(0, +6),
optionsBonusMalus: YggdrasillUtility.buildListOptions(-15, +15),
optionsBD: YggdrasillUtility.buildListOptions(0, +15),
bonusMalus: 0,
optionsFuror: YggdrasillUtility.buildListOptions(0, this.getCurrentFuror() ),
furorUsage: 0,
@ -667,9 +713,9 @@ export class YggdrasillActor extends Actor {
/* -------------------------------------------- */
async rollArme( armeId ) {
let arme = this.data.items.find( item => item.id == armeId);
let compName = armeCategorieToCompetence[arme.data.data.categorie];
let competence = this.data.items.find( item => item.type == 'competence' && item.name == compName);
let arme = this.items.find( item => item.id == armeId);
let compName = armeCategorieToCompetence[arme.system.categorie];
let competence = this.items.find( item => item.type == 'competence' && item.name == compName);
console.log("ARME :", armeId, arme, competence );
if ( arme && competence) {
@ -690,15 +736,15 @@ export class YggdrasillActor extends Actor {
img: competence.img,
rollMode: game.settings.get("core", "rollMode"),
title: "Attaque !",
selectedCarac: duplicate(this.data.data.carac.corps.carac.agilite),
selectedCarac: duplicate(this.system.carac.corps.carac.agilite),
arme: duplicate(arme),
competence: duplicate(competence),
bonusdefense: 0,
isEpuise: this.isEpuise(),
isBlesse: this.isBlesse(),
isMeurtri: this.isMeurtri(),
optionsBonusMalus: YggdrasillUtility.buildListOptions(-6, +6),
optionsBD: YggdrasillUtility.buildListOptions(0, +6),
optionsBonusMalus: YggdrasillUtility.buildListOptions(-15, +15),
optionsBD: YggdrasillUtility.buildListOptions(0, +15),
bonusMalus: 0,
optionsFuror: YggdrasillUtility.buildListOptions(0, this.getCurrentFuror() ),
furorUsage: 0,
@ -716,42 +762,58 @@ export class YggdrasillActor extends Actor {
/* -------------------------------------------- */
getEncTotal( ) {
let encTotal = 0;
for( let item of this.data.items) {
if (item.type == "equipement" || item.type == "armecc"
|| item.type == "armedist" || item.type == "armure" || item.type == "monnaie") {
encTotal += item.data.data.enc;
for( let item of this.items) {
if (item.type == "equipement" || item.type == "armecc"
|| item.type == "armedist" || item.type == "armure" || item.type == "monnaie" || item.type == "bouclier") {
encTotal += (item.system.enc * item.system.quantite);
}
}
for( let item of this.items) {
if (item.type == "bouclier" && item.system.equipe) {
encTotal -= (item.system.enc * item.system.quantite);
encTotal += (item.system.enccomb * item.system.quantite);
}
}
return encTotal;
}
}
/* -------------------------------------------- */
getProtectionTotal( ) {
let protectionTotal = 0;
for( let item of this.data.items) {
if (item.type == "armure" && item.data.data.equipe) {
protectionTotal += Number(item.data.data.protection);
for( let item of this.items) {
if (item.type == "armure" && item.system.equipe) {
protectionTotal += Number(item.system.protection);
}
}
return protectionTotal;
}
/* -------------------------------------------- */
getDpBouclier( ) {
let dpBouclier = 0;
for( let item of this.items) {
if (item.type == "bouclier" && item.system.equipe) {
dpBouclier += Number(item.system.defensebonus);
}
}
return dpBouclier;
}
/* -------------------------------------------- */
async incrementeQuantite( objetId ) {
let objetQ = this.data.items.find( item => item.id == objetId );
let objetQ = this.items.find( item => item.id == objetId );
if (objetQ) {
let newQ = objetQ.data.data.quantite + 1;
const updated = await this.updateEmbeddedDocuments('Item', [{ _id: objetQ.id, 'data.quantite': newQ }]); // pdates one EmbeddedEntity
let newQ = objetQ.system.quantite + 1;
const updated = await this.updateEmbeddedDocuments('Item', [{ _id: objetQ.id, 'system.quantite': newQ }]); // pdates one EmbeddedEntity
}
}
/* -------------------------------------------- */
async decrementeQuantite( objetId ) {
let objetQ = this.data.items.find( item => item.id == objetId );
let objetQ = this.items.find( item => item.id == objetId );
if (objetQ) {
let newQ = objetQ.data.data.quantite - 1;
let newQ = objetQ.system.quantite - 1;
newQ = (newQ <= 0) ? 0 : newQ;
const updated = await this.updateEmbeddedDocuments('Item', [{ _id: objetQ.id, 'data.quantite': newQ }]); // pdates one EmbeddedEntity
const updated = await this.updateEmbeddedDocuments('Item', [{ _id: objetQ.id, 'system.quantite': newQ }]); // pdates one EmbeddedEntity
}
}

View File

@ -23,8 +23,8 @@ export class YggdrasillFigurantSheet extends ActorSheet {
}
/* -------------------------------------------- */
getData() {
const objectData = YggdrasillUtility.data(this.object);
async getData() {
const objectData = duplicate(this.object)
let formData = {
title: this.title,
@ -34,14 +34,16 @@ export class YggdrasillFigurantSheet extends ActorSheet {
name: objectData.name,
editable: this.isEditable,
cssClass: this.isEditable ? "editable" : "locked",
data: foundry.utils.deepClone(YggdrasillUtility.templateData(this.object)),
data: foundry.utils.deepClone(this.object.system),
limited: this.object.limited,
equipements: this.actor.getToutEquipements(),
effetsmagiques: this.actor.getEffetsMagiques(),
encTotal: this.actor.getEncTotal(),
monnaies: this.actor.getMonnaies(),
optionsAttr: new Array(21).fill('option'),
optionsAttr: new Array(41).fill('option'),
optionsBase: YggdrasillUtility.createDirectOptionList(0, 20),
description: await TextEditor.enrichHTML(this.object.system.description, {async: true}),
notes: await TextEditor.enrichHTML(this.object.system.notes, {async: true}),
options: this.options,
owner: this.document.isOwner,
editScore: this.options.editScore,
@ -63,7 +65,7 @@ export class YggdrasillFigurantSheet extends ActorSheet {
// Update Inventory Item
html.find('.item-edit').click(ev => {
const li = $(ev.currentTarget).parents(".item");
const item = this.actor.getOwnedItem(li.data("item-id"));
const item = this.actor.items.get(li.data("item-id"));
item.sheet.render(true);
});
// Delete Inventory Item
@ -93,7 +95,7 @@ export class YggdrasillFigurantSheet extends ActorSheet {
});
html.find('.item-link a').click((event) => {
const itemId = $(event.currentTarget).data("item-id");
const item = this.actor.getOwnedItem(itemId);
const item = this.actor.items.get(itemId);
item.sheet.render(true);
});
html.find('.item-equip').click(ev => {

View File

@ -43,7 +43,7 @@ export class YggdrasillItemSheet extends ItemSheet {
/* -------------------------------------------- */
async getData() {
const objectData = YggdrasillUtility.data(this.object);
const objectData = duplicate(this.object);
let formData = {
title: this.title,
@ -53,9 +53,10 @@ export class YggdrasillItemSheet extends ItemSheet {
name: objectData.name,
editable: this.isEditable,
cssClass: this.isEditable ? "editable" : "locked",
data: foundry.utils.deepClone(YggdrasillUtility.templateData(this.object)),
data: foundry.utils.deepClone(this.object.system),
optionsBase: YggdrasillUtility.createDirectOptionList(0, 20),
optionsNiveaux4: YggdrasillUtility.buildListOptions(1, 5),
description: await TextEditor.enrichHTML(this.object.system.description, {async: true}),
limited: this.object.limited,
options: this.options,
owner: this.document.isOwner,
@ -75,13 +76,13 @@ export class YggdrasillItemSheet extends ItemSheet {
// Update Inventory Item
html.find('.item-edit').click(ev => {
const li = $(ev.currentTarget).parents(".item");
const item = this.object.options.actor.getOwnedItem(li.data("item-id"));
const item = this.object.options.actor.items.get(li.data("item-id"));
item.sheet.render(true);
});
// Update Inventory Item
html.find('.item-delete').click(ev => {
const li = $(ev.currentTarget).parents(".item");
this.object.options.actor.deleteOwnedItem( li.data("item-id") ).then( this.render(true));
this.object.options.actor.deleteEmbeddedDocuments( "Item", [li.data("item-id") ] ).then( this.render(true));
});
}

View File

@ -67,10 +67,36 @@ function welcomeMessage() {
ChatMessage.create({
user: game.user.id,
whisper: [game.user.id],
content: `<div id="welcome-message-yggdrasill"><span class="rdd-roll-part">Bienvenue !</div>
content: `<div id="welcome-message-yggdrasill"><span class="rdd-roll-part"><strong>Bienvenue à Yggdrasill !</strong>
<p>Yggdrasill est un Jeu de Rôle publié par 7ième Cercle : https://www.7emecercle.com/7C_site/jeux-de-roles/yggdrasill/</p>
<br>Yggdrasill est une propriété de 7ième Cercle.
</div>
` });
}
/* -------------------------------------------- */
// Register world usage statistics
function registerUsageCount( registerKey ) {
if ( game.user.isGM ) {
game.settings.register(registerKey, "world-key", {
name: "Unique world key",
scope: "world",
config: false,
default: "",
type: String
});
let worldKey = game.settings.get(registerKey, "world-key")
if ( worldKey == undefined || worldKey == "" ) {
worldKey = randomID(32)
game.settings.set(registerKey, "world-key", worldKey )
}
let regURL = `https://www.uberwald.me/fvtt_appcount/count.php?name="${registerKey}"&worldKey="${worldKey}"&version="${game.release.generation}.${game.release.build}"&system="${game.system.id}"&systemversion="${game.system.version}"`
$.ajax(regURL)
/* -------------------------------------------- */
}
}
/* -------------------------------------------- */
/* Foundry VTT Initialization */
/* -------------------------------------------- */
@ -84,7 +110,8 @@ Hooks.once("ready", function () {
user: game.user._id
});
}
welcomeMessage();
registerUsageCount("fvtt-yggdrasill")
welcomeMessage()
});
/* -------------------------------------------- */

View File

@ -73,12 +73,12 @@ export class YggdrasillRoll extends Dialog {
updateGaldrSR( ) {
let sdDuree = Number(dureeGaldrSD[this.rollData.dureeGaldr]);
let sdVar = 0;
if ( this.rollData.sort.data.voie == "illusion") {
if ( this.rollData.sort.system.voie == "illusion") {
sdVar = Number(zonesciblesGaldrSD[this.rollData.zoneGaldr]);
} else {
sdVar = Number(ciblesGaldrSD[this.rollData.nbCibles]);
}
let SR = Number(this.rollData.sort.data.sd) + sdDuree + sdVar;
let SR = Number(this.rollData.sort.system.sd) + sdDuree + sdVar;
$("#srTotal").text(SR);
this.rollData.sr = SR;
}
@ -91,27 +91,32 @@ export class YggdrasillRoll extends Dialog {
if ( this.rollData.supportRune == "peau") {
support = 3;
this.rollData.echelleDuree = "Actions";
this.rollData.echelleDureeVie = "Heures"
}
if ( this.rollData.supportRune == "tissu") {
support = 6;
this.rollData.echelleDuree = "Tours";
this.rollData.echelleDureeVie = "Jours"
}
if ( this.rollData.supportRune == "cuir") {
support = 9;
this.rollData.echelleDuree = "Minutes";
this.rollData.echelleDureeVie = "Semaines"
}
if ( this.rollData.supportRune == "bois") {
support = 12;
this.rollData.echelleDuree = "Heures";
this.rollData.echelleDureeVie = "Mois"
}
if ( this.rollData.supportRune == "pierremetal") {
support = 15;
this.rollData.echelleDuree = "Jours";
this.rollData.echelleDureeVie = "Années"
}
let SR = this.rollData.puissanceRune + (Number(this.rollData.sort.data.niveau)*3) + support;
let SR = this.rollData.puissanceRune + (Number(this.rollData.sort.system.niveau)*3) + support;
$("#srTotal").text(SR);
$("#runeDuree").text( this.rollData.dureeRune + " " + this.rollData.echelleDuree);
$("#runeDureeVie").text( this.rollData.puissanceRune + " " + this.rollData.echelleDuree);
$("#runeDureeVie").text( this.rollData.competence.system.niveau + " " + this.rollData.echelleDureeVie);
this.rollData.sr = SR;
}

View File

@ -20,19 +20,6 @@ export class YggdrasillUtility {
return loadTemplates(templatePaths);
}
/* -------------------------------------------- */
static templateData(it) {
return YggdrasillUtility.data(it)?.data ?? {}
}
/* -------------------------------------------- */
static data(it) {
if (it instanceof Actor || it instanceof Item || it instanceof Combatant) {
return it.data;
}
return it;
}
/* -------------------------------------------- */
static createDirectSortedOptionList( min, max) {
let options = [];
@ -98,6 +85,38 @@ export class YggdrasillUtility {
return compendiumData.filter(filter);
}
/* -------------------------------------------- */
static async specificYggRoll( nbDice ) {
let rawDices = []
let rolls = []
let maxTab = []
maxTab[0] = {idx: 0, value: 0}
maxTab[1] = {idx: 0, value: 0}
for (let i=0; i<nbDice; i++) {
rolls[i] = new Roll("1d10x10").roll( {async: false}) //+sumDice+"+"+rollData.furorUsage+"d10+"+niveauCompetence+"+"+rollData.finalBM).roll( { async: false} );
if ( i == nbDice-1 ) {
await this.showDiceSoNice(rolls[i], game.settings.get("core", "rollMode") );
} else {
this.showDiceSoNice(rolls[i], game.settings.get("core", "rollMode") );
}
rawDices.push({ 'result': rolls[i].total});
if ( rolls[i].total > maxTab[0].value) {
if ( nbDice > 1 && maxTab[0].value > maxTab[1].value) {
maxTab[1].value = maxTab[0].value
}
maxTab[0].value = rolls[i].total
} else {
if ( nbDice > 1 && rolls[i].total > maxTab[1].value) {
maxTab[1].value = rolls[i].total
}
}
}
return { rawDices: rawDices, maxTab: maxTab, rolls: rolls}
}
/* -------------------------------------------- */
static async rollAttribute( rollData ) {
// Init stuff
@ -114,18 +133,27 @@ export class YggdrasillUtility {
rollData.finalBM -= 3;
}
let myRoll = new Roll("2d10+"+niveau+"+"+rollData.finalBM).roll( { async: false} );
await this.showDiceSoNice(myRoll, game.settings.get("core", "rollMode") );
let results = await this.specificYggRoll( 2 )
rollData.rawDices = results.rawDices
rollData.maxTab = results.maxTab
rollData.rolls = results.rolls
rollData.bonus = niveau + rollData.finalBM
rollData.finalTotal = rollData.maxTab[0].value + rollData.maxTab[1].value;
rollData.finalTotal += rollData.bonus
// Compute total SR
rollData.srFinal = rollData.sr;
if ( rollData.bonusdefense ) {
rollData.srFinal += rollData.bonusdefense;
}
if ( rollData.srFinal > 0 ) {
isCritical = myRoll.total >= rollData.srFinal*2;
isSuccess = myRoll.total >= rollData.srFinal;
marge = myRoll.total - rollData.srFinal;
isCritical = rollData.finalTotal >= rollData.srFinal*2;
isSuccess = rollData.finalTotal >= rollData.srFinal;
marge = rollData.finalTotal - rollData.srFinal;
}
if (myRoll.dice[0].results[0].result == 1 && myRoll.dice[0].results[1].result == 1) {
if (rollData.rolls[0].dice[0].results[0].result == 1 && rollData.rolls[1].dice[0].results[0].result == 1) {
isFailure = true;
}
// Dégats
@ -141,7 +169,6 @@ export class YggdrasillUtility {
rollData.isSuccess = isSuccess;
rollData.isCritical = isCritical;
rollData.marge = marge;
rollData.roll = myRoll
console.log("ROLLLL ATTR!!!!", rollData);
@ -153,7 +180,7 @@ export class YggdrasillUtility {
/* -------------------------------------------- */
static async rollYggdrasill( rollData ) {
let sumDice = ( rollData.isEpuise | rollData.isMeurtri | rollData.isBlesse) ? 1 : 2;
let sumDice = ( rollData.isEpuise | rollData.isMeurtri) ? 1 : 2;
// Init stuff
let isCritical = false;
@ -165,7 +192,7 @@ export class YggdrasillUtility {
// Select niveau de competence/arme/carac
if ( rollData.mode != "carac" ) {
niveauCompetence = rollData.competence.data.niveau;
niveauCompetence = rollData.competence.system.niveau;
} else {
niveauCompetence = rollData.selectedCarac.value;
}
@ -175,8 +202,8 @@ export class YggdrasillUtility {
if ( rollData.attackDef) {
rollData.finalBM -= rollData.attackDef.malus;
}
if ( rollData.sort && rollData.sort.data.malus ) {
rollData.finalBM += rollData.sort.data.malus;
if ( rollData.sort && rollData.sort.system.malus ) {
rollData.finalBM += rollData.sort.system.malus;
}
// Gestion cas blessé (malus de -3)
if ( rollData.isBlesse) { // Cas blesse : malus de -3
@ -184,40 +211,60 @@ export class YggdrasillUtility {
}
if (sumDice > nbDice) sumDice = nbDice;
let myRoll = new Roll(nbDice+"d10x10kh"+sumDice+"+"+rollData.furorUsage+"d10+"+niveauCompetence+"+"+rollData.finalBM).roll( { async: false} );
await this.showDiceSoNice(myRoll, game.settings.get("core", "rollMode") );
// Compute total SR
rollData.srFinal = rollData.sr;
if ( rollData.bonusdefense ) {
rollData.srFinal += rollData.bonusdefense;
}
if ( rollData.srFinal > 0 ) {
isCritical = myRoll.total >= rollData.srFinal*2;
isSuccess = myRoll.total >= rollData.srFinal;
marge = myRoll.total - rollData.srFinal;
}
let results = await this.specificYggRoll( nbDice )
rollData.rawDices = results.rawDices
rollData.maxTab = results.maxTab
rollData.rolls = results.rolls
console.log("RES", results, nbDice, sumDice)
rollData.rawDices = duplicate(myRoll.dice[0].results);
if (nbDice == 1 && myRoll.dice[0].results[0].result == 1) {
isFailure = true;
}
if (nbDice == 2 && myRoll.dice[0].results[0].result == 1 && myRoll.dice[0].results[1].result == 1) {
isFailure = true;
}
if (nbDice >= 3 ) {
let nbOnes = myRoll.dice[0].results.filter( dice => dice.result == 1);
isFailure = nbOnes.length >= 3;
}
if ( rollData.furorUsage > 0 ) {
if ( rollData.furorUsage > 0 ) {
results = await this.specificYggRoll( rollData.furorUsage )
rollData.furorRawDices = results.rawDices
rollData.furorMaxTab = results.maxTab
rollData.furorRolls = results.rolls
let actor = game.actors.get(rollData.actorId);
actor.decrementFuror( rollData.furorUsage);
}
rollData.bonusTotal = niveauCompetence + rollData.finalBM
rollData.finalTotal = (sumDice ==1) ? rollData.maxTab[0].value : rollData.maxTab[0].value + rollData.maxTab[1].value;
rollData.furorResult = 0
for (let i=0; i<rollData.furorUsage; i++) {
rollData.furorResult += rollData.furorMaxTab[i].value
}
rollData.finalTotal += rollData.furorResult + rollData.bonusTotal;
rollData.niveauCompetence = niveauCompetence
// Compute total SR
rollData.srFinal = rollData.sr;
if ( rollData.bonusdefense ) {
rollData.srFinal += rollData.bonusdefense;
}
if ( rollData.srFinal > 0 ) {
isCritical = rollData.finalTotal >= rollData.srFinal*2;
isSuccess = rollData.finalTotal >= rollData.srFinal;
marge = rollData.finalTotal - rollData.srFinal;
}
if (nbDice == 1 && rollData.rolls[0].dice[0].results[0].result == 1) {
isFailure = true;
}
if (nbDice == 2 && rollData.rolls[0].dice[0].results[0].result == 1 && rollData.rolls[1].dice[0].results[0].result == 1) {
isFailure = true;
}
if (nbDice >= 3 ) {
let nbOnes = 0
for (let roll of rollData.rolls) {
if (roll.dice[0].results[0].result == 1 ) nbOnes++;
}
isFailure = nbOnes >= 3;
}
// Dégats
if ( isSuccess && (rollData.mode == "armecc" || rollData.mode == "armedist") ) {
rollData.degatsExplain = `Marge(${marge}) + Degats Arme(${rollData.arme.data.degat}) + Bonus Attaque(${rollData.attackDef.bonusdegats})`;
rollData.degats = marge + rollData.arme.data.degat + rollData.attackDef.bonusdegats;
rollData.degatsExplain = `Marge(${marge}) + Degats Arme(${rollData.arme.system.degat}) + Bonus Attaque(${rollData.attackDef.bonusdegats})`;
rollData.degats = marge + rollData.arme.system.degat + rollData.attackDef.bonusdegats;
}
// Stockage resultats
@ -226,14 +273,13 @@ export class YggdrasillUtility {
rollData.isSuccess = isSuccess;
rollData.isCritical = isCritical;
rollData.marge = marge;
rollData.roll = myRoll
// Specific GALDR
if ( rollData.sort?.type == "sortgaldr" && rollData.isSuccess) {
let galdrRoll = new Roll( rollData.dureeGaldr.substring(0, rollData.dureeGaldr.length - 1) ).roll( { async: false} );
await this.showDiceSoNice(galdrRoll, game.settings.get("core", "rollMode") );
rollData.dureeGaldrText = galdrRoll.total + " " + dureeGaldrText[rollData.dureeGaldr];
if ( rollData.sort.data.voie == "illusion") {
if ( rollData.sort.system.voie == "illusion") {
let volume = rollData.zoneGaldr.substring(3, rollData.zoneGaldr.length);
rollData.zoneGaldrText = rollData.instinctCarac.value + " x " + volume;
} else {
@ -251,7 +297,7 @@ export class YggdrasillUtility {
/* -------------------------------------------- */
static getUsers(filter) {
return game.users.filter(filter).map(user => user.data._id);
return game.users.filter(filter).map(user => user.system._id);
}
/* -------------------------------------------- */
static getWhisperRecipients(rollMode, name) {

View File

@ -1,7 +1,7 @@
[Dolphin]
SortOrder=1
HeaderColumnWidths=544,73,106,72
SortRole=modificationtime
Timestamp=2021,9,21,17,43,45.19
Timestamp=2022,2,5,12,44,17.076
Version=4
ViewMode=1
VisibleRoles=Details_text,Details_size,Details_modificationtime,Details_creationtime,CustomizedDetails

View File

@ -1,21 +1,15 @@
{"name":"Casque","type":"armure","img":"icons/svg/item-bag.svg","data":{"categorie":"armure","equipe":false,"protection":3,"enc":2,"valeur":2,"description":"<p>Le mod&egrave;le le plus fr&eacute;quent comporte un nasal et des &laquo; lunettes &raquo; qui prot&egrave;gent les yeux. Sur une base de bol en m&eacute;tal, des lamelles de renforts sont rivet&eacute;es afin d&rsquo;assurer la rigidit&eacute; de l&rsquo;ensemble. L&rsquo;int&eacute;rieur est doubl&eacute; de cuir et de tissu afin d&rsquo;amortir les chocs.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"8MoqC7EIc3SXtdsN"}
{"name":"Lance cc","type":"armecc","img":"icons/svg/item-bag.svg","data":{"categorie":"hast","equipe":false,"degat":10,"solidite":11,"enc":2,"valeur":4,"description":""},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"xMRAVbweHG0aMBNR":3},"flags":{"core":{"sourceId":"Item.KPPt0lyDyEac7SPi"}},"_id":"3VBHojfjdD504ibv"}
{"_id":"8aaaIqx6uT1sJ0RO","name":"Lance","type":"armedist","img":"icons/svg/item-bag.svg","data":{"categorie":"jet","equipe":false,"degat":8,"solidite":11,"enc":4,"portee":"5/10/15/30","valeur":4,"description":""},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{}}
{"name":"Cuir lamellé","type":"armure","img":"icons/svg/item-bag.svg","data":{"categorie":"armure","equipe":false,"protection":6,"enc":3,"valeur":2,"description":"<p>Des lamelles de cuir plus rigides sont coll&eacute;es et cousues sur la version pr&eacute;c&eacute;dente. La poitrine, le ventre, les omoplates et les coudes sont particuli&egrave;rement renforc&eacute;s. Des pi&egrave;ces semi-rigides, bomb&eacute;es, enserrent parfois les &eacute;paules.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"B2yc8LDKTRl0Hjxt"}
{"name":"Hache de guerre","type":"armecc","img":"icons/svg/item-bag.svg","data":{"categorie":"longue","equipe":false,"degat":9,"solidite":10,"enc":2,"valeur":1,"description":""},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"BwmkCCiJWME4CpB0"}
{"name":"Epaullières de fourrure","type":"armure","img":"icons/svg/item-bag.svg","data":{"categorie":"armure","equipe":false,"protection":2,"enc":1,"valeur":0.6,"description":"<p>Il s&rsquo;agit d&rsquo;un grand morceau de peau encerclant les &eacute;paules et le cou. En g&eacute;n&eacute;ral, cette fourrure est fix&eacute;e sur une cape. En plus de la protection qu&rsquo;elle apporte, sa nature (loup, ours, vison, etc.. ) donne une indication sur le statut du guerrier.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"C2mzwxiCPJWoY8kc"}
{"name":"Poignard cc","type":"armecc","img":"icons/svg/item-bag.svg","data":{"categorie":"courte","equipe":false,"degat":3,"solidite":9,"enc":0,"valeur":0.5,"description":""},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"xMRAVbweHG0aMBNR":3},"flags":{"core":{"sourceId":"Item.jLtQv1SAt8pkMGqa"}},"_id":"CwrTGdva6vQVz0aQ"}
{"name":"Epée courte","type":"armecc","img":"icons/svg/item-bag.svg","data":{"categorie":"longue","equipe":false,"degat":5,"solidite":11,"enc":0,"valeur":2,"description":""},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"FGIja8vhUOeGNC4x"}
{"name":"Longue hache","type":"armecc","img":"icons/svg/item-bag.svg","data":{"categorie":"deuxmains","equipe":false,"degat":14,"solidite":12,"enc":3,"valeur":3,"description":""},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"GqAbMhROpATanmH3"}
{"name":"Hache de jet","type":"armedist","img":"icons/svg/item-bag.svg","data":{"categorie":"jet","equipe":false,"degat":4,"solidite":8,"enc":0,"portee":"3/6/9/15","valeur":0.3,"description":""},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"IZRpi8jq9erpiyoy"}
{"_id":"MkEW9Ma5m9nlE0nr","name":"Poignard","type":"armedist","img":"icons/svg/item-bag.svg","data":{"categorie":"jet","equipe":false,"degat":3,"solidite":9,"enc":2,"portee":"3/6/9/12","valeur":0.4,"description":""},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{}}
{"name":"Cuir renforcé","type":"armure","img":"icons/svg/item-bag.svg","data":{"categorie":"armure","equipe":false,"protection":4,"enc":1,"valeur":1,"description":"<p>La veste devient plus &eacute;paisse et doubl&eacute;e de tissu. Des pi&egrave;ces de m&eacute;tal, des rivets plats en cuivre, en bronze ou en fer apportent une protection suppl&eacute;mentaire aux zones les plus expos&eacute;es. Le col monte parfois jusque sous le menton.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"P6dSkefY97UqdDj9"}
{"_id":"MkEW9Ma5m9nlE0nr","name":"Poignard","type":"armedist","img":"icons/svg/item-bag.svg","data":{"categorie":"jet","equipe":false,"degat":3,"solidite":9,"enc":0,"portee":"3/6/9/12","valeur":0.5,"description":""},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{}}
{"name":"Arc de chasse","type":"armedist","img":"icons/svg/item-bag.svg","data":{"categorie":"tir","equipe":false,"degat":6,"solidite":8,"enc":2,"portee":"10/20/40/80","valeur":1,"description":""},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"PsqO2GFVTFIeyCmQ"}
{"name":"Bracelets de cuir renforcé","type":"armure","img":"icons/svg/item-bag.svg","data":{"categorie":"armure","equipe":false,"protection":1,"enc":0,"valeur":0.3,"description":"<p>Ils prot&egrave;gent l&rsquo;avant-bras, du dessus de la main jusqu&rsquo;au coude. Souvent grav&eacute;s de motifs d&eacute;coratifs, ils se composent de lamelles de cuir rigidifi&eacute;es et nou&eacute;es &agrave; l&rsquo;aide de gros lacets.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"RgYAFOOAh7GGzBaF"}
{"name":"Jambières de cuir renforcé","type":"armure","img":"icons/svg/item-bag.svg","data":{"categorie":"armure","equipe":false,"protection":2,"enc":1,"valeur":0.4,"description":"<p>Nou&eacute;es autour des cuisses ou des mollets, elles prot&egrave;gent le combattant des coups visant ses jambes. Ici aussi, les artisans essaient souvent d&rsquo;orner ces pi&egrave;ces d&rsquo;armure de d&eacute;corations cisel&eacute;es dans la mati&egrave;re.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"SpTt7wfW9qBKJDxX"}
{"name":"Veste de cuir","type":"armure","img":"icons/svg/item-bag.svg","data":{"categorie":"armure","equipe":false,"protection":2,"enc":0,"valeur":0.3,"description":"<p>Il s&rsquo;agit autant d&rsquo;un v&ecirc;tement courant que d&rsquo;une armure. La veste recouvre le torse, le ventre et les hanches. Certaines poss&egrave;dent des manches, courtes ou longues. Le cuir souple et fin ne restreint gu&egrave;re la libert&eacute; de mouvement.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"WrJ7Q4e556LDolbu"}
{"name":"Hachette","type":"armecc","img":"icons/svg/item-bag.svg","data":{"categorie":"courte","equipe":false,"degat":4,"solidite":8,"enc":0,"valeur":0.3,"description":""},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"fjIHt6jNRAM25L9q"}
{"name":"Arc de guerre","type":"armedist","img":"icons/svg/item-bag.svg","data":{"categorie":"tir","equipe":false,"degat":7,"solidite":10,"enc":2,"portee":"10/30/50/100","valeur":2,"description":""},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"jSrZnzjI0QVWuXw8"}
{"name":"Javeline","type":"armedist","img":"icons/svg/item-bag.svg","data":{"categorie":"jet","equipe":false,"degat":6,"solidite":7,"enc":2,"portee":"5/10/20/40","valeur":0.4,"description":""},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"m6PjnSO3ACnzU0ie"}
{"name":"Cotte de mailles","type":"armure","img":"icons/svg/item-bag.svg","data":{"categorie":"armure","equipe":false,"protection":9,"enc":5,"valeur":8,"description":"<p>Compos&eacute;e de centaines d&rsquo;anneaux de fer rivet&eacute;s, la cotte de mailles prot&egrave;ge les m&ecirc;mes parties du corps qu&rsquo;une veste. Elle ne descend jamais sur les jambes car cela restreint trop la mobilit&eacute; des combattants. Ceux-ci enfilent dessous une chemise molletonn&eacute;e ou une fine veste de cuir.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"n9eKutLHJZoBYFAD"}
{"name":"Epée à deux mains","type":"armecc","img":"icons/svg/item-bag.svg","data":{"categorie":"deuxmains","equipe":false,"degat":12,"solidite":14,"enc":3,"valeur":5,"description":""},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"ptcBNQhYLwWkBkc0"}
{"name":"Epée longue","type":"armecc","img":"icons/svg/item-bag.svg","data":{"categorie":"longue","equipe":false,"degat":7,"solidite":11,"enc":1,"valeur":4,"description":""},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"rpY7aUxJelvsozvh"}
{"name":"Fronde","type":"armedist","img":"icons/svg/item-bag.svg","data":{"categorie":"tir","equipe":false,"degat":4,"solidite":12,"enc":0,"portee":"10/20/30/40","valeur":0.1,"description":""},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"x3aMYeKa73GxJ1Ge"}

View File

@ -1,8 +1,8 @@
{"name":"Bracelets de cuir renforcé","type":"armure","img":"icons/svg/item-bag.svg","data":{"categorie":"armure","equipe":false,"protection":1,"enc":0,"valeur":0.3,"description":"<p>Ils prot&egrave;gent l&rsquo;avant-bras, du dessus de la main jusqu&rsquo;au coude. Souvent grav&eacute;s de motifs d&eacute;coratifs, ils se composent de lamelles de cuir rigidifi&eacute;es et nou&eacute;es &agrave; l&rsquo;aide de gros lacets.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"4YGPuZ813BWQaNbq"}
{"_id":"4YGPuZ813BWQaNbq","name":"Bracelets de cuir renforcé","type":"armure","img":"icons/svg/item-bag.svg","data":{"categorie":"piecearmure","equipe":false,"protection":1,"enc":0,"valeur":0.3,"description":"<p>Ils prot&egrave;gent l&rsquo;avant-bras, du dessus de la main jusqu&rsquo;au coude. Souvent grav&eacute;s de motifs d&eacute;coratifs, ils se composent de lamelles de cuir rigidifi&eacute;es et nou&eacute;es &agrave; l&rsquo;aide de gros lacets.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{}}
{"name":"Cuir lamellé","type":"armure","img":"icons/svg/item-bag.svg","data":{"categorie":"armure","equipe":false,"protection":6,"enc":3,"valeur":2,"description":"<p>Des lamelles de cuir plus rigides sont coll&eacute;es et cousues sur la version pr&eacute;c&eacute;dente. La poitrine, le ventre, les omoplates et les coudes sont particuli&egrave;rement renforc&eacute;s. Des pi&egrave;ces semi-rigides, bomb&eacute;es, enserrent parfois les &eacute;paules.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"9WReqm0CdcCGnsNc"}
{"name":"Veste de cuir","type":"armure","img":"icons/svg/item-bag.svg","data":{"categorie":"armure","equipe":false,"protection":2,"enc":0,"valeur":0.3,"description":"<p>Il s&rsquo;agit autant d&rsquo;un v&ecirc;tement courant que d&rsquo;une armure. La veste recouvre le torse, le ventre et les hanches. Certaines poss&egrave;dent des manches, courtes ou longues. Le cuir souple et fin ne restreint gu&egrave;re la libert&eacute; de mouvement.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"JP6OeUflKfg4WiyJ"}
{"name":"Cuir renforcé","type":"armure","img":"icons/svg/item-bag.svg","data":{"categorie":"armure","equipe":false,"protection":4,"enc":1,"valeur":1,"description":"<p>La veste devient plus &eacute;paisse et doubl&eacute;e de tissu. Des pi&egrave;ces de m&eacute;tal, des rivets plats en cuivre, en bronze ou en fer apportent une protection suppl&eacute;mentaire aux zones les plus expos&eacute;es. Le col monte parfois jusque sous le menton.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"MFH09YNp4uGL8eCE"}
{"name":"Epaullières de fourrure","type":"armure","img":"icons/svg/item-bag.svg","data":{"categorie":"armure","equipe":false,"protection":2,"enc":1,"valeur":0.6,"description":"<p>Il s&rsquo;agit d&rsquo;un grand morceau de peau encerclant les &eacute;paules et le cou. En g&eacute;n&eacute;ral, cette fourrure est fix&eacute;e sur une cape. En plus de la protection qu&rsquo;elle apporte, sa nature (loup, ours, vison, etc.. ) donne une indication sur le statut du guerrier.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"NK7IF0Cr4oOPCZVq"}
{"name":"Jambières de cuir renforcé","type":"armure","img":"icons/svg/item-bag.svg","data":{"categorie":"armure","equipe":false,"protection":2,"enc":1,"valeur":0.4,"description":"<p>Nou&eacute;es autour des cuisses ou des mollets, elles prot&egrave;gent le combattant des coups visant ses jambes. Ici aussi, les artisans essaient souvent d&rsquo;orner ces pi&egrave;ces d&rsquo;armure de d&eacute;corations cisel&eacute;es dans la mati&egrave;re.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"WergjG9QE8SxlAGr"}
{"name":"Casque","type":"armure","img":"icons/svg/item-bag.svg","data":{"categorie":"armure","equipe":false,"protection":3,"enc":2,"valeur":2,"description":"<p>Le mod&egrave;le le plus fr&eacute;quent comporte un nasal et des &laquo; lunettes &raquo; qui prot&egrave;gent les yeux. Sur une base de bol en m&eacute;tal, des lamelles de renforts sont rivet&eacute;es afin d&rsquo;assurer la rigidit&eacute; de l&rsquo;ensemble. L&rsquo;int&eacute;rieur est doubl&eacute; de cuir et de tissu afin d&rsquo;amortir les chocs.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"ozRBKdYJtbnk87gO"}
{"_id":"NK7IF0Cr4oOPCZVq","name":"Epaulières de fourrure","type":"armure","img":"icons/svg/item-bag.svg","data":{"categorie":"piecearmure","equipe":false,"protection":2,"enc":1,"valeur":0.6,"description":"<p>Il s&rsquo;agit d&rsquo;un grand morceau de peau encerclant les &eacute;paules et le cou. En g&eacute;n&eacute;ral, cette fourrure est fix&eacute;e sur une cape. En plus de la protection qu&rsquo;elle apporte, sa nature (loup, ours, vison, etc.. ) donne une indication sur le statut du guerrier.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{}}
{"_id":"WergjG9QE8SxlAGr","name":"Jambières de cuir renforcé","type":"armure","img":"icons/svg/item-bag.svg","data":{"categorie":"piecearmure","equipe":false,"protection":2,"enc":1,"valeur":0.4,"description":"<p>Nou&eacute;es autour des cuisses ou des mollets, elles prot&egrave;gent le combattant des coups visant ses jambes. Ici aussi, les artisans essaient souvent d&rsquo;orner ces pi&egrave;ces d&rsquo;armure de d&eacute;corations cisel&eacute;es dans la mati&egrave;re.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{}}
{"_id":"ozRBKdYJtbnk87gO","name":"Casque","type":"armure","img":"icons/svg/item-bag.svg","data":{"categorie":"piecearmure","equipe":false,"protection":3,"enc":2,"valeur":2,"description":"<p>Le mod&egrave;le le plus fr&eacute;quent comporte un nasal et des &laquo; lunettes &raquo; qui prot&egrave;gent les yeux. Sur une base de bol en m&eacute;tal, des lamelles de renforts sont rivet&eacute;es afin d&rsquo;assurer la rigidit&eacute; de l&rsquo;ensemble. L&rsquo;int&eacute;rieur est doubl&eacute; de cuir et de tissu afin d&rsquo;amortir les chocs.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{}}
{"name":"Cotte de mailles","type":"armure","img":"icons/svg/item-bag.svg","data":{"categorie":"armure","equipe":false,"protection":9,"enc":5,"valeur":8,"description":"<p>Compos&eacute;e de centaines d&rsquo;anneaux de fer rivet&eacute;s, la cotte de mailles prot&egrave;ge les m&ecirc;mes parties du corps qu&rsquo;une veste. Elle ne descend jamais sur les jambes car cela restreint trop la mobilit&eacute; des combattants. Ceux-ci enfilent dessous une chemise molletonn&eacute;e ou une fine veste de cuir.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"qUXBrstsh5Oo8FEx"}

View File

@ -1,7 +1,7 @@
{"name":"Superstition","type":"competence","img":"systems/fvtt-yggdrasill/images/icons/icon_skill.png","data":{"isspecialisation":false,"categorie":"generale","specialisation":"","description":"<p>Le monde regorge de signes divins, de d&eacute;tails naturels qui refl&egrave;tent le sens cach&eacute; des choses. Le personnage sait rep&eacute;rer et interpr&eacute;ter ces &eacute;l&eacute;ments. Il s&rsquo;agit en g&eacute;n&eacute;ral d&rsquo;y voir des conditions favorables ou d&eacute;favorables pour le moment pr&eacute;sent, mais aussi des messages d&rsquo;avertissement envoy&eacute;s par les dieux. Les habitants de la Scandia sont des gens tr&egrave;s superstitieux et ils tendent &agrave; voir partout des pr&eacute;sages significatifs. Le Meneur de Jeu pourra en profiter pour glisser quelques indices obscurs sur la situation actuelle des h&eacute;ros qui, dans l&rsquo;id&eacute;al, r&eacute;v&egrave;leront leur plein sens une fois qu&rsquo;il sera trop tard.</p>","niveau":0,"niveauunrequis":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"26CQEICWZs8Gw4Xi"}
{"name":"Intimidation","type":"competence","img":"systems/fvtt-yggdrasill/images/icons/icon_skill.png","data":{"isspecialisation":false,"categorie":"generale","specialisation":"","description":"<p>Par l&rsquo;interm&eacute;diaire de la menace verbale ou physique, le personnage peut contraindre quelqu&rsquo;un &agrave; lui ob&eacute;ir. Une tentative d&rsquo;Intimidation n&eacute;cessite un test en opposition. La cible tente de r&eacute;sister gr&acirc;ce &agrave; sa T&eacute;nacit&eacute; et &agrave; sa D&eacute;fense mentale.</p>","niveau":0,"niveauunrequis":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"3vspCnDuVMqQDuPe"}
{"name":"Négociation","type":"competence","img":"systems/fvtt-yggdrasill/images/icons/icon_skill.png","data":{"isspecialisation":false,"categorie":"generale","specialisation":"","description":"<p>Il s&rsquo;agit de la capacit&eacute; &agrave; mener une discussion vers un compromis acceptable par les deux parties. N&eacute;gociation est une comp&eacute;tence utile aux diplomates de la Scandia, mais aussi aux marchands qui peuvent mener &agrave; bien leur marchandage lors de l&rsquo;achat et de la vente de leurs produits.</p>","niveau":0,"niveauunrequis":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"4k4NLNlEG7jZEPK6"}
{"name":"Jeu","type":"competence","img":"systems/fvtt-yggdrasill/images/icons/icon_skill.png","data":{"isspecialisation":false,"categorie":"generale","specialisation":"","description":"<p>le personnage conna&icirc;t les r&egrave;gles et sait pratiquer la plupart des jeux pris&eacute;s par les habitants de la Scandia, comme les jeux de d&eacute;s ou le <em>hnefatafl</em>. Cette comp&eacute;tence s&rsquo;utilise g&eacute;n&eacute;ralement avec des tests en opposition mettant en concurrence les niveaux de ma&icirc;trise respectifs des joueurs. Mais elle permet &eacute;galement de tricher. Dans ce cas, les autres participants peuvent tenter un test en opposition de Perception + Vigilance. Si le tricheur est d&eacute;masqu&eacute;, attendezvous &agrave; des cons&eacute;quences&hellip; muscl&eacute;es.</p>","niveau":0,"niveauunrequis":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"6OMBvnSFqVHqd36u"}
{"_id":"6OMBvnSFqVHqd36u","name":"Jeux","type":"competence","img":"systems/fvtt-yggdrasill/images/icons/icon_skill.png","data":{"isspecialisation":false,"categorie":"generale","specialisation":"","description":"<p>le personnage conna&icirc;t les r&egrave;gles et sait pratiquer la plupart des jeux pris&eacute;s par les habitants de la Scandia, comme les jeux de d&eacute;s ou le <em>hnefatafl</em>. Cette comp&eacute;tence s&rsquo;utilise g&eacute;n&eacute;ralement avec des tests en opposition mettant en concurrence les niveaux de ma&icirc;trise respectifs des joueurs. Mais elle permet &eacute;galement de tricher. Dans ce cas, les autres participants peuvent tenter un test en opposition de Perception + Vigilance. Si le tricheur est d&eacute;masqu&eacute;, attendezvous &agrave; des cons&eacute;quences&hellip; muscl&eacute;es.</p>","niveau":0,"niveauunrequis":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{}}
{"name":"Artisanat","type":"competence","img":"systems/fvtt-yggdrasill/images/icons/icon_skill.png","data":{"isspecialisation":true,"categorie":"generale","specialisation":"","description":"<p>Cette comp&eacute;tence regroupe l&rsquo;ensemble des activit&eacute;s manuelles permettant de confectionner les objets du quotidien. La plupart des habitants de la Scandia pratiquent plus ou moins ces techniques et se r&eacute;v&egrave;lent autonomes lorsqu&rsquo;il s&rsquo;agit de fabriquer ou de r&eacute;parer des ustensiles basiques. Un niveau Confirm&eacute; permet d&rsquo;exercer son artisanat en professionnel et de gagner sa vie avec cette activit&eacute;. Les meilleurs artisans b&eacute;n&eacute;ficient d&rsquo;une renomm&eacute;e et d&rsquo;une consid&eacute;ration importantes. L&rsquo;utilisation de cette comp&eacute;tence correspond en g&eacute;n&eacute;ral &agrave; un test &eacute;tendu. Sp&eacute;cialisations possibles : cordonnerie, ferronnerie, chaudronnerie, charpenterie, tissage, tannerie, corderie, taille de pierre, poterie, sellerie, etc&hellip;</p>\n<p>Il existe cependant deux sp&eacute;cialisations qui m&eacute;ritent que l&rsquo;on s&rsquo;y attarde, tant elles occupent une place importante dans la soci&eacute;t&eacute; des Terres du Nord.</p>\n<p><strong>Construction navale : </strong>cette sp&eacute;cialisation permet de mener &agrave; bien la construction des diff&eacute;rents types de navires sillonnant les flots de la Scandia. Le personnage ma&icirc;trise aussi bien les secrets de l&rsquo;architecture navale que les techniques de la charpenterie de marine, mais il sait tout autant diriger les artisans qui vont r&eacute;aliser le bateau selon ses instructions. Les meilleurs dans ce domaine sont tr&egrave;s recherch&eacute;s par tous les jarls et souverains des Royaumes Nordiques.</p>\n<p><strong>Forge : </strong>l&rsquo;art de la forge n&eacute;cessite des connaissances sp&eacute;cifiques dont certaines confinent au secret transmis uniquement d&rsquo;un ma&icirc;tre &agrave; son disciple. Un personnage Novice sait fabriquer des objets usuels, simples, utiles au quotidien (clous, t&ecirc;tes d&rsquo;outils, anneaux&hellip;) Une fois atteint le niveau Confirm&eacute;, il peut commencer &agrave; forger des pi&egrave;ces plus complexes (fer pour les chevaux, serrures, ferrures d&rsquo;ornements, etc&hellip;) ainsi que des armes et des armures. Si certains exercent leur profession de mani&egrave;re itin&eacute;rante, un forgeron doit tout de m&ecirc;me disposer d&rsquo;un atelier et d&rsquo;outils appropri&eacute;s afin de pouvoir mettre en oeuvre sa comp&eacute;tence. Un forgeron pratique l&rsquo;un des m&eacute;tiers les plus respect&eacute;s parmi les artisans.</p>","niveau":0,"niveauunrequis":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"947IgofSqazA1CoD"}
{"name":"Survie","type":"competence","img":"systems/fvtt-yggdrasill/images/icons/icon_skill.png","data":{"isspecialisation":false,"categorie":"generale","specialisation":"","description":"<p>Le personnage se sent &agrave; l&rsquo;aise dans les milieux naturels et sait comment y vivre en harmonie avec la nature. Cette comp&eacute;tence permet de trouver de quoi se nourrir et s&rsquo;abreuver, un endroit pour s&rsquo;abriter, de faire du feu et de se prot&eacute;ger des conditions climatiques extr&ecirc;mes comme le froid d&rsquo;une nuit d&rsquo;hiver. La Survie recouvre &eacute;galement la chasse et le pistage, mais aussi le sens de l&rsquo;orientation et les premiers soins.</p>","niveau":0,"niveauunrequis":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"9AHUm9FLajXTkEZJ"}
{"name":"Traditions","type":"competence","img":"systems/fvtt-yggdrasill/images/icons/icon_skill.png","data":{"isspecialisation":false,"categorie":"generale","specialisation":"","description":"<p>Gr&acirc;ce &agrave; cette comp&eacute;tence, le personnage se souvient des r&egrave;gles, des coutumes et des lois qui ont cours dans la r&eacute;gion, voire la cit&eacute;, o&ugrave; il se trouve. Si le syst&egrave;me juridique reste assez semblable dans toute la Scandia, il existe souvent quelques variations locales dans l&rsquo;application des peines encourues pour un m&ecirc;me crime. De m&ecirc;me, les us et coutumes de certains endroits changent subtilement par rapport aux habitudes des h&eacute;ros et peuvent provoquer des situations des plus embarrassantes. Un personnage Expert dans cette comp&eacute;tence peut endosser le r&ocirc;le de crieur des lois lors d&rsquo;un thing.</p>","niveau":0,"niveauunrequis":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"CIfheBgF5plSgqYT"}
@ -9,10 +9,10 @@
{"name":"Esquive","type":"competence","img":"systems/fvtt-yggdrasill/images/icons/icon_skill.png","data":{"isspecialisation":false,"categorie":"generale","specialisation":"","description":"<p>Le personnage anticipe les attaques port&eacute;es contre lui et se met hors de port&eacute;e des coups ou des projectiles qui le visent. Bien qu&rsquo;elle s&rsquo;av&egrave;re surtout utile en combat, cette comp&eacute;tence sert &eacute;galement &agrave; &eacute;viter une collision qui menace le h&eacute;ros, comme un attelage lanc&eacute; au galop vers lui, ou un &eacute;boulement de gros rochers. Que l&rsquo;esquive soit r&eacute;ussie ou pas, le personnage se retrouve toujours &agrave; terre, &agrave; quelques pas de sa position initiale (le joueur choisit la direction).</p>","niveau":0,"niveauunrequis":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"MLCAKgi8wRLwlINc"}
{"name":"Commerce","type":"competence","img":"systems/fvtt-yggdrasill/images/icons/icon_skill.png","data":{"isspecialisation":false,"categorie":"generale","specialisation":"","description":"<p>Il s&rsquo;agit de la connaissance des lois de l&rsquo;offre et de la demande. Le n&eacute;gociant sait &eacute;valuer les choses lors d&rsquo;un troc, ou d&rsquo;une transaction s&rsquo;il utilise de la monnaie. Il conna&icirc;t &eacute;galement les points d&rsquo;approvisionnement pour les diff&eacute;rentes marchandises produites dans la Scandia, et les endroits o&ugrave; il a le plus de chance d&rsquo;en tirer le meilleur profit. Les dates et les lieux o&ugrave; se d&eacute;roulent les foires annuelles n&rsquo;ont pas de secret pour lui. Enfin, cette comp&eacute;tence g&egrave;re tout l&rsquo;aspect intendance de cette activit&eacute;.</p>","niveau":0,"niveauunrequis":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"OlELPb9hGkbQNnff"}
{"name":"Chercher","type":"competence","img":"systems/fvtt-yggdrasill/images/icons/icon_skill.png","data":{"isspecialisation":false,"categorie":"generale","specialisation":"","description":"<p>Cette comp&eacute;tence entre en jeu lorsque le personnage fouille un endroit particulier. Elle permet de r&eacute;v&eacute;ler les &eacute;l&eacute;ments cach&eacute;s dans le d&eacute;cor ou les indices dissimul&eacute;s. Contrairement &agrave; la comp&eacute;tence Vigilance, Chercher n&eacute;cessite une d&eacute;marche active de la part du h&eacute;ros.</p>","niveau":0,"niveauunrequis":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"QysZVyRFax7P0mko"}
{"name":"Médecine","type":"competence","img":"systems/fvtt-yggdrasill/images/icons/icon_skill.png","data":{"isspecialisation":false,"categorie":"generale","specialisation":"","description":"<p>Cette comp&eacute;tence correspond &agrave; la connaissance de l&rsquo;ensemble des pratiques m&eacute;dicales de la Scandia. Elle permet d&rsquo;&eacute;tablir un diagnostic, de soigner les maladies les plus courantes, de traiter les blessures, de r&eacute;duire une fracture, d&rsquo;accompagner un accouchement, mais aussi de d&eacute;terminer les causes probables d&rsquo;une mort inexpliqu&eacute;e. Les premiers soins sont quant &agrave; eux couverts par la comp&eacute;tence Survie, mais un personnage plus comp&eacute;tent en M&eacute;decine peut dans ce cas substituer cette discipline &agrave; un test de Survie.</p>","niveau":0,"niveauunrequis":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"SEeAKWRSKO0HWt6Q"}
{"_id":"SEeAKWRSKO0HWt6Q","name":"Médecine*","type":"competence","img":"systems/fvtt-yggdrasill/images/icons/icon_skill.png","data":{"isspecialisation":false,"categorie":"generale","specialisation":"","description":"<p>Cette comp&eacute;tence correspond &agrave; la connaissance de l&rsquo;ensemble des pratiques m&eacute;dicales de la Scandia. Elle permet d&rsquo;&eacute;tablir un diagnostic, de soigner les maladies les plus courantes, de traiter les blessures, de r&eacute;duire une fracture, d&rsquo;accompagner un accouchement, mais aussi de d&eacute;terminer les causes probables d&rsquo;une mort inexpliqu&eacute;e. Les premiers soins sont quant &agrave; eux couverts par la comp&eacute;tence Survie, mais un personnage plus comp&eacute;tent en M&eacute;decine peut dans ce cas substituer cette discipline &agrave; un test de Survie.</p>","niveau":0,"niveauunrequis":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{}}
{"name":"Herboristerie","type":"competence","img":"systems/fvtt-yggdrasill/images/icons/icon_skill.png","data":{"isspecialisation":false,"categorie":"generale","specialisation":"","description":"<p>Il s&rsquo;agit de la connaissance des plantes, des herbes et des produits naturels permettant de concocter des rem&egrave;des, mais aussi des teintures ou encore des poisons de toutes sortes. Un personnage vers&eacute; dans cette discipline sait &eacute;galement reconna&icirc;tre les plantes rencontr&eacute;es en pleine nature, ainsi que d&eacute;terminer l&rsquo;endroit o&ugrave; il a le plus de chance de trouver une esp&egrave;ce sp&eacute;cifique.</p>","niveau":0,"niveauunrequis":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"SHnTbcIm0JZN7UqU"}
{"name":"Natation","type":"competence","img":"systems/fvtt-yggdrasill/images/icons/icon_skill.png","data":{"isspecialisation":false,"categorie":"generale","specialisation":"","description":"<p>Cette comp&eacute;tence repr&eacute;sente l&rsquo;aptitude &agrave; se mouvoir &agrave; la surface de l&rsquo;eau et &agrave; y demeurer en cas de chute depuis un navire. Le Meneur de Jeu peut appliquer un malus au test de Natation &eacute;gal &agrave; la valeur de protection de l&rsquo;armure port&eacute;e par l&rsquo;infortun&eacute;. Le nageur peut &eacute;galement se d&eacute;placer sous l&rsquo;eau ou plonger depuis les hauteurs vertigineuses des falaises avec de bonnes chances de r&eacute;ussite.</p>","niveau":0,"niveauunrequis":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"VcfHyyT169aId8Td"}
{"name":"Langues","type":"competence","img":"systems/fvtt-yggdrasill/images/icons/icon_skill.png","data":{"isspecialisation":true,"categorie":"generale","specialisation":"","description":"<p>Tous les personnages parlent couramment le norrois (<em>dansk tunga</em>), la langue commune aux diff&eacute;rents royaumes de la Scandia. Chaque sp&eacute;cialisation dans cette comp&eacute;tence correspond &agrave; une langue particuli&egrave;re et &eacute;trang&egrave;re, ou &agrave; un patois local issu d&rsquo;une autre racine linguistique comme le finnois parl&eacute; par les tribus sames. Il est toujours possible de comprendre un dialecte tir&eacute; du norrois en r&eacute;ussissant, g&eacute;n&eacute;ralement, un test d&rsquo;Intellect contre un Seuil de R&eacute;ussite Moyen (14). Exemples de sp&eacute;cialisation : saxon, finnois, balte, germain&hellip;</p>","niveau":0,"niveauunrequis":true},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"ZhIYWUKuDV5hyuUA"}
{"_id":"ZhIYWUKuDV5hyuUA","name":"Langues*","type":"competence","img":"systems/fvtt-yggdrasill/images/icons/icon_skill.png","data":{"isspecialisation":true,"categorie":"generale","specialisation":"","description":"<p>Tous les personnages parlent couramment le norrois (<em>dansk tunga</em>), la langue commune aux diff&eacute;rents royaumes de la Scandia. Chaque sp&eacute;cialisation dans cette comp&eacute;tence correspond &agrave; une langue particuli&egrave;re et &eacute;trang&egrave;re, ou &agrave; un patois local issu d&rsquo;une autre racine linguistique comme le finnois parl&eacute; par les tribus sames. Il est toujours possible de comprendre un dialecte tir&eacute; du norrois en r&eacute;ussissant, g&eacute;n&eacute;ralement, un test d&rsquo;Intellect contre un Seuil de R&eacute;ussite Moyen (14). Exemples de sp&eacute;cialisation : saxon, finnois, balte, germain&hellip;</p>","niveau":0,"niveauunrequis":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{}}
{"name":"Discrétion","type":"competence","img":"systems/fvtt-yggdrasill/images/icons/icon_skill.png","data":{"isspecialisation":false,"categorie":"generale","specialisation":"","description":"<p>Le personnage sait se d&eacute;placer en silence, tout en profitant du moindre couvert afin de passer inaper&ccedil;u. Cette comp&eacute;tence permet &eacute;galement de se cacher efficacement ou de camoufler un objet sur soi ou dans le d&eacute;cor environnant.</p>","niveau":0,"niveauunrequis":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"cKowAJGvHnY0GSOZ"}
{"name":"Art","type":"competence","img":"systems/fvtt-yggdrasill/images/icons/icon_skill.png","data":{"isspecialisation":true,"categorie":"generale","specialisation":"","description":"<p>Choisissez le domaine de pr&eacute;dilection du personnage. Il peut s&rsquo;agir d&rsquo;un simple don naturel, d&rsquo;une activit&eacute; professionnelle (pour un scalde), d&rsquo;un loisir&hellip; Cette comp&eacute;tence permet de cr&eacute;er une oeuvre d&rsquo;art originale ou d&rsquo;en reproduire une existante. Sp&eacute;cialisations possibles : orf&egrave;vrerie, chant, musique, danse, gravure, po&eacute;sie d&eacute;clam&eacute;e, flatterie, peinture, etc&hellip;</p>","niveau":0,"niveauunrequis":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"fcTMIpIMVc1cQASZ"}
{"name":"Larcins","type":"competence","img":"systems/fvtt-yggdrasill/images/icons/icon_skill.png","data":{"isspecialisation":false,"categorie":"generale","specialisation":"","description":"<p>Cette comp&eacute;tence recouvre les activit&eacute;s des filous des terres du Nord. Elle permet de crocheter une serrure, mais aussi de couper une bourse ou de subtiliser discr&egrave;tement des clefs. Dans ce deuxi&egrave;me cas, Larcins s&rsquo;emploie dans un test en opposition contre la Perception et la Vigilance de la cible.</p>","niveau":0,"niveauunrequis":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"ggoWPfYoTx7QG5ae"}

View File

@ -1,3 +1,3 @@
{"name":"Galdr","type":"competence","img":"systems/fvtt-yggdrasill/images/icons/icon_skill.png","data":{"isspecialisation":false,"categorie":"magique","specialisation":"","description":"<p>Le <em>galdr</em> utilise la puissance divine de la voix pour la magie. Tout pratiquant de la magie peut l&rsquo;utiliser. Il n&rsquo;est pas besoin d&rsquo;avoir une belle voix ou de chanter juste, mais de lancer des incantations.</p>","niveau":0,"niveauunrequis":true},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"RAhkadJOfEnVBLpy"}
{"name":"Runes","type":"competence","img":"systems/fvtt-yggdrasill/images/icons/icon_skill.png","data":{"isspecialisation":false,"categorie":"magique","specialisation":"","description":"<p>Cette comp&eacute;tence permet de lire et de conna&icirc;tre le sens de chacune des vingt-quatre runes. Mais surtout elles donnent des indications occultes sur la r&eacute;alit&eacute; du monde et permettent de lancer des sorts de protection, mal&eacute;diction et gu&eacute;rison, &agrave; ceux qui savent s&rsquo;en servir.</p>","niveau":0,"niveauunrequis":true},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"UoWkSxLdXhZQinnc"}
{"name":"Sejdr","type":"competence","img":"systems/fvtt-yggdrasill/images/icons/icon_skill.png","data":{"isspecialisation":false,"categorie":"magique","specialisation":"","description":"<p>Il s&rsquo;agit l&agrave; de l&rsquo;antique art magique enseign&eacute; &agrave; Odhinn m&ecirc;me, par Freyja, la sorcellerie. Les femmes sont plus nombreuses &agrave; en pratiquer certains sorts car ils sont li&eacute;s &agrave; des travaux consid&eacute;r&eacute;s comme purement f&eacute;minins (filer de la laine, mettre des v&ecirc;tements de c&eacute;r&eacute;monie pour les visions, chevaucher un autre personnage). Certains hommes pratiquent le Sejdr sans s&rsquo;en soucier, d&rsquo;autres s&eacute;lectionnent les sorts les moins compromettants et les compl&egrave;tent avec les Runes ou le Galdr.</p>","niveau":0,"niveauunrequis":true},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{},"_id":"mIBiTKqfqiiepeyz"}
{"_id":"RAhkadJOfEnVBLpy","name":"Galdr*","type":"competence","img":"systems/fvtt-yggdrasill/images/icons/icon_skill.png","data":{"isspecialisation":false,"categorie":"magique","specialisation":"","description":"<p>Le <em>galdr</em> utilise la puissance divine de la voix pour la magie. Tout pratiquant de la magie peut l&rsquo;utiliser. Il n&rsquo;est pas besoin d&rsquo;avoir une belle voix ou de chanter juste, mais de lancer des incantations.</p>","niveau":0,"niveauunrequis":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{}}
{"_id":"UoWkSxLdXhZQinnc","name":"Runes*","type":"competence","img":"systems/fvtt-yggdrasill/images/icons/icon_skill.png","data":{"isspecialisation":false,"categorie":"magique","specialisation":"","description":"<p>Cette comp&eacute;tence permet de lire et de conna&icirc;tre le sens de chacune des vingt-quatre runes. Mais surtout elles donnent des indications occultes sur la r&eacute;alit&eacute; du monde et permettent de lancer des sorts de protection, mal&eacute;diction et gu&eacute;rison, &agrave; ceux qui savent s&rsquo;en servir.</p>","niveau":0,"niveauunrequis":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{}}
{"_id":"mIBiTKqfqiiepeyz","name":"Sejdr*","type":"competence","img":"systems/fvtt-yggdrasill/images/icons/icon_skill.png","data":{"isspecialisation":false,"categorie":"magique","specialisation":"","description":"<p>Il s&rsquo;agit l&agrave; de l&rsquo;antique art magique enseign&eacute; &agrave; Odhinn m&ecirc;me, par Freyja, la sorcellerie. Les femmes sont plus nombreuses &agrave; en pratiquer certains sorts car ils sont li&eacute;s &agrave; des travaux consid&eacute;r&eacute;s comme purement f&eacute;minins (filer de la laine, mettre des v&ecirc;tements de c&eacute;r&eacute;monie pour les visions, chevaucher un autre personnage). Certains hommes pratiquent le Sejdr sans s&rsquo;en soucier, d&rsquo;autres s&eacute;lectionnent les sorts les moins compromettants et les compl&egrave;tent avec les Runes ou le Galdr.</p>","niveau":0,"niveauunrequis":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{}}

View File

@ -72,7 +72,7 @@
{"name":"#[CF_tempEntity]","type":"competence","img":"icons/svg/item-bag.svg","data":{"isspecialisation":false,"categorie":"","specialisation":"","description":0,"niveau":0,"niveauunrequis":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{"cf":{"id":"temp_3mky1xz4s5a","folderPath":[],"color":"#000000","fontColor":"#FFFFFF","name":"Matériel de voyage","children":[],"icon":""}},"_id":"YkBXKz3eMPwnZzdy"}
{"_id":"Yzp6xG4TvdqekMbS","name":"Tabouret","type":"equipement","img":"icons/svg/item-bag.svg","data":{"equipe":false,"enc":0,"valeur":1,"quantite":0,"description":null},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{"core":{"sourceId":"Item.BDhealihoWBT314b"},"cf":{"id":"temp_5sjuseujvx","color":"#000000"}}}
{"_id":"aTXpAI60TC9iPNW2","name":"Noix (x12)","type":"equipement","img":"icons/svg/item-bag.svg","data":{"equipe":false,"enc":0,"valeur":1,"quantite":0,"description":null},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{"core":{"sourceId":"Item.BDhealihoWBT314b"},"cf":{"id":"temp_gnm0v0yf2u6","color":"#000000"}}}
{"_id":"b7KxnGQYSch0R3LR","name":"Oie, la pièce (Copy)","type":"equipement","img":"icons/svg/item-bag.svg","data":{"equipe":false,"enc":0,"valeur":1,"quantite":0,"description":null},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{"core":{"sourceId":"Item.BDhealihoWBT314b"},"cf":{"id":"temp_gnm0v0yf2u6","color":"#000000"}}}
{"_id":"b7KxnGQYSch0R3LR","name":"Oie, la pièce","type":"equipement","img":"icons/svg/item-bag.svg","data":{"equipe":false,"enc":0,"valeur":1,"quantite":0,"description":null},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{"core":{"sourceId":"Item.BDhealihoWBT314b"},"cf":{"id":"temp_gnm0v0yf2u6","color":"#000000"}}}
{"_id":"bBYQWKsP2obNVY3g","name":"Toque de luxe","type":"equipement","img":"icons/svg/item-bag.svg","data":{"equipe":false,"enc":0,"valeur":30,"quantite":0,"description":""},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{"cf":{"id":"temp_adwio7cb4q5","color":"#000000"}}}
{"_id":"bVyPX9mly7ZKGmpi","name":"Lanterne","type":"equipement","img":"icons/svg/item-bag.svg","data":{"equipe":false,"enc":0,"valeur":12,"quantite":0,"description":null},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{"core":{"sourceId":"Item.BDhealihoWBT314b"},"cf":{"id":"temp_3mky1xz4s5a","color":"#000000"}}}
{"name":"#[CF_tempEntity]","type":"competence","img":"icons/svg/item-bag.svg","data":{"isspecialisation":false,"categorie":"","specialisation":"","description":0,"niveau":0,"niveauunrequis":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{"cf":{"id":"temp_xbkwrebbs7","folderPath":[],"color":"#000000","fontColor":"#FFFFFF","name":"Animaux","children":[],"icon":""}},"_id":"bc4G5zHvyo85bTY4"}
@ -122,7 +122,7 @@
{"_id":"tj5GitQXME3twMZA","name":"Ferme","type":"equipement","img":"icons/svg/item-bag.svg","data":{"equipe":false,"enc":0,"valeur":100,"quantite":0,"description":"<p>Valeur: 100 &agrave; 500 onces d'argent</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{"core":{"sourceId":"Item.BDhealihoWBT314b"},"cf":{"id":"temp_4l2xub2vumf","color":"#000000"}}}
{"_id":"u6x3iKoK1dFVSkmR","name":"Assiettes en terre cuite (x6)","type":"equipement","img":"icons/svg/item-bag.svg","data":{"equipe":false,"enc":0,"valeur":1,"quantite":0,"description":""},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{"core":{"sourceId":"Item.kq81bAOPnRmqKfcz"},"cf":{"id":"temp_w8bf2nzl2s8","color":"#000000"}}}
{"_id":"uhn3xaweehPUZ50g","name":"Lait de vache, le litre","type":"equipement","img":"icons/svg/item-bag.svg","data":{"equipe":false,"enc":0,"valeur":1,"quantite":0,"description":null},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{"core":{"sourceId":"Item.BDhealihoWBT314b"},"cf":{"id":"temp_oahtnyiva7l","color":"#000000"}}}
{"_id":"unHM416bSKzKQnEz","name":"Maison longue","type":"equipement","img":"icons/svg/item-bag.svg","data":{"equipe":false,"enc":0,"valeur":50,"quantite":0,"description":"<p>Valeur: 50 &agrave; 10 000 onces d'argent</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{"core":{"sourceId":"Item.BDhealihoWBT314b"},"cf":{"id":"temp_4l2xub2vumf","color":"#000000"}}}
{"_id":"unHM416bSKzKQnEz","name":"Maison longue","type":"equipement","img":"icons/svg/item-bag.svg","data":{"equipe":false,"enc":0,"valeur":500,"quantite":0,"description":"<p>Valeur: 500 &agrave; 10 000 onces d'argent</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{"core":{"sourceId":"Item.BDhealihoWBT314b"},"cf":{"id":"temp_4l2xub2vumf","color":"#000000"}}}
{"_id":"v2yQffSyG2Hv3PaX","name":"Poulet (x2)","type":"equipement","img":"icons/svg/item-bag.svg","data":{"equipe":false,"enc":0,"valeur":1,"quantite":0,"description":null},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{"core":{"sourceId":"Item.BDhealihoWBT314b"},"cf":{"id":"temp_xbkwrebbs7","color":"#000000"}}}
{"_id":"vLedwJH0DQKCaXfx","name":"Pantalon de cuir de luxe","type":"equipement","img":"icons/svg/item-bag.svg","data":{"equipe":false,"enc":0,"valeur":70,"quantite":0,"description":""},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{"cf":{"id":"temp_adwio7cb4q5","color":"#000000"}}}
{"_id":"vdDSkS9Y3VEkoMtd","name":"Grand sac","type":"equipement","img":"icons/svg/item-bag.svg","data":{"equipe":false,"enc":0,"valeur":6,"quantite":0,"description":null},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{"core":{"sourceId":"Item.BDhealihoWBT314b"},"cf":{"id":"temp_3mky1xz4s5a","color":"#000000"}}}
@ -131,7 +131,7 @@
{"_id":"wGNKXkawnjjKSMhL","name":"Chemise ordinaire","type":"equipement","img":"icons/svg/item-bag.svg","data":{"equipe":false,"enc":0,"valeur":8,"quantite":0,"description":""},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{"cf":{"id":"temp_adwio7cb4q5","color":"#000000"}}}
{"_id":"wIPiowsoKpN6O2i4","name":"Pièce de chanvre (5 mètres)","type":"equipement","img":"icons/svg/item-bag.svg","data":{"equipe":false,"enc":0,"valeur":2,"quantite":0,"description":""},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{"core":{"sourceId":"Item.K7VwQEbx4MfPwHnD"},"cf":{"id":"temp_t9iszt166h","color":"#000000"}}}
{"_id":"wWj2mtvC00EEqw0T","name":"Pièce de laine (5 mètres)","type":"equipement","img":"icons/svg/item-bag.svg","data":{"equipe":false,"enc":0,"valeur":5,"quantite":0,"description":""},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{"cf":{"id":"temp_t9iszt166h","color":"#000000"}}}
{"_id":"xId7XdABXbPFlMZu","name":"Mouton, au kilo","type":"equipement","img":"icons/svg/item-bag.svg","data":{"equipe":false,"enc":0,"valeur":3,"quantite":0,"description":null},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{"core":{"sourceId":"Item.BDhealihoWBT314b"},"cf":{"id":"temp_gnm0v0yf2u6","color":"#000000"}}}
{"_id":"xId7XdABXbPFlMZu","name":"Mouton, au kilo","type":"equipement","img":"icons/svg/item-bag.svg","data":{"equipe":false,"enc":0,"valeur":1,"quantite":0,"description":null},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{"core":{"sourceId":"Item.BDhealihoWBT314b"},"cf":{"id":"temp_gnm0v0yf2u6","color":"#000000"}}}
{"_id":"xSuvtLVKnW7JX9pe","name":"Corde, 10m","type":"equipement","img":"icons/svg/item-bag.svg","data":{"equipe":false,"enc":0,"valeur":1,"quantite":0,"description":null},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{"core":{"sourceId":"Item.BDhealihoWBT314b"},"cf":{"id":"temp_3mky1xz4s5a","color":"#000000"}}}
{"_id":"xqd7mgmosQP917Ie","name":"Ceinture de mauvaise qualité","type":"equipement","img":"icons/svg/item-bag.svg","data":{"equipe":false,"enc":0,"valeur":5,"quantite":0,"description":""},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{"cf":{"id":"temp_adwio7cb4q5","color":"#000000"}}}
{"_id":"xru0AoOx7lNrv85V","name":"Anneau","type":"equipement","img":"icons/svg/item-bag.svg","data":{"equipe":false,"enc":0,"valeur":5,"quantite":0,"description":"<p>Valeur 5 &agrave; 100</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{"core":{"sourceId":"Item.BDhealihoWBT314b"},"cf":{"id":"temp_2dc832wxenw","color":"#000000"}}}

View File

@ -1,25 +1,25 @@
{"name":"Féroce comme lours niv.2","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":2,"armes":"","prerequis":"berserkr, hache à deux mains","modificateur":-6,"description":"<p>Le <em>berserkr</em> est totalement habit&eacute; par sa rage de combat. La lame de sa longue hache virevolte autour de lui et fauche ses ennemis comme du bl&eacute; m&ucirc;r. Le h&eacute;ros b&eacute;n&eacute;ficie d&rsquo;un bonus aux d&eacute;g&acirc;ts pour cette attaque d&eacute;pendant du niveau de la prouesse (+5, +10, +15 ou +20). En outre, il rajoute imm&eacute;diatement de 1 &agrave; 4 d&eacute;s &agrave; sa r&eacute;serve de furor (selon le niveau de prouesse utilis&eacute;). Ce second effet ne s&rsquo;applique qu&rsquo;une seule fois par combat. Si le <em>berserkr</em> fait appel &agrave; cette prouesse martiale plusieurs fois durant ce combat, il b&eacute;n&eacute;ficie toujours du bonus aux d&eacute;g&acirc;ts, mais plus de l&rsquo;augmentation de la r&eacute;serve de <em>furor</em>.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.CecbSkY2QPsZjT9X"}},"_id":"1NgxXWCVuFNQ6pis"}
{"name":"Inspiré par Odhinn niv.2","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"utilitaire","niveau":2,"armes":"","prerequis":"valeur d'Instinct égale à 3 où plus","modificateur":-6,"description":"<p>Le personnage invoque le pouvoir du p&egrave;re des Ases pour soutenir son combat. Le joueur r&eacute;alise un test d&rsquo;Instinct contre un Seuil de R&eacute;ussite Moyen (14) plus le modificateur d&ucirc; au niveau de la prouesse. S&rsquo;il r&eacute;ussit, tous les prochains tests de T&eacute;nacit&eacute; r&eacute;alis&eacute;s durant ce combat b&eacute;n&eacute;ficient d&rsquo;un bonus de +3/+6/+9/+12 (selon le niveau de la prouesse). Inspir&eacute; par Odhinn, il ne craint plus la mort car il sait que les Valkyries viendront le chercher afin de l&rsquo;emporter vers la Valh&ouml;ll et la demeure du P&egrave;re de la Victoire.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.Ggr706SVOvQplR07"}},"_id":"1jPd0WmLB7iOZCgw"}
{"name":"Grêle mortelle niv. 2","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":2,"armes":"armes de tir, armes de jet","prerequis":"niveau de compétence martiale \"Confirmé\"","modificateur":-6,"description":"<p>Le personnage lib&egrave;re plusieurs projectiles dans le m&ecirc;me tir, de deux &agrave; quatre selon le niveau de la prouesse (il encoche plusieurs fl&egrave;ches, il saisit deux javelots dans la m&ecirc;me main, etc&hellip;) Il ne peut cependant viser qu&rsquo;une seule cible. En cas de r&eacute;ussite, les d&eacute;g&acirc;ts inflig&eacute;s sont d&eacute;sormais &eacute;gaux &agrave; (Marge de R&eacute;ussite + potentiel de l&rsquo;arme) x Nombre de projectiles.</p>\n<p>La valeur de protection de la victime s&rsquo;applique contre chaque trait. On retire donc (Protection x Nombre de projectiles) au montant total des d&eacute;g&acirc;ts.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.iu2pLSJfPe8dtSdS"}},"_id":"3GMFpDNQtt7AOrS7"}
{"_id":"1NgxXWCVuFNQ6pis","name":"Féroce comme lours niv.2","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":2,"armes":"","prerequis":"berserkr, hache à deux mains","modificateur":-6,"description":"<p>Le <em>berserkr</em> est totalement habit&eacute; par sa rage de combat. La lame de sa longue hache virevolte autour de lui et fauche ses ennemis comme du bl&eacute; m&ucirc;r. Le h&eacute;ros b&eacute;n&eacute;ficie d&rsquo;un bonus aux d&eacute;g&acirc;ts pour cette attaque d&eacute;pendant du niveau de la prouesse ( +10 ). En outre, il rajoute imm&eacute;diatement de 2 d&eacute;s &agrave; sa r&eacute;serve de furor. Ce second effet ne s&rsquo;applique qu&rsquo;une seule fois par combat. Si le <em>berserkr</em> fait appel &agrave; cette prouesse martiale plusieurs fois durant ce combat, il b&eacute;n&eacute;ficie toujours du bonus aux d&eacute;g&acirc;ts, mais plus de l&rsquo;augmentation de la r&eacute;serve de <em>furor</em>.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.CecbSkY2QPsZjT9X"}}}
{"_id":"1jPd0WmLB7iOZCgw","name":"Inspiré par Odhinn niv.2","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"utilitaire","niveau":2,"armes":"","prerequis":"valeur d'Instinct égale à 3 où plus","modificateur":-6,"description":"<p>Le personnage invoque le pouvoir du p&egrave;re des Ases pour soutenir son combat. Le joueur r&eacute;alise un test d&rsquo;Instinct contre un Seuil de R&eacute;ussite Moyen (14) plus le modificateur d&ucirc; au niveau de la prouesse. S&rsquo;il r&eacute;ussit, tous les prochains tests de T&eacute;nacit&eacute; r&eacute;alis&eacute;s durant ce combat b&eacute;n&eacute;ficient d&rsquo;un bonus de +6. Inspir&eacute; par Odhinn, il ne craint plus la mort car il sait que les Valkyries viendront le chercher afin de l&rsquo;emporter vers la Valh&ouml;ll et la demeure du P&egrave;re de la Victoire.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.Ggr706SVOvQplR07"}}}
{"_id":"3GMFpDNQtt7AOrS7","name":"Grêle mortelle niv. 2","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":2,"armes":"armes de tir, armes de jet","prerequis":"niveau de compétence martiale \"Confirmé\"","modificateur":-6,"description":"<p>Le personnage lib&egrave;re plusieurs projectiles dans le m&ecirc;me tir, de deux &agrave; quatre selon le niveau de la prouesse (il encoche plusieurs fl&egrave;ches, il saisit deux javelots dans la m&ecirc;me main, etc&hellip;) Il ne peut cependant viser qu&rsquo;une seule cible. En cas de r&eacute;ussite, les d&eacute;g&acirc;ts inflig&eacute;s sont d&eacute;sormais &eacute;gaux &agrave; (MR + potentiel de l&rsquo;arme) x 2 projectiles.</p>\n<p>La valeur de protection de la victime s&rsquo;applique contre chaque trait. On retire donc (Protection x 2) au montant total des d&eacute;g&acirc;ts.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.iu2pLSJfPe8dtSdS"}}}
{"name":"Ni destoc, ni de taille","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"defensive","niveau":3,"armes":"armes longues","prerequis":"niveau de compétence martiale \"Confirmé\"","modificateur":-9,"description":"<p>Le h&eacute;ros d&eacute;pense une action pour parer une attaque adverse. Durant le restant de ce tour de combat, il peut r&eacute;aliser une seconde parade sans que cela ne lui demande de sacrifier une nouvelle action. Cette seconde d&eacute;fense fait partie d&rsquo;un encha&icirc;nement entam&eacute; avec la premi&egrave;re. Aussi, il effectue son test sans prendre en compte de modificateur d&rsquo;action suppl&eacute;mentaire (mais avec le malus de prouesse de &ndash;9). Cette seconde parade n&rsquo;appara&icirc;t pas dans le d&eacute;compte des actions pour ce tour. Cette d&eacute;fense ne permet que de se garder d&rsquo;un coup. Il est impossible d&rsquo;encha&icirc;ner une contre-attaque ensuite.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.JmzUmkOVEYdhRN4k"}},"_id":"3qnqodZhPbOQdzmH"}
{"name":"Inspiré par Odhinn niv.4","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"utilitaire","niveau":4,"armes":"","prerequis":"valeur d'Instinct égale à 3 où plus","modificateur":-12,"description":"<p>Le personnage invoque le pouvoir du p&egrave;re des Ases pour soutenir son combat. Le joueur r&eacute;alise un test d&rsquo;Instinct contre un Seuil de R&eacute;ussite Moyen (14) plus le modificateur d&ucirc; au niveau de la prouesse. S&rsquo;il r&eacute;ussit, tous les prochains tests de T&eacute;nacit&eacute; r&eacute;alis&eacute;s durant ce combat b&eacute;n&eacute;ficient d&rsquo;un bonus de +3/+6/+9/+12 (selon le niveau de la prouesse). Inspir&eacute; par Odhinn, il ne craint plus la mort car il sait que les Valkyries viendront le chercher afin de l&rsquo;emporter vers la Valh&ouml;ll et la demeure du P&egrave;re de la Victoire.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.fX09Ank6h2uN6ExH"}},"_id":"5JrBAoHl1Vh1Xz6y"}
{"_id":"5JrBAoHl1Vh1Xz6y","name":"Inspiré par Odhinn niv.4","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"utilitaire","niveau":4,"armes":"","prerequis":"valeur d'Instinct égale à 3 où plus","modificateur":-12,"description":"<p>Le personnage invoque le pouvoir du p&egrave;re des Ases pour soutenir son combat. Le joueur r&eacute;alise un test d&rsquo;Instinct contre un Seuil de R&eacute;ussite Moyen (14) plus le modificateur d&ucirc; au niveau de la prouesse. S&rsquo;il r&eacute;ussit, tous les prochains tests de T&eacute;nacit&eacute; r&eacute;alis&eacute;s durant ce combat b&eacute;n&eacute;ficient d&rsquo;un bonus de +12. Inspir&eacute; par Odhinn, il ne craint plus la mort car il sait que les Valkyries viendront le chercher afin de l&rsquo;emporter vers la Valh&ouml;ll et la demeure du P&egrave;re de la Victoire.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.fX09Ank6h2uN6ExH"}}}
{"name":"Entre les yeux","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":4,"armes":"armes de tir, armes de jet","prerequis":"niveau de compétence martiale \"Expert\"","modificateur":-12,"description":"<p>Le h&eacute;ros r&eacute;alise un tir tr&egrave;s pr&eacute;cis et particuli&egrave;rement mortel. Si le projectile atteint la cible, celle-ci perd imm&eacute;diatement la moiti&eacute; des Points de Vie qui lui reste. Les figurants sont tu&eacute;s sur le coup.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.cZj3CfZTbG2NlpDf"}},"_id":"5bVAc6dFgOSqFGpk"}
{"name":"A toi !","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"defensive","niveau":2,"armes":"Esquive","prerequis":"Niveau de compétence \"Confirmé\"","modificateur":-6,"description":"<p>Le personnage doit se trouver au contact de plusieurs adversaires. Il d&eacute;pense une action pour r&eacute;aliser une esquive face &agrave; un coup qui menace de l&rsquo;atteindre. S&rsquo;il la r&eacute;ussit, il reste sur place, sans chuter, et laisse juste passer l&rsquo;attaque sans qu&rsquo;elle l&rsquo;atteigne. Par contre, celle-ci touche automatiquement un autre de ses adversaires qui subit la moiti&eacute; des d&eacute;g&acirc;ts normaux.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.cxV1XLmQVgnIwP7H"}},"_id":"88SDaHJqIovht0u8"}
{"name":"Briser le bouclier","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":2,"armes":"armes à deux mains","prerequis":"niveau de compétence martiale \"Confirmé\"","modificateur":-6,"description":"<p>Le h&eacute;ros frappe de toutes ses forces le bouclier de l&rsquo;adversaire. S&rsquo;il atteint sa cible, il d&eacute;truit automatiquement cette pi&egrave;ce d&rsquo;&eacute;quipement. Le bouclier devient inutilisable et le d&eacute;fenseur voit sa protection diminuer d&rsquo;autant.</p>\n<p>Le d&eacute;fenseur ne peut pas parer ce coup, juste l&rsquo;esquiver.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.2IFHvihXIH7csSuc"}},"_id":"9kqFH6n1xEegwW5u"}
{"name":"Rapide comme la foudre","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"utilitaire","niveau":1,"armes":"","prerequis":"Mouvement \"Novice\"","modificateur":-3,"description":"<p>Le personnage change brusquement de rythme dans le combat et modifie sa position pour prendre l&rsquo;avantage sur son adversaire. Le joueur d&eacute;pense une action et r&eacute;alise un test de Mouvement contre un Seuil de R&eacute;ussite Moyen (14) plus la D&eacute;fense physique (ou le Conflit/d&eacute;fensif) d&rsquo;un ennemi qui d&eacute;tient l&rsquo;initiative sur lui (sans oublier le malus de &ndash;3 li&eacute; &agrave; la prouesse). En cas de succ&egrave;s, d&egrave;s l&rsquo;action suivante, le h&eacute;ros &eacute;change son rang d&rsquo;initiative avec celui de son adversaire. Cette nouvelle valeur est utilis&eacute;e pour tous le reste du combat, contre cet ennemi comme contre d&rsquo;autres.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.puZXhty1LvcDozTi"}},"_id":"AvQ0eT5ySDz7GUDS"}
{"name":"Féroce comme lours niv.1","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":1,"armes":"","prerequis":"berserkr, hache à deux mains","modificateur":-3,"description":"<p>Le <em>berserkr</em> est totalement habit&eacute; par sa rage de combat. La lame de sa longue hache virevolte autour de lui et fauche ses ennemis comme du bl&eacute; m&ucirc;r. Le h&eacute;ros b&eacute;n&eacute;ficie d&rsquo;un bonus aux d&eacute;g&acirc;ts pour cette attaque d&eacute;pendant du niveau de la prouesse (+5, +10, +15 ou +20). En outre, il rajoute imm&eacute;diatement de 1 &agrave; 4 d&eacute;s &agrave; sa r&eacute;serve de furor (selon le niveau de prouesse utilis&eacute;). Ce second effet ne s&rsquo;applique qu&rsquo;une seule fois par combat. Si le <em>berserkr</em> fait appel &agrave; cette prouesse martiale plusieurs fois durant ce combat, il b&eacute;n&eacute;ficie toujours du bonus aux d&eacute;g&acirc;ts, mais plus de l&rsquo;augmentation de la r&eacute;serve de <em>furor</em>.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.h8lItxjvYlXPRf3U"}},"_id":"BlrwSdiYuC11aNhe"}
{"_id":"BlrwSdiYuC11aNhe","name":"Féroce comme lours niv.1","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":1,"armes":"","prerequis":"berserkr, hache à deux mains","modificateur":-3,"description":"<p>Le <em>berserkr</em> est totalement habit&eacute; par sa rage de combat. La lame de sa longue hache virevolte autour de lui et fauche ses ennemis comme du bl&eacute; m&ucirc;r. Le h&eacute;ros b&eacute;n&eacute;ficie d&rsquo;un bonus aux d&eacute;g&acirc;ts pour cette attaque d&eacute;pendant du niveau de la prouesse (+5). En outre, il rajoute imm&eacute;diatement de 1 d&eacute; &agrave; sa r&eacute;serve de furor. Ce second effet ne s&rsquo;applique qu&rsquo;une seule fois par combat. Si le <em>berserkr</em> fait appel &agrave; cette prouesse martiale plusieurs fois durant ce combat, il b&eacute;n&eacute;ficie toujours du bonus aux d&eacute;g&acirc;ts, mais plus de l&rsquo;augmentation de la r&eacute;serve de <em>furor</em>.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.h8lItxjvYlXPRf3U"}}}
{"name":"Feinte de corps","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"defensive","niveau":1,"armes":"Toutes les armes de mêlée","prerequis":"","modificateur":-3,"description":"<p>Le personnage effectue une parade et tente de se d&eacute;gager de la trajectoire de l&rsquo;attaque ennemie. S&rsquo;il r&eacute;ussit son coup, la prochaine action de l&rsquo;adversaire est modifi&eacute;e par un malus suppl&eacute;mentaire de &ndash;3.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.BNCXoUQF5Alk1QeC"}},"_id":"Ckoaunbtt2vb7pQ4"}
{"name":"Sonner","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":1,"armes":"toutes les armes de mêlée","prerequis":"compétence martiale \"Novice\"","modificateur":-3,"description":"<p>Le personnage ass&egrave;ne un d&eacute;luge de coups violents sur son adversaire. Le dessein de l&rsquo;attaquant consiste &agrave; d&eacute;sorienter l&rsquo;ennemi. Si le coup porte, la victime subit des d&eacute;g&acirc;ts normaux. En outre, elle doit imm&eacute;diatement r&eacute;ussir un test de T&eacute;nacit&eacute; contre un SR Ais&eacute; (10) avec un malus &eacute;gal au montant des d&eacute;g&acirc;ts subis. En cas d&rsquo;&eacute;chec, la cible passe en mode d&eacute;fensif (pour les figurants, il s&rsquo;agit d&rsquo;un test de R&eacute;sistance Mentale d&eacute;fensif contre ce m&ecirc;me SR). Elle ne peut donc plus contre-attaquer pour le restant de ce tour de combat.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.OBej7jVy0MEV4zfT"}},"_id":"CshFNho3CdQi6PSz"}
{"name":"Grêle mortelle niv. 3","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":3,"armes":"armes de tir, armes de jet","prerequis":"niveau de compétence martiale \"Confirmé\"","modificateur":-9,"description":"<p>Le personnage lib&egrave;re plusieurs projectiles dans le m&ecirc;me tir, de deux &agrave; quatre selon le niveau de la prouesse (il encoche plusieurs fl&egrave;ches, il saisit deux javelots dans la m&ecirc;me main, etc&hellip;) Il ne peut cependant viser qu&rsquo;une seule cible. En cas de r&eacute;ussite, les d&eacute;g&acirc;ts inflig&eacute;s sont d&eacute;sormais &eacute;gaux &agrave; (Marge de R&eacute;ussite + potentiel de l&rsquo;arme) x Nombre de projectiles.</p>\n<p>La valeur de protection de la victime s&rsquo;applique contre chaque trait. On retire donc (Protection x Nombre de projectiles) au montant total des d&eacute;g&acirc;ts.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.w0c4ZQzRxmIPNhsR"}},"_id":"DKMvBiQGZT6vc8Yu"}
{"_id":"DKMvBiQGZT6vc8Yu","name":"Grêle mortelle niv. 3","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":3,"armes":"armes de tir, armes de jet","prerequis":"niveau de compétence martiale \"Confirmé\"","modificateur":-9,"description":"<p>Le personnage lib&egrave;re plusieurs projectiles dans le m&ecirc;me tir, de deux &agrave; quatre selon le niveau de la prouesse (il encoche plusieurs fl&egrave;ches, il saisit deux javelots dans la m&ecirc;me main, etc&hellip;) Il ne peut cependant viser qu&rsquo;une seule cible. En cas de r&eacute;ussite, les d&eacute;g&acirc;ts inflig&eacute;s sont d&eacute;sormais &eacute;gaux &agrave; (MR + potentiel de l&rsquo;arme) x 3 projectiles.</p>\n<p>La valeur de protection de la victime s&rsquo;applique contre chaque trait. On retire donc (Protection x 3) au montant total des d&eacute;g&acirc;ts.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.w0c4ZQzRxmIPNhsR"}}}
{"name":"Fendre le casque","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":3,"armes":"armes longues, armes à deux mains, armes d'Hast, armes de jet","prerequis":"niveau de compétence martiale \"Confirmé\"","modificateur":-9,"description":"<p>Le personnage sacrifie sa garde pour atteindre l&rsquo;ennemi d&rsquo;un coup vicieux &agrave; la t&ecirc;te. La Valeur de sa D&eacute;fense Physique est r&eacute;duite de deux points (DP -2) pour le reste du tour de combat. S&rsquo;il r&eacute;ussit son attaque, calculez normalement les d&eacute;g&acirc;ts. Le casque est fendu et la valeur de protection de l&rsquo;armure ennemie est r&eacute;duite d&rsquo;autant. En outre, la victime doit r&eacute;ussir un test de Vigueur contre un Seuil de R&eacute;ussite Ais&eacute; (10) assorti d&rsquo;un malus &eacute;gal au total des d&eacute;g&acirc;ts subis. Si elle &eacute;choue, elle est sonn&eacute;e et passe en mode d&eacute;fensif pour le restant de ce tour de combat (les figurants r&eacute;alisent un test de Physique + 2D10 contre ce m&ecirc;me SR).</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.z0aG1e121dTRKfx4"}},"_id":"DZHfTAZPCpCtcbuo"}
{"name":"Par le Bras de Thor ! niv.1","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":1,"armes":"armes longues, armes à deux mains, armes dHast, armes de jet","prerequis":"niveau de compétence martiale \"Novice\"","modificateur":-3,"description":"<p>Le personnage invoque le nom du dieu du tonnerre et foudroie son adversaire d&rsquo;un coup implacable. S&rsquo;il r&eacute;ussit son attaque, calculez normalement les d&eacute;g&acirc;ts. Cependant, lancer autant de d&eacute;s &agrave; dix faces que le niveau de la prouesse et ajouter le r&eacute;sultat au montant initial des d&eacute;g&acirc;ts. Notez que le joueur peut poss&eacute;der cette prouesse &agrave; diff&eacute;rents niveaux, mais doit acheter chacun d&rsquo;eux s&eacute;par&eacute;ment.</p>\n<p>Ainsi, il lui en co&ucirc;te 4 points afin de ma&icirc;triser &laquo; Par le bras de Thor ! &raquo; aux niveaux 1 et 3.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.gNqSpCAu7URoY6qp"}},"_id":"Dk9Jef17ImwNwzEe"}
{"name":"Vider les mains","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":2,"armes":"armes courtes, armes longues","prerequis":"armes courtes \"Expert\", armes longues \"Confirmé\"","modificateur":-6,"description":"<p>Le h&eacute;ros encha&icirc;ne une s&eacute;rie de mouvements et de feintes puis vient frapper violemment le fer ennemi. L&rsquo;adversaire qui, en r&eacute;action, rate une esquive ou une parade, ou n&rsquo;agit pas, l&acirc;che son arme aussit&ocirc;t. Celle-ci chute &agrave; quelques pas de l&agrave;, 1D5 m&egrave;tres, dans une direction du choix de l&rsquo;attaquant.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.oWnmb3qQG1YJeYUo"}},"_id":"HzRqAG5R1eBNomR3"}
{"name":"Prise de l'ours","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":2,"armes":"lutte","prerequis":"niveau de compétence martiale \"Confirmé\"","modificateur":-6,"description":"<p>Le h&eacute;ros empoigne son adversaire avec force et l&rsquo;&eacute;crase entre ses bras puissants. La victime peut essayer de se lib&eacute;rer en remportant un test en opposition de Puissance. Il doit consacrer une action &agrave; chaque tentative. Tant que la prise est maintenue, l&rsquo;attaquant inflige automatiquement une perte de (PUI x2) Points de Vie &agrave; sa victime, au d&eacute;but de chaque tour de combat. Il ne peut rien faire d&rsquo;autre durant cette p&eacute;riode.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.NN8GvBAJ4v5vsOjQ"}},"_id":"IMFOGClhabJoq7Ve"}
{"name":"Les crocs du loup niv. 3","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":3,"armes":"","prerequis":"ulfhedinn, lance","modificateur":-9,"description":"<p>Le h&eacute;ros harc&egrave;le son adversaire de coups de lance et le maintient &agrave; sa distance. Le joueur r&eacute;alise, pour une seule action, selon le niveau utilis&eacute;, un, deux, trois ou quatre tests d&rsquo;attaque, assortis du malus de prouesse ad&eacute;-143</p>\n<p>Les R&egrave;gles - Les Prouesses Martiales quat. Chaque coup port&eacute; efficacement inflige un total de points de d&eacute;g&acirc;ts &eacute;gal &agrave; (Puissance + d&eacute;g&acirc;ts de la lance + niveau de la prouesse). La Marge de R&eacute;ussite n&rsquo;est pas prise en compte ici.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.KeIYySNmxe44jWNY"}},"_id":"IOl9Y6D0aUtenxYj"}
{"_id":"IOl9Y6D0aUtenxYj","name":"Les crocs du loup niv. 3","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":3,"armes":"","prerequis":"ulfhedinn, lance","modificateur":-9,"description":"<p>Le h&eacute;ros harc&egrave;le son adversaire de coups de lance et le maintient &agrave; sa distance. Le joueur r&eacute;alise, pour une seule action, selon le niveau utilis&eacute;, un, deux, trois ou quatre tests d&rsquo;attaque, assortis du malus de prouesse ad&eacute;quat. Chaque coup port&eacute; efficacement inflige un total de points de d&eacute;g&acirc;ts &eacute;gal &agrave; (Puissance + d&eacute;g&acirc;ts de la lance + 3 ). La Marge de R&eacute;ussite n&rsquo;est pas prise en compte ici.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.KeIYySNmxe44jWNY"}}}
{"name":"Projectile humain","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":3,"armes":"lutte","prerequis":"niveau de compétence martiale \"Expert\"","modificateur":-9,"description":"<p>Le personnage doit avoir r&eacute;ussi et maintenu une Prise de l&rsquo;ours dans le tour de combat pr&eacute;c&eacute;dent. Il peut alors jeter sa victime jusqu&rsquo;&agrave; une distance &eacute;gale &agrave; sa Puissance en m&egrave;tres. Celle-ci subit (PUI x2) points de d&eacute;g&acirc;ts dans la manoeuvre. Si d&rsquo;autres ennemis sont pris pour cibles, ceux-ci perdent ce m&ecirc;me nombre de Points de Vie et doivent r&eacute;ussir un test d&rsquo;Agilit&eacute; contre un Seuil de R&eacute;ussite Moyen (14) ou chuter au sol (un test de Physique +2D10 pour les figurants). Ce test de r&eacute;action ne n&eacute;cessite pas la d&eacute;pense d&rsquo;une action.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.PfCyTKhaVHFPHkVN"}},"_id":"Ijvn821SrhVwvsUp"}
{"name":"Féroce comme lours niv.4","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":4,"armes":"","prerequis":"berserkr, hache à deux mains","modificateur":-12,"description":"<p>Le <em>berserkr</em> est totalement habit&eacute; par sa rage de combat. La lame de sa longue hache virevolte autour de lui et fauche ses ennemis comme du bl&eacute; m&ucirc;r. Le h&eacute;ros b&eacute;n&eacute;ficie d&rsquo;un bonus aux d&eacute;g&acirc;ts pour cette attaque d&eacute;pendant du niveau de la prouesse (+5, +10, +15 ou +20). En outre, il rajoute imm&eacute;diatement de 1 &agrave; 4 d&eacute;s &agrave; sa r&eacute;serve de furor (selon le niveau de prouesse utilis&eacute;). Ce second effet ne s&rsquo;applique qu&rsquo;une seule fois par combat. Si le <em>berserkr</em> fait appel &agrave; cette prouesse martiale plusieurs fois durant ce combat, il b&eacute;n&eacute;ficie toujours du bonus aux d&eacute;g&acirc;ts, mais plus de l&rsquo;augmentation de la r&eacute;serve de <em>furor</em>.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.Uku9HUiulLnarqGS"}},"_id":"KC3OieZmASsU0lVC"}
{"_id":"KC3OieZmASsU0lVC","name":"Féroce comme lours niv.4","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":4,"armes":"","prerequis":"berserkr, hache à deux mains","modificateur":-12,"description":"<p>Le <em>berserkr</em> est totalement habit&eacute; par sa rage de combat. La lame de sa longue hache virevolte autour de lui et fauche ses ennemis comme du bl&eacute; m&ucirc;r. Le h&eacute;ros b&eacute;n&eacute;ficie d&rsquo;un bonus aux d&eacute;g&acirc;ts pour cette attaque d&eacute;pendant du niveau de la prouesse (+20). En outre, il rajoute imm&eacute;diatement de 4 d&eacute;s &agrave; sa r&eacute;serve de furor . Ce second effet ne s&rsquo;applique qu&rsquo;une seule fois par combat. Si le <em>berserkr</em> fait appel &agrave; cette prouesse martiale plusieurs fois durant ce combat, il b&eacute;n&eacute;ficie toujours du bonus aux d&eacute;g&acirc;ts, mais plus de l&rsquo;augmentation de la r&eacute;serve de <em>furor</em>.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.Uku9HUiulLnarqGS"}}}
{"name":"Par le Bras de Thor ! niv.3","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":3,"armes":"armes longues, armes à deux mains, armes dHast, armes de jet","prerequis":"niveau de compétence martiale \"Novice\"","modificateur":-9,"description":"<p>Le personnage invoque le nom du dieu du tonnerre et foudroie son adversaire d&rsquo;un coup implacable. S&rsquo;il r&eacute;ussit son attaque, calculez normalement les d&eacute;g&acirc;ts. Cependant, lancer autant de d&eacute;s &agrave; dix faces que le niveau de la prouesse et ajouter le r&eacute;sultat au montant initial des d&eacute;g&acirc;ts. Notez que le joueur peut poss&eacute;der cette prouesse &agrave; diff&eacute;rents niveaux, mais doit acheter chacun d&rsquo;eux s&eacute;par&eacute;ment.</p>\n<p>Ainsi, il lui en co&ucirc;te 4 points afin de ma&icirc;triser &laquo; Par le bras de Thor ! &raquo; aux niveaux 1 et 3.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.Lnt8agsqELbAurHc"}},"_id":"OquECCNx5uwrl1Fb"}
{"name":"Inspiré par Odhinn niv.3","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"utilitaire","niveau":1,"armes":"","prerequis":"valeur d'Instinct égale à 3 où plus","modificateur":-9,"description":"<p>Le personnage invoque le pouvoir du p&egrave;re des Ases pour soutenir son combat. Le joueur r&eacute;alise un test d&rsquo;Instinct contre un Seuil de R&eacute;ussite Moyen (14) plus le modificateur d&ucirc; au niveau de la prouesse. S&rsquo;il r&eacute;ussit, tous les prochains tests de T&eacute;nacit&eacute; r&eacute;alis&eacute;s durant ce combat b&eacute;n&eacute;ficient d&rsquo;un bonus de +3/+6/+9/+12 (selon le niveau de la prouesse). Inspir&eacute; par Odhinn, il ne craint plus la mort car il sait que les Valkyries viendront le chercher afin de l&rsquo;emporter vers la Valh&ouml;ll et la demeure du P&egrave;re de la Victoire.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.3ZFsfhb1ecJoOR0F"}},"_id":"QxcdyEgbahougYZn"}
{"_id":"QxcdyEgbahougYZn","name":"Inspiré par Odhinn niv.3","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"utilitaire","niveau":3,"armes":"","prerequis":"valeur d'Instinct égale à 3 où plus","modificateur":-9,"description":"<p>Le personnage invoque le pouvoir du p&egrave;re des Ases pour soutenir son combat. Le joueur r&eacute;alise un test d&rsquo;Instinct contre un Seuil de R&eacute;ussite Moyen (14) plus le modificateur d&ucirc; au niveau de la prouesse. S&rsquo;il r&eacute;ussit, tous les prochains tests de T&eacute;nacit&eacute; r&eacute;alis&eacute;s durant ce combat b&eacute;n&eacute;ficient d&rsquo;un bonus de +9. Inspir&eacute; par Odhinn, il ne craint plus la mort car il sait que les Valkyries viendront le chercher afin de l&rsquo;emporter vers la Valh&ouml;ll et la demeure du P&egrave;re de la Victoire.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.3ZFsfhb1ecJoOR0F"}}}
{"name":"Assomer","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":2,"armes":"toutes les armes de mêlée","prerequis":"compétence martiale (Confirmé)","modificateur":-6,"description":"<p>Le personnage vise la t&ecirc;te de son adversaire et tente de lui ass&eacute;ner un coup puissant, mais contr&ocirc;l&eacute;. Il essaie alors de le plonger dans l&rsquo;inconscience, sans doute dans le but de le capturer. Si le coup porte, la victime ne subit que la moiti&eacute; des d&eacute;g&acirc;ts inflig&eacute;s, mais elle doit r&eacute;aliser un test de Vigueur contre un SR Moyen (14), avec un malus &eacute;gal &agrave; la Marge de r&eacute;ussite de l&rsquo;attaque (les figurants lancent simplement 2D10+Physique). En cas d&rsquo;&eacute;chec, elle sombre dans l&rsquo;inconscience pour 1D10 minutes.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.2iT4jtabFR8l4J3p"}},"_id":"Sk891Y3X5A2VkVik"}
{"name":"Par le Bras de Thor ! niv.2","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":2,"armes":"armes longues, armes à deux mains, armes dHast, armes de jet","prerequis":"niveau de compétence martiale \"Novice\"","modificateur":-6,"description":"<p>Le personnage invoque le nom du dieu du tonnerre et foudroie son adversaire d&rsquo;un coup implacable. S&rsquo;il r&eacute;ussit son attaque, calculez normalement les d&eacute;g&acirc;ts. Cependant, lancer autant de d&eacute;s &agrave; dix faces que le niveau de la prouesse et ajouter le r&eacute;sultat au montant initial des d&eacute;g&acirc;ts. Notez que le joueur peut poss&eacute;der cette prouesse &agrave; diff&eacute;rents niveaux, mais doit acheter chacun d&rsquo;eux s&eacute;par&eacute;ment.</p>\n<p>Ainsi, il lui en co&ucirc;te 4 points afin de ma&icirc;triser &laquo; Par le bras de Thor ! &raquo; aux niveaux 1 et 3.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.vUZfeTnfGCda48fl"}},"_id":"TVh39qy45QMDTAM4"}
{"name":"Comme des lapins !","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":2,"armes":"toutes les armes de mêlée","prerequis":"niveau de compétence martiale \"Expert\"","modificateur":-6,"description":"<p>Le personnage doit faire face &agrave; plusieurs adversaires.</p>\n<p>Tous ne doivent &ecirc;tre que des Figurants. Le joueur choisit sa cible principale parmi eux. Si l&rsquo;attaque est r&eacute;ussie et qu&rsquo;elle suffit &agrave; mettre hors de combat sa victime, il peut imm&eacute;diatement porter un nouveau coup contre un autre ennemi &agrave; port&eacute;e. Il s&rsquo;agit d&rsquo;une action suppl&eacute;mentaire. Aussi, chaque attaque au-del&agrave; de la premi&egrave;re se voit assortie du modificateur normal d&rsquo;action suppl&eacute;mentaire, en plus de celui associ&eacute; &agrave; cette prouesse (-6). Si cette deuxi&egrave;me attaque suffit &eacute;galement pour se d&eacute;barrasser de ce deuxi&egrave;me PNJ, le h&eacute;ros peut poursuivre cet encha&icirc;nement jusqu&rsquo;&agrave; ce qu&rsquo;il d&eacute;cide volontairement de l&rsquo;interrompre, qu&rsquo;il n&rsquo;ait plus d&rsquo;adversaire &agrave; port&eacute;e ou ne puisse abattre sa cible d&rsquo;un seul coup.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.wLGDcGtp6SVvcd9R"}},"_id":"U61cOHJKIFCiDMFN"}
@ -29,26 +29,26 @@
{"name":"Ralliez-vous à moi","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"utilitaire","niveau":2,"armes":"","prerequis":"Tactique \"Confirmé","modificateur":-6,"description":"<p>Le h&eacute;ros rameute ses troupes. Sur le champ de bataille, il sonne du cor, bat le rappel et regroupe ses hommes autour de lui. Le joueur r&eacute;alise un test de Intellect + Tactique + modificateurs. En cas de r&eacute;ussite, tous les alli&eacute;s &agrave; port&eacute;e de voix du h&eacute;ros b&eacute;n&eacute;ficient d&rsquo;un bonus de +5 &agrave; toutes leurs actions lors de ce tour de combat. Luim&ecirc;me ne peut entreprendre aucune autre action que cette prouesse durant ce laps de temps.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.3IdAT7lgv1jWMimg"}},"_id":"YpBHYe3xepEpw0wX"}
{"name":"Coup de bouclier","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":1,"armes":"armes courtes, armes longues","prerequis":"armes improvisées \"Novice\"","modificateur":-3,"description":"<p>Le personnage doit &ecirc;tre &eacute;quip&eacute; d&rsquo;un bouclier.</p>\n<p>S&rsquo;il vient de r&eacute;ussir une parade, il porte imm&eacute;diatement une violente riposte &agrave; l&rsquo;aide d&rsquo;un coup de bouclier contre son adversaire. Cette contre-attaque n&eacute;cessite la d&eacute;pense d&rsquo;une action et reste donc sujette au malus d&rsquo;action suppl&eacute;mentaire. Il faut &eacute;galement prendre en compte le malus de prouesse (-3). S&rsquo;il r&eacute;ussit son test d&rsquo;Armes improvis&eacute;es, il inflige &agrave; sa victime ( PUI + MR + 5) points de d&eacute;g&acirc;t.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.LubJ6Axsth382qR3"}},"_id":"aRJ877Zm4dwhVbWC"}
{"name":"Saut du lynx","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"defensive","niveau":1,"armes":"","prerequis":"Esquive \"Confirmé\"","modificateur":-3,"description":"<p>Le h&eacute;ros se jette de c&ocirc;t&eacute; et r&eacute;alise une roulade parfaite. Il se retrouve automatiquement sur ses pieds &agrave; la fin de cette manoeuvre. Lorsqu&rsquo;il se rel&egrave;ve, il est de nouveau au contact de son adversaire et peut poursuivre le combat au corps &agrave; corps.</p>\n<p>Si le h&eacute;ros utilise cette prouesse afin d&rsquo;&eacute;chapper &agrave; un projectile, il parcourt alors une distance &eacute;gale &agrave; la moiti&eacute; de sa valeur de D&eacute;placement (DEP/2), dans la direction de son choix.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.i5Jk0FRdb9EGiYCP"}},"_id":"aZJR34ut5YrjHbKo"}
{"name":"Inspiré par Odhinn niv.1","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"utilitaire","niveau":1,"armes":"","prerequis":"valeur d'Instinct égale à 3 où plus","modificateur":-3,"description":"<p>Le personnage invoque le pouvoir du p&egrave;re des Ases pour soutenir son combat. Le joueur r&eacute;alise un test d&rsquo;Instinct contre un Seuil de R&eacute;ussite Moyen (14) plus le modificateur d&ucirc; au niveau de la prouesse. S&rsquo;il r&eacute;ussit, tous les prochains tests de T&eacute;nacit&eacute; r&eacute;alis&eacute;s durant ce combat b&eacute;n&eacute;ficient d&rsquo;un bonus de +3/+6/+9/+12 (selon le niveau de la prouesse). Inspir&eacute; par Odhinn, il ne craint plus la mort car il sait que les Valkyries viendront le chercher afin de l&rsquo;emporter vers la Valh&ouml;ll et la demeure du P&egrave;re de la Victoire.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.TDXq78vjN11q9kyH"}},"_id":"bOltcp27yH4a4Wy3"}
{"_id":"bOltcp27yH4a4Wy3","name":"Inspiré par Odhinn niv.1","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"utilitaire","niveau":1,"armes":"","prerequis":"valeur d'Instinct égale à 3 où plus","modificateur":-3,"description":"<p>Le personnage invoque le pouvoir du p&egrave;re des Ases pour soutenir son combat. Le joueur r&eacute;alise un test d&rsquo;Instinct contre un Seuil de R&eacute;ussite Moyen (14) plus le modificateur d&ucirc; au niveau de la prouesse. S&rsquo;il r&eacute;ussit, tous les prochains tests de T&eacute;nacit&eacute; r&eacute;alis&eacute;s durant ce combat b&eacute;n&eacute;ficient d&rsquo;un bonus de +3. Inspir&eacute; par Odhinn, il ne craint plus la mort car il sait que les Valkyries viendront le chercher afin de l&rsquo;emporter vers la Valh&ouml;ll et la demeure du P&egrave;re de la Victoire.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.TDXq78vjN11q9kyH"}}}
{"name":"Coup de tête","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":2,"armes":"armes courtes, armes longues, armes à deux mains","prerequis":"niveau de compétence martiale \"Confirmé\"","modificateur":-6,"description":"<p>Le h&eacute;ros est engag&eacute; dans un corps &agrave; corps et vient de r&eacute;ussir une action de parade. Il peut imm&eacute;diatement d&eacute;penser une action afin de riposter &agrave; l&rsquo;aide d&rsquo;un coup de t&ecirc;te violent sur le visage de son adversaire. Il utilise pour cela la comp&eacute;tence martiale Lutte. En cas de r&eacute;ussite, il inflige (valeur de Puissance + Marge) points de d&eacute;g&acirc;ts (ajoutez &agrave; ce montant la valeur de protection de son casque s&rsquo;il en porte un). De plus, sa victime subit un modificateur suppl&eacute;mentaire de +3 &agrave; sa prochaine action. Par contre, en cas d&rsquo;&eacute;chec critique, le h&eacute;ros perd automatiquement, sans prendre en compte ses protections &eacute;ventuelles, cinq Points de Vie (-5PV). Mais en cas de r&eacute;ussite critique, si l&rsquo;adversaire porte un casque, celui-ci est fracass&eacute; et ne le prot&egrave;ge plus. Sinon, doublez les d&eacute;g&acirc;ts inflig&eacute;s.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.kcf3eFEjH5Nzey1W"}},"_id":"ebX4aouh6WEZ1aSy"}
{"name":"Blocage niv.3","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"defensive","niveau":3,"armes":"Toues les armes de mêlée","prerequis":"","modificateur":-9,"description":"<p>Le personnage r&eacute;alise une parade puissante et bloque l&rsquo;arme adverse. S&rsquo;il r&eacute;ussit son test, l&rsquo;adversaire ne peut pas attaquer lors de sa prochaine action, durant ce tour de combat ou le suivant. Celui-ci peut utiliser cette action pour r&eacute;aliser autre chose, mais pas une attaque. Si le h&eacute;ros &eacute;choue, il r&eacute;duit tout de m&ecirc;me les d&eacute;g&acirc;ts occasionn&eacute;s par cette attaque de 2, 4 ou 6 points selon le niveau de la prouesse.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.P1JhWufOzDRRYr0k"}},"_id":"jHuBo6ctHP4Bf847"}
{"_id":"jHuBo6ctHP4Bf847","name":"Blocage niv.3","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"defensive","niveau":3,"armes":"Toues les armes de mêlée","prerequis":"","modificateur":-9,"description":"<p>Le personnage r&eacute;alise une parade puissante et bloque l&rsquo;arme adverse. S&rsquo;il r&eacute;ussit son test, l&rsquo;adversaire ne peut pas attaquer lors de sa prochaine action, durant ce tour de combat ou le suivant. Celui-ci peut utiliser cette action pour r&eacute;aliser autre chose, mais pas une attaque. Si le h&eacute;ros &eacute;choue, il r&eacute;duit tout de m&ecirc;me les d&eacute;g&acirc;ts occasionn&eacute;s par cette attaque de 4 points.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.P1JhWufOzDRRYr0k"}}}
{"name":"Par le Bras de Thor ! niv.4","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":4,"armes":"armes longues, armes à deux mains, armes dHast, armes de jet","prerequis":"niveau de compétence martiale \"Novice\"","modificateur":-12,"description":"<p>Le personnage invoque le nom du dieu du tonnerre et foudroie son adversaire d&rsquo;un coup implacable. S&rsquo;il r&eacute;ussit son attaque, calculez normalement les d&eacute;g&acirc;ts. Cependant, lancer autant de d&eacute;s &agrave; dix faces que le niveau de la prouesse et ajouter le r&eacute;sultat au montant initial des d&eacute;g&acirc;ts. Notez que le joueur peut poss&eacute;der cette prouesse &agrave; diff&eacute;rents niveaux, mais doit acheter chacun d&rsquo;eux s&eacute;par&eacute;ment.</p>\n<p>Ainsi, il lui en co&ucirc;te 4 points afin de ma&icirc;triser &laquo; Par le bras de Thor ! &raquo; aux niveaux 1 et 3.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.mJvV6wQkQgZI9whn"}},"_id":"jyYqashGfvA6xZ1g"}
{"name":"Grêle mortelle niv. 4","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":4,"armes":"armes de tir, armes de jet","prerequis":"niveau de compétence martiale \"Confirmé\"","modificateur":-12,"description":"<p>Le personnage lib&egrave;re plusieurs projectiles dans le m&ecirc;me tir, de deux &agrave; quatre selon le niveau de la prouesse (il encoche plusieurs fl&egrave;ches, il saisit deux javelots dans la m&ecirc;me main, etc&hellip;) Il ne peut cependant viser qu&rsquo;une seule cible. En cas de r&eacute;ussite, les d&eacute;g&acirc;ts inflig&eacute;s sont d&eacute;sormais &eacute;gaux &agrave; (Marge de R&eacute;ussite + potentiel de l&rsquo;arme) x Nombre de projectiles.</p>\n<p>La valeur de protection de la victime s&rsquo;applique contre chaque trait. On retire donc (Protection x Nombre de projectiles) au montant total des d&eacute;g&acirc;ts.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.ax6CM5b124XYYzpj"}},"_id":"ktYtIwpVQZi6HWy5"}
{"_id":"ktYtIwpVQZi6HWy5","name":"Grêle mortelle niv. 4","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":4,"armes":"armes de tir, armes de jet","prerequis":"niveau de compétence martiale \"Confirmé\"","modificateur":-12,"description":"<p>Le personnage lib&egrave;re plusieurs projectiles dans le m&ecirc;me tir, de deux &agrave; quatre selon le niveau de la prouesse (il encoche plusieurs fl&egrave;ches, il saisit deux javelots dans la m&ecirc;me main, etc&hellip;) Il ne peut cependant viser qu&rsquo;une seule cible. En cas de r&eacute;ussite, les d&eacute;g&acirc;ts inflig&eacute;s sont d&eacute;sormais &eacute;gaux &agrave; (MR + potentiel de l&rsquo;arme) x 4 projectiles.</p>\n<p>La valeur de protection de la victime s&rsquo;applique contre chaque trait. On retire donc (Protection x 4) au montant total des d&eacute;g&acirc;ts.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.ax6CM5b124XYYzpj"}}}
{"name":"Mur de fer","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"defensive","niveau":3,"armes":"armes courtes, armes longues","prerequis":"niveau de compétence martiale \"Confirmé\"","modificateur":-9,"description":"<p>Le h&eacute;ros balaie l&rsquo;espace devant lui avec son arme, cr&eacute;ant un v&eacute;ritable rempart de m&eacute;tal entre son adversaire et lui. S&rsquo;il r&eacute;ussit sa parade, il ne d&eacute;pense pas son action. En cas d&rsquo;&eacute;chec, l&rsquo;action est d&eacute;pens&eacute;e normalement.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.qqGx5kl4T8h18g7j"}},"_id":"lEkuO0ZlXnJ4FQAB"}
{"name":"La charge du sanglier niv. 4","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":4,"armes":"","prerequis":"svinfylkingar, épée et bouclier","modificateur":-12,"description":"<p>Le personnage se rue en avant et percute violemment son adversaire. Si le joueur r&eacute;ussit son test, la cible ne peut tenter que d&rsquo;esquiver cette attaque, avec un malus &eacute;gal &agrave; celui de la prouesse (-3, -6, -9 ou &ndash;12).</p>\n<p>Un adversaire atteint par cette attaque perd un nombre de Points de Vie &eacute;gal &agrave; la somme de la Puissance du svinfylkingar, plus la Marge de r&eacute;ussite de l&rsquo;attaque, plus une base d&eacute;pendant du niveau de la prouesse. Soit : PUI + MR + Base.</p>\n<p>La base des d&eacute;g&acirc;ts est respectivement &eacute;gale &agrave; : +5 / +10 / +15 / + 20, pour les niveaux 1 &agrave; 4.</p>\n<p>L&rsquo;armure s&rsquo;applique normalement ici.</p>\n<p>La victime doit r&eacute;ussir un test d&rsquo;Agilit&eacute; (SR 14 plus les points de d&eacute;g&acirc;t de l&rsquo;attaque) ou se retrouver projet&eacute;e au sol, &agrave; (Puissance du svinfylkingar + niveau de la prouesse) m&egrave;tres en arri&egrave;re.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.V7RytyyTlbVN5cS4"}},"_id":"ld0X2wPgUxBateYG"}
{"name":"Blocage niv.4","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"defensive","niveau":4,"armes":"Toues les armes de mêlée","prerequis":"","modificateur":-12,"description":"<p>Le personnage r&eacute;alise une parade puissante et bloque l&rsquo;arme adverse. S&rsquo;il r&eacute;ussit son test, l&rsquo;adversaire ne peut pas attaquer lors de sa prochaine action, durant ce tour de combat ou le suivant. Celui-ci peut utiliser cette action pour r&eacute;aliser autre chose, mais pas une attaque. Si le h&eacute;ros &eacute;choue, il r&eacute;duit tout de m&ecirc;me les d&eacute;g&acirc;ts occasionn&eacute;s par cette attaque de 2, 4 ou 6 points selon le niveau de la prouesse.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.v3Exgy3nlA6xzwMq"}},"_id":"mZJhrKyrhZ7L4tfB"}
{"_id":"ld0X2wPgUxBateYG","name":"La charge du sanglier niv. 4","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":4,"armes":"épée et bouclier","prerequis":"svinfylkingar, épée et bouclier","modificateur":-12,"description":"<p>Le personnage se rue en avant et percute violemment son adversaire. Si le joueur r&eacute;ussit son test, la cible ne peut tenter que d&rsquo;esquiver cette attaque, avec un malus &eacute;gal &agrave; celui de la prouesse (-12).</p>\n<p>Un adversaire atteint par cette attaque perd un nombre de Points de Vie &eacute;gal &agrave; la somme de la Puissance du svinfylkingar, plus la Marge de r&eacute;ussite de l&rsquo;attaque, plus une base d&eacute;pendant du niveau de la prouesse. Soit : PUI + MR + Base.</p>\n<p>La base des d&eacute;g&acirc;ts est respectivement &eacute;gale &agrave; : + 20, pour le niveau 4.</p>\n<p>L&rsquo;armure s&rsquo;applique normalement ici.</p>\n<p>La victime doit r&eacute;ussir un test d&rsquo;Agilit&eacute; (SR 14 plus les points de d&eacute;g&acirc;t de l&rsquo;attaque) ou se retrouver projet&eacute;e au sol, &agrave; (Puissance du svinfylkingar + 4) m&egrave;tres en arri&egrave;re.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.V7RytyyTlbVN5cS4"}}}
{"_id":"mZJhrKyrhZ7L4tfB","name":"Blocage niv.4","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"defensive","niveau":4,"armes":"Toues les armes de mêlée","prerequis":"","modificateur":-12,"description":"<p>Le personnage r&eacute;alise une parade puissante et bloque l&rsquo;arme adverse. S&rsquo;il r&eacute;ussit son test, l&rsquo;adversaire ne peut pas attaquer lors de sa prochaine action, durant ce tour de combat ou le suivant. Celui-ci peut utiliser cette action pour r&eacute;aliser autre chose, mais pas une attaque. Si le h&eacute;ros &eacute;choue, il r&eacute;duit tout de m&ecirc;me les d&eacute;g&acirc;ts occasionn&eacute;s par cette attaque de 6 points.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.v3Exgy3nlA6xzwMq"}}}
{"name":"Impact !","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":3,"armes":"armes de tir, armes de jet","prerequis":"niveau de compétence martiale \"Confirmé\"","modificateur":-9,"description":"<p>Le h&eacute;ros projette son arme de jet avec toute sa force ou vise un point pr&eacute;cis pour d&eacute;s&eacute;quilibrer sa cible. Sous l&rsquo;impact, lorsque celle-ci est touch&eacute;e, elle se retrouve projet&eacute;e de PUI m&egrave;tres en arri&egrave;re et chute au sol si elle rate un test d&rsquo;Agilit&eacute; contre un Seuil de R&eacute;ussite Moyen (14) assorti d&rsquo;un malus &eacute;gal &agrave; la totalit&eacute; des points de d&eacute;g&acirc;ts subis (un test de Physique +2D10 pour les figurants).</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.TYpltLw2F1w0jotr"}},"_id":"nHktQbVo5szIXJh0"}
{"name":"Charge impétueuse","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":1,"armes":"toutes les armes de mêlée","prerequis":"niveau de compétence martiale \"Novice\"","modificateur":-3,"description":"<p>Le h&eacute;ros doit effectuer un d&eacute;placement afin d&rsquo;engager sa cible. Si l&rsquo;attaque porte, ajoutez la valeur normale de D&eacute;placement du personnage aux d&eacute;g&acirc;ts inflig&eacute;s. S&rsquo;il a pass&eacute; l&rsquo;action pr&eacute;c&eacute;dente &agrave; courir ou sprinter vers sa cible, et r&eacute;ussi son test de mouvement, ces bonus aux d&eacute;g&acirc;ts passent respectivement &agrave; DEP x2 (course) ou DEP x3 (sprint).</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.C07wu8D2KjCfNGDG"}},"_id":"o0h9ehFsQbKEwYLz"}
{"name":"Féroce comme lours niv.3","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":3,"armes":"","prerequis":"berserkr, hache à deux mains","modificateur":-9,"description":"<p>Le <em>berserkr</em> est totalement habit&eacute; par sa rage de combat. La lame de sa longue hache virevolte autour de lui et fauche ses ennemis comme du bl&eacute; m&ucirc;r. Le h&eacute;ros b&eacute;n&eacute;ficie d&rsquo;un bonus aux d&eacute;g&acirc;ts pour cette attaque d&eacute;pendant du niveau de la prouesse (+5, +10, +15 ou +20). En outre, il rajoute imm&eacute;diatement de 1 &agrave; 4 d&eacute;s &agrave; sa r&eacute;serve de furor (selon le niveau de prouesse utilis&eacute;). Ce second effet ne s&rsquo;applique qu&rsquo;une seule fois par combat. Si le <em>berserkr</em> fait appel &agrave; cette prouesse martiale plusieurs fois durant ce combat, il b&eacute;n&eacute;ficie toujours du bonus aux d&eacute;g&acirc;ts, mais plus de l&rsquo;augmentation de la r&eacute;serve de <em>furor</em>.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.H6SjgKSMheB2jnDi"}},"_id":"rKTHXXIcmuB9GIUQ"}
{"name":"Les crocs du loup niv. 2","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":2,"armes":"","prerequis":"ulfhedinn, lance","modificateur":-6,"description":"<p>Le h&eacute;ros harc&egrave;le son adversaire de coups de lance et le maintient &agrave; sa distance. Le joueur r&eacute;alise, pour une seule action, selon le niveau utilis&eacute;, un, deux, trois ou quatre tests d&rsquo;attaque, assortis du malus de prouesse ad&eacute;-143</p>\n<p>Les R&egrave;gles - Les Prouesses Martiales quat. Chaque coup port&eacute; efficacement inflige un total de points de d&eacute;g&acirc;ts &eacute;gal &agrave; (Puissance + d&eacute;g&acirc;ts de la lance + niveau de la prouesse). La Marge de R&eacute;ussite n&rsquo;est pas prise en compte ici.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.FTn8bwwuUHshCzRe"}},"_id":"rRw6V0w1xeYigd8n"}
{"_id":"rKTHXXIcmuB9GIUQ","name":"Féroce comme lours niv.3","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":3,"armes":"","prerequis":"berserkr, hache à deux mains","modificateur":-9,"description":"<p>Le <em>berserkr</em> est totalement habit&eacute; par sa rage de combat. La lame de sa longue hache virevolte autour de lui et fauche ses ennemis comme du bl&eacute; m&ucirc;r. Le h&eacute;ros b&eacute;n&eacute;ficie d&rsquo;un bonus aux d&eacute;g&acirc;ts pour cette attaque d&eacute;pendant du niveau de la prouesse (+15 ). En outre, il rajoute imm&eacute;diatement de 3 d&eacute;s &agrave; sa r&eacute;serve de furor. Ce second effet ne s&rsquo;applique qu&rsquo;une seule fois par combat. Si le <em>berserkr</em> fait appel &agrave; cette prouesse martiale plusieurs fois durant ce combat, il b&eacute;n&eacute;ficie toujours du bonus aux d&eacute;g&acirc;ts, mais plus de l&rsquo;augmentation de la r&eacute;serve de <em>furor</em>.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.H6SjgKSMheB2jnDi"}}}
{"_id":"rRw6V0w1xeYigd8n","name":"Les crocs du loup niv. 2","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":2,"armes":"","prerequis":"ulfhedinn, lance","modificateur":-6,"description":"<p>Le h&eacute;ros harc&egrave;le son adversaire de coups de lance et le maintient &agrave; sa distance. Le joueur r&eacute;alise, pour une seule action, selon le niveau utilis&eacute;, un, deux, trois ou quatre tests d&rsquo;attaque, assortis du malus de prouesse ad&eacute;quat. Chaque coup port&eacute; efficacement inflige un total de points de d&eacute;g&acirc;ts &eacute;gal &agrave; (Puissance + d&eacute;g&acirc;ts de la lance + 2 ). La Marge de R&eacute;ussite n&rsquo;est pas prise en compte ici.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.FTn8bwwuUHshCzRe"}}}
{"name":"Pas encore mort !","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"utilitaire","niveau":4,"armes":"","prerequis":"Ténacité supérieure où égale à 3","modificateur":-12,"description":"<p>Le h&eacute;ros atteint le stade &laquo; Mort &raquo;, il peut, &agrave; chaque nouveau tour de combat, effectuer un test de T&eacute;nacit&eacute; contre un Seuil de R&eacute;ussite de base Moyen (14). Il applique &agrave; son test les diff&eacute;rents modificateurs habituels de combat, mais pas les malus de blessure, seulement celui d&ucirc; &agrave; la prouesse (-12). De plus, s&rsquo;il est &eacute;puis&eacute;, il ne garde normalement qu&rsquo;un seul d&eacute;. S&rsquo;il r&eacute;ussit son test, le personnage peut agir normalement ce tour-ci. Il ne subit plus de pertes de Points de Vie suppl&eacute;mentaires tant qu&rsquo;il b&eacute;n&eacute;ficie de cet effet. D&egrave;s qu&rsquo;il &eacute;choue, ou d&egrave;s que le combat se termine, le h&eacute;ros s&rsquo;&eacute;croule et tr&eacute;passe.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.UKI3ScyfZah6DRAn"}},"_id":"rWul7HjBYCmqCtin"}
{"name":"Soumets-toi","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":2,"armes":"lutte, armes à deux mains","prerequis":"niveau de compétence martiale \"Confirmé\"","modificateur":-6,"description":"<p>Le personnage exploite le d&eacute;s&eacute;quilibre de l&rsquo;adversaire pour le jeter au sol. Si la cible ne peut parer ou esquiver cette attaque, elle est projet&eacute;e &agrave; terre, aux pieds du h&eacute;ros. Par contre, elle ne subit que la moiti&eacute; des d&eacute;g&acirc;ts normaux.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.f5jNRmufSJhBJN5Z"}},"_id":"sR0g8c3IRWgnvxo4"}
{"name":"Désarçonner","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":2,"armes":"armes à deux mains, armes d'Hast, armes de jet","prerequis":"niveau de compétence martiale \"Confirmé\"","modificateur":-6,"description":"<p>Le personnage place un coup puissant afin de faire tomber un adversaire du haut de sa monture. Calculez normalement les d&eacute;g&acirc;ts inflig&eacute;s. La victime doit r&eacute;ussir un test de Vigueur + Chevaucher contre un Seuil de R&eacute;ussite Moyen (14) assorti d&rsquo;un malus &eacute;gal au total des d&eacute;g&acirc;ts subis (un test de Physique + 2D10 pour les figurants). En cas d&rsquo;&eacute;chec, elle chute lourdement au sol et devra consacrer sa prochaine action &agrave; se relever ou accepter de combattre au sol.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.KuzoIUkgpTB98IFf"}},"_id":"tVhIgg3TUWiqyEP1"}
{"name":"Rugissement de Fenrir","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"utilitaire","niveau":3,"armes":"","prerequis":"Intimidation \"Confirmé\", guerrier-fauve, thulr","modificateur":-9,"description":"<p>Le joueur d&eacute;pense une action pour r&eacute;aliser un test d&rsquo;Intimidation. Le h&eacute;ros pousse un rugissement f&eacute;roce qui r&eacute;sonne sur le champ de bataille comme un appel funeste. Tous les adversaires &agrave; port&eacute;e de voix doivent effectuer un test en opposition de T&eacute;nacit&eacute; + D&eacute;fense Mentale (ou Mystique/passif) contre un Seuil de R&eacute;ussite &eacute;gal au r&eacute;sultat du test du personnage. En cas d&rsquo;&eacute;chec, ils subissent un modificateur &eacute;gal &agrave; la valeur de Charisme du h&eacute;ros &agrave; toute action entreprise contre lui pour toute la dur&eacute;e du combat.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.x1HNJDfypuNntbzh"}},"_id":"u5Qddc8Y2MnHhWBg"}
{"name":"Aucun abri sûr","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":1,"armes":"armes de tir, armes de jet","prerequis":"niveau de compétence martiale \"Novice\"","modificateur":-3,"description":"<p>Le h&eacute;ros peut attaquer une cible retranch&eacute;e derri&egrave;re un obstacle, tant qu&rsquo;il est conscient de sa pr&eacute;sence et que l&rsquo;impact de son projectile peut raisonnablement traverser cette barri&egrave;re. Ainsi, une fl&egrave;che passe &agrave; travers un mur d&rsquo;osier tress&eacute; ou de bois fin. Une hachette peut &eacute;clater la paroi d&rsquo;un tonneau dans lequel se cache un ennemi. En cas de succ&egrave;s, la cible est atteinte par le trait, mais ne subit que la moiti&eacute; des points de d&eacute;g&acirc;t normaux sans prendre en compte la valeur de protection de l&rsquo;obstacle.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.2lMMNwfsnkUyb04X"}},"_id":"valjps0vpm5a1aHn"}
{"name":"Blocage niv.2","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"defensive","niveau":2,"armes":"Toues les armes de mêlée","prerequis":"","modificateur":-6,"description":"<p>Le personnage r&eacute;alise une parade puissante et bloque l&rsquo;arme adverse. S&rsquo;il r&eacute;ussit son test, l&rsquo;adversaire ne peut pas attaquer lors de sa prochaine action, durant ce tour de combat ou le suivant. Celui-ci peut utiliser cette action pour r&eacute;aliser autre chose, mais pas une attaque. Si le h&eacute;ros &eacute;choue, il r&eacute;duit tout de m&ecirc;me les d&eacute;g&acirc;ts occasionn&eacute;s par cette attaque de 2, 4 ou 6 points selon le niveau de la prouesse.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.yZDAs2kpGPXVfQmO"}},"_id":"vksayDqJ7SY9gJKm"}
{"name":"La charge du sanglier niv. 1","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":1,"armes":"","prerequis":"svinfylkingar, épée et bouclier","modificateur":-3,"description":"<p>Le personnage se rue en avant et percute violemment son adversaire. Si le joueur r&eacute;ussit son test, la cible ne peut tenter que d&rsquo;esquiver cette attaque, avec un malus &eacute;gal &agrave; celui de la prouesse (-3, -6, -9 ou &ndash;12).</p>\n<p>Un adversaire atteint par cette attaque perd un nombre de Points de Vie &eacute;gal &agrave; la somme de la Puissance du svinfylkingar, plus la Marge de r&eacute;ussite de l&rsquo;attaque, plus une base d&eacute;pendant du niveau de la prouesse. Soit : PUI + MR + Base.</p>\n<p>La base des d&eacute;g&acirc;ts est respectivement &eacute;gale &agrave; : +5 / +10 / +15 / + 20, pour les niveaux 1 &agrave; 4.</p>\n<p>L&rsquo;armure s&rsquo;applique normalement ici.</p>\n<p>La victime doit r&eacute;ussir un test d&rsquo;Agilit&eacute; (SR 14 plus les points de d&eacute;g&acirc;t de l&rsquo;attaque) ou se retrouver projet&eacute;e au sol, &agrave; (Puissance du svinfylkingar + niveau de la prouesse) m&egrave;tres en arri&egrave;re.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.JobfUGWOUMx34HXU"}},"_id":"vw9afhYxPUwDRgkO"}
{"name":"Les crocs du loup niv. 4","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":4,"armes":"","prerequis":"ulfhedinn, lance","modificateur":-12,"description":"<p>Le h&eacute;ros harc&egrave;le son adversaire de coups de lance et le maintient &agrave; sa distance. Le joueur r&eacute;alise, pour une seule action, selon le niveau utilis&eacute;, un, deux, trois ou quatre tests d&rsquo;attaque, assortis du malus de prouesse ad&eacute;-143</p>\n<p>Les R&egrave;gles - Les Prouesses Martiales quat. Chaque coup port&eacute; efficacement inflige un total de points de d&eacute;g&acirc;ts &eacute;gal &agrave; (Puissance + d&eacute;g&acirc;ts de la lance + niveau de la prouesse). La Marge de R&eacute;ussite n&rsquo;est pas prise en compte ici.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.qO1cu7cOaayNDILY"}},"_id":"w2VQ7lGrE63mYvDJ"}
{"name":"La charge du sanglier niv. 3","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":3,"armes":"","prerequis":"svinfylkingar, épée et bouclier","modificateur":-9,"description":"<p>Le personnage se rue en avant et percute violemment son adversaire. Si le joueur r&eacute;ussit son test, la cible ne peut tenter que d&rsquo;esquiver cette attaque, avec un malus &eacute;gal &agrave; celui de la prouesse (-3, -6, -9 ou &ndash;12).</p>\n<p>Un adversaire atteint par cette attaque perd un nombre de Points de Vie &eacute;gal &agrave; la somme de la Puissance du svinfylkingar, plus la Marge de r&eacute;ussite de l&rsquo;attaque, plus une base d&eacute;pendant du niveau de la prouesse. Soit : PUI + MR + Base.</p>\n<p>La base des d&eacute;g&acirc;ts est respectivement &eacute;gale &agrave; : +5 / +10 / +15 / + 20, pour les niveaux 1 &agrave; 4.</p>\n<p>L&rsquo;armure s&rsquo;applique normalement ici.</p>\n<p>La victime doit r&eacute;ussir un test d&rsquo;Agilit&eacute; (SR 14 plus les points de d&eacute;g&acirc;t de l&rsquo;attaque) ou se retrouver projet&eacute;e au sol, &agrave; (Puissance du svinfylkingar + niveau de la prouesse) m&egrave;tres en arri&egrave;re.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.pHa44BsEo5XlnnHE"}},"_id":"xyh5Gd9vLjiQ5s1K"}
{"_id":"vksayDqJ7SY9gJKm","name":"Blocage niv.2","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"defensive","niveau":2,"armes":"Toues les armes de mêlée","prerequis":"","modificateur":-6,"description":"<p>Le personnage r&eacute;alise une parade puissante et bloque l&rsquo;arme adverse. S&rsquo;il r&eacute;ussit son test, l&rsquo;adversaire ne peut pas attaquer lors de sa prochaine action, durant ce tour de combat ou le suivant. Celui-ci peut utiliser cette action pour r&eacute;aliser autre chose, mais pas une attaque. Si le h&eacute;ros &eacute;choue, il r&eacute;duit tout de m&ecirc;me les d&eacute;g&acirc;ts occasionn&eacute;s par cette attaque de 2 points.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.yZDAs2kpGPXVfQmO"}}}
{"_id":"vw9afhYxPUwDRgkO","name":"La charge du sanglier niv. 1","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":1,"armes":"épée et bouclier","prerequis":"svinfylkingar, épée et bouclier","modificateur":-3,"description":"<p>Le personnage se rue en avant et percute violemment son adversaire. Si le joueur r&eacute;ussit son test, la cible ne peut tenter que d&rsquo;esquiver cette attaque, avec un malus &eacute;gal &agrave; celui de la prouesse (-3).</p>\n<p>Un adversaire atteint par cette attaque perd un nombre de Points de Vie &eacute;gal &agrave; la somme de la Puissance du svinfylkingar, plus la Marge de r&eacute;ussite de l&rsquo;attaque, plus une base d&eacute;pendant du niveau de la prouesse. Soit : PUI + MR + Base.</p>\n<p>La base des d&eacute;g&acirc;ts est respectivement &eacute;gale &agrave; : +5, pour le niveau 1.</p>\n<p>L&rsquo;armure s&rsquo;applique normalement ici.</p>\n<p>La victime doit r&eacute;ussir un test d&rsquo;Agilit&eacute; (SR 14 plus les points de d&eacute;g&acirc;t de l&rsquo;attaque) ou se retrouver projet&eacute;e au sol, &agrave; (Puissance du svinfylkingar + 1) m&egrave;tres en arri&egrave;re.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.JobfUGWOUMx34HXU"}}}
{"_id":"w2VQ7lGrE63mYvDJ","name":"Les crocs du loup niv. 4","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":4,"armes":"","prerequis":"ulfhedinn, lance","modificateur":-12,"description":"<p>Le h&eacute;ros harc&egrave;le son adversaire de coups de lance et le maintient &agrave; sa distance. Le joueur r&eacute;alise, pour une seule action, selon le niveau utilis&eacute;, un, deux, trois ou quatre tests d&rsquo;attaque, assortis du malus de prouesse ad&eacute;quat. Chaque coup port&eacute; efficacement inflige un total de points de d&eacute;g&acirc;ts &eacute;gal &agrave; (Puissance + d&eacute;g&acirc;ts de la lance + 4 ). La Marge de R&eacute;ussite n&rsquo;est pas prise en compte ici.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.qO1cu7cOaayNDILY"}}}
{"_id":"xyh5Gd9vLjiQ5s1K","name":"La charge du sanglier niv. 3","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":3,"armes":"épée et bouclier","prerequis":"svinfylkingar, épée et bouclier","modificateur":-9,"description":"<p>Le personnage se rue en avant et percute violemment son adversaire. Si le joueur r&eacute;ussit son test, la cible ne peut tenter que d&rsquo;esquiver cette attaque, avec un malus &eacute;gal &agrave; celui de la prouesse (-9 ).</p>\n<p>Un adversaire atteint par cette attaque perd un nombre de Points de Vie &eacute;gal &agrave; la somme de la Puissance du svinfylkingar, plus la Marge de r&eacute;ussite de l&rsquo;attaque, plus une base d&eacute;pendant du niveau de la prouesse. Soit : PUI + MR + Base.</p>\n<p>La base des d&eacute;g&acirc;ts est respectivement &eacute;gale &agrave; :&nbsp; +15, pour le niveaux 3.</p>\n<p>L&rsquo;armure s&rsquo;applique normalement ici.</p>\n<p>La victime doit r&eacute;ussir un test d&rsquo;Agilit&eacute; (SR 14 plus les points de d&eacute;g&acirc;t de l&rsquo;attaque) ou se retrouver projet&eacute;e au sol, &agrave; (Puissance du svinfylkingar + 3) m&egrave;tres en arri&egrave;re.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.pHa44BsEo5XlnnHE"}}}
{"name":"Franchir la ligne ennemie","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":3,"armes":"toutes les armes de mêlée","prerequis":"niveau de compétence martiale \"Expert\"","modificateur":-9,"description":"<p>Le personnage doit effectuer une charge contre au moins trois adversaires group&eacute;s. Pour le test d&rsquo;attaque, prenez en compte la valeur de D&eacute;fense Physique (ou le Conflit d&eacute;fensif pour des figurants) la plus &eacute;lev&eacute;e parmi eux. Si le h&eacute;ros r&eacute;ussit son coup, calculez normalement les d&eacute;g&acirc;ts et d&eacute;signez une seule cible parmi les d&eacute;fenseurs. Le personnage se retrouve &agrave; la fin de son action derri&egrave;re ses ennemis, &agrave; une distance &eacute;gale &agrave; la moiti&eacute; de sa valeur de D&eacute;placement (DEP/2) du personnage.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.3TRMLKH3eLYoeMPu"}},"_id":"yPx8m1KZID0zJC3C"}
{"name":"La charge du sanglier niv. 2","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":2,"armes":"","prerequis":"svinfylkingar, épée et bouclier","modificateur":-6,"description":"<p>Le personnage se rue en avant et percute violemment son adversaire. Si le joueur r&eacute;ussit son test, la cible ne peut tenter que d&rsquo;esquiver cette attaque, avec un malus &eacute;gal &agrave; celui de la prouesse (-3, -6, -9 ou &ndash;12).</p>\n<p>Un adversaire atteint par cette attaque perd un nombre de Points de Vie &eacute;gal &agrave; la somme de la Puissance du svinfylkingar, plus la Marge de r&eacute;ussite de l&rsquo;attaque, plus une base d&eacute;pendant du niveau de la prouesse. Soit : PUI + MR + Base.</p>\n<p>La base des d&eacute;g&acirc;ts est respectivement &eacute;gale &agrave; : +5 / +10 / +15 / + 20, pour les niveaux 1 &agrave; 4.</p>\n<p>L&rsquo;armure s&rsquo;applique normalement ici.</p>\n<p>La victime doit r&eacute;ussir un test d&rsquo;Agilit&eacute; (SR 14 plus les points de d&eacute;g&acirc;t de l&rsquo;attaque) ou se retrouver projet&eacute;e au sol, &agrave; (Puissance du svinfylkingar + niveau de la prouesse) m&egrave;tres en arri&egrave;re.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.xzVV440ASSuXJBC6"}},"_id":"z0cF4dWHmUAg0KvV"}
{"_id":"z0cF4dWHmUAg0KvV","name":"La charge du sanglier niv. 2","type":"prouesse","img":"icons/svg/item-bag.svg","data":{"categorie":"attaque","niveau":2,"armes":"épée et bouclier","prerequis":"svinfylkingar, épée et bouclier","modificateur":-6,"description":"<p>Le personnage se rue en avant et percute violemment son adversaire. Si le joueur r&eacute;ussit son test, la cible ne peut tenter que d&rsquo;esquiver cette attaque, avec un malus &eacute;gal &agrave; celui de la prouesse (-6).</p>\n<p>Un adversaire atteint par cette attaque perd un nombre de Points de Vie &eacute;gal &agrave; la somme de la Puissance du svinfylkingar, plus la Marge de r&eacute;ussite de l&rsquo;attaque, plus une base d&eacute;pendant du niveau de la prouesse. Soit : PUI + MR + Base.</p>\n<p>La base des d&eacute;g&acirc;ts est respectivement &eacute;gale &agrave; : +10, pour le niveau 2.</p>\n<p>L&rsquo;armure s&rsquo;applique normalement ici.</p>\n<p>La victime doit r&eacute;ussir un test d&rsquo;Agilit&eacute; (SR 14 plus les points de d&eacute;g&acirc;t de l&rsquo;attaque) ou se retrouver projet&eacute;e au sol, &agrave; (Puissance du svinfylkingar + 2) m&egrave;tres en arri&egrave;re.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"feLeZcbqgHkVzfJP":3},"flags":{"core":{"sourceId":"Item.xzVV440ASSuXJBC6"}}}

View File

@ -1,4 +1,4 @@
{"name":"Baume de récupération totale","type":"sortsejdr","img":"icons/svg/item-bag.svg","data":{"forme":"Guérison","preparation":"12 heures","niveau":5,"malus":-15,"duree":"Instantané","zone":"Une personne","description":"<p>Effet : Ce sort permet de cr&eacute;er des baumes qui se conservent tr&egrave;s longtemps, des mois voire des ann&eacute;es, &agrave; condition d&rsquo;&ecirc;tre bien conditionn&eacute;es &agrave; l&rsquo;abri de la lumi&egrave;re et dans des pots &eacute;tanches.</p>\n<p>Une dose de ce baume appliqu&eacute;e sur une personne bless&eacute;e prend 1D10 Minutes pour agir. Au bout de ce laps de temps, la personne se retrouve au maximum de ses Points de Vie, de sa R&eacute;serve de d&eacute;s, toute h&eacute;morragies est arr&ecirc;t&eacute;e. Le nombre de doses qu&rsquo;un mage peut cr&eacute;er &agrave; chaque fois qu&rsquo;il lance ce sort d&eacute;pend de sa Marge de R&eacute;ussite.</p>\n<p>&nbsp;</p>\n<table style=\"user-select: text; width: 273px; border-right: 1px solid #7a7971; border-left: 1px solid #7a7971; border-image: initial; color: #191813; font-family: Vinque; font-size: 16px; letter-spacing: 1px; text-align: justify;\" border=\"1\">\n<tbody style=\"box-sizing: border-box; user-select: text;\">\n<tr style=\"box-sizing: border-box; user-select: text;\">\n<td style=\"box-sizing: border-box; user-select: text; width: 133px;\">MR</td>\n<td style=\"box-sizing: border-box; user-select: text; width: 139px;\">Nombre de doses</td>\n</tr>\n<tr style=\"box-sizing: border-box; user-select: text;\">\n<td style=\"box-sizing: border-box; user-select: text; width: 133px;\">0 - 5</td>\n<td style=\"box-sizing: border-box; user-select: text; width: 139px;\">1</td>\n</tr>\n<tr style=\"box-sizing: border-box; user-select: text;\">\n<td style=\"box-sizing: border-box; user-select: text; width: 133px;\">6 - 10</td>\n<td style=\"box-sizing: border-box; user-select: text; width: 139px;\">2</td>\n</tr>\n<tr style=\"box-sizing: border-box; user-select: text;\">\n<td style=\"box-sizing: border-box; user-select: text; width: 133px;\">11 - 15</td>\n<td style=\"box-sizing: border-box; user-select: text; width: 139px;\">3</td>\n</tr>\n<tr style=\"box-sizing: border-box; user-select: text;\">\n<td style=\"box-sizing: border-box; user-select: text; width: 133px;\">16 - 25</td>\n<td style=\"box-sizing: border-box; user-select: text; width: 139px;\">4</td>\n</tr>\n<tr style=\"box-sizing: border-box; user-select: text;\">\n<td style=\"box-sizing: border-box; user-select: text; width: 133px;\">26+</td>\n<td style=\"box-sizing: border-box; user-select: text; width: 139px;\">5</td>\n</tr>\n</tbody>\n</table>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{},"_id":"1LklBTpkRHN0vgkG"}
{"_id":"1LklBTpkRHN0vgkG","name":"Baume de récupération totale","type":"sortsejdr","img":"icons/svg/item-bag.svg","data":{"forme":"Guérison","preparation":"12 heures","niveau":5,"malus":-15,"duree":"1d10 Minutes","zone":"Une personne","description":"<p>Effet : Ce sort permet de cr&eacute;er des baumes qui se conservent tr&egrave;s longtemps, des mois voire des ann&eacute;es, &agrave; condition d&rsquo;&ecirc;tre bien conditionn&eacute;es &agrave; l&rsquo;abri de la lumi&egrave;re et dans des pots &eacute;tanches.</p>\n<p>Une dose de ce baume appliqu&eacute;e sur une personne bless&eacute;e prend 1D10 Minutes pour agir. Au bout de ce laps de temps, la personne se retrouve au maximum de ses Points de Vie, de sa R&eacute;serve de d&eacute;s, toute h&eacute;morragies est arr&ecirc;t&eacute;e. Le nombre de doses qu&rsquo;un mage peut cr&eacute;er &agrave; chaque fois qu&rsquo;il lance ce sort d&eacute;pend de sa Marge de R&eacute;ussite.</p>\n<p>&nbsp;</p>\n<table style=\"user-select: text; width: 273px; border-right: 1px solid #7a7971; border-left: 1px solid #7a7971; border-image: initial; color: #191813; font-family: Vinque; font-size: 16px; letter-spacing: 1px; text-align: justify;\" border=\"1\">\n<tbody style=\"box-sizing: border-box; user-select: text;\">\n<tr style=\"box-sizing: border-box; user-select: text;\">\n<td style=\"box-sizing: border-box; user-select: text; width: 133px;\">MR</td>\n<td style=\"box-sizing: border-box; user-select: text; width: 139px;\">Nombre de doses</td>\n</tr>\n<tr style=\"box-sizing: border-box; user-select: text;\">\n<td style=\"box-sizing: border-box; user-select: text; width: 133px;\">0 - 5</td>\n<td style=\"box-sizing: border-box; user-select: text; width: 139px;\">1</td>\n</tr>\n<tr style=\"box-sizing: border-box; user-select: text;\">\n<td style=\"box-sizing: border-box; user-select: text; width: 133px;\">6 - 10</td>\n<td style=\"box-sizing: border-box; user-select: text; width: 139px;\">2</td>\n</tr>\n<tr style=\"box-sizing: border-box; user-select: text;\">\n<td style=\"box-sizing: border-box; user-select: text; width: 133px;\">11 - 15</td>\n<td style=\"box-sizing: border-box; user-select: text; width: 139px;\">3</td>\n</tr>\n<tr style=\"box-sizing: border-box; user-select: text;\">\n<td style=\"box-sizing: border-box; user-select: text; width: 133px;\">16 - 25</td>\n<td style=\"box-sizing: border-box; user-select: text; width: 139px;\">4</td>\n</tr>\n<tr style=\"box-sizing: border-box; user-select: text;\">\n<td style=\"box-sizing: border-box; user-select: text; width: 133px;\">26+</td>\n<td style=\"box-sizing: border-box; user-select: text; width: 139px;\">5</td>\n</tr>\n</tbody>\n</table>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{}}
{"name":"Annulation dun envoûtement mineur sur une personne","type":"sortsejdr","img":"icons/svg/item-bag.svg","data":{"forme":"Guérison","preparation":"3 heures","niveau":4,"malus":-12,"duree":"Instantané","zone":"Une personne","description":"<p>Effet : Le mage doit r&eacute;ussir un Test en opposition &agrave; la puissance de l&rsquo;envo&ucirc;tement. Cet envo&ucirc;tement doit obligatoirement &ecirc;tre Mineur et sur une personne. Si le Test est r&eacute;ussi, la personne est lib&eacute;r&eacute;e d&eacute;finitivement de l&rsquo;envo&ucirc;tement.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{},"_id":"2nda3xReEZqUPJ1q"}
{"name":"Protection contre les envoûtements","type":"sortsejdr","img":"icons/svg/item-bag.svg","data":{"forme":"Guérison","preparation":"5 Tours","niveau":1,"malus":-3,"duree":"voir Tableau","zone":"Une personne","description":"<p>Effet : Le mage accorde &agrave; une personne de son choix, un bonus contre toutes tentatives d&rsquo;envo&ucirc;tement de tout types de magie (Sejdr, Galdr ou Runes). Ce bonus est &eacute;quivalent &agrave; la DM du mage et il viendra s&rsquo;ajouter &agrave; chaque fois que la personne doit r&eacute;ussir un Test contre un envo&ucirc;tement et ce, pendant toute la dur&eacute;e du sort.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{},"_id":"DagSbvjXoq9nOqe2"}
{"name":"Préparation de baumes, onguents","type":"sortsejdr","img":"icons/svg/item-bag.svg","data":{"forme":"Guérison","preparation":"3 heures","niveau":2,"malus":-6,"duree":"Instantané","zone":"Une personne","description":"<p>Effet : Ce sort permet de cr&eacute;er des baumes et des onguents. Ces baumes se conservent tr&egrave;s longtemps, des mois, des ann&eacute;es, &agrave; condition d&rsquo;&ecirc;tre bien conditionn&eacute;s &agrave; l&rsquo;abri de la lumi&egrave;re et dans des pots &eacute;tanches.</p>\n<p>D&eacute;s que l&rsquo;on applique une dose du baume ou de l&rsquo;onguent sur une personne ayant une blessure, celle-ci regagne de suite 2D10 Points de vie sans pouvoir d&eacute;passer son maximum.</p>\n<p>Le nombre de doses qu&rsquo;un mage peut cr&eacute;er &agrave; chaque fois qu&rsquo;il lance ce sort d&eacute;pend de sa Marge de R&eacute;ussite.</p>\n<p>&nbsp;</p>\n<table style=\"width: 52.9485%;\" border=\"1\">\n<tbody>\n<tr>\n<td style=\"width: 48.8453%;\">MR</td>\n<td style=\"width: 50.1743%;\">Nombre de doses</td>\n</tr>\n<tr>\n<td style=\"width: 48.8453%;\">0 - 5</td>\n<td style=\"width: 50.1743%;\">1</td>\n</tr>\n<tr>\n<td style=\"width: 48.8453%;\">6 - 10</td>\n<td style=\"width: 50.1743%;\">2</td>\n</tr>\n<tr>\n<td style=\"width: 48.8453%;\">11 - 15</td>\n<td style=\"width: 50.1743%;\">3</td>\n</tr>\n<tr>\n<td style=\"width: 48.8453%;\">16 - 25</td>\n<td style=\"width: 50.1743%;\">4</td>\n</tr>\n<tr>\n<td style=\"width: 48.8453%;\">26+</td>\n<td style=\"width: 50.1743%;\">5</td>\n</tr>\n</tbody>\n</table>\n<p>&nbsp;</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{},"_id":"FH05D8YIkS71fLAL"}
@ -7,7 +7,7 @@
{"name":"Guérison des maladies modérées","type":"sortsejdr","img":"icons/svg/item-bag.svg","data":{"forme":"Guérison","preparation":"3 Tours","niveau":3,"malus":-9,"duree":"Instantané","zone":"Une personne","description":"<p>Effet : Si le mage r&eacute;ussit son sort contre un SR &eacute;quivalent &agrave; la Virulence de la maladie mod&eacute;r&eacute;e. Il permet de gu&eacute;rir instantan&eacute;ment le malade (voir le chapitre sur les maladie page 135). Ce sort ne permet pas de soigner les effets de la maladie d&eacute;j&agrave; subis par le malade.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{},"_id":"OuMwU1kvkx2MQGJ8"}
{"name":"Annulation denvoûtement mineur sur un objet","type":"sortsejdr","img":"icons/svg/item-bag.svg","data":{"forme":"Guérison","preparation":"3 heures","niveau":3,"malus":-9,"duree":"voir Tableau","zone":"Un objet","description":"<p>Effet : Le mage doit r&eacute;ussir un Test en opposition &agrave; la puissance de l&rsquo;envo&ucirc;tement. Cet envo&ucirc;tement doit obligatoirement &ecirc;tre Mineur et sur un objet qui se lie &agrave; une personne. Si le Test est r&eacute;ussi, la personne est lib&eacute;r&eacute;e de l&rsquo;envo&ucirc;tement. Pr&eacute;cisons bien que l&rsquo;objet est toujours envo&ucirc;t&eacute; et si une personne s&rsquo;empare par la suite de l&rsquo;objet, elle risque fort d&rsquo;&ecirc;tre vicitme de l&rsquo;envo&ucirc;tement. Le temps durant lequel l&rsquo;objet envo&ucirc;t&eacute; est inoffensif d&eacute;pend de la Marge de R&eacute;ussite du mage.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{},"_id":"SXqKl03fyEztAisz"}
{"name":"Regagner des Dés de Réserve / Faire perdre des Dés de Réserve","type":"sortsejdr","img":"icons/svg/item-bag.svg","data":{"forme":"Guérison","preparation":"3 Actions","niveau":3,"malus":-9,"duree":"Instantané","zone":"Une personne","description":"<p>Effet : Le mage permet &agrave; une personne de son choix de r&eacute;cup&eacute;rer autant de d&eacute;s de r&eacute;serve qu&rsquo;il a en INS. Ce gain de d&eacute;s ne permet pas de d&eacute;passer son maximum. Par contre, si la personne cibl&eacute;e par le sort &eacute;tait en &Eacute;puisement, elle sort de suite de cette &eacute;tat. Si le b&eacute;n&eacute;ficiaire du sort ne faisait rien pendant le Tour o&ugrave; il regagne ses d&eacute;s en r&eacute;serve, il devra attendre le d&eacute;but du Tour suivant pour agir.</p>\n<p>Effet inverse : Si le mage r&eacute;ussit son sort, la victime aura droit &agrave; un Test de R&eacute;sistance avec comme SR le r&eacute;sultat du sort du mage. En cas d&rsquo;&eacute;chec, la victime perd instantan&eacute;ment un nombre de d&eacute;s de r&eacute;serve &eacute;quivalent &agrave; l&rsquo;INS du mage. Cependant, aucune victime de ce sort ne peut tomber en &Eacute;puisement, il lui restera donc au moins un d&eacute; dans sa r&eacute;serve quel que soit le nombre de d&eacute;s perdus.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{},"_id":"ViDD3KUwJSLQWaDO"}
{"name":"Guérison des maladies graves","type":"sortsejdr","img":"icons/svg/item-bag.svg","data":{"forme":"Guérison","preparation":"3 Tours","niveau":4,"malus":-15,"duree":"Instantané","zone":"Une personne","description":"<p><br />Effet : Si le mage r&eacute;ussit son sort contre un SR &eacute;quivalent &agrave; la Virulence de la maladie grave, il gu&eacute;rit instantan&eacute;ment le malade (voir le chapitre sur les maladies page 135). Ce sort ne permet pas de soigner les effets de la maladie d&eacute;j&agrave; subis par le malade.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{},"_id":"byw6UNhU614nIZIU"}
{"_id":"byw6UNhU614nIZIU","name":"Guérison des maladies graves","type":"sortsejdr","img":"icons/svg/item-bag.svg","data":{"forme":"Guérison","preparation":"3 Tours","niveau":5,"malus":-15,"duree":"Instantané","zone":"Une personne","description":"<p><br />Effet : Si le mage r&eacute;ussit son sort contre un SR &eacute;quivalent &agrave; la Virulence de la maladie grave, il gu&eacute;rit instantan&eacute;ment le malade (voir le chapitre sur les maladies page 135). Ce sort ne permet pas de soigner les effets de la maladie d&eacute;j&agrave; subis par le malade.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{}}
{"name":"Guérison des maladies mineures","type":"sortsejdr","img":"icons/svg/item-bag.svg","data":{"forme":"Guérison","preparation":"3 Tours","niveau":1,"malus":-3,"duree":"Instantané","zone":"Une personne","description":"<p>Effet : Si le mage r&eacute;ussit son sort contre un SR &eacute;quivalent &agrave; la Virulence de la maladie mineure. Il permet de gu&eacute;rir instantan&eacute;ment le malade (voir le chapitre sur les maladie page 135). Ce sort ne permet pas de soigner les effets de la maladie d&eacute;j&agrave; subis par le malade.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{},"_id":"dn2cqQ04MMvDaGts"}
{"name":"Soigner Empoisonnement","type":"sortsejdr","img":"icons/svg/item-bag.svg","data":{"forme":"Guérison","preparation":"3 Tours","niveau":3,"malus":-9,"duree":"Instantané","zone":"Une personne","description":"<p>Effet : Si le mage r&eacute;ussit son Test contre un SR &eacute;quivalent &agrave; la Virulence du Poison. La victime est totalement purifi&eacute;e, le mage ayant d&eacute;truit toute trace d&rsquo;empoisonnement. Ce sort ne permet pas de gu&eacute;rir la victime si elle a d&eacute;j&agrave; subi des effets du poison (Perte de vie, de Caract&eacute;ristique,...).</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{},"_id":"gP4PB4GU77FQKn0m"}
{"name":"Récupération totale","type":"sortsejdr","img":"icons/svg/item-bag.svg","data":{"forme":"Guérison","preparation":"4 Tours","niveau":4,"malus":-12,"duree":"Instantané","zone":"Une personne","description":"<p>Effet : Le mage permet &agrave; une personne de son choix de revenir &agrave; son score maximal de Point de Vie. Ce sort ne gu&eacute;rit pas des h&eacute;morragies, des effets de blessures graves...</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{},"_id":"iJpRWsZeo1w2suaz"}

View File

@ -6,7 +6,7 @@
{"name":"Glissement de terrain","type":"sortsejdr","img":"icons/svg/item-bag.svg","data":{"forme":"Maîtrise des éléments","preparation":"10 minutes","niveau":4,"malus":-12,"duree":"Variable","zone":"INS x 100m3","description":"<p>&nbsp;</p>\n<p>Effet : Le mage fait appel aux forces de la terre pour faire glisser / tomber une paroi de colline, un flanc de falaise, de la boue ou de la neige,... Les d&eacute;g&acirc;ts qu&rsquo;occasionnent ce glissement de terrain d&eacute;pendent de la nature du glissement.</p>\n<p>Pour les personnes et la perte de Point de Vie, on ne tient pas compte des protections. Pour les structures, on ne s&rsquo;occupe que de celles en bois et qu&rsquo;&agrave; la fin du sort pour conna&icirc;tre leur &eacute;tat. Les structures de pierre ne sont pas atteintes par les glissements de terrain. La dur&eacute;e du sort d&eacute;pend de la nature du glissement et on compte en Tour.</p>\n<table style=\"width: 98.8506%;\" border=\"1\">\n<tbody>\n<tr>\n<td style=\"width: 14.7059%;\">Nature</td>\n<td style=\"width: 12.7451%;\">Dur&eacute;e</td>\n<td style=\"width: 25.9348%;\">Personne</td>\n<td style=\"width: 45.2576%;\">Structure</td>\n</tr>\n<tr>\n<td style=\"width: 14.7059%;\">Boue</td>\n<td style=\"width: 12.7451%;\">9</td>\n<td style=\"width: 25.9348%;\">1D5/T</td>\n<td style=\"width: 45.2576%;\">Idem</td>\n</tr>\n<tr>\n<td style=\"width: 14.7059%;\">Neige</td>\n<td style=\"width: 12.7451%;\">7</td>\n<td style=\"width: 25.9348%;\">1D10/T</td>\n<td style=\"width: 45.2576%;\">L&eacute;g&egrave;rement endommag&eacute;e (portes et fen&ecirc;tres bris&eacute;es)</td>\n</tr>\n<tr>\n<td style=\"width: 14.7059%;\">Terre</td>\n<td style=\"width: 12.7451%;\">5</td>\n<td style=\"width: 25.9348%;\">2D10/T</td>\n<td style=\"width: 45.2576%;\">Endommag&eacute;e (Paroi d&eacute;truite)</td>\n</tr>\n<tr>\n<td style=\"width: 14.7059%;\">Pierre</td>\n<td style=\"width: 12.7451%;\">3</td>\n<td style=\"width: 25.9348%;\">3D10/T</td>\n<td style=\"width: 45.2576%;\">D&eacute;truite</td>\n</tr>\n</tbody>\n</table>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{},"_id":"FGlhv3ME8WEN2j4h"}
{"name":"Détourner le lit dune rivière ou dun fleuve","type":"sortsejdr","img":"icons/svg/item-bag.svg","data":{"forme":"Maîtrise des éléments","preparation":"2 heures","niveau":4,"malus":-12,"duree":"Voir tableau","zone":"Une rivière","description":"<p>Effet : Le mage peut gr&acirc;ce &agrave; ce puissant sort d&eacute;vier le cours d&rsquo;une rivi&egrave;re ou d&rsquo;un fleuve. Le mage d&eacute;cide dans quelle direction doit partir l&rsquo;&eacute;coulement du fleuve ou de la rivi&egrave;re.</p>\n<p>Par la suite, le fleuve ou la rivi&egrave;re trouvera un nouveau chemin naturel et ce pendant toute la dur&eacute;e du sort. Ainsi, il est possible, par exemple, de d&eacute;vier une rivi&egrave;re en plaine qui au lieu de passer sur la droite d&rsquo;un village, passera au gr&eacute; du mage soit par le village lui-m&ecirc;me, soit par sa gauche.</p>\n<p>Le tableau ci-dessous aidera a g&eacute;rer, en terme de jeu, les effets d&eacute;vastateurs d&rsquo;un tel sort. Pour les personnes, il indique les d&eacute;g&acirc;ts que prend une victime prise dans le d&eacute;tournement du fleuve ou de la rivi&egrave;re. Les dommages sont calcul&eacute;s en Tour, et repr&eacute;sentent aussi bien la noyade que les chocs violents contre les d&eacute;bris transport&eacute;s par le fleuve ou la rivi&egrave;re. On ne tient pas compte des &eacute;ventuelles protections. Pour les Structures, ce tableau d&eacute;crit leur &eacute;tat une fois le fleuve (ou la rivi&egrave;re) pass&eacute;.</p>\n<p>&nbsp;</p>\n<table border=\"1\">\n<tbody>\n<tr>\n<td>&nbsp;</td>\n<td>Personne</td>\n<td>Structure bois</td>\n<td>Structure pierre</td>\n</tr>\n<tr>\n<td>Rivi&egrave;re</td>\n<td>1D10</td>\n<td>Abim&eacute;e*</td>\n<td>Indemne</td>\n</tr>\n<tr>\n<td>Fleuve</td>\n<td>2D10</td>\n<td>D&eacute;truite</td>\n<td>\n<p><span style=\"background-color: rgba(255, 255, 255, 0.2);\">Abim&eacute;e*</span></p>\n</td>\n</tr>\n</tbody>\n</table>\n<p>* Par abim&eacute;e, on entend une structure qui a perdu ses portes, ses fen&ecirc;tres et peut-&ecirc;tre m&ecirc;me une paroi.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{},"_id":"GoVpo8a46UlLHne4"}
{"name":"Maîtriser le brouillard","type":"sortsejdr","img":"icons/svg/item-bag.svg","data":{"forme":"Maîtrise des éléments","preparation":"4 Minutes","niveau":1,"malus":-3,"duree":"voir Tableau","zone":"INS x 200m3","description":"<p>Effet : Gr&acirc;ce &agrave; ce sort, un mage peut se faire lever ou se dissiper un Brouillard. La densit&eacute; de ce brouillard d&eacute;pend de la volont&eacute; du Mage, il peut varier d&rsquo;une simple brume &agrave; un brouillard &eacute;pais o&ugrave; la visibilit&eacute; est quasi nulle.</p>\n<p>Les dimensions de la nappe de brouillard sont &agrave; la discr&eacute;tion du mage. Il peut tr&egrave;s bien cr&eacute;er une large bande de brume comme un cercle enveloppant un bateau. Ce sort ne peut &ecirc;tre lanc&eacute; qu&rsquo;en ext&eacute;rieur et la nappe de brouillard ne se d&eacute;place pas avec le mage.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{},"_id":"MjBp9KQptUR094UC"}
{"name":"Maîtriser la pluie","type":"sortsejdr","img":"icons/svg/item-bag.svg","data":{"forme":"Maîtrise des éléments","preparation":"1 heure","niveau":3,"malus":-9,"duree":"voir Tableau","zone":"INS x 100m2 au sol","description":"<p>Effet : Idem que le sort Invoquer la pluie, sauf que dans ce cas le mage n&rsquo;est plus soumis aux conditions m&eacute;t&eacute;orologiques pour faire tomber la pluie Il peut d&eacute;sormais invoquer ou dissiper les nuages n&eacute;cessaires &agrave; la pluie.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{},"_id":"f3iwjaKvJIXsJrjI"}
{"_id":"f3iwjaKvJIXsJrjI","name":"Maîtriser la pluie","type":"sortsejdr","img":"icons/svg/item-bag.svg","data":{"forme":"Maîtrise des éléments","preparation":"1 heure","niveau":3,"malus":-9,"duree":"voir Tableau","zone":"INS x 100m2 au sol","description":"<p>Effet : Idem que le sort @Compendium[fvtt-yggdrasill.sejdr-maitrise-des-elements.0hZBqEZ1QGm1jHYw]{Invoquer la pluie}, sauf que dans ce cas le mage n&rsquo;est plus soumis aux conditions m&eacute;t&eacute;orologiques pour faire tomber la pluie Il peut d&eacute;sormais invoquer ou dissiper les nuages n&eacute;cessaires &agrave; la pluie.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{}}
{"name":"Créer obscurité / lever obscurité","type":"sortsejdr","img":"icons/svg/item-bag.svg","data":{"forme":"Maîtrise des éléments","preparation":"4 Actions","niveau":2,"malus":-6,"duree":"voir Tableau","zone":"INS x 10m3","description":"<p>Effet : Le mage est capable de cr&eacute;er une zone de INS x 10m3 dans laquelle il est ma&icirc;tre de l&rsquo;intensit&eacute; lumineuse. Il peut varier cette intensit&eacute;, pendant toute la dur&eacute;e du sort, allant &agrave; volont&eacute; d&rsquo;une nuit noire sans lune &agrave; un apr&egrave;s-midi d&rsquo;&eacute;t&eacute; sans nuages et vice-versa. Le mage est toujours au centre de la zone affect&eacute;e par ce sort m&ecirc;me s&rsquo;il se d&eacute;place. Les torches et autres moyens de s&rsquo;&eacute;clairer fonctionnent normalement &agrave; l&rsquo;int&eacute;rieur de la zone du sort. Ce sort peut &ecirc;tre lanc&eacute; en int&eacute;rieur comme en ext&eacute;rieur.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{},"_id":"fKdVTZUys5csOPyP"}
{"name":"Créer une tempête de neige","type":"sortsejdr","img":"icons/svg/item-bag.svg","data":{"forme":"Maîtrise des éléments","preparation":"2 Tours","niveau":4,"malus":-12,"duree":"voir Tableau","zone":"INS x 500m2 au sol","description":"<p>Effet : Le mage l&egrave;ve une violente temp&ecirc;te de neige sur toute la zone du sort. Ce sort cumul plusieurs effets : des vents violents (voir le sort : Ma&icirc;triser les vents violents pour les effets), un froid intense qui fait perdre sans tenir compte des protections une perte de INS Points de Vie par Tour, ainsi que la neige qui rend toute visibilit&eacute; impossible.</p>\n<p>Il suffit de quelques minutes pour recouvrir de neige glac&eacute;e un groupe d&rsquo;aventuriers, de quelques heures pour recouvrir une maison ou de jours pour engloutir sous cette neige un petit village. La quantit&eacute; de neige tomb&eacute;e d&eacute;pend de la dur&eacute;e du sort et de l&rsquo;unit&eacute; de temps du sort :</p>\n<p>&nbsp;</p>\n<table border=\"1\">\n<tbody>\n<tr>\n<td>Unit&eacute; de temps</td>\n<td>Neige en cms</td>\n</tr>\n<tr>\n<td>Par Action</td>\n<td>INS cms</td>\n</tr>\n<tr>\n<td>Par Tour</td>\n<td>INS x 5cms</td>\n</tr>\n<tr>\n<td>Par Minute</td>\n<td>INS x 20cms</td>\n</tr>\n<tr>\n<td>Par Heure</td>\n<td>INS x 40cms</td>\n</tr>\n<tr>\n<td>Par journ&eacute;e</td>\n<td>INS x 60cms</td>\n</tr>\n</tbody>\n</table>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{},"_id":"fbtAbKAjzB8k2gJE"}
{"_id":"fbtAbKAjzB8k2gJE","name":"Créer une tempête de neige","type":"sortsejdr","img":"icons/svg/item-bag.svg","data":{"forme":"Maîtrise des éléments","preparation":"1 Heure","niveau":4,"malus":-12,"duree":"voir Tableau","zone":"INS x 500m2 au sol","description":"<p>Effet : Le mage l&egrave;ve une violente temp&ecirc;te de neige sur toute la zone du sort. Ce sort cumul plusieurs effets : des vents violents (voir le sort : Ma&icirc;triser les vents violents pour les effets), un froid intense qui fait perdre sans tenir compte des protections une perte de INS Points de Vie par Tour, ainsi que la neige qui rend toute visibilit&eacute; impossible.</p>\n<p>Il suffit de quelques minutes pour recouvrir de neige glac&eacute;e un groupe d&rsquo;aventuriers, de quelques heures pour recouvrir une maison ou de jours pour engloutir sous cette neige un petit village. La quantit&eacute; de neige tomb&eacute;e d&eacute;pend de la dur&eacute;e du sort et de l&rsquo;unit&eacute; de temps du sort :</p>\n<p>&nbsp;</p>\n<table border=\"1\">\n<tbody>\n<tr>\n<td>Unit&eacute; de temps</td>\n<td>Neige en cms</td>\n</tr>\n<tr>\n<td>Par Action</td>\n<td>INS cms</td>\n</tr>\n<tr>\n<td>Par Tour</td>\n<td>INS x 5cms</td>\n</tr>\n<tr>\n<td>Par Minute</td>\n<td>INS x 20cms</td>\n</tr>\n<tr>\n<td>Par Heure</td>\n<td>INS x 40cms</td>\n</tr>\n<tr>\n<td>Par journ&eacute;e</td>\n<td>INS x 60cms</td>\n</tr>\n</tbody>\n</table>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{}}
{"name":"Créer / Calmer un tremblement de terre","type":"sortsejdr","img":"icons/svg/item-bag.svg","data":{"forme":"Maîtrise des éléments","preparation":"2 heures","niveau":5,"malus":-15,"duree":"Voir tableau","zone":"INS x 200m2 au sol","description":"<p>Effet : Ce sort cr&eacute;e un terrible et d&eacute;vastateur tremblement de terre qui affecte toute la zone d&eacute;termin&eacute;e par le mage. Le tableau ci-dessous aidera &agrave; g&eacute;rer, en termes de jeu, les effets d&eacute;vastateurs d&rsquo;un tel sort. Pour les personnes, il indique les d&eacute;g&acirc;tss que prend une victime prise dans la zone de turbulences. Les dommages sont calcul&eacute;s en Tours, et repr&eacute;sentent aussi bien les chocs violents contre les d&eacute;bris et les chutes de la personne. On ne tient pas compte des &eacute;ventuelles protections. Pour les Structures, ce tableau d&eacute;crit leur &eacute;tat une fois le tremblement de terre termin&eacute;.</p>\n<p>Les d&eacute;g&acirc;ts occasionn&eacute;s par un tremblement de terre d&eacute;pendent beaucoup de la zone dans lequel il se situe.</p>\n<p>&nbsp;</p>\n<table border=\"1\">\n<tbody>\n<tr>\n<td>&nbsp;</td>\n<td>Personne</td>\n<td>Bois</td>\n<td>Pierre</td>\n</tr>\n<tr>\n<td>Plaine d&eacute;sertique</td>\n<td>1D2</td>\n<td>A*</td>\n<td>I</td>\n</tr>\n<tr>\n<td>Plaine densit&eacute; faible</td>\n<td>1D5</td>\n<td>A*</td>\n<td>I</td>\n</tr>\n<tr>\n<td>Plaine densit&eacute; moyenne</td>\n<td>1D10</td>\n<td>A*</td>\n<td>I</td>\n</tr>\n<tr>\n<td>Plaine densit&eacute; forte</td>\n<td>2d10</td>\n<td>A*</td>\n<td>A*</td>\n</tr>\n<tr>\n<td>Colline d&eacute;sertique</td>\n<td>1D5</td>\n<td>A*</td>\n<td>I</td>\n</tr>\n<tr>\n<td>Colline densit&eacute; faible</td>\n<td>1D10</td>\n<td>A*</td>\n<td>I</td>\n</tr>\n<tr>\n<td>Colline densit&eacute; moyenne</td>\n<td>2D10</td>\n<td>D</td>\n<td>A*</td>\n</tr>\n<tr>\n<td>Colline densit&eacute; forte</td>\n<td>3D10</td>\n<td>D</td>\n<td>A*</td>\n</tr>\n<tr>\n<td>Montagne d&eacute;sertique</td>\n<td>1D10</td>\n<td>D</td>\n<td>I</td>\n</tr>\n<tr>\n<td>Montagne densit&eacute; faible</td>\n<td>2D10</td>\n<td>D</td>\n<td>A*</td>\n</tr>\n<tr>\n<td>Montagne densit&eacute; moyenne</td>\n<td>3D10</td>\n<td>D</td>\n<td>A*</td>\n</tr>\n<tr>\n<td>Montagne densit&eacute; forte</td>\n<td>4D10</td>\n<td>D</td>\n<td>D</td>\n</tr>\n</tbody>\n</table>\n<p>I= Indemne - A = Abim&eacute;e - D = D&eacute;truite</p>\n<p>* Par abim&eacute;e, on entend une structure qui a perdu ses portes, ses fen&ecirc;tres et peut-&ecirc;tre m&ecirc;me une paroi.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{},"_id":"tsuOVAHU0W0R6acd"}

View File

@ -1,4 +1,4 @@
{"name":"Amélioration de la Défense Physique dautrui / Abaissement de la défense Physique","type":"sortsejdr","img":"icons/svg/item-bag.svg","data":{"forme":"Transmission des forces","preparation":"2 Tours","niveau":2,"malus":-6,"duree":"voir Tableau","zone":"Une personne","description":"<p>Effet : Le mage augmente la DP d&rsquo;une valeur &eacute;gale &agrave; son INS. La dur&eacute;e d&eacute;pend de sa marge de r&eacute;ussite (voir Tableau). Ce bonus &agrave; la DP s&rsquo;additionne avec n&rsquo;importe quel autre Bonus (magique, Bouclier,...).</p>\n<p>Effet inverse : Si le mage r&eacute;ussit son Test, il baissera la DP d&rsquo;une cible de son choix, d&rsquo;une valeur &eacute;gale &agrave; son INS.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{},"_id":"6juBCfGgXhXiO4yq"}
{"_id":"6juBCfGgXhXiO4yq","name":"Amélioration / Abaissement de la Défense Physique dautrui / Abaissement de la défense Physique d'autrui","type":"sortsejdr","img":"icons/svg/item-bag.svg","data":{"forme":"Transmission des forces","preparation":"2 Tours","niveau":2,"malus":-6,"duree":"voir Tableau","zone":"Une personne","description":"<p>Effet : Le mage augmente la DP d&rsquo;une valeur &eacute;gale &agrave; son INS. La dur&eacute;e d&eacute;pend de sa marge de r&eacute;ussite (voir Tableau). Ce bonus &agrave; la DP s&rsquo;additionne avec n&rsquo;importe quel autre Bonus (magique, Bouclier,...).</p>\n<p>Effet inverse : Si le mage r&eacute;ussit son Test, il baissera la DP d&rsquo;une cible de son choix, d&rsquo;une valeur &eacute;gale &agrave; son INS.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{}}
{"name":"Renforcement de protections / Abaissement de protections","type":"sortsejdr","img":"icons/svg/item-bag.svg","data":{"forme":"Transmission des forces","preparation":"2 Actions","niveau":1,"malus":-3,"duree":"voir Tableau","zone":"Une protection sauf bouclier","description":"<p>Effet : Le mage augmente la valeur de protection d&rsquo;une armure, d&rsquo;un casque ou de n&rsquo;importe quelle Protection sauf d&rsquo;un bouclier. Cet augmentation est &eacute;gale &agrave; la valeur du Mage en INS.</p>\n<p>Effet inverse : Le mage s&rsquo;il r&eacute;ussit son Test en tenant compte de la DM de son adversaire, baisse la valeur de protection d&rsquo;une armure, d&rsquo;un casque,... de son choix. Cette baisse est &eacute;gale &agrave; la valeur du Mage en INS.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{},"_id":"F47UUVM4ddF8HqSS"}
{"name":"Augmentation de la Réserve de dés dautrui","type":"sortsejdr","img":"icons/svg/item-bag.svg","data":{"forme":"Transmission des forces","preparation":"3 Tours","niveau":4,"malus":-12,"duree":"voir Tableau","zone":"Une personne","description":"<p>Effet : Le mage permet &agrave; une personne de son choix de d&eacute;passer son maximum de R&eacute;serve de d&eacute;s. Il rajoute &agrave; cette r&eacute;serve un nombre de d&eacute;s &eacute;quivalent &agrave; l&rsquo;INS du mage. Pour b&eacute;n&eacute;ficier de ce sort la personne doit poss&eacute;der toute sa r&eacute;serve de d&eacute;s au moment ou le mage lance ce sort. &Agrave; aucun moment, ce sort ne permet de sortir d&rsquo;un Epuisement et de r&eacute;g&eacute;n&eacute;rer sa r&eacute;serve de d&eacute;s.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{},"_id":"SgFbyMICyAEy4KHN"}
{"name":"Augmentation de la santé","type":"sortsejdr","img":"icons/svg/item-bag.svg","data":{"forme":"Transmission des forces","preparation":"2 Tours","niveau":2,"malus":-6,"duree":"voir Tableau","zone":"Lui-même","description":"<p>Effet : Le mage peut d&eacute;passer ses limites en Points de Vie. Il lance un nombre de D10 &eacute;quivalent &agrave; son INS, l&rsquo;addition de ces D10 donne la valeur que le mage peut se rajouter en Points de vie (on ne rejette pas les 10). La dur&eacute;e d&eacute;pend de sa marge de r&eacute;ussite (voir Tableau). &Agrave; aucun moment ce sort ne permet de gu&eacute;rir le mage et il doit &ecirc;tre en bonne sant&eacute; (maximum en PV) pour b&eacute;n&eacute;ficier de ce sort. Par contre, les Points de vie suppl&eacute;mentaires sont consid&eacute;r&eacute;s comme un bonus et ne viennent pas modifier l&rsquo;Echelle de vie.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"rbua2TFRS5ZZzTJp":3},"flags":{},"_id":"UMJBINUD7ABjNgKa"}

View File

@ -548,6 +548,10 @@ section.sheet-body:after {
text-align: center;
}
#combat #combat-round .encounters a {
color: #3f1f1f;
}
/* ======================================== */
/* Global UI elements */
@ -871,11 +875,6 @@ ul, li {
color: rgba(220,220,220,0.75);
}
#sidebar.collapsed {
height: 430px !important;
position: absolute;
}
#sidebar-tabs > .collapsed, #chat-controls .chat-control-icon {
color: rgba(220,220,220,0.75);
text-shadow: 1px 1px 0 rgba(0,0,0,0.75);
@ -949,8 +948,8 @@ ul, li {
}
#sidebar #sidebar-tabs i{
width: 25px;
height: 25px;
width: 23px;
height: 23px;
display: inline-block;
background-position:center;
background-size:cover;

View File

@ -1,155 +1,226 @@
{
"name": "fvtt-yggdrasill",
"title": "Yggdrasill",
"description": "Système Yggdrasill pour FoundryVTT",
"version": "1.1.0",
"manifestPlusVersion": "1.0.0",
"minimumCoreVersion": "0.8.0",
"compatibleCoreVersion": "9",
"templateVersion": 37,
"author": "Uberwald",
"esmodules": [ "modules/yggdrasill-main.js" ],
"styles": ["styles/simple.css"],
"background" : "images/ui/yggdrasill_map.webp",
"media": [
"description": "Système non-officiel Yggdrasill (7ième Cercle) pour FoundryVTT",
"version": "10.0.3",
"esmodules": [
"modules/yggdrasill-main.js"
],
"styles": [
"styles/simple.css"
],
"background": "systems/fvtt-yggdrasill/images/ui/yggdrasill_map.webp",
"packs": [
{
"label": "Compétences Générales",
"entity": "Item",
"type": "Item",
"system": "fvtt-yggdrasill",
"name": "competences-generales",
"path": "packs/competences-generales.db"
"path": "packs/competences-generales.db",
"private": false,
"flags": {}
},
{
"label": "Compétences Martiales",
"entity": "Item",
"type": "Item",
"system": "fvtt-yggdrasill",
"name": "competences-martiales",
"path": "packs/competences-martiales.db"
"path": "packs/competences-martiales.db",
"private": false,
"flags": {}
},
{
"label": "Compétences Magiques",
"entity": "Item",
"type": "Item",
"system": "fvtt-yggdrasill",
"name": "competences-magiques",
"path": "packs/competences-magiques.db"
"path": "packs/competences-magiques.db",
"private": false,
"flags": {}
},
{
"label": "Prouesses Martiales",
"entity": "Item",
"type": "Item",
"system": "fvtt-yggdrasill",
"name": "prouesses-martiales",
"path": "packs/prouesses-martiales.db"
"path": "packs/prouesses-martiales.db",
"private": false,
"flags": {}
},
{
"label": "Dons",
"entity": "Item",
"type": "Item",
"system": "fvtt-yggdrasill",
"name": "dons",
"path": "packs/dons.db"
"path": "packs/dons.db",
"private": false,
"flags": {}
},
{
"label": "Faiblesses",
"entity": "Item",
"type": "Item",
"system": "fvtt-yggdrasill",
"name": "faiblesses",
"path": "packs/faiblesses.db"
"path": "packs/faiblesses.db",
"private": false,
"flags": {}
},
{
"label": "Blessures",
"entity": "Item",
"type": "Item",
"system": "fvtt-yggdrasill",
"name": "blessures",
"path": "packs/blessures.db"
"path": "packs/blessures.db",
"private": false,
"flags": {}
},
{
"label": "Armes",
"entity": "Item",
"type": "Item",
"system": "fvtt-yggdrasill",
"name": "armes",
"path": "packs/armes.db"
"path": "packs/armes.db",
"private": false,
"flags": {}
},
{
"label": "Armures",
"entity": "Item",
"type": "Item",
"system": "fvtt-yggdrasill",
"name": "armures",
"path": "packs/armures.db"
"path": "packs/armures.db",
"private": false,
"flags": {}
},
{
"label": "Runes",
"entity": "Item",
"type": "Item",
"system": "fvtt-yggdrasill",
"name": "runes",
"path": "packs/runes.db"
"path": "packs/runes.db",
"private": false,
"flags": {}
},
{
"label": "Sejdr - Transmission des Forces",
"entity": "Item",
"type": "Item",
"system": "fvtt-yggdrasill",
"name": "sejdr-transmission-des-forces",
"path": "packs/sejdr-transmission-des-forces.db"
"path": "packs/sejdr-transmission-des-forces.db",
"private": false,
"flags": {}
},
{
"label": "Sejdr - Malédictions",
"entity": "Item",
"type": "Item",
"system": "fvtt-yggdrasill",
"name": "sejdr-maledictions",
"path": "packs/sejdr-maledictions.db"
"path": "packs/sejdr-maledictions.db",
"private": false,
"flags": {}
},
{
"label": "Sejdr - Maîtrise des Elements",
"entity": "Item",
"type": "Item",
"system": "fvtt-yggdrasill",
"name": "sejdr-maitrise-des-elements",
"path": "packs/sejdr-maitrise-des-elements.db"
"path": "packs/sejdr-maitrise-des-elements.db",
"private": false,
"flags": {}
},
{
"label": "Sejdr - Guérison",
"entity": "Item",
"type": "Item",
"system": "fvtt-yggdrasill",
"name": "sejdr-guerison",
"path": "packs/sejdr-guerison.db"
"path": "packs/sejdr-guerison.db",
"private": false,
"flags": {}
},
{
"label": "Sejdr - Divination",
"entity": "Item",
"type": "Item",
"system": "fvtt-yggdrasill",
"name": "sejdr-divination",
"path": "packs/sejdr-divination.db"
"path": "packs/sejdr-divination.db",
"private": false,
"flags": {}
},
{
"label": "Poisons",
"entity": "Item",
"type": "Item",
"system": "fvtt-yggdrasill",
"name": "poisons",
"path": "packs/poisons.db"
"path": "packs/poisons.db",
"private": false,
"flags": {}
},
{
"label": "Galdr - Malédictions",
"entity": "Item",
"type": "Item",
"system": "fvtt-yggdrasill",
"name": "galdr-maledictions",
"path": "packs/galdr-maledictions.db"
"path": "packs/galdr-maledictions.db",
"private": false,
"flags": {}
},
{
"label": "Galdr - Illusions",
"entity": "Item",
"type": "Item",
"system": "fvtt-yggdrasill",
"name": "galdr-illusions",
"path": "packs/galdr-illusions.db"
"path": "packs/galdr-illusions.db",
"private": false,
"flags": {}
},
{
"label": "Galdr - Charme",
"entity": "Item",
"type": "Item",
"system": "fvtt-yggdrasill",
"name": "galdr-charme",
"path": "packs/galdr-charme.db"
"path": "packs/galdr-charme.db",
"private": false,
"flags": {}
},
{
"label": "Equipement",
"entity": "Item",
"type": "Item",
"system": "fvtt-yggdrasill",
"name": "equipement",
"path": "packs/equipement.db"
}
],
"library": false,
"languages": [
{
"lang": "fr",
"name": "French",
"path": "lang/fr.json"
"path": "packs/equipement.db",
"private": false,
"flags": {}
}
],
"gridDistance": 5,
"gridUnits": "m",
"primaryTokenAttribute": "",
"secondaryTokenAttribute": "",
"socket": true,
"url": "https://www.uberwald.me/data/files/yggdrasill",
"manifest": "https://www.uberwald.me/data/files/yggdrasill/system.json",
"download": "https://www.uberwald.me/data/files/yggdrasill/fvtt-yggdrasill.zip",
"license": "LICENSE.txt"
}
"url": "https://www.uberwald.me/gitea/public/fvtt-yggdrasill/",
"manifest": "https://www.uberwald.me/gitea/public/fvtt-yggdrasill/raw/branch/v10/system.json",
"download": "https://www.uberwald.me/gitea/public/fvtt-yggdrasill/archive/fvtt-yggdrasill-10.0.3.zip",
"license": "LICENSE.txt",
"id": "fvtt-yggdrasill",
"authors": [
{
"name": "Uberwald",
"flags": {}
}
],
"relationships": {
"requires": [
{
"id": "compendium-folders",
"type": "module",
"compatibility": {}
},
{
"id": "lib-wrapper",
"type": "module",
"compatibility": {}
}
]
},
"compatibility": {
"minimum": "10",
"verified": "10.286"
}
}

View File

@ -128,7 +128,6 @@
"defensephy": {
"value": 0,
"bonusmalus": 0,
"bouclierequipe": false,
"max": 0,
"label": "Défense Physique",
"abbrev": "dp"
@ -246,7 +245,7 @@
}
},
"Item": {
"types": ["competence", "don", "faiblesse", "blessure", "maladie", "poison", "sort", "prouesse", "armecc", "sortsejdr", "sortgaldr", "rune", "armedist", "armure", "equipement", "effetmagique", "monnaie" ],
"types": ["competence", "don", "faiblesse", "blessure", "maladie", "poison", "sort", "prouesse", "armecc", "sortsejdr", "sortgaldr", "rune", "armedist", "armure", "bouclier", "equipement", "effetmagique", "monnaie" ],
"effetmagique": {
"origine": "",
"effet": ""
@ -330,6 +329,16 @@
"enc": 0,
"valeur": 0,
"description": ""
},
"bouclier": {
"categorie": "",
"equipe": false,
"defensebonus": 0,
"enc": 0,
"enccomb": 0,
"solidite": 0,
"valeur": 0,
"description": ""
},
"equipement": {
"equipe": false,

View File

@ -43,14 +43,8 @@
<li class="item flexrow list-item" data-carac-categ="{{keycateg}}" data-carac-key="{{keycarac}}">
<img class="sheet-competence-img" src="systems/fvtt-yggdrasill/images/icons/icon_carac_{{keycateg}}.png"/>
<span class="stat-label flexrow tooltip tooltip-nobottom" name="{{key}}"><a class="carac-roll">{{mycarac.label}}</a></span>
<select class="carac-base flexrow" type="text" name="data.carac.{{keycateg}}.carac.{{keycarac}}.value" value="{{mycarac.value}}" data-dtype="Number" {{#unless @root.editScore}}disabled{{/unless}}>
{{#select mycarac.value}}
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
{{/select}}
<select class="carac-base flexrow" type="text" name="system.carac.{{keycateg}}.carac.{{keycarac}}.value" value="{{mycarac.value}}" data-dtype="Number" {{#unless @root.editScore}}disabled{{/unless}}>
{{selectOptions @root.optionsCarac selected=mycarac.value localize=false}}
</select>
</li>
</ul>
@ -62,10 +56,10 @@
<span class="generic-label"><h3>Furor</h3>
<ul>
<li class="">
<input type="text" id="input-furor" name="data.furor.value" value="{{data.furor.value}}" data-dtype="Number"/>
<input type="text" id="input-furor" name="system.furor.value" value="{{data.furor.value}}" data-dtype="Number"/>
{{#if isGM}}
<span class="pv-label flexrow tooltip tooltip-nobottom">/
<input type="text" id="max-furor" name="data.furor.max" value="{{data.furor.max}}" data-dtype="Number"/>
<input type="text" id="max-furor" name="system.furor.max" value="{{data.furor.max}}" data-dtype="Number"/>
</span>
{{else}}
<span class="pv-label flexrow tooltip tooltip-nobottom"> / {{data.furor.max}}</span>
@ -154,7 +148,7 @@
<li class="item flexrow list-item"><span class="stat-label flexrow tooltip tooltip-nobottom" name="{{key}}-max">Base : {{caracsec.max}}</span></li>
<li class="item flexrow list-item">
<span class="stat-label flexrow tooltip tooltip-nobottom" name="{{key}}-max">B/M</span>
<select class="carac-base flexrow" type="text" name="data.caracsecondaire.{{key}}.bonusmalus" value="{{caracsec.bonusmalus}}" data-dtype="Number" {{#unless @root.editScore}}disabled{{/unless}}>
<select class="carac-base flexrow" type="text" name="system.caracsecondaire.{{key}}.bonusmalus" value="{{caracsec.bonusmalus}}" data-dtype="Number" {{#unless @root.editScore}}disabled{{/unless}}>
{{#select caracsec.bonusmalus}}
{{#each @root.optionsDMDP as |option key| }}
<option value="{{option.value}}">{{option.text}}</option>
@ -162,10 +156,6 @@
{{/select}}
</select>
</li>
<li class="item flexrow list-item">
<span>Bouclier ?</span>
<span class="attribute-value checkbox"><input type="checkbox" name="data.caracsecondaire.{{key}}.bouclierequipe" {{checked caracsec.bouclierequipe}}/></span>
</li>
<li class="item flexrow list-item">
<span class="stat-label flexrow tooltip tooltip-nobottom" name="{{key}}-total">Total : {{caracsec.total}}</span>
</li>
@ -176,7 +166,7 @@
<li class="item flexrow list-item"><span class="stat-label flexrow tooltip tooltip-nobottom" name="{{key}}-max">Base : {{caracsec.max}}</span></li>
<li class="item flexrow list-item">
<span class="stat-label flexrow tooltip tooltip-nobottom" name="{{key}}-max">B/M</span>
<select class="carac-base flexrow" type="text" name="data.caracsecondaire.{{key}}.bonusmalus" value="{{caracsec.bonusmalus}}" data-dtype="Number" {{#unless @root.editScore}}disabled{{/unless}}>
<select class="carac-base flexrow" type="text" name="system.caracsecondaire.{{key}}.bonusmalus" value="{{caracsec.bonusmalus}}" data-dtype="Number" {{#unless @root.editScore}}disabled{{/unless}}>
{{#select caracsec.bonusmalus}}
{{#each @root.optionsDMDP as |option key| }}
<option value="{{option.value}}">{{option.text}}</option>
@ -198,20 +188,20 @@
<span class="generic-label"><h3>Points de Vie</h3>
<ul>
<li class="">
<input class="input-pv" type="text" id="input-pv" name="data.caracsecondaire.pv.value" value="{{data.caracsecondaire.pv.value}}" data-dtype="Number"/>
<input class="input-pv" type="text" id="input-pv" name="system.caracsecondaire.pv.value" value="{{data.caracsecondaire.pv.value}}" data-dtype="Number"/>
<span class="pv-label flexrow tooltip tooltip-nobottom" name="{{key}}-total"> / {{data.caracsecondaire.pv.max}}</span>
</li>
</ul>
</span>
<span class="generic-label"><h4>Epuisé :
<input type="checkbox" id="isEpuise" name="data.status.epuise" {{checked data.status.epuise}}/></h3>
<input type="checkbox" id="isEpuise" name="system.status.epuise" {{checked data.status.epuise}}/></h3>
</span>
<span class="generic-label"><h4>Blessé :
<input type="checkbox" id="isBlesse" name="data.status.blesse" {{checked data.status.blesse}}/></h3>
<input type="checkbox" id="isBlesse" name="system.status.blesse" {{checked data.status.blesse}}/></h3>
</span>
<span class="generic-label"><h4>Meurtri :
<input type="checkbox" id="isMeurtri" name="data.status.meurtri" {{checked data.status.meurtri}}/></h3>
<input type="checkbox" id="isMeurtri" name="system.status.meurtri" {{checked data.status.meurtri}}/></h3>
</span>
</div>
</div>
@ -239,12 +229,12 @@
<img class="sheet-competence-img" src="{{competence.img}}"/>
<span class="competence-label"><a>{{competence.name}}</a></span>
<div>
{{#if competence.data.data.isspecialisation}}
<span class="specialisation-label">({{competence.data.data.specialisation}})</span>
{{#if competence.system.isspecialisation}}
<span class="specialisation-label">({{competence.system.specialisation}})</span>
{{/if}}
</div>
<select class="competence-base flexrow" type="text" skillname="{{competence.name}}" value="{{competence.data.data.niveau}}" data-dtype="Number" {{#unless @root.editScore}}disabled{{/unless}}>
{{selectOptions @root.optionsBase selected=competence.data.data.niveau localize=false}}
<select class="competence-base flexrow" type="text" skillname="{{competence.name}}" value="{{competence.system.niveau}}" data-dtype="Number" {{#unless @root.editScore}}disabled{{/unless}}>
{{selectOptions @root.optionsBase selected=competence.system.niveau localize=false}}
</select>
<div class="item-controls">
<a class="item-control item-edit" title="Edit Item"><i class="fas fa-edit"></i></a>
@ -267,8 +257,8 @@
<li class="item flexrow list-item" data-item-id="{{competence.id}}">
<img class="sheet-competence-img" src="{{competence.img}}"/>
<span class="competence-label"><a>{{competence.name}}</a></span>
<select class="competence-base flexrow" type="text" skillname="{{competence.name}}" value="{{competence.data.data.niveau}}" data-dtype="Number" {{#unless @root.editScore}}disabled{{/unless}}>
{{selectOptions @root.optionsBase selected=competence.data.data.niveau localize=false}}
<select class="competence-base flexrow" type="text" skillname="{{competence.name}}" value="{{competence.system.niveau}}" data-dtype="Number" {{#unless @root.editScore}}disabled{{/unless}}>
{{selectOptions @root.optionsBase selected=competence.system.niveau localize=false}}
</select>
<div class="item-controls">
<a class="item-control item-edit" title="Edit Item"><i class="fas fa-edit"></i></a>
@ -288,8 +278,8 @@
<li class="item flexrow list-item" data-item-id="{{competence.id}}">
<img class="sheet-competence-img" src="{{competence.img}}"/>
<span class="competence-label"><a>{{competence.name}}</a></span>
<select class="competence-base flexrow" type="text" skillname="{{competence.name}}" value="{{competence.data.data.niveau}}" data-dtype="Number" {{#unless @root.editScore}}disabled{{/unless}}>
{{selectOptions @root.optionsBase selected=competence.data.data.niveau localize=false}}
<select class="competence-base flexrow" type="text" skillname="{{competence.name}}" value="{{competence.system.niveau}}" data-dtype="Number" {{#unless @root.editScore}}disabled{{/unless}}>
{{selectOptions @root.optionsBase selected=competence.system.niveau localize=false}}
</select>
<div class="item-controls">
<a class="item-control item-edit" title="Edit Item"><i class="fas fa-edit"></i></a>
@ -321,10 +311,10 @@
<li class="item stat flexrow list-item" data-arme-id="{{arme.id}}" data-item-id="{{arme.id}}">
<img class="sheet-competence-img" src="{{arme.img}}"/>
<span class="stat-label arme-label flexrow tooltip tooltip-nobottom"><a name="{{arme.name}}">{{arme.name}}</a></span>
<span class="stat-label combat-label">&nbsp;{{arme.data.data.categorie}}</span>
<span class="stat-label combat-label">&nbsp;{{arme.data.data.degat}}</span>
<span class="stat-label combat-label">&nbsp;{{arme.system.categorie}}</span>
<span class="stat-label combat-label">&nbsp;{{arme.system.degat}}</span>
<div class="item-controls">
<a class="item-control item-equip" title="Worn">{{#if arme.data.data.equipe}}<i class="fas fa-circle"></i>{{else}}<i class="fas fa-genderless"></i>{{/if}}</a>
<a class="item-control item-equip" title="Worn">{{#if arme.system.equipe}}<i class="fas fa-circle"></i>{{else}}<i class="fas fa-genderless"></i>{{/if}}</a>
<a class="item-control item-edit" title="Edit Item"><i class="fas fa-edit"></i></a>
<a class="item-control item-delete" title="Delete Item"><i class="fas fa-trash"></i></a>
</div>
@ -345,8 +335,8 @@
<li class="item stat flexrow list-item" data-item-id="{{prouesse.id}}">
<img class="sheet-competence-img" src="{{prouesse.img}}"/>
<span class="stat-label combat-label flexrow tooltip tooltip-nobottom">{{prouesse.name}}</a></span>
<span class="stat-label combat-label">{{prouesse.data.data.categorie}}</span>
<span class="stat-label combat-label">{{prouesse.data.data.niveau}}</span>
<span class="stat-label combat-label">{{prouesse.system.categorie}}</span>
<span class="stat-label combat-label">{{prouesse.system.niveau}}</span>
<div class="item-controls">
<a class="item-control item-edit" title="Edit Item"><i class="fas fa-edit"></i></a>
<a class="item-control item-delete" title="Delete Item"><i class="fas fa-trash"></i></a>
@ -368,16 +358,41 @@
<li class="item stat flexrow list-item" data-armure-id="{{armure.id}}" data-item-id="{{armure.id}}">
<img class="sheet-competence-img" src="{{armure.img}}"/>
<span class="stat-label combat-label flexrow tooltip tooltip-nobottom"><a name="{{armure.name}}">{{armure.name}}</a></span>
<span class="stat-label combat-label">&nbsp;{{armure.data.data.categorie}}</span>
<span class="stat-label combat-label">&nbsp;{{armure.data.data.protection}}</span>
<span class="stat-label combat-label">&nbsp;{{armure.system.categorie}}</span>
<span class="stat-label combat-label">&nbsp;{{armure.system.protection}}</span>
<div class="item-controls">
<a class="item-control item-equip" title="Worn">{{#if armure.data.data.equipe}}<i class="fas fa-circle"></i>{{else}}<i class="fas fa-genderless"></i>{{/if}}</a>
<a class="item-control item-equip" title="Worn">{{#if armure.system.equipe}}<i class="fas fa-circle"></i>{{else}}<i class="fas fa-genderless"></i>{{/if}}</a>
<a class="item-control item-edit" title="Edit Item"><i class="fas fa-edit"></i></a>
<a class="item-control item-delete" title="Delete Item"><i class="fas fa-trash"></i></a>
</div>
</li>
{{/each}}
</ul>
<div><h4>Bouclier (Bonus de défense physique : {{dpBouclier}}) </h4></div>
<ul class="item-list alternate-list">
<li class="stat flexrow" >
<span class="stat-label flexrow">Nom</span>
<span class="stat-label flexrow">Catégorie</span>
<span class="stat-label flexrow">Bonus DP</span>
<div class="item-controls">
</div>
</li>
{{#each bouclier as |bouclier key|}}
<li class="item stat flexrow list-item" data-armure-id="{{bouclier.id}}" data-item-id="{{bouclier.id}}">
<img class="sheet-competence-img" src="{{bouclier.img}}"/>
<span class="stat-label combat-label flexrow tooltip tooltip-nobottom"><a name="{{bouclier.name}}">{{bouclier.name}}</a></span>
<span class="stat-label combat-label">&nbsp;{{bouclier.system.categorie}}</span>
<span class="stat-label combat-label">&nbsp;{{bouclier.system.defensebonus}}</span>
<div class="item-controls">
<a class="item-control item-equip" title="Worn">{{#if bouclier.system.equipe}}<i class="fas fa-circle"></i>{{else}}<i class="fas fa-genderless"></i>{{/if}}</a>
<a class="item-control item-edit" title="Edit Item"><i class="fas fa-edit"></i></a>
<a class="item-control item-delete" title="Delete Item"><i class="fas fa-trash"></i></a>
</div>
</li>
{{/each}}
</ul>
</div>
</div>
@ -391,8 +406,8 @@
<li class="item flexrow list-item" data-item-id="{{sort.id}}">
<img class="sheet-competence-img" src="{{sort.img}}"/>
<span class="sort-label"><a class="sort-sejdr">{{sort.name}}</a></span>
<span class="sort-difficulty">{{sort.data.data.forme}}</span>
<span class="sort-difficulty">{{sort.data.data.niveau}}</span>
<span class="sort-difficulty">{{sort.system.forme}}</span>
<span class="sort-difficulty">{{sort.system.niveau}}</span>
<div class="item-controls">
<a class="item-control item-edit" title="Edit Item"><i class="fas fa-edit"></i></a>
<a class="item-control item-delete" title="Delete Item"><i class="fas fa-trash"></i></a>
@ -409,8 +424,8 @@
<li class="item flexrow list-item" data-item-id="{{sort.id}}">
<img class="sheet-competence-img" src="{{sort.img}}"/>
<span class="sort-label"><a class="sort-galdr">{{sort.name}}</a></span>
<span class="sort-difficulty">{{sort.data.data.domaine}}</span>
<span class="sort-difficulty">{{sort.data.data.duree}}</span>
<span class="sort-difficulty">{{sort.system.domaine}}</span>
<span class="sort-difficulty">{{sort.system.duree}}</span>
<div class="item-controls">
<a class="item-control item-edit" title="Edit Item"><i class="fas fa-edit"></i></a>
<a class="item-control item-delete" title="Delete Item"><i class="fas fa-trash"></i></a>
@ -427,9 +442,9 @@
<li class="item flexrow list-item" data-item-id="{{sort.id}}">
<img class="sheet-competence-img" src="{{sort.img}}"/>
<span class="sort-label"><a class="sort-rune">{{sort.name}}</a></span>
<span class="sort-difficulty">{{sort.data.data.cible}}</span>
<span class="sort-difficulty">{{sort.data.data.niveau}}</span>
<span class="sort-difficulty">{{sort.data.data.domaine}}</span>
<span class="sort-difficulty">{{sort.system.cible}}</span>
<span class="sort-difficulty">{{sort.system.niveau}}</span>
<span class="sort-difficulty">{{sort.system.domaine}}</span>
<div class="item-controls">
<a class="item-control item-edit" title="Edit Item"><i class="fas fa-edit"></i></a>
<a class="item-control item-delete" title="Delete Item"><i class="fas fa-trash"></i></a>
@ -449,7 +464,7 @@
<li class="item flexrow list-item" data-item-id="{{monnaie.id}}">
<img class="sheet-competence-img" src="{{monnaie.img}}"/>
<span class="generic-label">{{monnaie.name}}</span>
<span class="generic-label">{{monnaie.data.data.quantite}}
<span class="generic-label">{{monnaie.system.quantite}}
(<a class="equipement-moins plus-moins-button"> -</a>/<a class="equipement-plus plus-moins-button">+</a>)
</span>
</span>
@ -477,13 +492,13 @@
<li class="item flexrow list-item" data-item-id="{{equipement.id}}">
<img class="sheet-competence-img" src="{{equipement.img}}"/>
<span class="equipement-label">{{equipement.name}}</span>
<span class="equipement-label">{{equipement.data.data.quantite}}</span>
<span class="equipement-label">{{equipement.data.data.enc}}</span>
<span class="equipement-label">{{equipement.system.quantite}}</span>
<span class="equipement-label">{{equipement.system.enc}}</span>
<span class="equipement-label">
(<a class="equipement-moins plus-moins-button">-</a>/<a class="equipement-plus plus-moins-button">+</a>)
</span>
<div class="item-controls">
<a class="item-control item-equip" title="Worn">{{#if equipement.data.data.equipe}}<i class="fas fa-circle"></i>{{else}}<i class="fas fa-genderless"></i>{{/if}}</a>
<a class="item-control item-equip" title="Worn">{{#if equipement.system.equipe}}<i class="fas fa-circle"></i>{{else}}<i class="fas fa-genderless"></i>{{/if}}</a>
<a class="item-control item-edit" title="Edit Item"><i class="fas fa-edit"></i></a>
<a class="item-control item-delete" title="Delete Item"><i class="fas fa-trash"></i></a>
</div>
@ -499,25 +514,43 @@
<h3>Expérience et Renommée : </h3>
<div class="form-group editor">
<span class="equipement-label">XP : </span>
<input type="text" name="data.xp.xp.current" value="{{data.xp.xp.current}}" data-dtype="Number"/>
<input type="text" name="data.xp.xp.total" value="{{data.xp.xp.total}}" data-dtype="Number"/>
<input type="text" name="system.xp.xp.current" value="{{data.xp.xp.current}}" data-dtype="Number"/>
<input type="text" name="system.xp.xp.total" value="{{data.xp.xp.total}}" data-dtype="Number"/>
<span class="equipement-label">Renommée : </span>
<input type="text" name="data.xp.renommee.value" value="{{data.xp.renommee.value}}" data-dtype="Number"/>
<input type="text" name="system.xp.renommee.value" value="{{data.xp.renommee.value}}" data-dtype="Number"/>
</div>
<hr>
<h3>Biodatas : </h3>
<div class="form-group editor">
<span class="equipement-label">Poids : </span>
<input type="text" name="system.biodata.poids" value="{{data.biodata.poids}}" data-dtype="String"/>
<span class="equipement-label">Taille : </span>
<input type="text" name="system.biodata.taille" value="{{data.biodata.taille}}" data-dtype="String"/>
<span class="equipement-label">Age : </span>
<input type="text" name="system.biodata.age" value="{{data.biodata.age}}" data-dtype="String"/>
</div>
<div class="form-group editor">
<span class="equipement-label">Archetype : </span>
<input type="text" name="system.biodata.archetype" value="{{data.biodata.archetype}}" data-dtype="String"/>
<span class="equipement-label">Profession : </span>
<input type="text" name="system.biodata.profession" value="{{data.biodata.profession}}" data-dtype="String"/>
<span class="equipement-label">Royaume : </span>
<input type="text" name="system.biodata.royaume" value="{{data.biodata.royaume}}" data-dtype="String"/>
</div>
<hr>
<h3>Biographie : </h3>
<div class="form-group editor">
{{editor content=data.description target="data.description" button=true owner=owner editable=editable}}
{{editor description target="system.description" button=true owner=owner editable=editable}}
</div>
<hr>
<h3>Notes : </h3>
<div class="form-group editor">
{{editor content=data.notes target="data.notes" button=true owner=owner editable=editable}}
{{editor notes target="system.notes" button=true owner=owner editable=editable}}
</div>
<hr>
<h3>Tirage des Runes: </h3>
<div class="form-group editor">
{{editor content=data.tiragerunes target="data.tiragerunes" button=true owner=owner editable=editable}}
{{editor tiragerunes target="system.tiragerunes" button=true owner=owner editable=editable}}
</div>
<hr>
{{>"systems/fvtt-yggdrasill/templates/editor-notes-gm.html"}}

View File

@ -4,102 +4,133 @@
</div>
<hr>
<div>
<img class="chat-icon" src="{{img}}" alt="{{alias}}" />
<h3>
{{#if (eq mode "attribut")}}
Jet de {{attr.label}} {{subAttr.label}} (2d10+{{subAttr.value}})
{{else}}
{{#if (eq mode "competence")}}
Jet de {{selectedCarac.label}} ({{selectedCarac.value}}d10) / {{competence.name}} ({{competence.data.niveau}})
<div>
<img class="chat-icon" src="{{img}}" alt="{{alias}}" />
<h3>
{{#if (eq mode "attribut")}}
Jet de {{attr.label}} {{subAttr.label}} (2d10+{{subAttr.value}})
{{else}}
{{#if (eq mode "armecc")}}
Attaque au corps à Corps {{attackDef.label}} ({{selectedCarac.value}}d10) / {{competence.name}} ({{competence.data.niveau}})
{{else}}
{{#if (eq mode "armedist")}}
Attaque à Distance {{attackDef.label}} ({{selectedCarac.value}}d10) / {{competence.name}} ({{competence.data.niveau}})
{{else}}
{{#if (eq mode "sejdr")}}
Lancer du Sort {{sort.name}} ({{selectedCarac.value}}d10) / {{competence.name}} ({{competence.data.niveau}})
{{else}}
{{#if (eq mode "rune")}}
Gravure de la Rune {{sort.name}} ({{selectedCarac.value}}d10) / {{competence.name}} ({{competence.data.niveau}})
{{else}}
{{#if (eq mode "galdr")}}
Lancer du Domaine {{sort.name}} ({{selectedCarac.value}}d10) / {{competence.name}} ({{competence.data.niveau}})
{{else}}
Jet de {{selectedCarac.label}} ({{selectedCarac.value}}d10)
{{/if}}
{{/if}}
{{/if}}
{{/if}}
{{/if}}
{{#if (eq mode "competence")}}
Jet de {{selectedCarac.label}} ({{selectedCarac.value}}d10) / {{competence.name}} ({{competence.system.niveau}})
{{else}}
{{#if (eq mode "armecc")}}
Attaque au corps à Corps {{attackDef.label}} ({{selectedCarac.value}}d10) / {{competence.name}}
({{competence.system.niveau}})
{{else}}
{{#if (eq mode "armedist")}}
Attaque à Distance {{attackDef.label}} ({{selectedCarac.value}}d10) / {{competence.name}}
({{competence.system.niveau}})
{{else}}
{{#if (eq mode "sejdr")}}
Lancer du Sort {{sort.name}} ({{selectedCarac.value}}d10) / {{competence.name}} ({{competence.system.niveau}})
{{else}}
{{#if (eq mode "rune")}}
Gravure de la Rune {{sort.name}} ({{selectedCarac.value}}d10) / {{competence.name}} ({{competence.system.niveau}})
{{else}}
{{#if (eq mode "galdr")}}
Lancer du Domaine {{sort.name}} ({{selectedCarac.value}}d10) / {{competence.name}} ({{competence.system.niveau}})
{{else}}
Jet de {{selectedCarac.label}} ({{selectedCarac.value}}d10)
{{/if}}
{{/if}}
{{/if}}
{{/if}}
{{/if}}
{{/if}}
{{/if}}
</h3>
</div>
<div>
<ul>
<li>Dés :
{{#each rawDices as |roll key|}}
{{roll.result}}&nbsp;
{{/each}}
</li>
{{#if sumDice}}
<li>Nombre de dés additionnés : {{sumDice}}</li>
{{/if}}
{{#if (eq mode "competence")}}
<li>Competence : {{niveauCompetence}}</li>
{{/if}}
{{#if (eq mode "carac")}}
<li>Carac : {{niveauCompetence}}</li>
{{/if}}
<li>Bonus/Malus Final : {{finalBM}}</li>
{{#if sr}}
<li>Seuil de Réussite final : {{srFinal}}</li>
{{/if}}
{{#if furorUsage}}
<li>Furor dépensée : {{furorUsage}}</li>
<li>Resultat de la Furor : {{furorResult}}</li>
{{/if}}
<li>
<h3>Total : {{finalTotal}}</h3>
</li>
</ul>
{{#if dureeGaldrText}}
<div>
Durée du Sort : {{dureeGaldrText}}
</div>
{{/if}}
</h3>
</div>
<div>
<ul>
<li>Dés :
{{#each rawDices as |dice key|}}
{{dice.result}}&nbsp;
{{/each}}
</li>
{{#if sumDice}}
<li>Nombre de dés additionnés : {{sumDice}}</li>
{{#if zoneGaldrText}}
<div>
Volume Max de l'Illusion : {{zoneGaldrText}}
</div>
{{/if}}
<li>Bonus/Malus Final : {{finalBM}}</li>
{{#if sr}}
<li>Seuil de Réussite final : {{srFinal}}</li>
{{#if ciblesGaldrText}}
<div>
Nombre de Cibles : {{ciblesGaldrText}}
</div>
{{/if}}
{{#if furorUsage}}
<li>Furor : {{furorUsage}}</li>
{{#if degats}}
<div>
Degats : {{degats}} ({{degatsExplain}})
</div>
{{/if}}
<li><h3>Total : {{roll.total}}</h3></li>
</ul>
{{#if dureeGaldrText}}
<div>
Durée du Sort : {{dureeGaldrText}}
</div>
{{/if}}
{{#if zoneGaldrText}}
<div>
Volume Max de l'Illusion : {{zoneGaldrText}}
</div>
{{/if}}
{{#if attackDef.protection}}
<div>
Annuation de Protection du Défenseur : {{attackDef.protection}}
</div>
{{/if}}
{{#if ciblesGaldrText}}
<div>
Nombre de Cibles : {{ciblesGaldrText}}
</div>
{{/if}}
{{#if degats}}
<div>
Degats : {{degats}} ({{degatsExplain}})
</div>
{{/if}}
{{#if attackDef.protection}}
<div>
Annuation de Protection du Défenseur : {{attackDef.protection}}
</div>
{{/if}}
{{#if isCritical}}
<div class="chat-message-header">
<img class="chat-icon" src="systems/fvtt-yggdrasill/images/icons/icon_reussite_critique.png" alt="critique" />
Réussite Critique !
{{#if isCritical}}
<div class="chat-message-header">
<img class="chat-icon" src="systems/fvtt-yggdrasill/images/icons/icon_reussite_critique.png" alt="critique" />
Réussite Critique !
</div>
{{/if}}
{{#if isFailure}}
<img class="chat-icon" src="systems/fvtt-yggdrasill/images/icons/icon_echec_critique.png" alt="echec" />
Echec Critique !
</div>
{{/if}}
<div class="chat-message-header">
<img class="chat-icon" src="systems/fvtt-yggdrasill/images/icons/icon_echec_critique.png" alt="echec" />
Echec Critique !
</div>
{{/if}}
</div>
{{#if (and isSuccess isMagie)}}
<div>
<hr>
{{{sort.data.description}}}
{{#if (eq mode "rune")}}
<hr>
Support : {{supportRune}}<br>
Durée de réalisation : {{dureeRune}} {{echelleDuree}}<br>
Durée de vie : {{niveauCompetence}} {{echelleDureeVie}}<br>
{{/if}}
</div>
{{/if}}
</div>
</div>

View File

@ -1,6 +1,6 @@
{{#if data.isGM}}
<h3>GM Notes : </h3>
<div class="form-group editor">
{{editor content=data.gmnotes target="data.gmnotes" button=true owner=owner editable=editable}}
{{editor gmnotes target="system.biodata.gmnotes" button=true owner=owner editable=editable}}
</div>
{{/if}}

View File

@ -43,9 +43,10 @@
{{#each attr.values as |value index|}}
{{#if value.label}}
<span class="stat-label flexrow tooltip tooltip-nobottom" name="{{index}}"><a class="attribut-roll" data-attr-sub-key="{{index}}">{{value.label}}</a></span>
<span class="stat-label flexrow tooltip tooltip-nobottom" name="{{index}}">
<a class="attribut-roll" data-attr-sub-key="{{index}}">{{value.label}}</a></span>
{{/if}}
<select class="carac-base flexrow" type="text" name="data.attributs.{{key}}.values.{{index}}.value" value="{{value.value}}" data-dtype="Number" {{#unless @root.editScore}}disabled{{/unless}}>
<select class="carac-base flexrow" type="text" name="system.attributs.{{key}}.values.{{index}}.value" value="{{value.value}}" data-dtype="Number" {{#unless @root.editScore}}disabled{{/unless}}>
{{#select value.value}}
{{#each @root.optionsAttr as |option index|}}
<option value="{{index}}">{{index}}</option>
@ -65,7 +66,7 @@
<ul>
<li class="item flexrow list-item" data-attr-key="etat">
<span class="stat-label flexrow tooltip tooltip-nobottom" name="etat">Etat : </span>
<select class="carac-base flexrow" type="text" name="data.etat.etat" value="{{data.etat.etat}}" data-dtype="String" {{#unless @root.editScore}}disabled{{/unless}}>
<select class="carac-base flexrow" type="text" name="system.etat.etat" value="{{data.etat.etat}}" data-dtype="String" {{#unless @root.editScore}}disabled{{/unless}}>
{{#select data.etat.etat}}
<option value="fringant">Fringant</option>
<option value="blesse">Blessé</option>
@ -101,7 +102,7 @@
<li class="item flexrow list-item" data-item-id="{{monnaie.id}}">
<img class="sheet-competence-img" src="{{monnaie.img}}"/>
<span class="generic-label">{{monnaie.name}}</span>
<span class="generic-label">{{monnaie.data.data.quantite}}
<span class="generic-label">{{monnaie.system.quantite}}
(<a class="equipement-moins plus-moins-button"> -</a>/<a class="equipement-plus plus-moins-button">+</a>)
</span>
</span>
@ -129,13 +130,13 @@
<li class="item flexrow list-item" data-item-id="{{equipement.id}}">
<img class="sheet-competence-img" src="{{equipement.img}}"/>
<span class="equipement-label">{{equipement.name}}</span>
<span class="equipement-label">{{equipement.data.data.quantite}}</span>
<span class="equipement-label">{{equipement.data.data.enc}}</span>
<span class="equipement-label">{{equipement.system.quantite}}</span>
<span class="equipement-label">{{equipement.system.enc}}</span>
<span class="equipement-label">
(<a class="equipement-moins plus-moins-button">-</a>/<a class="equipement-plus plus-moins-button">+</a>)
</span>
<div class="item-controls">
<a class="item-control item-equip" title="Worn">{{#if equipement.data.data.equipe}}<i class="fas fa-circle"></i>{{else}}<i class="fas fa-genderless"></i>{{/if}}</a>
<a class="item-control item-equip" title="Worn">{{#if equipement.system.equipe}}<i class="fas fa-circle"></i>{{else}}<i class="fas fa-genderless"></i>{{/if}}</a>
<a class="item-control item-edit" title="Edit Item"><i class="fas fa-edit"></i></a>
<a class="item-control item-delete" title="Delete Item"><i class="fas fa-trash"></i></a>
</div>
@ -150,12 +151,12 @@
<article class="flexcol">
<h3>Biographie : </h3>
<div class="form-group editor">
{{editor content=data.description target="data.description" button=true owner=owner editable=editable}}
{{editor description target="data.description" button=true owner=owner editable=editable}}
</div>
<hr>
<h3>Notes : </h3>
<div class="form-group editor">
{{editor content=data.notes target="data.notes" button=true owner=owner editable=editable}}
{{editor notes target="data.notes" button=true owner=owner editable=editable}}
</div>
</article>
</div>

View File

@ -2,7 +2,7 @@
<img class="vadentis-hud-togglebutton" src="systems/foundryvtt-vadentis/images/icons/icone_item_armes_cac.webp" width="36" height="36" title="Attaque"/>
<div class="vadentis-hud-list tokenhudext left">
{{#each armes as |arme key|}}
{{#if arme.data.equipee}}
{{#if arme.system.equipee}}
<div class="control-icon tokenhudicon vadentis-hud-menu vadentis-attaque" data-combatant-id="{{../combatant._id}}" data-arme-id="{{arme._id}}" title="{{arme.name}}">
<label>C:{{arme.name}}</label>
</div>

View File

@ -12,8 +12,8 @@
<div class="tab" data-group="primary">
<ul>
<li class="flexrow"><label class="generic-label">Catégorie</label>
<select class="competence-base flexrow" type="text" name="data.categorie" value="{{data.categorie}}" data-dtype="String">
{{#select data.categorie}}
<select class="competence-base flexrow" type="text" name="system.categorie" value="{{data.categorie}}" data-dtype="String">
{{#select system.categorie}}
<option value="lutte">Lutte</option>
<option value="improvisee">Improvisée</option>
<option value="courte">Courte</option>
@ -24,15 +24,15 @@
</select>
</li>
<li class="flexrow"><label class="generic-label">Equipée ?</label>
<label class="attribute-value checkbox"><input type="checkbox" name="data.equipe" {{checked data.equipe}}/></label>
<label class="attribute-value checkbox"><input type="checkbox" name="system.equipe" {{checked data.equipe}}/></label>
</li>
<li class="flexrow"><label class="generic-label">Degat</label><input type="text" name="data.degat" value="{{data.degat}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Solidité</label><input type="text" name="data.solidite" value="{{data.solidite}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Encombrement</label><input type="text" name="data.enc" value="{{data.enc}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Valeur</label><input type="text" name="data.valeur" value="{{data.valeur}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Degat</label><input type="text" name="system.degat" value="{{data.degat}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Solidité</label><input type="text" name="system.solidite" value="{{data.solidite}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Encombrement</label><input type="text" name="system.enc" value="{{data.enc}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Valeur</label><input type="text" name="system.valeur" value="{{data.valeur}}" data-dtype="Number"/></li>
</ul>
<label class="generic-label">Description</label>
{{editor content=data.description target="data.description" button=true owner=owner editable=editable}}
{{editor description target="system.description" button=true owner=owner editable=editable}}
</div>
</section>

View File

@ -12,7 +12,7 @@
<div class="tab" data-group="primary">
<ul>
<li class="flexrow"><label class="generic-label">Catégorie</label>
<select class="competence-base flexrow" type="text" name="data.categorie" value="{{data.categorie}}" data-dtype="String">
<select class="competence-base flexrow" type="text" name="system.categorie" value="{{data.categorie}}" data-dtype="String">
{{#select data.categorie}}
<option value="jet">Jet</option>
<option value="tir">Tir</option>
@ -20,16 +20,16 @@
</select>
</li>
<li class="flexrow"><label class="generic-label">Equipée ?</label>
<label class="attribute-value checkbox"><input type="checkbox" name="data.equipe" {{checked data.equipe}}/></label>
<label class="attribute-value checkbox"><input type="checkbox" name="system.equipe" {{checked data.equipe}}/></label>
</li>
<li class="flexrow"><label class="generic-label">Degat</label><input type="text" name="data.degat" value="{{data.degat}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Solidité</label><input type="text" name="data.solidite" value="{{data.solidite}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Encombrement</label><input type="text" name="data.enc" value="{{data.enc}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Valeur</label><input type="text" name="data.valeur" value="{{data.valeur}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Portée</label><input type="text" name="data.portee" value="{{data.portee}}" data-dtype="String"/></li>
<li class="flexrow"><label class="generic-label">Degat</label><input type="text" name="system.degat" value="{{data.degat}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Solidité</label><input type="text" name="system.solidite" value="{{data.solidite}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Encombrement</label><input type="text" name="system.enc" value="{{data.enc}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Valeur</label><input type="text" name="system.valeur" value="{{data.valeur}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Portée</label><input type="text" name="system.portee" value="{{data.portee}}" data-dtype="String"/></li>
</ul>
<label class="generic-label">Description</label>
{{editor content=data.description target="data.description" button=true owner=owner editable=editable}}
{{editor description target="system.description" button=true owner=owner editable=editable}}
</div>
</section>

View File

@ -12,7 +12,7 @@
<div class="tab" data-group="primary">
<ul>
<li class="flexrow"><label class="generic-label">Catégorie</label>
<select class="competence-base flexrow" type="text" name="data.categorie" value="{{data.categorie}}" data-dtype="String">
<select class="competence-base flexrow" type="text" name="system.categorie" value="{{data.categorie}}" data-dtype="String">
{{#select data.categorie}}
<option value="armure">Armure</option>
<option value="piecearmure">Pièce d'Armure</option>
@ -20,14 +20,14 @@
</select>
</li>
<li class="flexrow"><label class="generic-label">Equipée ?</label>
<label class="attribute-value checkbox"><input type="checkbox" name="data.equipe" {{checked data.equipe}}/></label>
<label class="attribute-value checkbox"><input type="checkbox" name="system.equipe" {{checked data.equipe}}/></label>
</li>
<li class="flexrow"><label class="generic-label">Protection</label><input type="text" name="data.protection" value="{{data.protection}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Encombrement</label><input type="text" name="data.enc" value="{{data.enc}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Valeur</label><input type="text" name="data.valeur" value="{{data.valeur}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Protection</label><input type="text" name="system.protection" value="{{data.protection}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Encombrement</label><input type="text" name="system.enc" value="{{data.enc}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Valeur</label><input type="text" name="system.valeur" value="{{data.valeur}}" data-dtype="Number"/></li>
</ul>
<label class="generic-label">Description</label>
{{editor content=data.description target="data.description" button=true owner=owner editable=editable}}
{{editor description target="system.description" button=true owner=owner editable=editable}}
</div>
</section>

View File

@ -11,7 +11,7 @@
<div class="tab" data-group="primary">
<label class="generic-label">Description</label>
{{editor content=data.description target="data.description" button=true owner=owner editable=editable}}
{{editor description target="system.description" button=true owner=owner editable=editable}}
</div>
</section>

View File

@ -0,0 +1,35 @@
<form class="{{cssClass}}" autocomplete="off">
<header class="sheet-header">
<img class="profile-img" src="{{img}}" data-edit="img" title="{{name}}"/>
<div class="header-fields">
<h1 class="charname"><input name="name" type="text" value="{{name}}" placeholder="Name"/></h1>
</div>
</header>
{{!-- Sheet Body --}}
<section class="sheet-body">
<div class="tab" data-group="primary">
<ul>
<li class="flexrow"><label class="generic-label">Catégorie</label>
<select class="competence-base flexrow" type="text" name="system.categorie" value="{{data.categorie}}" data-dtype="String">
{{#select data.categorie}}
<option value="bouclier">bouclier</option>
{{/select}}
</select>
</li>
<li class="flexrow"><label class="generic-label">Equipée ?</label>
<label class="attribute-value checkbox"><input type="checkbox" name="system.equipe" {{checked data.equipe}}/></label>
</li>
<li class="flexrow"><label class="generic-label">Bonus DP</label><input type="text" name="system.defensebonus" value="{{data.defensebonus}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Encombrement</label><input type="text" name="system.enc" value="{{data.enc}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Encombrement en combat</label><input type="text" name="system.enccomb" value="{{data.enccomb}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Solidité</label><input type="text" name="system.solidite" value="{{data.solidite}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Valeur</label><input type="text" name="system.valeur" value="{{data.valeur}}" data-dtype="Number"/></li>
</ul>
<label class="generic-label">Description</label>
{{editor description target="system.description" button=true owner=owner editable=editable}}
</div>
</section>
</form>

View File

@ -12,7 +12,7 @@
<div class="tab" data-group="primary">
<ul>
<li class="flexrow"><label class="generic-label">Catégorie</label>
<select class="competence-base flexrow" type="text" name="data.categorie" value="{{data.categorie}}" data-dtype="String">
<select class="competence-base flexrow" type="text" name="system.categorie" value="{{data.categorie}}" data-dtype="String">
{{#select data.categorie}}
<option value="generale">Générale</option>
<option value="magique">Magique</option>
@ -21,20 +21,20 @@
</select>
</li>
<li class="flexrow"><label class="generic-label">Niveau</label>
<select class="competence-malus flexrow" type="text" name="data.niveau" value="{{data.niveau}}" data-dtype="Number">
<select class="competence-malus flexrow" type="text" name="system.niveau" value="{{data.niveau}}" data-dtype="Number">
{{selectOptions @root.optionsBase selected=data.niveau localize=false}}
</select>
</li>
<li class="flexrow"><label class="generic-label">Spécialisation ?</label>
<label class="attribute-value checkbox"><input type="checkbox" name="data.isspecialisation" {{checked data.isspecialisation}}/></label>
<label class="attribute-value checkbox"><input type="checkbox" name="system.isspecialisation" {{checked data.isspecialisation}}/></label>
</li>
<li class="flexrow"><label class="generic-label">Spécialisation</label><input type="text" name="data.specialisation" value="{{data.specialisation}}" data-dtype="String"/></li>
<li class="flexrow"><label class="generic-label">Spécialisation</label><input type="text" name="system.specialisation" value="{{data.specialisation}}" data-dtype="String"/></li>
<li class="flexrow"><label class="generic-label">Niveau 1 requis ?</label>
<label class="attribute-value checkbox"><input type="checkbox" name="data.niveauunrequis" {{checked data.niveauunrequis}}/></label>
<label class="attribute-value checkbox"><input type="checkbox" name="system.niveauunrequis" {{checked data.niveauunrequis}}/></label>
</li>
</ul>
<label class="generic-label">Description</label>
{{editor content=data.description target="data.description" button=true owner=owner editable=editable}}
{{editor description target="system.description" button=true owner=owner editable=editable}}
</div>
</section>

View File

@ -11,7 +11,7 @@
<div class="tab" data-group="primary">
<label class="generic-label">Description</label>
{{editor content=data.description target="data.description" button=true owner=owner editable=editable}}
{{editor description target="system.description" button=true owner=owner editable=editable}}
</div>
</section>

View File

@ -11,7 +11,7 @@
<div class="tab" data-group="primary">
<label class="generic-label">Description</label>
{{editor content=data.description target="data.description" button=true owner=owner editable=editable}}
{{editor description target="system.description" button=true owner=owner editable=editable}}
</div>
</section>

View File

@ -13,11 +13,11 @@
<ul>
<li class="flexrow">
<label class="generic-label">Origine</label>
<input type="text" name="data.origine" value="{{data.origine}}" data-dtype="String"/>
<input type="text" name="system.origine" value="{{data.origine}}" data-dtype="String"/>
</li>
</ul>
<label class="generic-label">Effet</label>
{{editor content=data.effet target="data.effet" button=true owner=owner editable=editable}}
{{editor effet target="system.effet" button=true owner=owner editable=editable}}
</div>
</section>

View File

@ -12,13 +12,13 @@
<div class="tab" data-group="primary">
<ul>
<li class="flexrow"><label class="generic-label">Equipée ?</label>
<label class="attribute-value checkbox"><input type="checkbox" name="data.equipe" {{checked data.equipe}}/></label>
<label class="attribute-value checkbox"><input type="checkbox" name="system.equipe" {{checked data.equipe}}/></label>
</li>
<li class="flexrow"><label class="generic-label">Encombrement</label><input type="text" name="data.enc" value="{{data.enc}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Valeur</label><input type="text" name="data.valeur" value="{{data.valeur}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Encombrement</label><input type="text" name="system.enc" value="{{data.enc}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Valeur</label><input type="text" name="system.valeur" value="{{data.valeur}}" data-dtype="Number"/></li>
</ul>
<label class="generic-label">Description</label>
{{editor content=data.description target="data.description" button=true owner=owner editable=editable}}
{{editor description target="system.description" button=true owner=owner editable=editable}}
</div>
</section>

View File

@ -11,7 +11,7 @@
<div class="tab" data-group="primary">
<label class="generic-label">Description</label>
{{editor content=data.description target="data.description" button=true owner=owner editable=editable}}
{{editor description target="system.description" button=true owner=owner editable=editable}}
</div>
</section>

View File

@ -12,7 +12,7 @@
<div class="tab" data-group="primary">
<ul>
<li class="flexrow"><label class="generic-label">Catégorie</label>
<select class="competence-base flexrow" type="text" name="data.categorie" value="{{data.categorie}}" data-dtype="String">
<select class="competence-base flexrow" type="text" name="system.categorie" value="{{data.categorie}}" data-dtype="String">
{{#select data.categorie}}
<option value="mineure">Mineure</option>
<option value="moderee">Modérée</option>
@ -20,11 +20,11 @@
{{/select}}
</select>
</li>
<li class="flexrow"><label class="generic-label">Periode</label><input type="text" name="data.periode" value="{{data.periode}}" data-dtype="String"/>
<li class="flexrow"><label class="generic-label">Periode</label><input type="text" name="system.periode" value="{{data.periode}}" data-dtype="String"/>
</li>
</ul>
<label class="generic-label">Description</label>
{{editor content=data.description target="data.description" button=true owner=owner editable=editable}}
{{editor description target="system.description" button=true owner=owner editable=editable}}
</div>
</section>

View File

@ -11,11 +11,11 @@
<div class="tab" data-group="primary">
<ul>
<li class="flexrow"><label class="generic-label">Quantité</label><input type="text" name="data.quantite" value="{{data.quantite}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Encombrement</label><input type="text" name="data.enc" value="{{data.enc}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Quantité</label><input type="text" name="system.quantite" value="{{data.quantite}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Encombrement</label><input type="text" name="system.enc" value="{{data.enc}}" data-dtype="Number"/></li>
</ul>
<label class="generic-label">Description</label>
{{editor content=data.description target="data.description" button=true owner=owner editable=editable}}
{{editor description target="system.description" button=true owner=owner editable=editable}}
</div>
</section>

View File

@ -12,7 +12,7 @@
<div class="tab" data-group="primary">
<ul>
<li class="flexrow"><label class="generic-label">Catégorie</label>
<select class="competence-base flexrow" type="text" name="data.categorie" value="{{data.categorie}}" data-dtype="String">
<select class="competence-base flexrow" type="text" name="system.categorie" value="{{data.categorie}}" data-dtype="String">
{{#select data.categorie}}
<option value="mineure">Mineure</option>
<option value="moderee">Modérée</option>
@ -20,10 +20,10 @@
{{/select}}
</select>
</li>
<li class="flexrow"><label class="generic-label">Type</label><input type="text" name="data.type" value="{{data.type}}" data-dtype="String"/></li>
<li class="flexrow"><label class="generic-label">Type</label><input type="text" name="system.type" value="{{data.type}}" data-dtype="String"/></li>
</ul>
<label class="generic-label">Description</label>
{{editor content=data.description target="data.description" button=true owner=owner editable=editable}}
{{editor description target="system.description" button=true owner=owner editable=editable}}
</div>
</section>

View File

@ -12,7 +12,7 @@
<div class="tab" data-group="primary">
<ul>
<li class="flexrow"><label class="generic-label">Catégorie</label>
<select class="competence-base flexrow" type="text" name="data.categorie" value="{{data.categorie}}" data-dtype="String">
<select class="competence-base flexrow" type="text" name="system.categorie" value="{{data.categorie}}" data-dtype="String">
{{#select data.categorie}}
<option value="attaque">Attaque</option>
<option value="defensive">Défensive</option>
@ -22,18 +22,18 @@
</li>
<li class="flexrow">
<label class="generic-label">Niveau</label>
<select class="competence-base flexrow" type="text" name="data.niveau" value="{{data.niveau}}" data-dtype="Number">
<select class="competence-base flexrow" type="text" name="system.niveau" value="{{data.niveau}}" data-dtype="Number">
{{#select data.niveau}}
{{{optionsNiveaux4}}}
{{/select}}
</select>
</li>
<li class="flexrow"><label class="generic-label">Armes</label><input type="text" name="data.armes" value="{{data.armes}}" data-dtype="String"/></li>
<li class="flexrow"><label class="generic-label">Prérequis</label><input type="text" name="data.prerequis" value="{{data.prerequis}}" data-dtype="String"/></li>
<li class="flexrow"><label class="generic-label">Modificateur</label><input type="text" name="data.modificateur" value="{{data.modificateur}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Armes</label><input type="text" name="system.armes" value="{{data.armes}}" data-dtype="String"/></li>
<li class="flexrow"><label class="generic-label">Prérequis</label><input type="text" name="system.prerequis" value="{{data.prerequis}}" data-dtype="String"/></li>
<li class="flexrow"><label class="generic-label">Modificateur</label><input type="text" name="system.modificateur" value="{{data.modificateur}}" data-dtype="Number"/></li>
</ul>
<label class="generic-label">Description</label>
{{editor content=data.description target="data.description" button=true owner=owner editable=editable}}
{{editor description target="system.description" button=true owner=owner editable=editable}}
</div>
</section>

View File

@ -11,20 +11,20 @@
<div class="tab" data-group="primary">
<ul>
<li class="flexrow"><label class="generic-label">Cible</label><input type="text" name="data.cible" value="{{data.cible}}" data-dtype="String"/></li>
<li class="flexrow"><label class="generic-label">Cible</label><input type="text" name="system.cible" value="{{data.cible}}" data-dtype="String"/></li>
<li class="flexrow">
<label class="generic-label">Niveau</label>
<select class="competence-base flexrow" type="text" name="data.niveau" value="{{data.niveau}}" data-dtype="Number">
<select class="competence-base flexrow" type="text" name="system.niveau" value="{{data.niveau}}" data-dtype="Number">
{{#select data.niveau}}
{{{optionsNiveaux4}}}
{{/select}}
</select>
</li>
<li class="flexrow"><label class="generic-label">Domaine</label><input type="text" name="data.domaine" value="{{data.domaine}}" data-dtype="String"/></li>
<li class="flexrow"><label class="generic-label">Zone/Cible</label><input type="text" name="data.zonecible" value="{{data.zonecible}}" data-dtype="String"/></li>
<li class="flexrow"><label class="generic-label">Domaine</label><input type="text" name="system.domaine" value="{{data.domaine}}" data-dtype="String"/></li>
<li class="flexrow"><label class="generic-label">Zone/Cible</label><input type="text" name="system.zonecible" value="{{data.zonecible}}" data-dtype="String"/></li>
</ul>
<label class="generic-label">Description</label>
{{editor content=data.description target="data.description" button=true owner=owner editable=editable}}
{{editor description target="system.description" button=true owner=owner editable=editable}}
</div>
</section>

View File

@ -13,7 +13,7 @@
<ul>
<li class="flexrow">
<label class="generic-label">Voie</label>
<select class="competence-base flexrow" type="text" name="data.voie" value="{{data.voie}}" data-dtype="String">
<select class="competence-base flexrow" type="text" name="system.voie" value="{{data.voie}}" data-dtype="String">
{{#select data.voie}}
<option value="malediction">Malédictions</option>
<option value="illusion">Illusions</option>
@ -21,10 +21,10 @@
{{/select}}
</select>
</li>
<li class="flexrow"><label class="generic-label">SD</label><input type="text" name="data.sd" value="{{data.sd}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">SD</label><input type="text" name="system.sd" value="{{data.sd}}" data-dtype="Number"/></li>
</ul>
<label class="generic-label">Description</label>
{{editor content=data.description target="data.description" button=true owner=owner editable=editable}}
{{editor description target="system.description" button=true owner=owner editable=editable}}
</div>
</section>

View File

@ -11,22 +11,22 @@
<div class="tab" data-group="primary">
<ul>
<li class="flexrow"><label class="generic-label">Domaine</label><input type="text" name="data.forme" value="{{data.forme}}" data-dtype="String"/></li>
<li class="flexrow"><label class="generic-label">Préparation</label><input type="text" name="data.preparation" value="{{data.preparation}}" data-dtype="String"/></li>
<li class="flexrow"><label class="generic-label">Domaine</label><input type="text" name="system.forme" value="{{data.forme}}" data-dtype="String"/></li>
<li class="flexrow"><label class="generic-label">Préparation</label><input type="text" name="system.preparation" value="{{data.preparation}}" data-dtype="String"/></li>
<li class="flexrow">
<label class="generic-label">Niveau</label>
<select class="competence-base flexrow" type="text" name="data.niveau" value="{{data.niveau}}" data-dtype="Number">
<select class="competence-base flexrow" type="text" name="system.niveau" value="{{data.niveau}}" data-dtype="Number">
{{#select data.niveau}}
{{{optionsNiveaux4}}}
{{/select}}
</select>
</li>
<li class="flexrow"><label class="generic-label">Malus</label><input type="text" name="data.malus" value="{{data.malus}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Durée</label><input type="text" name="data.duree" value="{{data.duree}}" data-dtype="String"/></li>
<li class="flexrow"><label class="generic-label">Zone</label><input type="text" name="data.zone" value="{{data.zone}}" data-dtype="String"/></li>
<li class="flexrow"><label class="generic-label">Malus</label><input type="text" name="system.malus" value="{{data.malus}}" data-dtype="Number"/></li>
<li class="flexrow"><label class="generic-label">Durée</label><input type="text" name="system.duree" value="{{data.duree}}" data-dtype="String"/></li>
<li class="flexrow"><label class="generic-label">Zone</label><input type="text" name="system.zone" value="{{data.zone}}" data-dtype="String"/></li>
</ul>
<label class="generic-label">Description</label>
{{editor content=data.description target="data.description" button=true owner=owner editable=editable}}
{{editor description target="system.description" button=true owner=owner editable=editable}}
</div>
</section>

View File

@ -30,7 +30,7 @@
<div class="flexrow">
<span class="competence-base flexrow" >Compétence : </span>
<span class="competence-base flexrow" id="compName">{{competence.name}}</span>
<span class="competence-base flexrow" id="compNiveau">{{competence.data.niveau}}</span>
<span class="competence-base flexrow" id="compNiveau">{{competence.system.niveau}}</span>
</div>
<div class="flexrow">

View File

@ -32,7 +32,7 @@
<div class="flexrow">
<span class="competence-base flexrow" >Compétence : </span>
<span class="competence-base flexrow" id="compName">{{competence.name}}</span>
<span class="competence-base flexrow" id="compNiveau">{{competence.data.niveau}}</span>
<span class="competence-base flexrow" id="compNiveau">{{competence.system.niveau}}</span>
</div>
<div class="flexrow">

View File

@ -17,6 +17,15 @@
{{/select}}
</select>
</div>
<div class="flexrow">
<span class="competence-base flexrow" >Défense Physique du défenseur : </span>
<select class="competence-base flexrow" type="text" id="bonusdefense" name="bonusdefense" value="{{bonusdefense}}" data-dtype="Number">
{{#select bonusdefense}}
{{{optionsBD}}}
{{/select}}
</select>
</div>
<div class="flexrow">
<span class="competence-base flexrow" >Seuil de Réussite : </span>

View File

@ -2,10 +2,10 @@
<h2 class="dialog-roll-title">{{title}}</h2>
<div class="floxrow">
{{#if competence.data.data.isspecialisation}}
{{#if competence.system.isspecialisation}}
<div class="flexrow">
<span class="competence-base flexrow" >Spécialisation : </span>
<span class="competence-base flexrow" >{{competence.data.specialisation}}</span>
<span class="competence-base flexrow" >{{competence.system.specialisation}}</span>
<span class="competence-base flexrow" >&nbsp;&nbsp;</span>
<span class="competence-base flexrow" >&nbsp;&nbsp;</span>
</div>

View File

@ -1,5 +1,5 @@
<form class="skill-roll-dialog">
<h2 class="dialog-roll-title">{{title}} - SD {{sort.data.sd}}</h2>
<h2 class="dialog-roll-title">{{title}} - SD {{sort.system.sd}}</h2>
<div class="floxrow">
<div class="flexrow">
@ -11,7 +11,7 @@
<div class="flexrow">
<span class="competence-base flexrow" >Compétence : </span>
<span class="competence-base flexrow" id="compName">{{competence.name}}</span>
<span class="competence-base flexrow" id="compNiveau">{{competence.data.niveau}}</span>
<span class="competence-base flexrow" id="compNiveau">{{competence.system.niveau}}</span>
</div>
<div class="flexrow">

View File

@ -1,5 +1,5 @@
<form class="skill-roll-dialog">
<h2 class="dialog-roll-title">{{title}} - Niveau {{sort.data.niveau}}</h2>
<h2 class="dialog-roll-title">{{title}} - Niveau {{sort.system.niveau}}</h2>
<div class="floxrow">
<div class="flexrow">
@ -11,7 +11,7 @@
<div class="flexrow">
<span class="competence-base flexrow" >Compétence : </span>
<span class="competence-base flexrow" id="compName">{{competence.name}}</span>
<span class="competence-base flexrow" id="compNiveau">{{competence.data.niveau}}</span>
<span class="competence-base flexrow" id="compNiveau">{{competence.system.niveau}}</span>
</div>
<div class="flexrow">

View File

@ -10,18 +10,18 @@
<div class="flexrow">
<span class="competence-base flexrow" >Préparation : </span>
<span class="competence-base flexrow" id="caracName">{{sort.data.preparation}}</span>
<span class="competence-base flexrow" id="caracName">{{sort.system.preparation}}</span>
</div>
<div class="flexrow">
<span class="competence-base flexrow" >Compétence : </span>
<span class="competence-base flexrow" id="compName">{{competence.name}}</span>
<span class="competence-base flexrow" id="compNiveau">{{competence.data.niveau}}</span>
<span class="competence-base flexrow" id="compNiveau">{{competence.system.niveau}}</span>
</div>
<div class="flexrow">
<span class="competence-base flexrow" >Malus du Sort : </span>
<span class="competence-base flexrow" id="malus">{{sort.data.malus}}</span>
<span class="competence-base flexrow" id="malus">{{sort.system.malus}}</span>
</div>
<div class="flexrow">