Compare commits
65 Commits
build-test
...
a996c9e9be
Author | SHA1 | Date | |
---|---|---|---|
a996c9e9be | |||
5357ca89bc | |||
e772bccc87 | |||
a896fdb166 | |||
1ff0de1348 | |||
ab365e9780 | |||
3739519610 | |||
f7fc7fbefb | |||
d5686b81ed | |||
5bf1ecaea3 | |||
81d826ee2e | |||
2a164f6a32 | |||
6479f00642 | |||
3cbd777e6a | |||
b377739481 | |||
d9cdfef688 | |||
d9af32b168 | |||
f13677106e | |||
e98a793506 | |||
57d35a0f9a | |||
417db33752 | |||
bf0eea693a | |||
28ee8607bb | |||
91717a3290 | |||
39ce66a26c | |||
5265c013c1 | |||
a03cee5d60 | |||
296c4babbb | |||
d9c1804a08 | |||
fa375f8092 | |||
a27e3894a0 | |||
ce8616c34e | |||
bbfac286a6 | |||
c0563efcfa | |||
c481bad81a | |||
37c281b300 | |||
9b1a179a71 | |||
8be4c3343f | |||
6af5a85dc1 | |||
c6d64e09d5 | |||
56c99c5044 | |||
a7862a25e5 | |||
f4b5a4a4d2 | |||
6a17586a6c | |||
40f7ef48c9 | |||
62dfa8a580 | |||
e71088fe2f | |||
b7cb0f0752 | |||
9b31f25640 | |||
2291eaf135 | |||
a91264cd82 | |||
864194e3b4 | |||
2c836f17e7 | |||
444e52cb49 | |||
82b0537d43 | |||
1eea07c8a8 | |||
de70ba8a3c | |||
f0e02e2205 | |||
7d9ccfaf28 | |||
830cd1c200 | |||
b9458c717e | |||
22f25b45ce | |||
dca9505925 | |||
45e9e94646 | |||
a0c7b87996 |
@ -27,8 +27,8 @@ jobs:
|
||||
env:
|
||||
version: ${{steps.get_version.outputs.version-without-v}}
|
||||
url: https://www.uberwald.me/gitea/${{gitea.repository}}
|
||||
manifest: https://www.uberwald.me/gitea/${{gitea.repository}}/releases/download//${{github.event.release.tag_name}}/system.json
|
||||
download: https://www.uberwald.me/gitea/${{gitea.repository}}/releases/download/${{github.event.release.tag_name}}/foundryvtt-reve-de-dragon-${{github.event.release.tag_name}}.zip
|
||||
manifest: https://www.uberwald.me/gitea/${{gitea.repository}}/releases/download/${{github.event.release.tag_name}}/system.json
|
||||
download: https://www.uberwald.me/gitea/${{gitea.repository}}/releases/download/${{github.event.release.tag_name}}/rddsystem.zip
|
||||
|
||||
- name: Set up Node.js
|
||||
uses: actions/setup-node@v2
|
||||
@ -46,7 +46,7 @@ jobs:
|
||||
apt update -y
|
||||
apt install -y zip
|
||||
|
||||
- run: zip -r ./foundryvtt-reve-de-dragon-${{github.event.release.tag_name}}.zip system.json template.json README.md LICENSE.txt assets/ fonts/ icons lang/ module/ packs/ pic/ sounds/ styles/ templates/
|
||||
- run: zip -r ./rddsystem.zip system.json template.json README.md LICENSE.txt assets/ fonts/ icons lang/ module/ packs/ pic/ sounds/ styles/ templates/
|
||||
|
||||
- name: setup go
|
||||
uses: actions/setup-go@v3
|
||||
@ -58,6 +58,17 @@ jobs:
|
||||
uses: https://gitea.com/actions/release-action@main
|
||||
with:
|
||||
files: |-
|
||||
./foundryvtt-reve-de-dragon-${{github.event.release.tag_name}}.zip
|
||||
./rddsystem.zip
|
||||
system.json
|
||||
api_key: '${{secrets.ALLOW_PUSH_RELEASE}}'
|
||||
|
||||
- name: Publish to Foundry server
|
||||
uses: djlechuck/foundryvtt-publish-package-action@v1
|
||||
with:
|
||||
token: ${{ secrets.FOUNDRYVTT_RELEASE_TOKEN }}
|
||||
id: 'foundryvtt-reve-de-dragon'
|
||||
version: ${{github.event.release.tag_name}}
|
||||
manifest: 'https://www.uberwald.me/gitea/${{gitea.repository}}/releases/download/${{github.event.release.tag_name}}/system.json'
|
||||
notes: 'https://www.uberwald.me/gitea/public/foundryvtt-reve-de-dragon/raw/branch/v11/changelog.md'
|
||||
compatibility-minimum: '12'
|
||||
compatibility-verified: '12'
|
37
changelog.md
37
changelog.md
@ -1,4 +1,41 @@
|
||||
# 12.0
|
||||
## 12.0.26 - Astrobazzarh le Haut-rêvant
|
||||
- bouton pour le don de haut-rêve en un clic
|
||||
- les compétences de draconic ne sont plus précédées de "Voie de"
|
||||
- migration des compétences & compendiums
|
||||
- Correction feuille simplifiée qui ne s'affichait pas en cas de sort variable
|
||||
|
||||
## 12.0.24 - Les ajustements d'Astrobazzarh
|
||||
- amélioration
|
||||
- meilleure gestion des noms des voies de draconic
|
||||
- affichage du détail des sorts avec le nom de voie, 'court', la difficulté, le coût
|
||||
- corrections
|
||||
- les tas dans les conteneurs peuvent être désempilés sans rendre le conteneur inutilisable
|
||||
- les conteneurs ne peuvent plus être empilés (pour éviter que le contenu de Schroedinger quand on les sépare)
|
||||
- on peut maintenant saisir et supprimer les bonus de cases de manière intuitive
|
||||
|
||||
## 12.0.23 - La bibliothèque d'Astrobazzarh
|
||||
- corrections mineures
|
||||
- meilleure gestion de la parade des armes naturelles
|
||||
- cas de "User lacks permission to update" pour les blessures et les StatusEffects
|
||||
- risque de message d'encaissement non affiché
|
||||
- support de sorts à voies multiples
|
||||
- correction de compendiums
|
||||
- résistance des armes mise à jour
|
||||
- voies multiples pour las sorts de Lecture d'aura, Détection d'aura et Annulation de magie
|
||||
- améliorations "Scriptarium"
|
||||
- recherche des compétences sans accents pour permettre les noms accentués (standard Scriptarium)
|
||||
- affichage r1+ des sorts à coût variable dans la feuille simplifiée
|
||||
- affichage de Corps à corps pour le combat à mains nues dans la feuille simplifiée
|
||||
- dans les compendiums, les compétences Écriture et Épée ont une majuscule accentuée. Les Épée dans le compendium d'équipements référence le nom de compétence accentué.
|
||||
|
||||
## 12.0.21 - La nomination d'Astrobazzarh
|
||||
- Les noms pour les messages dans le tchat sont maintenant ceux des tokens plutôt que ceux des acteurs
|
||||
- Fix: le choix des effets dans les options s'affiche correctement
|
||||
|
||||
## 12.0.20 - Le tableau d'Astrobazzarh
|
||||
- Ecran d'accueil officiel Scriptarium
|
||||
|
||||
## 12.0.19 - La témérité d'Astrobazzarh
|
||||
- Fix
|
||||
- les défenses des créatures sont correctement filtrées
|
||||
|
61
dev-notes.md
61
dev-notes.md
@ -1,61 +0,0 @@
|
||||
# Actor notes
|
||||
|
||||
> The Actor#getData default implementation gives you the following for use in sheet rendering:
|
||||
|
||||
```
|
||||
actor -> the Actor instance
|
||||
data -> a cloned copy of Actor#data
|
||||
items -> a cloned copy of Actor#data#items
|
||||
effects -> a cloned copy of Actor#data#effects
|
||||
```
|
||||
|
||||
> if all you need is a safe copy of `Actor#data`, you'll be much better off by simply defining your own function and avoiding all the wasted work that the parent class does which will slow down your sheet
|
||||
```js
|
||||
getData(options) {
|
||||
return {
|
||||
data: foundry.utils.deepClone(this.object.data)
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
who knows, maybe you don't even need to copy your actor data, skip the copy and it's even faster:
|
||||
```js
|
||||
getData(options) {
|
||||
return {
|
||||
data: this.object.data
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
Atropos19/02/2021
|
||||
There are two recommended ways to create owned items in 0.8.0:
|
||||
```js
|
||||
await Item.create(itemData, {parent: actor});
|
||||
await actor.createEmbeddedDocuments("Item", itemDataArray);
|
||||
```
|
||||
|
||||
|
||||
You can update an embedded item in one of two ways:
|
||||
```js
|
||||
//Method 1:
|
||||
|
||||
const item = actor.items.get(itemId);
|
||||
item.update(data);
|
||||
|
||||
//Method 2:
|
||||
actor.updateEmbeddedDocuments("Item", [{_id: itemId, ...}]);
|
||||
```
|
||||
|
||||
|
||||
I noticed adding an ActiveEffect to an actor in code using
|
||||
|
||||
```js
|
||||
this.createEmbeddedDocuments('ActiveEffect', [effet], options);
|
||||
this.applyActiveEffects();
|
||||
```
|
||||
|
||||
Atropos — Aujourd’hui à 14:42
|
||||
Two notes on this:
|
||||
1. You don't actually need to call this.applyActiveEffects() because this will happen automatically whenever an effect is created/updated/deleted
|
||||
2. If you want to suppress the automatic display of the sheet for the newly created document, you can pass options.renderSheet = false as part of your options object
|
@ -80,7 +80,7 @@ export class RdDActorSheet extends RdDBaseActorSangSheet {
|
||||
const actor = this.actor;
|
||||
formData.combat = foundry.utils.duplicate(formData.armes);
|
||||
RdDItemArme.computeNiveauArmes(formData.combat, formData.competences);
|
||||
formData.combat.push(RdDItemArme.mainsNues(actor));
|
||||
formData.combat.push(RdDItemArme.corpsACorps(actor));
|
||||
formData.combat.push(RdDItemArme.empoignade(actor));
|
||||
|
||||
formData.esquives = this.actor.getCompetences("Esquive");
|
||||
@ -214,6 +214,8 @@ export class RdDActorSheet extends RdDBaseActorSangSheet {
|
||||
});
|
||||
// Boutons spéciaux MJs
|
||||
this.html.find('.forcer-tmr-aleatoire').click(async event => this.actor.reinsertionAleatoire("Action MJ"))
|
||||
this.html.find('.don-de-haut-reve').click(async event => this.actor.addDonDeHautReve())
|
||||
|
||||
this.html.find('.afficher-tmr').click(async event => this.actor.changeTMRVisible())
|
||||
}
|
||||
|
||||
|
103
module/actor.js
103
module/actor.js
@ -38,6 +38,8 @@ import { RdDCoeur } from "./coeur/rdd-coeur.js";
|
||||
import { DialogChoixXpCarac } from "./dialog-choix-xp-carac.js";
|
||||
import { RdDItemArme } from "./item-arme.js";
|
||||
import { RdDCombatManager } from "./rdd-combat.js";
|
||||
import { RdDItemTete } from "./item/tete.js";
|
||||
import { SystemCompendiums } from "./settings/system-compendiums.js";
|
||||
|
||||
export const MAINS_DIRECTRICES = ['Droitier', 'Gaucher', 'Ambidextre']
|
||||
|
||||
@ -53,41 +55,27 @@ export class RdDActor extends RdDBaseActorSang {
|
||||
* Prepare Character type specific data
|
||||
*/
|
||||
prepareActorData() {
|
||||
this.$computeCaracDerivee()
|
||||
this.$computeIsHautRevant()
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
$computeCaracDerivee() {
|
||||
|
||||
this.system.carac.force.value = Math.min(this.system.carac.force.value, parseInt(this.system.carac.taille.value) + 4);
|
||||
this.system.carac.melee.value = Math.floor((parseInt(this.system.carac.force.value) + parseInt(this.system.carac.agilite.value)) / 2);
|
||||
|
||||
this.system.carac.melee.value = Math.floor((this.getForce() + parseInt(this.system.carac.agilite.value)) / 2);
|
||||
this.system.carac.tir.value = Math.floor((parseInt(this.system.carac.vue.value) + parseInt(this.system.carac.dexterite.value)) / 2);
|
||||
this.system.carac.lancer.value = Math.floor((parseInt(this.system.carac.tir.value) + parseInt(this.system.carac.force.value)) / 2);
|
||||
this.system.carac.derobee.value = Math.floor(parseInt(((21 - this.system.carac.taille.value)) + parseInt(this.system.carac.agilite.value)) / 2);
|
||||
|
||||
let bonusDomKey = Math.floor((parseInt(this.system.carac.force.value) + parseInt(this.system.carac.taille.value)) / 2);
|
||||
let tailleData = RdDCarac.getCaracDerivee(bonusDomKey);
|
||||
this.system.attributs.plusdom.value = tailleData.plusdom;
|
||||
this.system.attributs.encombrement.value = (parseInt(this.system.carac.force.value) + parseInt(this.system.carac.taille.value)) / 2;
|
||||
super.prepareActorData()
|
||||
|
||||
this.system.attributs.sconst.value = RdDCarac.calculSConst(this.system.carac.constitution.value);
|
||||
this.system.attributs.sust.value = RdDCarac.getCaracDerivee(this.system.carac.taille.value).sust;
|
||||
this.system.sante.vie.max = Math.ceil((parseInt(this.system.carac.taille.value) + parseInt(this.system.carac.constitution.value)) / 2);
|
||||
this.system.attributs.sconst.value = RdDCarac.calculSConst(this.getConstitution())
|
||||
this.system.attributs.sust.value = RdDCarac.getCaracDerivee(this.getTaille()).sust
|
||||
|
||||
this.system.sante.vie.value = Math.min(this.system.sante.vie.value, this.system.sante.vie.max)
|
||||
this.system.sante.endurance.max = Math.max(parseInt(this.system.carac.taille.value) + parseInt(this.system.carac.constitution.value), parseInt(this.system.sante.vie.max) + parseInt(this.system.carac.volonte.value));
|
||||
this.system.sante.endurance.value = Math.min(this.system.sante.endurance.value, this.system.sante.endurance.max);
|
||||
this.system.sante.fatigue.max = this.getFatigueMax();
|
||||
this.system.sante.fatigue.max = this.getFatigueMax()
|
||||
this.system.sante.fatigue.value = Math.min(this.system.sante.fatigue.value, this.system.sante.fatigue.max);
|
||||
|
||||
//Compteurs
|
||||
this.system.reve.reve.max = this.system.carac.reve.value;
|
||||
this.system.compteurs.chance.max = this.system.carac.chance.value;
|
||||
}
|
||||
this.system.reve.reve.max = 3 * this.getReve()
|
||||
this.system.compteurs.chance.max = this.getChance()
|
||||
|
||||
$computeIsHautRevant() {
|
||||
this.system.attributs.hautrevant.value = this.itemTypes['tete'].find(it => Grammar.equalsInsensitive(it.name, 'don de haut-reve'))
|
||||
this.system.attributs.hautrevant.value = this.itemTypes[ITEM_TYPES.tete].find(it => RdDItemTete.isDonDeHautReve(it))
|
||||
? "Haut rêvant"
|
||||
: "";
|
||||
}
|
||||
@ -112,6 +100,8 @@ export class RdDActor extends RdDBaseActorSang {
|
||||
getChanceActuel() { return this.system.compteurs.chance?.value ?? 10 }
|
||||
getMoralTotal() { return this.system.compteurs.moral?.value ?? 0 }
|
||||
|
||||
getEnduranceMax() { return Math.max(1, Math.max(this.getTaille() + this.getConstitution(), this.getVieMax() + this.getVolonte())) }
|
||||
|
||||
/* -------------------------------------------- */
|
||||
getEtatGeneral(options = { ethylisme: false }) {
|
||||
const etatGeneral = this.system.compteurs.etat?.value ?? 0
|
||||
@ -137,8 +127,8 @@ export class RdDActor extends RdDBaseActorSang {
|
||||
const actions = RdDCombatManager.listActionsArmes(
|
||||
this.itemTypes[ITEM_TYPES.arme]
|
||||
.filter(it => RdDItemArme.isAttaque(it))
|
||||
.concat(RdDItemArme.corpsACorps(this))
|
||||
.concat(RdDItemArme.empoignade(this))
|
||||
.concat(RdDItemArme.mainsNues(this))
|
||||
,
|
||||
this.itemTypes[ITEM_TYPES.competence],
|
||||
this.system.carac)
|
||||
@ -181,7 +171,7 @@ export class RdDActor extends RdDBaseActorSang {
|
||||
whisper: ChatUtility.getOwners(this),
|
||||
content: await renderTemplate(`systems/foundryvtt-reve-de-dragon/templates/chat-potionenchantee-chateaudormant.html`, {
|
||||
pr: nouveauReve,
|
||||
alias: this.name,
|
||||
alias: this.getAlias(),
|
||||
potionName: it.name,
|
||||
potionImg: it.img
|
||||
})
|
||||
@ -989,6 +979,16 @@ export class RdDActor extends RdDBaseActorSang {
|
||||
});
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
async addDonDeHautReve() {
|
||||
if (!game.user.isGM || this.isHautRevant()) {
|
||||
return
|
||||
}
|
||||
const donHR = await RdDItemTete.teteDonDeHautReve()
|
||||
if (donHR) {
|
||||
this.createEmbeddedDocuments('Item', [donHR.toObject()])
|
||||
}
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
async reinsertionAleatoire(raison, accessible = tmr => true) {
|
||||
@ -1083,9 +1083,7 @@ export class RdDActor extends RdDBaseActorSang {
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
getSConst() {
|
||||
return RdDCarac.calculSConst(this.system.carac.constitution.value)
|
||||
}
|
||||
getSConst() { return RdDCarac.calculSConst(this.getConstitution()) }
|
||||
|
||||
async ajoutXpConstitution(xp) {
|
||||
await this.update({ "system.carac.constitution.xp": Misc.toInt(this.system.carac.constitution.xp) + xp });
|
||||
@ -1237,16 +1235,14 @@ export class RdDActor extends RdDBaseActorSang {
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
async consommerNourritureboisson(itemId, choix = { doses: 1, seForcer: false, supprimerSiZero: false }, userId = undefined) {
|
||||
if (userId != undefined && userId != game.user.id) {
|
||||
async consommerNourritureboisson(itemId, choix = { doses: 1, seForcer: false, supprimerSiZero: false }) {
|
||||
if (!this.isOwner) {
|
||||
RdDBaseActor.remoteActorCall({
|
||||
tokenId: this.token?.id,
|
||||
actorId: this.id,
|
||||
method: 'consommerNourritureboisson',
|
||||
args: [itemId, choix, userId]
|
||||
},
|
||||
userId)
|
||||
return;
|
||||
method: 'consommerNourritureboisson', args: [itemId, choix]
|
||||
})
|
||||
return
|
||||
}
|
||||
const item = this.getItem(itemId)
|
||||
if (!item.getUtilisationCuisine()) {
|
||||
@ -1341,7 +1337,7 @@ export class RdDActor extends RdDBaseActorSang {
|
||||
const etat = this.getEtatGeneral({ ethylisme: true });
|
||||
const nbDoses = Number(this.system.compteurs.ethylisme.nb_doses || 0);
|
||||
const ethylismeData = {
|
||||
alias: this.name,
|
||||
alias: this.getAlias(),
|
||||
actor: this,
|
||||
vie: this.system.sante.vie.max,
|
||||
alcool: alcool,
|
||||
@ -1426,7 +1422,7 @@ export class RdDActor extends RdDBaseActorSang {
|
||||
const perteDissolution = Math.max(0, Math.min(dissolution, conversion));
|
||||
|
||||
let stressRollData = {
|
||||
alias: this.name,
|
||||
alias: this.getAlias(),
|
||||
selectedCarac: this.system.carac.reve,
|
||||
rolled: stressRoll,
|
||||
stress: fromStress,
|
||||
@ -1517,7 +1513,7 @@ export class RdDActor extends RdDBaseActorSang {
|
||||
carac.value = niveauSuivant;
|
||||
|
||||
let checkXp = {
|
||||
alias: this.name,
|
||||
alias: this.getAlias(),
|
||||
carac: caracName,
|
||||
value: niveauSuivant,
|
||||
xp: carac.xp
|
||||
@ -1547,7 +1543,7 @@ export class RdDActor extends RdDBaseActorSang {
|
||||
newCompData.system.niveau += 1;
|
||||
newCompData.system.xp = newXP;
|
||||
let checkXp = {
|
||||
alias: this.name,
|
||||
alias: this.getAlias(),
|
||||
competence: newCompData.name,
|
||||
niveau: newCompData.system.niveau,
|
||||
xp: newCompData.system.xp,
|
||||
@ -1784,7 +1780,7 @@ export class RdDActor extends RdDBaseActorSang {
|
||||
}
|
||||
const competence = this.getCompetence(compName);
|
||||
let rollData = {
|
||||
alias: this.name,
|
||||
alias: this.getAlias(),
|
||||
caracValue: Number(carac.value),
|
||||
selectedCarac: carac,
|
||||
competence: competence,
|
||||
@ -1857,7 +1853,7 @@ export class RdDActor extends RdDBaseActorSang {
|
||||
label: 'Jet ' + Grammar.apostrophe('de', competence.name),
|
||||
template: 'systems/foundryvtt-reve-de-dragon/templates/dialog-roll-competence.html',
|
||||
rollData: {
|
||||
alias: this.name,
|
||||
alias: this.getAlias(),
|
||||
carac: this.system.carac,
|
||||
selectedCarac: this.getCaracByName(caracName),
|
||||
selectedCaracName: caracName,
|
||||
@ -2521,7 +2517,11 @@ export class RdDActor extends RdDBaseActorSang {
|
||||
|
||||
async onRollTachePremiersSoins(blessureId, rollData) {
|
||||
if (!this.isOwner) {
|
||||
return RdDBaseActor.remoteActorCall({ tokenId: this.token?.id, actorId: this.id, method: 'onRollTachePremiersSoins', args: [blessureId, rollData] });
|
||||
return RdDBaseActor.remoteActorCall({
|
||||
tokenId: this.token?.id,
|
||||
actorId: this.id,
|
||||
method: 'onRollTachePremiersSoins', args: [blessureId, rollData]
|
||||
})
|
||||
}
|
||||
const blessure = this.getItem(blessureId, 'blessure')
|
||||
console.log('TODO update blessure', this, blessureId, rollData, rollData.tache);
|
||||
@ -2551,7 +2551,11 @@ export class RdDActor extends RdDBaseActorSang {
|
||||
|
||||
async onRollSoinsComplets(blessureId, rollData) {
|
||||
if (!this.isOwner) {
|
||||
return RdDBaseActor.remoteActorCall({ tokenId: this.token?.id, actorId: this.id, method: 'onRollSoinsComplets', args: [blessureId, rollData] });
|
||||
return RdDBaseActor.remoteActorCall({
|
||||
tokenId: this.token?.id,
|
||||
actorId: this.id,
|
||||
method: 'onRollSoinsComplets', args: [blessureId, rollData]
|
||||
})
|
||||
}
|
||||
const blessure = this.getItem(blessureId, 'blessure')
|
||||
if (blessure && blessure.system.premierssoins.done && !blessure.system.soinscomplets.done) {
|
||||
@ -2930,7 +2934,7 @@ export class RdDActor extends RdDBaseActorSang {
|
||||
|
||||
let newQuantite = herbeData.system.quantite - herbeData.nbBrins;
|
||||
let messageData = {
|
||||
alias: this.name,
|
||||
alias: this.getAlias(),
|
||||
nbBrinsReste: newQuantite,
|
||||
potion: newPotion,
|
||||
herbe: herbeData
|
||||
@ -3017,15 +3021,16 @@ export class RdDActor extends RdDBaseActorSang {
|
||||
case 'queue':
|
||||
case 'ombre':
|
||||
case 'souffle':
|
||||
await this.onDeleteOwnedDraconique(item, options, id);
|
||||
break;
|
||||
await this.onDeleteOwnedDraconique(item, options, id)
|
||||
break
|
||||
case 'casetmr':
|
||||
await this.onDeleteOwnedCaseTmr(item, options, id);
|
||||
break;
|
||||
await this.onDeleteOwnedCaseTmr(item, options, id)
|
||||
break
|
||||
case 'empoignade':
|
||||
await RdDEmpoignade.deleteLinkedEmpoignade(this.id, item)
|
||||
break;
|
||||
break
|
||||
}
|
||||
super.onDeleteItem(item, options, id)
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
|
@ -19,6 +19,7 @@ import { RdDCombat, RdDCombatManager } from "../rdd-combat.js";
|
||||
import { RdDConfirm } from "../rdd-confirm.js";
|
||||
import { ENTITE_INCARNE, SHOW_DICE, SYSTEM_RDD } from "../constants.js";
|
||||
import { RdDItemArme } from "../item-arme.js";
|
||||
import { RdDCarac } from "../rdd-carac.js";
|
||||
|
||||
const POSSESSION_SANS_DRACONIC = {
|
||||
img: 'systems/foundryvtt-reve-de-dragon/icons/entites/possession.webp',
|
||||
@ -36,6 +37,13 @@ const POSSESSION_SANS_DRACONIC = {
|
||||
*/
|
||||
export class RdDBaseActorReve extends RdDBaseActor {
|
||||
|
||||
prepareActorData() {
|
||||
super.prepareActorData()
|
||||
this.system.attributs.plusdom.value = this.getBonusDegat()
|
||||
this.system.sante.endurance.max = this.getEnduranceMax()
|
||||
this.system.sante.endurance.value = Math.min(this.system.sante.endurance.value, this.system.sante.endurance.max)
|
||||
}
|
||||
|
||||
getCaracChanceActuelle() {
|
||||
return {
|
||||
label: 'Chance actuelle',
|
||||
@ -52,21 +60,26 @@ export class RdDBaseActorReve extends RdDBaseActor {
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
getTaille() { return Misc.toInt(this.system.carac.taille?.value) }
|
||||
getConstitution() { return this.getReve() }
|
||||
getForce() { return this.getReve() }
|
||||
getAgilite() { return this.getForce() }
|
||||
getReve() { return Misc.toInt(this.system.carac.reve?.value) }
|
||||
getChance() { return this.getReve() }
|
||||
|
||||
getReveActuel() { return this.getReve() }
|
||||
getChanceActuel() { return this.getChance() }
|
||||
|
||||
getReve() { return Number(this.system.carac.reve?.value ?? 0) }
|
||||
getForce() { return this.getReve() }
|
||||
getTaille() { return Number(this.system.carac.taille?.value ?? 0) }
|
||||
getAgilite() { return this.getForce() }
|
||||
getChance() { return this.getReve() }
|
||||
getEnduranceMax() { return Math.max(1, this.getTaille() + this.getConstitution()) }
|
||||
getEncombrementMax() { return (this.getForce() + this.getTaille()) / 2 }
|
||||
getBonusDegat() { return RdDCarac.getCaracDerivee(this.getEncombrementMax()).plusdom }
|
||||
|
||||
getMoralTotal() { return 0 }
|
||||
getBonusDegat() { return Number(this.system.attributs?.plusdom?.value ?? 0) }
|
||||
getProtectionNaturelle() { return Number(this.system.attributs?.protection?.value ?? 0) }
|
||||
getSConst() { return 0 }
|
||||
|
||||
/* -------------------------------------------- */
|
||||
getEncombrementMax() { return 0 }
|
||||
isSurenc() { return false }
|
||||
computeMalusSurEncombrement() { return 0 }
|
||||
|
||||
@ -84,7 +97,7 @@ export class RdDBaseActorReve extends RdDBaseActor {
|
||||
isActorCombat() { return true }
|
||||
|
||||
getCaracInit(competence) {
|
||||
if (!competence){
|
||||
if (!competence) {
|
||||
return 0
|
||||
}
|
||||
if (competence.type == ITEM_TYPES.competencecreature) {
|
||||
@ -117,7 +130,7 @@ export class RdDBaseActorReve extends RdDBaseActor {
|
||||
for (let effect of this.getEffects()) {
|
||||
if (effect.duration.type !== 'none' && (effect.duration.remaining <= 0 || options.terminer)) {
|
||||
await effect.delete();
|
||||
ChatMessage.create({ content: `${this.name} n'est plus ${Misc.lowerFirst(game.i18n.localize(effect.system.label))} !` });
|
||||
ChatMessage.create({ content: `${this.getAlias()} n'est plus ${Misc.lowerFirst(game.i18n.localize(effect.system.label))} !` });
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -288,7 +301,7 @@ export class RdDBaseActorReve extends RdDBaseActor {
|
||||
|
||||
await this.openRollDialog({
|
||||
name: `jet-${this.id}`,
|
||||
label: `Jet de ${this.name}`,
|
||||
label: `Jet de ${this.getAlias()}`,
|
||||
template: 'systems/foundryvtt-reve-de-dragon/templates/dialog-roll.html',
|
||||
rollData: {
|
||||
carac: carac,
|
||||
@ -445,8 +458,7 @@ export class RdDBaseActorReve extends RdDBaseActor {
|
||||
RdDBaseActor.remoteActorCall({
|
||||
tokenId: this.token?.id,
|
||||
actorId: this.id,
|
||||
method: 'encaisserDommagesValidationGR',
|
||||
args: [rollData, armure, show, attackerToken, defenderToken]
|
||||
method: 'encaisserDommagesValidationGR', args: [rollData, armure, show, attackerToken, defenderToken]
|
||||
})
|
||||
} else {
|
||||
DialogValidationEncaissement.validerEncaissement(this, rollData, armure,
|
||||
@ -463,7 +475,7 @@ export class RdDBaseActorReve extends RdDBaseActor {
|
||||
|
||||
async $afficherEncaissement(encaissement, show, defenderToken) {
|
||||
foundry.utils.mergeObject(encaissement, {
|
||||
alias: defenderToken?.name ?? this.name,
|
||||
alias: defenderToken?.name ?? this.getAlias(),
|
||||
hasPlayerOwner: this.hasPlayerOwner,
|
||||
show: show ?? {}
|
||||
}, { overwrite: false });
|
||||
@ -496,7 +508,7 @@ export class RdDBaseActorReve extends RdDBaseActor {
|
||||
}
|
||||
const rolled = await RdDResolutionTable.roll(this.getReveActuel(), - Number(entite.system.carac.niveau.value));
|
||||
const rollData = {
|
||||
alias: this.name,
|
||||
alias: this.getAlias(),
|
||||
rolled: rolled,
|
||||
entite: entite.name,
|
||||
selectedCarac: this.system.carac.reve
|
||||
@ -516,7 +528,7 @@ export class RdDBaseActorReve extends RdDBaseActor {
|
||||
isEntiteAccordee(attacker) { return true }
|
||||
|
||||
async setEntiteReveAccordee(actor) {
|
||||
ui.notifications.error("Impossible de s'accorder à " + this.name + ": ce n'est pas une entité incarnée");
|
||||
ui.notifications.error("Impossible de s'accorder à " + this.getAlias() + ": ce n'est pas une entité incarnée");
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -21,7 +21,7 @@ export class RdDBaseActorSangSheet extends RdDBaseActorReveSheet {
|
||||
this.html.find('.creer-blessure-grave').click(async event => RdDItemBlessure.createBlessure(this.actor, 4));
|
||||
this.html.find('.creer-blessure-critique').click(async event => RdDItemBlessure.createBlessure(this.actor, 6));
|
||||
|
||||
this.html.find('.subir-blessure-contusion').click(async event => RdDItemBlessure.applyFullBlessure(this.actor, 2));
|
||||
this.html.find('.subir-blessure-contusion').click(async event => RdDItemBlessure.applyFullBlessure(this.actor, 0));
|
||||
this.html.find('.subir-blessure-legere').click(async event => RdDItemBlessure.applyFullBlessure(this.actor, 2));
|
||||
this.html.find('.subir-blessure-grave').click(async event => RdDItemBlessure.applyFullBlessure(this.actor, 4));
|
||||
this.html.find('.subir-blessure-critique').click(async event => RdDItemBlessure.applyFullBlessure(this.actor, 6));
|
||||
|
@ -6,6 +6,7 @@ import { RdDBaseActorReve } from "./base-actor-reve.js";
|
||||
import { RdDDice } from "../rdd-dice.js";
|
||||
import { RdDItemBlessure } from "../item/blessure.js";
|
||||
import { ChatUtility } from "../chat-utility.js";
|
||||
import { Misc } from "../misc.js";
|
||||
|
||||
/**
|
||||
* Classe de base pour les acteurs qui peuvent subir des blessures
|
||||
@ -14,25 +15,32 @@ import { ChatUtility } from "../chat-utility.js";
|
||||
*/
|
||||
export class RdDBaseActorSang extends RdDBaseActorReve {
|
||||
|
||||
prepareActorData() {
|
||||
this.system.sante.vie.max = Math.ceil((this.getTaille() + this.getConstitution()) / 2)
|
||||
this.system.sante.vie.value = Math.min(this.system.sante.vie.value, this.system.sante.vie.max)
|
||||
super.prepareActorData()
|
||||
this.system.attributs.encombrement.value = this.getEncombrementMax()
|
||||
}
|
||||
|
||||
getForce() { return Number(this.system.carac.force?.value ?? 0) }
|
||||
getForce() { return Misc.toInt(this.system.carac.force?.value) }
|
||||
getConstitution() { return Misc.toInt(this.system.carac.constitution?.value) }
|
||||
getVolonte() { return Misc.toInt(this.system.carac.volonte?.value) }
|
||||
|
||||
getBonusDegat() { return Number(this.system.attributs?.plusdom?.value ?? 0) }
|
||||
getProtectionNaturelle() { return Number(this.system.attributs?.protection?.value ?? 0) }
|
||||
getSConst() { return 0 }
|
||||
getVieMax() { return Misc.toInt(this.system.sante.vie?.max) }
|
||||
getEnduranceMax() { return Math.max(1, this.getTaille() + this.getConstitution()) }
|
||||
getFatigueMax() { return this.getEnduranceMax() * 2 }
|
||||
|
||||
getEnduranceMax() { return Math.max(1, Math.min(this.system.sante.endurance.max, MAX_ENDURANCE_FATIGUE)) }
|
||||
getProtectionNaturelle() { return Misc.toInt(this.system.attributs?.protection?.value) }
|
||||
|
||||
getFatigueActuelle() {
|
||||
if (ReglesOptionnelles.isUsing("appliquer-fatigue")) {
|
||||
return Math.max(0, Math.min(this.getFatigueMax(), this.system.sante.fatigue?.value ?? 0));
|
||||
return Math.max(0, Math.min(this.getFatigueMax(), Misc.toInt(this.system.sante.fatigue?.value)))
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
getFatigueRestante() { return this.getFatigueMax() - this.getFatigueActuelle() }
|
||||
getFatigueMin() { return this.system.sante.endurance.max - this.system.sante.endurance.value }
|
||||
getFatigueMax() { return this.getEnduranceMax() * 2 }
|
||||
|
||||
malusFatigue() {
|
||||
if (ReglesOptionnelles.isUsing("appliquer-fatigue")) {
|
||||
@ -42,7 +50,6 @@ export class RdDBaseActorSang extends RdDBaseActorReve {
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
getEncombrementMax() { return Number(this.system.attributs?.encombrement?.value ?? 0) }
|
||||
isSurenc() { return this.computeMalusSurEncombrement() < 0 }
|
||||
|
||||
computeMalusSurEncombrement() {
|
||||
@ -191,7 +198,7 @@ export class RdDBaseActorSang extends RdDBaseActorReve {
|
||||
encaissement.mort = true;
|
||||
ChatMessage.create({
|
||||
content: `<img class="chat-icon" src="icons/svg/skull.svg" data-tooltip="charge" />
|
||||
<strong>${this.name} vient de succomber à une seconde blessure critique ! Que les Dragons gardent son Archétype en paix !</strong>`
|
||||
<strong>${this.getAlias()} vient de succomber à une seconde blessure critique ! Que les Dragons gardent son Archétype en paix !</strong>`
|
||||
});
|
||||
}
|
||||
return blessure;
|
||||
@ -218,7 +225,7 @@ export class RdDBaseActorSang extends RdDBaseActorReve {
|
||||
async jetDeVie() {
|
||||
if (this.isDead()) {
|
||||
ChatMessage.create({
|
||||
content: `Jet de Vie: ${this.name} est déjà mort, ce n'est pas la peine d'en rajouter !!!!!`,
|
||||
content: `Jet de Vie: ${this.getAlias()} est déjà mort, ce n'est pas la peine d'en rajouter !!!!!`,
|
||||
whisper: ChatUtility.getOwners(this)
|
||||
})
|
||||
return
|
||||
@ -242,7 +249,7 @@ export class RdDBaseActorSang extends RdDBaseActorReve {
|
||||
await this.santeIncDec("vie", -perte);
|
||||
}
|
||||
if (this.isDead()) {
|
||||
msgText += `<br><strong>${this.name} est mort !!!!</strong>`;
|
||||
msgText += `<br><strong>${this.getAlias()} est mort !!!!</strong>`;
|
||||
}
|
||||
else if (prochainJet > 0) {
|
||||
msgText += `<br>Prochain jet de vie dans ${prochainJet} ${isCritique ? 'round' : 'minute'}${prochainJet > 1 ? 's' : ''} ${isCritique ? '(état critique)' : '(état grave)'}`
|
||||
@ -273,7 +280,7 @@ export class RdDBaseActorSang extends RdDBaseActorReve {
|
||||
|
||||
async setSonne(sonne = true) {
|
||||
if (!game.combat && sonne) {
|
||||
ui.notifications.info(`${this.name} est hors combat, il ne reste donc pas sonné`);
|
||||
ui.notifications.info(`${this.getAlias()} est hors combat, il ne reste donc pas sonné`);
|
||||
return;
|
||||
}
|
||||
await this.setEffect(STATUSES.StatusStunned, sonne)
|
||||
|
@ -18,6 +18,7 @@ export class RdDBaseActor extends Actor {
|
||||
.map(it => it[0])
|
||||
.find(it => it)
|
||||
}
|
||||
|
||||
static $findCaracByName(carac, name) {
|
||||
const caracList = Object.entries(carac);
|
||||
let entry = Misc.findFirstLike(name, caracList, { mapper: it => it[0], description: 'caractéristique' });
|
||||
@ -26,6 +27,16 @@ export class RdDBaseActor extends Actor {
|
||||
}
|
||||
return entry && entry.length > 0 ? carac[entry[0]] : undefined;
|
||||
}
|
||||
static getDefaultValue(actorType, path) {
|
||||
if (path.includes('.')) {
|
||||
path = path.split('.')
|
||||
}
|
||||
let obj = game.model.Actor[actorType]
|
||||
for (let p of path) {
|
||||
obj = obj ? obj[p] : undefined
|
||||
}
|
||||
return obj
|
||||
}
|
||||
|
||||
static getDefaultImg(itemType) {
|
||||
return game.system.rdd.actorClasses[itemType]?.defaultIcon ?? defaultItemImg[itemType];
|
||||
@ -45,29 +56,32 @@ export class RdDBaseActor extends Actor {
|
||||
}
|
||||
}
|
||||
|
||||
static remoteActorCall(callData, userId = undefined) {
|
||||
userId = userId ?? Misc.firstConnectedGMId();
|
||||
if (userId == game.user.id) {
|
||||
RdDBaseActor.onRemoteActorCall(callData, userId);
|
||||
return false;
|
||||
static remoteActorCall(callData) {
|
||||
if (game.user.isGM) {
|
||||
RdDBaseActor.onRemoteActorCall(callData, game.user.id)
|
||||
return false
|
||||
}
|
||||
else {
|
||||
game.socket.emit(SYSTEM_SOCKET_ID, { msg: "msg_remote_actor_call", data: callData, userId: userId });
|
||||
return true;
|
||||
game.socket.emit(SYSTEM_SOCKET_ID, {
|
||||
msg: "msg_remote_actor_call",
|
||||
data: callData,
|
||||
userId: Misc.firstConnectedGMId()
|
||||
})
|
||||
return true
|
||||
}
|
||||
}
|
||||
|
||||
static onRemoteActorCall(callData, userId) {
|
||||
const actor = RdDBaseActor.getRealActor(callData?.actorId, callData?.tokenId);
|
||||
if (userId == game.user.id) {
|
||||
const actor = RdDBaseActor.getRealActor(callData?.actorId, callData?.tokenId);
|
||||
if (Misc.isOwnerPlayerOrUniqueConnectedGM(actor)) { // Seul le joueur choisi effectue l'appel: le joueur courant si propriétaire de l'actor, ou le MJ sinon
|
||||
const args = callData.args;
|
||||
console.info(`RdDBaseActor.onRemoteActorCall: pour l'Actor ${callData.actorId}, appel de RdDBaseActor.${callData.method}(`, ...args, ')');
|
||||
actor[callData.method](...args);
|
||||
}
|
||||
// Seul le joueur choisi effectue l'appel: le joueur courant si propriétaire de l'actor, ou le MJ sinon
|
||||
const args = callData.args;
|
||||
console.info(`RdDBaseActor.onRemoteActorCall: pour l'Actor ${callData.actorId}, appel de RdDBaseActor.${callData.method}(`, ...args, ')');
|
||||
actor[callData.method](...args);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
static getRealActor(actorId, tokenId) {
|
||||
if (tokenId) {
|
||||
let token = canvas.tokens.get(tokenId)
|
||||
@ -78,6 +92,13 @@ export class RdDBaseActor extends Actor {
|
||||
return game.actors.get(actorId)
|
||||
}
|
||||
|
||||
getAlias() {
|
||||
if (this.token?.name != null && this.token != this.prototypeToken) {
|
||||
return this.token.name
|
||||
}
|
||||
return this.name
|
||||
}
|
||||
|
||||
isPersonnageJoueur() { return false }
|
||||
|
||||
static extractActorMin = (actor) => { return { id: actor?.id, type: actor?.type, name: actor?.name, img: actor?.img }; };
|
||||
@ -171,7 +192,8 @@ export class RdDBaseActor extends Actor {
|
||||
this.computeEncTotal()
|
||||
}
|
||||
|
||||
async prepareActorData() { }
|
||||
prepareActorData() { }
|
||||
|
||||
async computeEtatGeneral() { }
|
||||
/* -------------------------------------------- */
|
||||
findPlayer() {
|
||||
@ -203,11 +225,26 @@ export class RdDBaseActor extends Actor {
|
||||
getMonnaie(id) { return this.findItemLike(id, 'monnaie'); }
|
||||
getEncombrementMax() { return 0 }
|
||||
|
||||
/* -------------------------------------------- */
|
||||
async updateCarac(caracName, to) {
|
||||
}
|
||||
/* -------------------------------------------- */
|
||||
async onPreUpdateItem(item, change, options, id) { }
|
||||
async onCreateItem(item, options, id) { }
|
||||
async onDeleteItem(item, options, id) { }
|
||||
async onUpdateActor(update, options, actorId) { }
|
||||
async onDeleteItem(item, options, id) {
|
||||
if (item.isInventaire()) {
|
||||
this._removeItemFromConteneur(item)
|
||||
}
|
||||
}
|
||||
|
||||
_removeItemFromConteneur(item) {
|
||||
this.items.filter(it => it.isConteneur() && it.system.contenu.includes(item.id))
|
||||
.forEach(conteneur => {
|
||||
const nouveauContenu = conteneur.system.contenu.filter(id => id != item.id);
|
||||
conteneur.update({ 'system.contenu': nouveauContenu });
|
||||
});
|
||||
}
|
||||
|
||||
async onTimeChanging(oldTimestamp, newTimestamp) {
|
||||
this.items.filter(it => it.isFinPeriode(oldTimestamp, newTimestamp))
|
||||
@ -215,21 +252,20 @@ export class RdDBaseActor extends Actor {
|
||||
}
|
||||
|
||||
async creerObjetParMJ(object) {
|
||||
if (!Misc.isFirstConnectedGM()) {
|
||||
RdDBaseActor.remoteActorCall({
|
||||
tokenId: this.token?.id,
|
||||
actorId: this.id,
|
||||
method: 'creerObjetParMJ',
|
||||
args: [object]
|
||||
});
|
||||
return;
|
||||
if (this.isOwner) {
|
||||
await this.createEmbeddedDocuments('Item', [object])
|
||||
return
|
||||
}
|
||||
await this.createEmbeddedDocuments('Item', [object])
|
||||
RdDBaseActor.remoteActorCall({
|
||||
tokenId: this.token?.id,
|
||||
actorId: this.id,
|
||||
method: 'creerObjetParMJ', args: [object]
|
||||
})
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
async cleanupConteneurs() {
|
||||
if (Misc.isOwnerPlayerOrUniqueConnectedGM(this)) {
|
||||
if (Misc.isOwnerPlayer(this)) {
|
||||
let updates = this.itemTypes['conteneur']
|
||||
.filter(c => c.system.contenu.filter(id => this.getItem(id) == undefined).length > 0)
|
||||
.map(c => { return { _id: c._id, 'system.contenu': c.system.contenu.filter(id => this.getItem(id) != undefined) } });
|
||||
@ -300,7 +336,7 @@ export class RdDBaseActor extends Actor {
|
||||
ui.notifications.error(`Impossible d'ajouter un gain de ${sols} <0`);
|
||||
return;
|
||||
}
|
||||
if (fromActorId && !game.user.isGM) {
|
||||
if (fromActorId && !this.isOwner) {
|
||||
RdDBaseActor.remoteActorCall({
|
||||
userId: Misc.connectedGMOrUser(),
|
||||
tokenId: this.token?.id,
|
||||
@ -335,10 +371,9 @@ export class RdDBaseActor extends Actor {
|
||||
if (!Misc.isFirstConnectedGM()) {
|
||||
RdDBaseActor.remoteActorCall({
|
||||
actorId: achat.vendeurId ?? achat.acheteurId,
|
||||
method: 'achatVente',
|
||||
args: [achat]
|
||||
method: 'achatVente', args: [achat]
|
||||
});
|
||||
return;
|
||||
return
|
||||
}
|
||||
const cout = Number(achat.prixTotal ?? 0);
|
||||
const vendeur = achat.vendeurId ? game.actors.get(achat.vendeurId) : undefined;
|
||||
@ -367,7 +402,7 @@ export class RdDBaseActor extends Actor {
|
||||
chatAchatItem.quantiteTotal = quantite;
|
||||
ChatMessage.create({
|
||||
user: achat.userId,
|
||||
speaker: { alias: (acheteur ?? vendeur).name },
|
||||
speaker: { alias: (acheteur ?? vendeur).getAlias() },
|
||||
whisper: ChatUtility.getOwners(this),
|
||||
content: await renderTemplate('systems/foundryvtt-reve-de-dragon/templates/chat-achat-item.html', chatAchatItem)
|
||||
});
|
||||
@ -683,7 +718,7 @@ export class RdDBaseActor extends Actor {
|
||||
type: this.type,
|
||||
img: this.img,
|
||||
pack: this.pack,
|
||||
name: this.name,
|
||||
name: this.getAlias(),
|
||||
system: { description: this.system.description }
|
||||
}
|
||||
renderTemplate('systems/foundryvtt-reve-de-dragon/templates/post-actor.html', chatData)
|
||||
@ -691,10 +726,10 @@ export class RdDBaseActor extends Actor {
|
||||
}
|
||||
|
||||
actionImpossible(action) {
|
||||
ui.notifications.info(`${this.name} ne peut pas faire cette action: ${action}`)
|
||||
ui.notifications.info(`${this.getAlias()} ne peut pas faire cette action: ${action}`)
|
||||
|
||||
}
|
||||
async roll() { this.actionImpossible("jet de caractéristiques") }
|
||||
|
||||
async jetEthylisme() { this.actionImpossible("jet d'éthylisme") }
|
||||
async rollAppelChance() { this.actionImpossible("appel à la chance") }
|
||||
async jetDeMoral() { this.actionImpossible("jet de moral") }
|
||||
|
@ -73,7 +73,7 @@ export class RdDCommerceSheet extends RdDBaseActorSheet {
|
||||
}
|
||||
const disponible = this.actor.getQuantiteDisponible(item)
|
||||
if (disponible == 0) {
|
||||
ui.notifications.warn(`${this.name} n'a plus de ${item.name} en vente`);
|
||||
ui.notifications.warn(`${this.getAlias()} n'a plus de ${item.name} en vente`);
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -25,9 +25,6 @@ export class RdDCommerce extends RdDBaseActor {
|
||||
}
|
||||
await super.depenserSols(cout)
|
||||
}
|
||||
async consommerNourritureboisson(itemId, choix, userId) {
|
||||
// ne pas consommer pour un commerce
|
||||
}
|
||||
|
||||
async decrementerQuantiteItem(item, quantite) {
|
||||
if (this.system.illimite) {
|
||||
|
@ -1,6 +1,4 @@
|
||||
import { ENTITE_INCARNE } from "../constants.js";
|
||||
import { ITEM_TYPES } from "../item.js";
|
||||
import { STATUSES } from "../settings/status-effects.js";
|
||||
import { RdDBaseActorSang } from "./base-actor-sang.js";
|
||||
|
||||
export class RdDCreature extends RdDBaseActorSang {
|
||||
@ -9,6 +7,7 @@ export class RdDCreature extends RdDBaseActorSang {
|
||||
return "systems/foundryvtt-reve-de-dragon/icons/creatures/bramart.svg";
|
||||
}
|
||||
|
||||
getEnduranceMax() { return Math.max(1, this.getVieMax() + this.getConstitution()) }
|
||||
isCreature() { return true }
|
||||
|
||||
canReceive(item) {
|
||||
|
@ -27,6 +27,7 @@ export class RdDEntite extends RdDBaseActorReve {
|
||||
getForce() { return this.getReve() }
|
||||
getAgilite() { return this.getReve() }
|
||||
getChance() { return this.getReve() }
|
||||
getEnduranceMax() { return Math.max(1, this.getTaille() + this.getReve()) }
|
||||
|
||||
getDraconicOuPossession() {
|
||||
return this.itemTypes[ITEM_TYPES.competencecreature]
|
||||
|
@ -76,7 +76,7 @@ const MAPPING_BASE = [
|
||||
{ column: "derobee", rollClass: 'roll-carac', colName: 'Dérobée', getter: (actor, context) => actor.system.carac.derobee.value },
|
||||
{ column: "vie", getter: (actor, context) => actor.system.sante.vie.max },
|
||||
{ column: "endurance", getter: (actor, context) => actor.system.sante.endurance.max },
|
||||
{ column: "plusdom", colName: '+dom', getter: (actor, context) => actor.system.attributs.plusdom.value },
|
||||
{ column: "plusdom", colName: '+dom', getter: (actor, context) => actor.getBonusDegat() },
|
||||
{ column: "protectionnaturelle", colName: 'Protection naturelle', getter: (actor, context) => actor.system.attributs.protection.value > 0 ? actor.system.attributs.protection.value : '' },
|
||||
{ column: "description", getter: (actor, context) => Mapping.getDescription(actor) },
|
||||
{ column: "armure", getter: (actor, context) => Mapping.getArmure(actor, context) },
|
||||
@ -140,7 +140,8 @@ export class Mapping {
|
||||
|
||||
static prepareArmes(actor) {
|
||||
const armes = actor.items.filter(it => it.type == ITEM_TYPES.arme)
|
||||
RdDItemArme.ajoutCorpsACorps(armes, actor)
|
||||
armes.push(RdDItemArme.corpsACorps(actor));
|
||||
armes.push(RdDItemArme.empoignade(actor));
|
||||
return armes.map(arme => [
|
||||
arme.system.unemain ? Mapping.prepareArme(actor, arme, 'unemain') : undefined,
|
||||
arme.system.deuxmains ? Mapping.prepareArme(actor, arme, 'deuxmains') : undefined,
|
||||
@ -168,10 +169,10 @@ export class Mapping {
|
||||
arme: arme
|
||||
}
|
||||
}
|
||||
static dommagesArme(actor, arme, maniement){
|
||||
static dommagesArme(actor, arme, maniement) {
|
||||
const dmgArme = RdDItemArme.dommagesReels(arme, maniement)
|
||||
const dommages = Misc.toSignedString(dmgArme + RdDBonus.bonusDmg(actor, maniement, dmgArme))
|
||||
switch(arme.system.mortalite) {
|
||||
switch (arme.system.mortalite) {
|
||||
case 'non-mortel': return `(${dommages})`
|
||||
case 'empoignade': return '-'
|
||||
}
|
||||
@ -237,7 +238,7 @@ export class Mapping {
|
||||
|
||||
static prepareSorts(actor) {
|
||||
const codeVoies = Mapping.getCompetencesCategorie(actor, CATEGORIES_DRACONIC)
|
||||
.map(it => RdDItemSort.getVoieCode(it))
|
||||
.map(it => RdDItemSort.getCodeVoie(it.name))
|
||||
|
||||
return actor.itemTypes[ITEM_TYPES.sort].map(it => Mapping.prepareSort(it, codeVoies))
|
||||
.sort(Misc.ascending(it => `${it.voie} : ${it.description}`))
|
||||
@ -245,7 +246,7 @@ export class Mapping {
|
||||
|
||||
static prepareSort(sort, voies) {
|
||||
return {
|
||||
voie: RdDItemSort.getCodeDraconic(sort, voies),
|
||||
voie: RdDItemSort.getCode(sort, voies),
|
||||
description: Mapping.descriptionSort(sort),
|
||||
bonus: Mapping.bonusCase(sort)
|
||||
}
|
||||
@ -254,21 +255,16 @@ export class Mapping {
|
||||
static descriptionSort(sort) {
|
||||
const ptSeuil = Array(sort.system.coutseuil).map(it => '*')
|
||||
const caseTMR = sort.system.caseTMRspeciale.length > 0 ? Mapping.toVar(sort.system.caseTMRspeciale) : Misc.upperFirst(TMRType[sort.system.caseTMR].name)
|
||||
const ptreve = Mapping.addSpaceToNonNumeric(sort.system.ptreve)
|
||||
const diff = Mapping.addSpaceToNonNumeric(sort.system.difficulte)
|
||||
return `${sort.name}${ptSeuil} (${caseTMR}) R${diff} r${ptreve}`
|
||||
const coutReve = 'r' + RdDItemSort.addSpaceToNonNumeric(sort.system.ptreve)
|
||||
const diff = 'R' + RdDItemSort.addSpaceToNonNumeric(sort.system.difficulte)
|
||||
return `${sort.name}${ptSeuil} (${caseTMR}) ${diff} ${coutReve}`
|
||||
}
|
||||
|
||||
static addSpaceToNonNumeric(value) {
|
||||
return Number.isNumeric(value) ? value : ' ' + Mapping.toVar(value)
|
||||
}
|
||||
|
||||
static toVar(value) {
|
||||
return value.replace('variable', 'var')
|
||||
static toVar(caseSpeciale) {
|
||||
return Grammar.toLowerCaseNoAccent(caseSpeciale).startsWith('var') ? 'var' : caseSpeciale
|
||||
}
|
||||
|
||||
static bonusCase(sort) {
|
||||
const list = RdDItemSort.bonuscaseStringToList(sort.system.bonuscase).sort(Misc.descending(it => it.bonus))
|
||||
const list = RdDItemSort.stringToBonuscases(sort.system.bonuscase).sort(Misc.descending(it => it.bonus))
|
||||
if (list.length > 0) {
|
||||
const bonus = list[0]
|
||||
return `+${bonus.bonus}% en ${bonus.case}`
|
||||
|
@ -19,7 +19,7 @@ const PATHS = [
|
||||
|
||||
const RANDOM_VALUES = {
|
||||
'system.sexe': { 'masculin': 1, 'féminin': 1 },
|
||||
'system.main': { 'droitier': 51, 'gaucher': 15, 'ambidectre': 6 },
|
||||
'system.main': { 'droitier': 51, 'gaucher': 15, 'ambidextre': 6 },
|
||||
'system.cheveux': { 'noirs': 2, 'bruns': 5, 'châtains clair': 5, 'blonds': 4, 'blonds très clair': 1, 'roux carotte': 1, 'roux cuivré': 3 },
|
||||
'system.yeux': { 'noirs': 2, 'noisettes': 3, 'bruns vert': 4, 'verts': 3, 'bleus clair': 3, 'bleus gris': 2, 'gris': 1, 'mauves': 1, 'indigos': 1 },
|
||||
}
|
||||
|
@ -2,6 +2,464 @@
|
||||
import "./xregexp-all.js";
|
||||
import { SystemCompendiums } from "../settings/system-compendiums.js";
|
||||
import { RdDBaseActorReve } from "../actor/base-actor-reve.js";
|
||||
import { Grammar } from "../grammar.js";
|
||||
import { Misc } from "../misc.js";
|
||||
import { ENTITE_INCARNE, ENTITE_NONINCARNE } from "../constants.js";
|
||||
import { RdDItemTete } from "../item/tete.js";
|
||||
|
||||
const WHITESPACES = "\\s+"
|
||||
const NUMERIC = "[\\+\\-]?\\d+"
|
||||
const NUMERIC_VALUE = "(?<value>" + NUMERIC + ")"
|
||||
|
||||
const XREGEXP_COMP_CREATURE = WHITESPACES + "(?<carac>\\d+)"
|
||||
+ WHITESPACES + NUMERIC_VALUE
|
||||
+ "(" + WHITESPACES + "(?<init>\\d+)?\\s+?(?<dommages>[\\+\\-]?\\d+)?" + ")?"
|
||||
|
||||
// Skill parser depending on the type of actor
|
||||
const compParser = {
|
||||
personnage: "(\\s+\\((?<special>[^\\)]+)\\))?(,\\s*\\p{Letter}+)*(\\s+(?<malus>avec armure))?" + WHITESPACES + NUMERIC_VALUE,
|
||||
creature: XREGEXP_COMP_CREATURE,
|
||||
entite: XREGEXP_COMP_CREATURE
|
||||
}
|
||||
|
||||
const MANIEMENTS = {
|
||||
'de lancer': (weapon) => { return { name: weapon.system.lancer, categorie: 'lancer' } },
|
||||
'de jet': (weapon) => { return { name: weapon.system.lancer, categorie: 'lancer' } },
|
||||
'à une main': (weapon) => { return { name: weapon.system.competence, categorie: 'melee' } },
|
||||
'à deux main': (weapon) => { return { name: weapon.system.competence.replace("à 1 main", "à 2 main"), categorie: 'melee' } },
|
||||
'mêlée': (weapon) => { return { name: weapon.system.competence, categorie: 'melee' } },
|
||||
}
|
||||
const XREGEXP_WEAPON_MANIEMENT = "(?<maniement>(" + Misc.join(Object.keys(MANIEMENTS), '|') + "))"
|
||||
|
||||
const XREGEXP_SORT_VOIE = "(?<voies>[OHNT](\\/[OHNT])*)"
|
||||
const XREGEXP_SORT_NAME = "(?<name>[^\\(]+)"
|
||||
const XREGEXP_SORT_CASE = "\\((?<case>([A-Za-zÀ-ÖØ-öø-ÿ\\s\\-]+|[A-M]\\d{1,2})+)\\)";
|
||||
|
||||
const XREGEXP_SORT = "(" + XREGEXP_SORT_VOIE
|
||||
+ WHITESPACES + XREGEXP_SORT_NAME
|
||||
+ WHITESPACES + XREGEXP_SORT_CASE
|
||||
+ WHITESPACES + "R(?<diff>([\\-\\d]+|(\\w|\\s)+))"
|
||||
+ WHITESPACES + "r(?<reve>(\\d+(\\+)?|\\s\\w+))"
|
||||
+ "(" + WHITESPACES + "\\+(?<bonus>\\d+)\\s?%" + WHITESPACES + "en" + WHITESPACES + "(?<bonuscase>[A-M]\\d{1,2})" + ")?"
|
||||
+ ")"
|
||||
|
||||
|
||||
// Main class for parsing a stat block
|
||||
export class RdDStatBlockParser {
|
||||
|
||||
static openInputDialog() {
|
||||
let dialog = new Dialog({
|
||||
title: "Import de stats de PNJ/Créatures",
|
||||
content: `
|
||||
<div>
|
||||
<p>Coller le texte de la stat ici</p>
|
||||
<textarea id="statBlock" style="width: 100%; height: 200px;"></textarea>
|
||||
</div>
|
||||
`,
|
||||
buttons: {
|
||||
ok: {
|
||||
label: "OK",
|
||||
callback: async (html) => {
|
||||
let statBlock = html.find("#statBlock")[0].value;
|
||||
await RdDStatBlockParser.parseStatBlock(statBlock);
|
||||
dialog.close();
|
||||
}
|
||||
},
|
||||
cancel: {
|
||||
label: "Cancel"
|
||||
}
|
||||
}
|
||||
});
|
||||
dialog.render(true);
|
||||
}
|
||||
|
||||
static fixWeirdPDF(statString) {
|
||||
// Split the statString into lines
|
||||
let lines = statString.split("\n");
|
||||
let newLines = [];
|
||||
let index = 0;
|
||||
let nextType = "string";
|
||||
// Loop through each line
|
||||
for (let i = 0; i < lines.length; i++) {
|
||||
// remove trailing spaces
|
||||
lines[i] = lines[i].trim();
|
||||
// Is it text ?
|
||||
if (lines[i].match(/^[a-zA-Zéêè\s]+/)) {
|
||||
if (nextType == "string") {
|
||||
newLines[index] = lines[i];
|
||||
nextType = "number";
|
||||
} else {
|
||||
console.log("Wrong sequence string detected...", lines[i], nextType);
|
||||
}
|
||||
}
|
||||
// Is it a number ?
|
||||
if (lines[i].match(/^[\d\s]+/)) {
|
||||
if (nextType == "number") {
|
||||
newLines[index] = newLines[index] + lines[i];
|
||||
nextType = "string";
|
||||
index++;
|
||||
} else {
|
||||
console.log("Wrong sequence number detected...", lines[i], nextType);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static getHeureKey(heure) {
|
||||
for (let h of game.system.rdd.config.heuresRdD) {
|
||||
if (h.label.toLowerCase() == heure.toLowerCase()) {
|
||||
return h.value;
|
||||
}
|
||||
}
|
||||
return "vaisseau";
|
||||
}
|
||||
|
||||
static fixCompName(name) {
|
||||
name = name.replace("Voie d'", "");
|
||||
name = name.replace("Voie de ", "");
|
||||
return name
|
||||
}
|
||||
|
||||
static async parseStatBlock(statString) {
|
||||
|
||||
//statString = statBlock03;
|
||||
if (!statString) {
|
||||
return;
|
||||
}
|
||||
|
||||
// Special function to fix strange/weird copy/paste from PDF readers
|
||||
// Unused up to now : this.fixWeirdPDF(statString);
|
||||
|
||||
// Replace all endline by space in the statString
|
||||
statString = statString.replace(/\n/g, " ");
|
||||
// Remove all multiple spaces
|
||||
statString = statString.replace(/\s{2,}/g, " ");
|
||||
// Remove all leading and trailing spaces
|
||||
statString = statString.trim();
|
||||
|
||||
// TODO: check for entite
|
||||
let type = RdDStatBlockParser.parseActorType(statString);
|
||||
|
||||
// Now start carac
|
||||
let actorData = foundry.utils.deepClone(game.model.Actor[type]);
|
||||
let items = [];
|
||||
|
||||
actorData.flags = { hautRevant: false, malusArmure: 0, type }
|
||||
for (let key in actorData.carac) {
|
||||
let caracDef = actorData.carac[key];
|
||||
// Parse the stat string for each caracteristic
|
||||
let carac = XRegExp.exec(statString, XRegExp(caracDef.label + "\\s+(?<value>\\d+)", 'giu'));
|
||||
if (carac?.value) {
|
||||
actorData.carac[key].value = Number(carac.value);
|
||||
}
|
||||
}
|
||||
|
||||
// If creature we need to setup additionnal fields
|
||||
switch (type) {
|
||||
case "creature":
|
||||
RdDStatBlockParser.parseCreature(statString, actorData)
|
||||
break
|
||||
case "entite":
|
||||
RdDStatBlockParser.parseEntite(statString, actorData)
|
||||
break
|
||||
}
|
||||
if (type == "personnage") {
|
||||
// Now process armors
|
||||
await RdDStatBlockParser.parseArmors(statString, actorData, items);
|
||||
}
|
||||
|
||||
// Get skills from compendium
|
||||
await RdDStatBlockParser.parseCompetences(statString, actorData, items);
|
||||
|
||||
|
||||
if (type == "personnage") {
|
||||
// Now process weapons
|
||||
await RdDStatBlockParser.parseWeapons(statString, items);
|
||||
|
||||
await RdDStatBlockParser.parseHautReve(statString, actorData, items);
|
||||
RdDStatBlockParser.parsePersonnage(statString, actorData);
|
||||
}
|
||||
|
||||
const name = RdDStatBlockParser.extractName(type, statString);
|
||||
|
||||
actorData.flags = undefined
|
||||
console.log(actorData);
|
||||
|
||||
let newActor = await RdDBaseActorReve.create({ name, type, system: actorData, items });
|
||||
await newActor.remiseANeuf()
|
||||
await RdDStatBlockParser.setValeursActuelles(newActor, statString)
|
||||
await newActor?.sheet.render(true)
|
||||
}
|
||||
|
||||
static async parseCompetences(statString, actorData, items) {
|
||||
const competences = await SystemCompendiums.getCompetences(actorData.flags.type);
|
||||
//console.log("Competences : ", competences);
|
||||
for (let competence of competences) {
|
||||
let compSourceString = statString
|
||||
let compNameToSearch = RdDStatBlockParser.fixCompName(competence.name)
|
||||
let compMatch = XRegExp.exec(compSourceString, XRegExp("\\s" + compNameToSearch + compParser[actorData.flags.type], 'giu'))
|
||||
while (compMatch) {
|
||||
items.push(RdDStatBlockParser.prepareCompetence(actorData, competence, compMatch))
|
||||
|
||||
// pour gérer les compétences avec spécialisations, si elle est trouvée, chercher si elle apparaît dans la suite
|
||||
compSourceString = compSourceString.substring(compSourceString.indexOf(compNameToSearch) + compNameToSearch.length)
|
||||
compMatch = XRegExp.exec(compSourceString, XRegExp("\\s" + compNameToSearch + compParser[actorData.flags.type], 'giu'))
|
||||
}
|
||||
if (actorData.flags.type == "personnage" && compSourceString.length == statString.length) {
|
||||
// ajout niveau de base
|
||||
items.push(competence.toObject())
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
static prepareCompetence(actorData, competence, compMatch) {
|
||||
const comp = competence.toObject();
|
||||
if (compMatch.special) {
|
||||
comp._id = undefined
|
||||
comp.name = `${comp.name} (${compMatch.special})`
|
||||
}
|
||||
comp.system.niveau = Number(compMatch.value);
|
||||
if (compMatch.malus) {
|
||||
comp.system.niveau = Number(compMatch.value) - actorData.flags.malusArmure
|
||||
}
|
||||
if (comp.system.categorie == 'draconic' && comp.system.niveau > -11) {
|
||||
actorData.flags.hautRevant = true
|
||||
}
|
||||
if (["creature", "entite"].includes(actorData.flags.type)) {
|
||||
comp.system.carac_value = Number(compMatch.carac);
|
||||
if (compMatch.dommages != undefined) {
|
||||
comp.system.dommages = Number(compMatch.dommages)
|
||||
comp.system.iscombat = true
|
||||
}
|
||||
}
|
||||
return comp
|
||||
}
|
||||
|
||||
static async parseArmors(statString, actorData, items) {
|
||||
const armors = await SystemCompendiums.getWorldOrCompendiumItems("armure", "equipement");
|
||||
for (let armor of armors) {
|
||||
let matchArmor = XRegExp.exec(statString, XRegExp(armor.name, 'giu'));
|
||||
if (matchArmor) {
|
||||
armor = armor.toObject()
|
||||
armor.system.equipe = true
|
||||
actorData.flags.malusArmure = armor.system.malus
|
||||
items.push(armor)
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static async parseWeapons(statString, items) {
|
||||
const weapons = await SystemCompendiums.getWorldOrCompendiumItems("arme", "equipement");
|
||||
//console.log("Equipement : ", equipment);
|
||||
// TODO: les noms d'armes peuvent avoir un suffixe (à une main, lancée) qui détermine la compétence correspondante
|
||||
// TODO: une arme peut être spécifique ("fourche"), ajouter une compétence dans ces cas là?
|
||||
for (let weapon of weapons) {
|
||||
let nomArmeManiement = XRegExp.exec(weapon.name, XRegExp(".*" + XREGEXP_WEAPON_MANIEMENT));
|
||||
if (nomArmeManiement) {
|
||||
continue // ignore les objets 'Dague de jet" ou "dague mêlée"
|
||||
}
|
||||
let weapMatch = XRegExp.exec(statString, XRegExp(weapon.name
|
||||
+ "(\\s*" + XREGEXP_WEAPON_MANIEMENT + ")?"
|
||||
+ "\\s+(?<value>\\+\\d+)", 'giu'));
|
||||
if (weapMatch) {
|
||||
weapon = weapon.toObject();
|
||||
weapon.system.equipe = 'true';
|
||||
items.push(weapon);
|
||||
|
||||
const niveau = Number(weapMatch.value);
|
||||
// now process the skill
|
||||
if (weapMatch?.maniement) {
|
||||
RdDStatBlockParser.setNiveauCompetenceArme(items, MANIEMENTS[weapMatch.maniement](weapon), niveau)
|
||||
}
|
||||
else {
|
||||
RdDStatBlockParser.setNiveauCompetenceArme(items, { name: weapon.system.competence, categorie: 'melee' }, niveau)
|
||||
RdDStatBlockParser.setNiveauCompetenceArme(items, { name: weapon.system.tir, categorie: 'tir' }, niveau)
|
||||
RdDStatBlockParser.setNiveauCompetenceArme(items, { name: weapon.system.lancer, categorie: 'lancer' }, niveau)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static setNiveauCompetenceArme(items, competence, niveau) {
|
||||
if (competence != "") {
|
||||
const item = items.find(i => i.system.categorie == competence.categorie && Grammar.equalsInsensitive(i.name, competence.name))
|
||||
if (item) {
|
||||
item.system.niveau = niveau
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static async setValeursActuelles(newActor, statString) {
|
||||
const updates = {
|
||||
}
|
||||
const endurance = XRegExp.exec(statString, XRegExp("endurance\\s+(?<value>\\d+)\\s+(\\(actuelle\\s*:\\s+(?<actuelle>\\d+)\\))?", 'giu'));
|
||||
if (endurance?.value) {
|
||||
if (newActor.getEnduranceMax() != endurance.value) {
|
||||
ui.notifications.warn(`Vérifier le calcul de l'endurance, calcul: ${newActor.getEnduranceMax()} / import: ${endurance.value}`)
|
||||
}
|
||||
}
|
||||
if (endurance?.actuelle) {
|
||||
updates['system.sante.endurance.value'] = Number(endurance?.actuelle)
|
||||
}
|
||||
|
||||
const vie = XRegExp.exec(statString, XRegExp("vie\\s+(?<value>\\d+)\\s+(\\(actuelle\\s*:\\s+(?<actuelle>\\d+)\\))?", 'giu'));
|
||||
if (vie?.value) {
|
||||
if (newActor.getVieMax() != vie.value) {
|
||||
ui.notifications.warn(`Vérifier le calcul de la vie, calcul: ${newActor.getVieMax()} / import: ${vie.value}`)
|
||||
}
|
||||
}
|
||||
if (vie?.actuelle) {
|
||||
updates['system.sante.vie.value'] = Number(vie?.actuelle)
|
||||
}
|
||||
await newActor.update(updates)
|
||||
}
|
||||
|
||||
static async parseHautReve(statString, actorData, items) {
|
||||
// Attemp to detect spell
|
||||
let sorts = await SystemCompendiums.getWorldOrCompendiumItems("sort", "sorts-oniros");
|
||||
sorts = sorts.concat(await SystemCompendiums.getWorldOrCompendiumItems("sort", "sorts-hypnos"));
|
||||
sorts = sorts.concat(await SystemCompendiums.getWorldOrCompendiumItems("sort", "sorts-narcos"));
|
||||
sorts = sorts.concat(await SystemCompendiums.getWorldOrCompendiumItems("sort", "sorts-thanatos"));
|
||||
|
||||
XRegExp.forEach(statString, XRegExp(XREGEXP_SORT, 'gu' /* keep case sensitive to match the spell draconic skill */),
|
||||
function (matchSort, i) {
|
||||
const sortName = Grammar.toLowerCaseNoAccent(matchSort.name).trim().replace("’", "'");
|
||||
let sort = sorts.find(s => Grammar.toLowerCaseNoAccent(s.name) == sortName)
|
||||
if (sort) {
|
||||
actorData.flags.hautRevant = true
|
||||
sort = sort.toObject();
|
||||
if (matchSort.bonus && matchSort.bonuscase) {
|
||||
sort.system.bonuscase = `${matchSort.bonuscase}:${matchSort.bonus}`;
|
||||
}
|
||||
items.push(sort);
|
||||
}
|
||||
else {
|
||||
ui.notifications.warn(`Impossible de trouver le sort ${matchSort.name} / ${sortName}`)
|
||||
}
|
||||
});
|
||||
|
||||
if (actorData.flags.hautRevant) {
|
||||
const donHR = await RdDItemTete.teteDonDeHautReve();
|
||||
if (donHR) {
|
||||
items.push(donHR.toObject());
|
||||
}
|
||||
|
||||
const demiReve = XRegExp.exec(statString, XRegExp("Demi-rêve\\s+(?<value>[A-M]\\d{1,2})", 'giu'))
|
||||
actorData.reve.tmrpos.coord = demiReve?.value ?? 'A1'
|
||||
}
|
||||
}
|
||||
|
||||
static parsePersonnage(statString, actorData) {
|
||||
actorData.reve.seuil.value = actorData.carac.reve.value
|
||||
actorData.compteurs.chance.value = actorData.carac.chance.value
|
||||
|
||||
const reveActuel = XRegExp.exec(statString, XRegExp("Rêve actuel\\s+(?<value>\\d+)", 'giu'))
|
||||
actorData.reve.reve.value = reveActuel?.value ? Number(reveActuel.value) : actorData.reve.seuil.value
|
||||
|
||||
const feminin = XRegExp.exec(statString, XRegExp("né(?<value>e?) à", 'giu'));
|
||||
actorData.sexe = (feminin?.value == 'e') ? 'féminin' : 'masculin';
|
||||
|
||||
// Get hour name : heure du XXXXX
|
||||
const heure = XRegExp.exec(statString, XRegExp("heure (du|de la|des|de l\')\\s*(?<value>[A-Za-zÀ-ÖØ-öø-ÿ\\s]+),", 'giu'));
|
||||
actorData.heure = this.getHeureKey(heure?.value || "Vaisseau");
|
||||
|
||||
// Get age
|
||||
const age = XRegExp.exec(statString, XRegExp("(?<value>\\d+) ans", 'giu'));
|
||||
if (age?.value) {
|
||||
actorData.age = Number(age.value);
|
||||
}
|
||||
// Get height
|
||||
const taille = XRegExp.exec(statString, XRegExp("(?<value>\\d+m\\d+)", 'giu'));
|
||||
if (taille?.value) {
|
||||
actorData.taille = taille.value;
|
||||
}
|
||||
// Get weight
|
||||
const poids = XRegExp.exec(statString, XRegExp("(?<value>\\d+ kg)", 'giu'));
|
||||
if (poids?.value) {
|
||||
actorData.poids = poids.value;
|
||||
}
|
||||
// Get cheveux
|
||||
const cheveux = XRegExp.exec(statString, XRegExp("kg,\\s+(?<value>[A-Za-zÀ-ÖØ-öø-ÿ\\s\\-]+),\\s+yeux", 'giu'));
|
||||
if (cheveux?.value) {
|
||||
actorData.cheveux = cheveux.value;
|
||||
}
|
||||
// Get yeux
|
||||
const yeux = XRegExp.exec(statString, XRegExp("yeux\\s+(?<value>[A-Za-zÀ-ÖØ-öø-ÿ\\s\\-]+), Beau", 'giu'));
|
||||
if (yeux?.value) {
|
||||
actorData.yeux = yeux.value;
|
||||
}
|
||||
|
||||
// Get beauty
|
||||
const beaute = XRegExp.exec(statString, XRegExp("beauté\\s+(?<value>\\d+)", 'giu'));
|
||||
if (beaute?.value) {
|
||||
actorData.beaute = Number(beaute.value);
|
||||
}
|
||||
}
|
||||
|
||||
static parseCreature(statString, actorData) {
|
||||
let protection = XRegExp.exec(statString, XRegExp("protection\\s+(?<value>[\\-]?\\d+)", 'giu'));
|
||||
if (protection?.value) {
|
||||
actorData.attributs.protection.value = Number(protection.value);
|
||||
}
|
||||
let vitesse = XRegExp.exec(statString, XRegExp("vitesse\\s+(?<value>[\\d\\/]+)", 'giu'));
|
||||
if (vitesse?.value) {
|
||||
actorData.attributs.vitesse.value = vitesse.value;
|
||||
}
|
||||
}
|
||||
|
||||
static parseEntite(statString, actorData) {
|
||||
actorData.definition.categorieentite = 'cauchemar'
|
||||
actorData.definition.typeentite = ENTITE_NONINCARNE
|
||||
let endurance = XRegExp.exec(statString, XRegExp("endurance\\s+(?<value>\\d+)", 'giu'));
|
||||
if (endurance?.value) {
|
||||
actorData.sante.endurance.value = Number(endurance.value);
|
||||
actorData.sante.endurance.max = Number(endurance.value);
|
||||
actorData.definition.typeentite = ENTITE_INCARNE
|
||||
}
|
||||
let vitesse = XRegExp.exec(statString, XRegExp("vitesse\\s+(?<value>[\\d\\/]+)", 'giu'));
|
||||
if (vitesse?.value) {
|
||||
actorData.attributs.vitesse.value = vitesse.value;
|
||||
}
|
||||
}
|
||||
|
||||
static parseActorType(statString) {
|
||||
let niveau = XRegExp.exec(statString, XRegExp("Niveau\\s+(?<value>[\\+\\-]?\\d+)", 'giu'))
|
||||
let perception = XRegExp.exec(statString, XRegExp("perception\\s+(?<value>\\d+)", 'giu'))
|
||||
if (perception?.value) {
|
||||
return "creature"
|
||||
}
|
||||
if (niveau?.value) {
|
||||
return "entite"
|
||||
}
|
||||
return "personnage"
|
||||
}
|
||||
|
||||
static extractName(actorType, statString) {
|
||||
switch (actorType) {
|
||||
case "personnage":
|
||||
// Check if ',né le' is present
|
||||
let namePersonnage = "Importé"
|
||||
if (statString.includes(", né")) {
|
||||
// Name is all string before first comma ','
|
||||
namePersonnage = XRegExp.exec(statString, XRegExp("(?<value>[\\p{Letter}\\s\\d]+),", 'giu'));
|
||||
} else {
|
||||
namePersonnage = XRegExp.exec(statString, XRegExp("(?<value>[\\p{Letter}\\s\\d]+)\\s+TAILLE", 'giu'));
|
||||
}
|
||||
if (namePersonnage?.value) {
|
||||
return Misc.upperFirst(namePersonnage?.value);
|
||||
}
|
||||
}
|
||||
const name = XRegExp.exec(statString, XRegExp("(?<value>.+)\\s+taille", 'giu'));
|
||||
return Misc.upperFirst(name?.value || "Importé");
|
||||
}
|
||||
|
||||
static warning(message) {
|
||||
ui.notifications.warn(message);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/************************************************************************************/
|
||||
// Some internal test strings
|
||||
@ -76,7 +534,7 @@ Corps à corps
|
||||
(0)
|
||||
Esquive
|
||||
+8
|
||||
Escalade +4 / Saut +5 / Commerce +3 / Équitation
|
||||
Escalade, Saut +4 / Commerce +3 / Équitation
|
||||
+6 / Chirurgie 0 / Survie en extérieur +4 / Survie fo-
|
||||
rêt +6 / Acrobatie -2 / Métallurgie +2 / Natation +3 /
|
||||
Légendes -1 / Écriture -4
|
||||
@ -194,240 +652,4 @@ Discrétion
|
||||
Vigilance
|
||||
13
|
||||
+3
|
||||
`
|
||||
// Skill parser depending on the type of actor
|
||||
const compParser = { personnage: "\\s+(?<value>[\\+\\-]?\\d+)", creature: "\\s+(?<carac>\\d+)\\s+(?<value>[\\+\\-]?\\d+)\\s?(?<init>\\d+)?\\s+?(?<dommages>\\+\\d+)?" };
|
||||
|
||||
// Main class for parsing a stat block
|
||||
export class RdDStatBlockParser {
|
||||
|
||||
static openInputDialog() {
|
||||
let dialog = new Dialog({
|
||||
title: "Import de stats de PNJ/Créatures",
|
||||
content: `
|
||||
<div>
|
||||
<p>Coller le texte de la stat ici</p>
|
||||
<textarea id="statBlock" style="width: 100%; height: 200px;"></textarea>
|
||||
</div>
|
||||
`,
|
||||
buttons: {
|
||||
ok: {
|
||||
label: "OK",
|
||||
callback: async (html) => {
|
||||
let statBlock = html.find("#statBlock")[0].value;
|
||||
await RdDStatBlockParser.parseStatBlock(statBlock);
|
||||
dialog.close();
|
||||
}
|
||||
},
|
||||
cancel: {
|
||||
label: "Cancel"
|
||||
}
|
||||
}
|
||||
});
|
||||
dialog.render(true);
|
||||
}
|
||||
|
||||
static fixWeirdPDF(statString) {
|
||||
// Split the statString into lines
|
||||
let lines = statString.split("\n");
|
||||
let newLines = [];
|
||||
let index = 0;
|
||||
let nextType = "string";
|
||||
// Loop through each line
|
||||
for (let i = 0; i < lines.length; i++) {
|
||||
// remove trailing spaces
|
||||
lines[i] = lines[i].trim();
|
||||
// Is it text ?
|
||||
if (lines[i].match(/^[a-zA-Zéêè\s]+/)) {
|
||||
if ( nextType == "string" ) {
|
||||
newLines[index] = lines[i];
|
||||
nextType = "number";
|
||||
} else {
|
||||
console.log("Wrong sequence string detected...", lines[i], nextType);
|
||||
}
|
||||
}
|
||||
// Is it a number ?
|
||||
if (lines[i].match(/^[\d\s]+/)) {
|
||||
if ( nextType == "number" ) {
|
||||
newLines[index] = newLines[index] + lines[i];
|
||||
nextType = "string";
|
||||
index++;
|
||||
} else {
|
||||
console.log("Wrong sequence number detected...", lines[i], nextType);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
static async parseStatBlock(statString, type = "npc") {
|
||||
|
||||
//statString = statBlock03;
|
||||
if (!statString) {
|
||||
return;
|
||||
}
|
||||
|
||||
// Special function to fix strange/weird copy/paste from PDF readers
|
||||
// Unused up to now : this.fixWeirdPDF(statString);
|
||||
|
||||
// Replace all endline by space in the statString
|
||||
statString = statString.replace(/\n/g, " ");
|
||||
// Remove all multiple spaces
|
||||
statString = statString.replace(/\s{2,}/g, " ");
|
||||
// Remove all leading and trailing spaces
|
||||
statString = statString.trim();
|
||||
|
||||
let actorType = "personnage";
|
||||
let perception = XRegExp.exec(statString.toLowerCase(), XRegExp("perception\\s+(?<value>\\d+)", 'gi'));
|
||||
if (perception?.value ) {
|
||||
actorType = "creature";
|
||||
}
|
||||
|
||||
// Now start carac
|
||||
let actorData = foundry.utils.deepClone(game.model.Actor[actorType]);
|
||||
for (let key in game.model.Actor.personnage.carac) {
|
||||
let caracDef = game.model.Actor.personnage.carac[key];
|
||||
// Parse the stat string for each caracteristic
|
||||
let carac = XRegExp.exec(statString.toLowerCase(), XRegExp(caracDef.label.toLowerCase()+"\\s+(?<value>\\d+)", 'gi'));
|
||||
if (carac?.value) {
|
||||
actorData.carac[key].value = Number(carac.value);
|
||||
}
|
||||
}
|
||||
|
||||
// If creature we need to setup additionnal fields
|
||||
if (actorType == "creature") {
|
||||
let plusDom = XRegExp.exec(statString.toLowerCase(), XRegExp("\\+dom\\s+(?<value>\\+\\d+)", 'gi'));
|
||||
if (plusDom?.values) {
|
||||
actorData.attributs.plusdom.value = Number(plusDom.value);
|
||||
}
|
||||
let protection = XRegExp.exec(statString.toLowerCase(), XRegExp("protection\\s+(?<value>\\d+)", 'gi'));
|
||||
if (protection?.value) {
|
||||
actorData.attributs.protection.value = Number(protection.value);
|
||||
}
|
||||
let endurance = XRegExp.exec(statString.toLowerCase(), XRegExp("endurance\\s+(?<value>\\d+)", 'gi'));
|
||||
if (endurance?.value) {
|
||||
actorData.sante.endurance.value = Number(endurance.value);
|
||||
actorData.sante.endurance.max = Number(endurance.value);
|
||||
}
|
||||
let vie = XRegExp.exec(statString.toLowerCase(), XRegExp("vie\\s+(?<value>\\d+)", 'gi'));
|
||||
if (vie.value) {
|
||||
actorData.sante.vie.value = Number(vie.value);
|
||||
actorData.sante.vie.max = Number(vie.value);
|
||||
}
|
||||
let vitesse = XRegExp.exec(statString.toLowerCase(), XRegExp("vitesse\\s+(?<value>[\\d\\/]+)", 'gi'));
|
||||
if (vitesse?.value) {
|
||||
actorData.attributs.vitesse.value = vitesse.value;
|
||||
}
|
||||
}
|
||||
|
||||
let items = [];
|
||||
// Get skills from compendium
|
||||
const competences = await SystemCompendiums.getCompetences(actorType);
|
||||
//console.log("Competences : ", competences);
|
||||
let allComp = competences.map(i => i.toObject())
|
||||
for (let comp of allComp) {
|
||||
let skill = XRegExp.exec(statString.toLowerCase(), XRegExp(comp.name.toLowerCase()+compParser[actorType], 'gi'));
|
||||
if (skill) {
|
||||
comp.system.niveau = Number(skill.value);
|
||||
if (actorType == "creature") {
|
||||
comp.system.carac_value = Number(skill.carac);
|
||||
if (skill.init) {
|
||||
comp.system.dommages = Number(skill.dommages);
|
||||
comp.system.iscombat = true;
|
||||
}
|
||||
items.push(comp); // Only selective push
|
||||
}
|
||||
}
|
||||
if (actorType == "personnage") {
|
||||
items.push(comp); // Always push
|
||||
}
|
||||
}
|
||||
|
||||
// Now process weapons
|
||||
const weapons = await SystemCompendiums.getWorldOrCompendiumItems("arme", "equipement")
|
||||
//console.log("Equipement : ", equipment);
|
||||
for (let w of weapons) {
|
||||
|
||||
let weapon = XRegExp.exec(statString.toLowerCase(), XRegExp(w.name.toLowerCase()+"\\s+(?<value>\\+\\d+)", 'gi'));
|
||||
if (weapon) {
|
||||
w.system.equipe = true
|
||||
items.push(w.toObject());
|
||||
// now process the skill
|
||||
if ( w.system?.competence != "") {
|
||||
let wComp = items.find(i => i.name.toLowerCase() == w.system.competence.toLowerCase());
|
||||
if (wComp) {
|
||||
wComp.system.niveau = Number(weapon.value);
|
||||
}
|
||||
}
|
||||
if ( w.system?.tir != "") {
|
||||
let wComp = items.find(i => i.name.toLowerCase() == w.system.tir.toLowerCase());
|
||||
if (wComp) {
|
||||
wComp.system.niveau = Number(weapon.value);
|
||||
}
|
||||
}
|
||||
if ( w.system?.lancer != "") {
|
||||
let wComp = items.find(i => i.name.toLowerCase() == w.system.lancer.toLowerCase());
|
||||
if (wComp) {
|
||||
wComp.system.niveau = Number(weapon.value);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Now process armors
|
||||
const armors = await SystemCompendiums.getWorldOrCompendiumItems("armure", "equipement")
|
||||
for (let a of armors) {
|
||||
let armor = XRegExp.exec(statString.toLowerCase(), XRegExp(a.name.toLowerCase(), 'gi'));
|
||||
if (armor) {
|
||||
a.system.equipe = true
|
||||
items.push(a.toObject());
|
||||
}
|
||||
}
|
||||
|
||||
// Get hour name : heure du XXXXX
|
||||
let heure = XRegExp.exec(statString.toLowerCase(), XRegExp("heure du\\s+(?<value>\\w+)", 'gi'));
|
||||
if (heure?.value) {
|
||||
actorData.heure = heure.value;
|
||||
}
|
||||
// Get age
|
||||
let age = XRegExp.exec(statString.toLowerCase(), XRegExp("(?<value>\\d+) ans", 'gi'));
|
||||
if (age?.value) {
|
||||
actorData.age = Number(age.value);
|
||||
}
|
||||
// Get height
|
||||
let taille = XRegExp.exec(statString.toLowerCase(), XRegExp("(?<value>\\d+)m\\d+", 'gi'));
|
||||
if (taille?.value) {
|
||||
actorData.taille = taille.value;
|
||||
}
|
||||
// Get weight
|
||||
let poids = XRegExp.exec(statString.toLowerCase(), XRegExp("(?<value>\\d+) kg", 'gi'));
|
||||
if (poids?.value) {
|
||||
actorData.poids = poids.value;
|
||||
}
|
||||
// Get beauty
|
||||
let beaute = XRegExp.exec(statString.toLowerCase(), XRegExp("beauté\\s+(?<value>\\d+)", 'gi'));
|
||||
if (beaute?.value) {
|
||||
actorData.beaute = Number(beaute.value);
|
||||
}
|
||||
|
||||
// Name is all string before ', né'
|
||||
let name
|
||||
if (actorType == "personnage") {
|
||||
name = XRegExp.exec(statString.toLowerCase(), XRegExp("(?<value>[\\w\\s\\d]+),", 'gi'));
|
||||
if (!name?.value) {
|
||||
name = XRegExp.exec(statString.toLowerCase(), XRegExp("(?<value>.+)\\s+taille", 'gi'));
|
||||
}
|
||||
name = name?.value || "Importé";
|
||||
}
|
||||
if (actorType == "creature") {
|
||||
name = XRegExp.exec(statString.toLowerCase(), XRegExp("(?<value>.+)\\s+taille", 'gi'));
|
||||
name = name?.value || "Importé";
|
||||
}
|
||||
|
||||
let newActor = RdDBaseActorReve.create({name: name || "Importé", type:actorType, system: actorData, items: items});
|
||||
|
||||
// DUmp....
|
||||
console.log(actorData);
|
||||
}
|
||||
}
|
||||
|
||||
`
|
||||
|
@ -51,7 +51,7 @@ export class DialogCreateSigneDraconique extends Dialog {
|
||||
whisper: ChatUtility.getOwners(actor),
|
||||
content: await renderTemplate("systems/foundryvtt-reve-de-dragon/templates/chat-signe-draconique-actor.html", {
|
||||
signe: signe,
|
||||
alias: actor.name
|
||||
alias: actor.getAlias()
|
||||
})
|
||||
});
|
||||
}
|
||||
|
@ -24,7 +24,7 @@ export class Grammar {
|
||||
}
|
||||
|
||||
static includesLowerCaseNoAccent(value, content) {
|
||||
return Grammar.toLowerCaseNoAccent(value).includes(Grammar.toLowerCaseNoAccent(content));
|
||||
return Grammar.toLowerCaseNoAccent(value)?.includes(Grammar.toLowerCaseNoAccent(content));
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
|
@ -1,10 +1,11 @@
|
||||
import { Grammar } from "./grammar.js";
|
||||
import { RdDItemCompetenceCreature } from "./item-competencecreature.js"
|
||||
import { ITEM_TYPES } from "./item.js";
|
||||
import { RdDCombatManager } from "./rdd-combat.js";
|
||||
|
||||
const nomCategorieParade = {
|
||||
"sans-armes": "Sans arme",
|
||||
"armes-naturelles": "Sans arme",
|
||||
"armes-naturelles": "Armes naturelles",
|
||||
"hast": "Armes d'hast",
|
||||
"batons": "Bâtons",
|
||||
"boucliers": "Boucliers",
|
||||
@ -30,7 +31,7 @@ export class RdDItemArme extends Item {
|
||||
case ITEM_TYPES.competencecreature:
|
||||
return RdDItemCompetenceCreature.armeCreature(arme);
|
||||
}
|
||||
return RdDItemArme.mainsNues();
|
||||
return RdDItemArme.corpsACorps();
|
||||
}
|
||||
|
||||
static getCompetenceArme(arme, maniement) {
|
||||
@ -56,8 +57,8 @@ export class RdDItemArme extends Item {
|
||||
}
|
||||
|
||||
static niveauCompetenceArme(arme, competences) {
|
||||
const compArme = competences.find(it => it.name == arme.system.competence);
|
||||
return compArme?.system.niveau ?? -8;
|
||||
const compArme = competences.find(it => Grammar.equalsInsensitive(it.name, arme.system.competence))
|
||||
return compArme?.system.niveau ?? -8
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
@ -234,11 +235,6 @@ export class RdDItemArme extends Item {
|
||||
return false
|
||||
}
|
||||
|
||||
static ajoutCorpsACorps(armes, actor) {
|
||||
armes.push(RdDItemArme.mainsNues(actor));
|
||||
armes.push(RdDItemArme.empoignade(actor));
|
||||
}
|
||||
|
||||
static corpsACorps(actor) {
|
||||
let competence = actor?.getCompetenceCorpsACorps() ?? { system: { niveau: -6 } };
|
||||
let melee = actor ? actor.system.carac['melee'].value : 0
|
||||
@ -257,6 +253,8 @@ export class RdDItemArme extends Item {
|
||||
mortalite: 'non-mortel',
|
||||
competence: 'Corps à corps',
|
||||
resistance: 1,
|
||||
baseInit: 4,
|
||||
cac: 'pugilat',
|
||||
deuxmains: true,
|
||||
categorie_parade: 'sans-armes'
|
||||
}
|
||||
@ -266,8 +264,6 @@ export class RdDItemArme extends Item {
|
||||
static mainsNues(actor) {
|
||||
const mainsNues = RdDItemArme.corpsACorps(actor)
|
||||
mainsNues.name = 'Mains nues'
|
||||
mainsNues.system.cac = 'pugilat'
|
||||
mainsNues.system.baseInit = 4
|
||||
return mainsNues;
|
||||
}
|
||||
|
||||
|
@ -49,17 +49,7 @@ export class RdDItemCompetenceCreature extends Item {
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static isAttaque(item) {
|
||||
if (item.type == ITEM_TYPES.competencecreature) {
|
||||
switch (item.system.categorie) {
|
||||
case "melee":
|
||||
case "tir":
|
||||
case "lancer":
|
||||
case "naturelle":
|
||||
case "possession":
|
||||
return true
|
||||
}
|
||||
}
|
||||
return false
|
||||
return RdDItemCompetenceCreature.getCategorieAttaque(item) != undefined
|
||||
}
|
||||
|
||||
static getCategorieAttaque(item) {
|
||||
@ -70,7 +60,6 @@ export class RdDItemCompetenceCreature extends Item {
|
||||
case "lancer":
|
||||
case "naturelle":
|
||||
case "possession":
|
||||
case "parade":
|
||||
return item.system.categorie
|
||||
}
|
||||
}
|
||||
@ -92,12 +81,7 @@ export class RdDItemCompetenceCreature extends Item {
|
||||
|
||||
static isParade(item) {
|
||||
if (item.type == ITEM_TYPES.competencecreature) {
|
||||
switch (item.system.categorie) {
|
||||
case "melee":
|
||||
case "naturelle":
|
||||
case "parade":
|
||||
return true
|
||||
}
|
||||
return item.system.categorie_parade || item.system.isparade
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
@ -13,6 +13,7 @@ import { Misc } from "./misc.js";
|
||||
import { RdDTimestamp } from "./time/rdd-timestamp.js";
|
||||
import { RdDItemCompetenceCreature } from "./item-competencecreature.js";
|
||||
import { ITEM_TYPES, RdDItem } from "./item.js";
|
||||
import { FLEUVE_COORD, TMRUtility } from "./tmr-utility.js";
|
||||
|
||||
/**
|
||||
* Extend the basic ItemSheet for RdD specific items
|
||||
@ -100,55 +101,59 @@ export class RdDItemSheet extends ItemSheet {
|
||||
descriptionmj: await TextEditor.enrichHTML(this.item.system.descriptionmj, { async: true }),
|
||||
isComestible: this.item.getUtilisationCuisine(),
|
||||
options: RdDSheetUtility.mergeDocumentRights(this.options, this.item, this.isEditable),
|
||||
competences: await SystemCompendiums.getCompetences('personnage'),
|
||||
categories: RdDItem.getCategories(this.item.type),
|
||||
}
|
||||
|
||||
if (this.item.type == ITEM_TYPES.competencecreature) {
|
||||
formData.isparade = RdDItemCompetenceCreature.isParade(this.item)
|
||||
formData.isdommages = RdDItemCompetenceCreature.isDommages(this.item)
|
||||
}
|
||||
|
||||
const competences = await SystemCompendiums.getCompetences('personnage');
|
||||
formData.categories = RdDItem.getCategories(this.item.type)
|
||||
if (this.item.type == 'tache' || this.item.type == 'livre' || this.item.type == 'meditation' || this.item.type == 'oeuvre') {
|
||||
if (this.item.type == ITEM_TYPES.tache ||
|
||||
this.item.type == ITEM_TYPES.livre ||
|
||||
this.item.type == ITEM_TYPES.meditation ||
|
||||
this.item.type == ITEM_TYPES.oeuvre) {
|
||||
formData.caracList = foundry.utils.duplicate(game.model.Actor.personnage.carac)
|
||||
formData.caracList["reve-actuel"] = foundry.utils.duplicate(game.model.Actor.personnage.reve.reve)
|
||||
formData.competences = competences;
|
||||
}
|
||||
if (this.item.type == 'arme') {
|
||||
formData.competences = competences.filter(it => it.isCompetenceArme())
|
||||
if (this.item.type == ITEM_TYPES.arme) {
|
||||
formData.competences = formData.competences.filter(it => it.isCompetenceArme())
|
||||
}
|
||||
if (['sort', 'sortreserve'].includes(this.item.type)) {
|
||||
formData.competences = competences.filter(it => RdDItemCompetence.isDraconic(it));
|
||||
}
|
||||
if (this.item.type == 'recettecuisine') {
|
||||
if (this.item.type == ITEM_TYPES.recettecuisine) {
|
||||
formData.ingredients = await TextEditor.enrichHTML(this.object.system.ingredients, { async: true })
|
||||
}
|
||||
if (this.item.type == 'extraitpoetique') {
|
||||
if (this.item.type == ITEM_TYPES.extraitpoetique) {
|
||||
formData.extrait = await TextEditor.enrichHTML(this.object.system.extrait, { async: true })
|
||||
formData.texte = await TextEditor.enrichHTML(this.object.system.texte, { async: true })
|
||||
}
|
||||
if (this.item.type == 'recettealchimique') {
|
||||
RdDAlchimie.processManipulation(this.item, this.actor && this.actor.id);
|
||||
if (this.item.type == ITEM_TYPES.recettealchimique) {
|
||||
RdDAlchimie.processManipulation(this.item, this.actor?.id);
|
||||
formData.manipulation_update = await TextEditor.enrichHTML(this.object.system.manipulation_update, { async: true })
|
||||
formData.utilisation = await TextEditor.enrichHTML(this.object.system.utilisation, { async: true })
|
||||
formData.enchantement = await TextEditor.enrichHTML(this.object.system.enchantement, { async: true })
|
||||
formData.sureffet = await TextEditor.enrichHTML(this.object.system.sureffet, { async: true })
|
||||
}
|
||||
if (this.item.type == 'gemme') {
|
||||
if (this.item.type == ITEM_TYPES.gemme) {
|
||||
formData.gemmeTypeList = RdDGemme.getGemmeTypeOptionList();
|
||||
RdDGemme.calculDataDerivees(this.item);
|
||||
RdDGemme.calculDataDerivees(this.item)
|
||||
}
|
||||
if (this.item.type == 'potion') {
|
||||
await RdDHerbes.addPotionFormData(formData);
|
||||
if (this.item.type == ITEM_TYPES.potion) {
|
||||
RdDHerbes.calculFormData(formData, this.item)
|
||||
}
|
||||
if (formData.options.isOwned && this.item.type == 'herbe' && (formData.system.categorie == 'Soin' || formData.system.categorie == 'Repos')) {
|
||||
formData.isIngredientPotionBase = true;
|
||||
if (this.item.type == ITEM_TYPES.herbe) {
|
||||
if (formData.options.isOwned && ['Soin', 'Repos'].includes(formData.system.categorie)) {
|
||||
formData.isIngredientPotionBase = true;
|
||||
}
|
||||
}
|
||||
if (this.item.type == 'sortreserve') {
|
||||
if (this.item.type == ITEM_TYPES.sortreserve) {
|
||||
const sortId = this.item.system.sortid;
|
||||
formData.competences = formData.competences.filter(it => RdDItemCompetence.isDraconic(it));
|
||||
formData.sort = formData.options.isOwned ? this.item.actor.items.get(sortId) : game.items.get(sortId);
|
||||
}
|
||||
formData.bonusCaseList = RdDItemSort.getBonusCaseList(formData, true);
|
||||
|
||||
if (this.item.type == ITEM_TYPES.sort) {
|
||||
formData.competences = formData.competences.filter(it => RdDItemCompetence.isDraconic(it));
|
||||
formData.bonusCaseList = RdDItemSort.getBonusCaseList(this.item);
|
||||
}
|
||||
return formData;
|
||||
}
|
||||
|
||||
@ -185,6 +190,9 @@ export class RdDItemSheet extends ItemSheet {
|
||||
}
|
||||
}
|
||||
})
|
||||
this.html.find('.delete-bonus-case').click((event) => {
|
||||
this.supprimerBonusCase(event.currentTarget.attributes['data-deleteCoord'].value)
|
||||
})
|
||||
|
||||
this.html.find('.date-enchantement').change((event) => {
|
||||
const jour = Number(this.html.find('input.date-enchantement[name="enchantement.jour"]').val());
|
||||
@ -264,23 +272,66 @@ export class RdDItemSheet extends ItemSheet {
|
||||
}
|
||||
}
|
||||
|
||||
async supprimerBonusCase(deleteCoord){
|
||||
if (this.item.type == ITEM_TYPES.sort) {
|
||||
const oldList = RdDItemSort.getBonusCaseList(this.item)
|
||||
const newList = oldList.filter(it => it.case != deleteCoord);
|
||||
if (newList.length != oldList.length) {
|
||||
await this.item.update({
|
||||
'system.bonuscase': RdDItemSort.bonuscasesToString(newList)
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
/** @override */
|
||||
_updateObject(event, formData) {
|
||||
switch (this.item.type) {
|
||||
case ITEM_TYPES.sort:
|
||||
// Données de bonus de cases ?
|
||||
formData['system.bonuscase'] = RdDItemSort.buildBonuscaseFromArrays(formData.bonusValue, formData.caseValue)
|
||||
formData['system.bonuscase'] = RdDItemSort.bonuscasesToString(RdDItemSheet._listCaseTmr(
|
||||
formData.caseTmrCoord,
|
||||
formData.caseTmrBonus,
|
||||
formData.caseTmrAdd
|
||||
))
|
||||
break
|
||||
case ITEM_TYPES.competence:
|
||||
if (formData['system.niveau'] == undefined) {
|
||||
formData['system.niveau'] = formData['system.base']
|
||||
}
|
||||
formData['system.niveau'] = formData['system.niveau'] ?? formData['system.base']
|
||||
break
|
||||
}
|
||||
|
||||
return this.item.update(formData);
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
/**
|
||||
* reconstruit les bonus de cases
|
||||
* @param {*} caseTmrCoord tableau des coordonées
|
||||
* @param {*} caseTmrBonus tableau des bonus
|
||||
* @param {*} caseTmrAdd case à ajouter
|
||||
* @returns list d'objets {coord, bonus}
|
||||
*/
|
||||
static _listCaseTmr(caseTmrCoord, caseTmrBonus, caseTmrAdd) {
|
||||
const listCaseTmrCoord = caseTmrCoord == undefined ? [] : Array.isArray(caseTmrCoord) ? caseTmrCoord : [caseTmrCoord]
|
||||
const listCaseTmrBonus = caseTmrBonus == undefined ? [] : Array.isArray(caseTmrBonus) ? caseTmrBonus : [caseTmrBonus]
|
||||
if (caseTmrAdd != undefined && caseTmrAdd != '' && TMRUtility.verifyTMRCoord(caseTmrAdd) && !listCaseTmrCoord.includes(caseTmrAdd)) {
|
||||
listCaseTmrCoord.push(TMRUtility.getTMR(caseTmrAdd).coord)
|
||||
listCaseTmrBonus.push(1)
|
||||
}
|
||||
|
||||
const list = [];
|
||||
const caseChecked = {};
|
||||
for (let i = 0; i < listCaseTmrBonus.length && i < listCaseTmrCoord.length; i++) {
|
||||
const coord = listCaseTmrCoord[i] == FLEUVE_COORD ? FLEUVE_COORD : (listCaseTmrCoord[i]?.toUpperCase() ?? 'A1')
|
||||
const bonus = listCaseTmrBonus[i] ?? 0
|
||||
if (TMRUtility.verifyTMRCoord(coord) && bonus >= 0 && !caseChecked[coord]) {
|
||||
caseChecked[coord] = coord
|
||||
list.push({ case: coord, bonus: bonus })
|
||||
}
|
||||
}
|
||||
return list
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
async _onDragStart(event) {
|
||||
}
|
||||
|
@ -2,52 +2,69 @@ import { Grammar } from "./grammar.js";
|
||||
import { RdDItemCompetence } from "./item-competence.js";
|
||||
import { ITEM_TYPES } from "./item.js";
|
||||
import { Misc } from "./misc.js";
|
||||
import { TMRUtility } from "./tmr-utility.js";
|
||||
import { FLEUVE_COORD, TMRUtility } from "./tmr-utility.js";
|
||||
|
||||
const VOIES_DRACONIC = [
|
||||
export const VOIES_DRACONIC = [
|
||||
{ code: 'O', label: "Voie d'Oniros", short: 'Oniros', ordre: 'a' },
|
||||
{ code: 'H', label: "Voie d'Hypnos", short: 'Hypnos', ordre: 'b' },
|
||||
{ code: 'N', label: "Voie de Narcos", short: 'Narcos', ordre: 'c' },
|
||||
{ code: 'T', label: "Voie de Thanatos", short: 'Thanatos', ordre: 'd' },
|
||||
{ code: 'O/H/N/T', label: "Oniros/Hypnos/Narcos/Thanatos", short: 'Oniros/Hypnos/Narcos/Thanatos', ordre: 'e' },
|
||||
{ code: 'O/H/N', label: "Oniros/Hypnos/Narcos", short: "Oniros/Hypnos/Narcos", ordre: 'f' }
|
||||
{ code: 'O/H/N/T', label: "Oniros/Hypnos/Narcos/Thanatos", short: 'O/H/N/T', ordre: 'e' },
|
||||
{ code: 'O/H/N', label: "Oniros/Hypnos/Narcos", short: "O/H/N", ordre: 'f' }
|
||||
]
|
||||
|
||||
/* -------------------------------------------- */
|
||||
export class RdDItemSort extends Item {
|
||||
static preloadHandlebars() {
|
||||
Handlebars.registerHelper('itemSort-spaceIfText', val => RdDItemSort.addSpaceToNonNumeric(val))
|
||||
Handlebars.registerHelper('itemSort-codeDraconic', voie => RdDItemSort.getCode(voie))
|
||||
Handlebars.registerHelper('itemSort-shortDraconic', voie => RdDItemSort.getShortVoie(voie))
|
||||
}
|
||||
|
||||
static getDraconicsSort(draconicList, sort) {
|
||||
static addSpaceToNonNumeric(value) {
|
||||
return Number.isNumeric(value) || ['-', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9'].includes( String(value).charAt[0]) ? value : ' ' + RdDItemSort.toVar(value)
|
||||
}
|
||||
|
||||
static toVar(value) {
|
||||
return value ? value.replace('variable', 'var') : ''
|
||||
}
|
||||
|
||||
static getDraconicsSort(competencesDraconic, sort) {
|
||||
// se baser sur la voie du sort?
|
||||
switch (Grammar.toLowerCaseNoAccent(sort.name)) {
|
||||
case "lecture d'aura":
|
||||
case "detection d'aura":
|
||||
return draconicList;
|
||||
return competencesDraconic;
|
||||
case "annulation de magie":
|
||||
return draconicList.filter(it => !RdDItemCompetence.isThanatos(it));
|
||||
return competencesDraconic.filter(it => !RdDItemCompetence.isThanatos(it));
|
||||
}
|
||||
return [RdDItemCompetence.getVoieDraconic(draconicList, sort.system.draconic)];
|
||||
const voies = sort.system.draconic.split('/')
|
||||
return voies.map(voie => RdDItemCompetence.getVoieDraconic(competencesDraconic, voie))
|
||||
}
|
||||
|
||||
static getOrdreCode(code) {
|
||||
return (VOIES_DRACONIC.find(it => it.code == code)?.ordre ?? '?')
|
||||
}
|
||||
|
||||
static getVoieCode(voie) {
|
||||
return VOIES_DRACONIC.find(it => voie.name.includes(it.short))?.code ?? '?'
|
||||
static getCodeVoie(voie) {
|
||||
return VOIES_DRACONIC.find(it => [it.code, it.short, it.label].includes(voie))?.code ?? '?'
|
||||
}
|
||||
|
||||
static getCodeDraconic(sort, voies = ['O', 'H', 'N', 'T']) {
|
||||
static getShortVoie(voie) {
|
||||
return VOIES_DRACONIC.find(it => [it.code, it.short, it.label].includes(voie))?.short ?? voie
|
||||
}
|
||||
|
||||
static getCode(sort, codeVoies = ['O', 'H', 'N', 'T']) {
|
||||
switch (Grammar.toLowerCaseNoAccent(sort.name)) {
|
||||
case "lecture d'aura":
|
||||
case "detection d'aura":
|
||||
return RdDItemSort.$voiesConnues('O/H/N/T', voies)
|
||||
return RdDItemSort.$voiesConnues('O/H/N/T', codeVoies)
|
||||
case "annulation de magie":
|
||||
return RdDItemSort.$voiesConnues('O/H/N', voies)
|
||||
return RdDItemSort.$voiesConnues('O/H/N', codeVoies)
|
||||
}
|
||||
const voie = VOIES_DRACONIC.find(it => it.label.includes(sort.system.draconic))
|
||||
return voie?.code ?? sort.system.draconic
|
||||
return RdDItemSort.getCodeVoie(sort.system.draconic)
|
||||
}
|
||||
|
||||
|
||||
static $voiesConnues(voiesSort, voies) {
|
||||
const codes = voies.filter(it => voiesSort.includes(it))
|
||||
.sort(Misc.ascending(it => RdDItemSort.getOrdreCode(it)))
|
||||
@ -79,89 +96,60 @@ export class RdDItemSort extends Item {
|
||||
return variable;
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static buildBonusCaseList(bonuscase, newCase) {
|
||||
const list = RdDItemSort.bonuscaseStringToList(bonuscase)
|
||||
if (newCase) {
|
||||
list.push({ case: "Nouvelle", bonus: 0 })
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
||||
/**
|
||||
* Retourne une liste de bonus/case pour un item-sheet
|
||||
* @param {} item
|
||||
*/
|
||||
static getBonusCaseList(item, newCase = false) {
|
||||
static getBonusCaseList(item) {
|
||||
// Gestion spéciale case bonus
|
||||
if (item.type == ITEM_TYPES.sort) {
|
||||
return RdDItemSort.buildBonusCaseList(item.system.bonuscase, newCase);
|
||||
return RdDItemSort.stringToBonuscases(item.system.bonuscase)
|
||||
}
|
||||
return undefined;
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
/** Met à jour les données de formulaire
|
||||
* si static des bonus de cases sont présents
|
||||
* */
|
||||
static buildBonuscaseFromArrays(bonuses, coords) {
|
||||
if (bonuses) {
|
||||
const list = [];
|
||||
const caseCheck = {};
|
||||
for (let i = 0; i < bonuses.length && i < coords.length; i++) {
|
||||
const coord = coords[i] == 'Fleuve' ? 'Fleuve' : (coords[i]?.toUpperCase() ?? 'A1');
|
||||
const bonus = bonuses[i] || 0;
|
||||
if (TMRUtility.verifyTMRCoord(coord) && bonus > 0 && caseCheck[coord] == undefined) {
|
||||
caseCheck[coord] = bonus;
|
||||
list.push({ case: coord, bonus: bonus });
|
||||
}
|
||||
}
|
||||
return RdDItemSort._bonuscaseListToString(list);
|
||||
}
|
||||
return undefined;
|
||||
return [];
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static incrementBonusCase(actor, sort, coord) {
|
||||
if (TMRUtility.getTMR(coord).type == "fleuve") {
|
||||
coord = 'Fleuve';
|
||||
if (TMRUtility.isFleuve(coord)) {
|
||||
coord = FLEUVE_COORD;
|
||||
}
|
||||
let list = RdDItemSort.stringToBonuscases(sort.system.bonuscase);
|
||||
const existing = list.find(it => it.case == coord)
|
||||
const bonus = Number(existing?.bonus ?? 0) + 1
|
||||
if (existing) {
|
||||
existing.bonus = bonus
|
||||
}
|
||||
else {
|
||||
list.push({ case: coord, bonus: 1 })
|
||||
}
|
||||
const list = RdDItemSort.buildBonusCaseList(sort.system.bonuscase, false);
|
||||
const bonus = Number(list.find(it => it.case == coord)?.bonus ?? 0);
|
||||
const modified = { case: coord, bonus: bonus + 1 };
|
||||
|
||||
const bonuscase = RdDItemSort._bonuscaseListToString(
|
||||
list.filter(it => it.case != coord).concat(modified)
|
||||
);
|
||||
|
||||
// Sauvegarde/update
|
||||
actor.updateEmbeddedDocuments('Item', [{ _id: sort._id, 'system.bonuscase': bonuscase }]);
|
||||
actor.updateEmbeddedDocuments('Item', [{ _id: sort._id, 'system.bonuscase': RdDItemSort.bonuscasesToString(list) }]);
|
||||
}
|
||||
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static getCaseBonus(sort, coord) {
|
||||
const isFleuve = TMRUtility.getTMR(coord).type == "fleuve";
|
||||
|
||||
let bc = RdDItemSort.buildBonusCaseList(sort.system.bonuscase, false)
|
||||
.filter(it => it.case == coord || (isFleuve && it.case == 'Fleuve'))
|
||||
.find(it => true)
|
||||
const search = TMRUtility.isFleuve(coord)
|
||||
? it => it.case == 'Fleuve'
|
||||
: it => it.case == coord;
|
||||
const bc = RdDItemSort.stringToBonuscases(sort.system.bonuscase)
|
||||
.find(search)
|
||||
return Number(bc?.bonus ?? 0);
|
||||
}
|
||||
|
||||
static _bonuscaseListToString(list) {
|
||||
static bonuscasesToString(list) {
|
||||
return list.map(it => `${it.case}:${it.bonus}`)
|
||||
.sort(Misc.ascending())
|
||||
.join(',');
|
||||
}
|
||||
static bonuscaseStringToList(bonuscase) {
|
||||
|
||||
static stringToBonuscases(bonuscase) {
|
||||
if (bonuscase == undefined || bonuscase == '') {
|
||||
return []
|
||||
}
|
||||
return bonuscase.split(',').map(it => {
|
||||
const b = it.split(':');
|
||||
return { case: b[0], bonus: b[1] };
|
||||
});
|
||||
return bonuscase.split(',')
|
||||
.map(it => it.split(':'))
|
||||
.map(it => { return { case: it[0], bonus: it[1] } });
|
||||
}
|
||||
|
||||
}
|
@ -571,6 +571,7 @@ export class RdDItem extends Item {
|
||||
else {
|
||||
await this.quantiteIncDec(item.system.quantite);
|
||||
}
|
||||
// TODO: suppression dans les conteneurs!
|
||||
await item.delete();
|
||||
}
|
||||
|
||||
@ -601,6 +602,9 @@ export class RdDItem extends Item {
|
||||
if (!other || !this.isInventaire()) {
|
||||
return [false, undefined];
|
||||
}
|
||||
if (this.isConteneur()){
|
||||
return [false, `Impossible de regrouper des conteneurs, ils ne sont pas empilables`];
|
||||
}
|
||||
if (this.system.quantite == undefined) {
|
||||
return [false, `Impossible de regrouper des ${this.type}, ils ne sont pas empilables`];
|
||||
}
|
||||
|
@ -48,8 +48,9 @@ export class RdDItemBlessure extends RdDItem {
|
||||
let lostEndurance = 0
|
||||
let lostVie = 0
|
||||
if (definition.endurance) {
|
||||
lostEndurance = await new Roll(definition.endurance).roll().total;
|
||||
actor.santeIncDec("endurance", -Number(lostEndurance));
|
||||
lostEndurance = new Roll(definition.endurance)
|
||||
await lostEndurance.roll();
|
||||
actor.santeIncDec("endurance", -Number(lostEndurance.total));
|
||||
}
|
||||
if (definition.vie) {
|
||||
lostVie = definition.vie
|
||||
|
25
module/item/tete.js
Normal file
25
module/item/tete.js
Normal file
@ -0,0 +1,25 @@
|
||||
import { Grammar } from "../grammar.js"
|
||||
import { ITEM_TYPES, RdDItem } from "../item.js"
|
||||
import { SystemCompendiums } from "../settings/system-compendiums.js"
|
||||
|
||||
const DON_HAUT_REVE = "Don de Haut-Rêve"
|
||||
|
||||
export class RdDItemTete extends RdDItem {
|
||||
|
||||
static get defaultIcon() {
|
||||
return "systems/foundryvtt-reve-de-dragon/icons/tete_dragon.webp"
|
||||
}
|
||||
|
||||
static isDonDeHautReve(tete) {
|
||||
return tete.type == ITEM_TYPES.tete && Grammar.equalsInsensitive(tete.name, DON_HAUT_REVE)
|
||||
}
|
||||
|
||||
static async teteDonDeHautReve() {
|
||||
const tetes = await SystemCompendiums.getItems("tetes-de-dragon-pour-tous-personnages", ITEM_TYPES.tete)
|
||||
const tete = tetes.find(it => RdDItemTete.isDonDeHautReve(it))
|
||||
if (!tete) {
|
||||
ui.notifications.warn(`Impossible de trouver la tête "${DON_HAUT_REVE}", vérifiez le compendium de têtes pour tous personnages`)
|
||||
}
|
||||
return tete
|
||||
}
|
||||
}
|
@ -5,7 +5,7 @@ import { Monnaie } from "./item-monnaie.js";
|
||||
import { RdDItem, ITEM_TYPES } from "./item.js";
|
||||
import { RdDTimestamp } from "./time/rdd-timestamp.js";
|
||||
import { RdDRaretes } from "./item/raretes.js";
|
||||
import { RdDCalendrier } from "./time/rdd-calendrier.js";
|
||||
import { VOIES_DRACONIC } from "./item-sort.js";
|
||||
|
||||
class Migration {
|
||||
get code() { return "sample"; }
|
||||
@ -137,7 +137,7 @@ class _10_0_21_VehiculeStructureResistanceMax extends Migration {
|
||||
}
|
||||
|
||||
class _10_0_33_MigrationNomsDraconic extends Migration {
|
||||
get code() { return "competences-creature-parade"; }
|
||||
get code() { return "competences-nom-draconic"; }
|
||||
get version() { return "10.0.33"; }
|
||||
|
||||
migrationNomDraconic(ancien) {
|
||||
@ -530,6 +530,42 @@ class _11_2_20_MigrationAstrologie extends Migration {
|
||||
}
|
||||
}
|
||||
|
||||
class _12_0_26_MigrationVoieSorts extends Migration {
|
||||
get code() { return "migration-voies-sorts" }
|
||||
get version() { return "12.0.26" }
|
||||
|
||||
async migrate() {
|
||||
await this.applyItemsUpdates(items => items
|
||||
.filter(it => [ITEM_TYPES.sort, ITEM_TYPES.sortreserve].includes(it.type))
|
||||
.map(it => this.migrateSort(it))
|
||||
)
|
||||
await this.applyItemsUpdates(items => items
|
||||
.filter(it => ITEM_TYPES.competence == it.type && it.system.categorie == 'draconic')
|
||||
.map(it => this.migrateDraconic(it))
|
||||
)
|
||||
}
|
||||
migrateDraconic(it) {
|
||||
return {
|
||||
_id: it.id,
|
||||
name: this.convertDraconic(it.name),
|
||||
}
|
||||
}
|
||||
migrateSort(it) {
|
||||
return {
|
||||
_id: it.id,
|
||||
'system.draconic': this.convertDraconic(it.system.draconic),
|
||||
}
|
||||
}
|
||||
convertDraconic(draconic) {
|
||||
for (let v of VOIES_DRACONIC) {
|
||||
if ([v.label, v.short, v.code].includes(draconic)) {
|
||||
return v.short
|
||||
}
|
||||
}
|
||||
return draconic
|
||||
}
|
||||
}
|
||||
|
||||
export class Migrations {
|
||||
static getMigrations() {
|
||||
return [
|
||||
@ -549,6 +585,7 @@ export class Migrations {
|
||||
new _10_7_19_CategorieCompetenceCreature(),
|
||||
new _10_7_19_PossessionsEntiteVictime(),
|
||||
new _11_2_20_MigrationAstrologie(),
|
||||
new _12_0_26_MigrationVoieSorts()
|
||||
];
|
||||
}
|
||||
|
||||
|
@ -58,9 +58,6 @@ export class Misc {
|
||||
* @param {*} value value to convert to an integer using parseInt
|
||||
*/
|
||||
static toInt(value) {
|
||||
if (value == undefined) {
|
||||
return 0;
|
||||
}
|
||||
const parsed = parseInt(value);
|
||||
return isNaN(parsed) ? 0 : parsed;
|
||||
}
|
||||
@ -189,13 +186,7 @@ export class Misc {
|
||||
* and there is no connected GM
|
||||
*/
|
||||
static documentIfResponsible(document) {
|
||||
if (foundry.utils.isNewerVersion(game.release.version, '12.0')) {
|
||||
if (game.users.activeGM || (Misc.connectedGMs().length == 0 && Misc.isOwnerPlayer(document)))
|
||||
{
|
||||
return document
|
||||
}
|
||||
}
|
||||
else if (Misc.isFirstConnectedGM() || (Misc.connectedGMs().length == 0 && Misc.isOwnerPlayer(document))) {
|
||||
if (Misc.isFirstConnectedGM() || (Misc.connectedGMs().length == 0 && Misc.isFirstOwnerPlayer(document))) {
|
||||
return document
|
||||
}
|
||||
return undefined
|
||||
@ -205,8 +196,11 @@ export class Misc {
|
||||
return document.testUserPermission && document.testUserPermission(game.user, CONST.DOCUMENT_OWNERSHIP_LEVELS.OWNER)
|
||||
}
|
||||
|
||||
static isOwnerPlayerOrUniqueConnectedGM(actor) {
|
||||
return Misc.isOwnerPlayer(actor) ?? Misc.isFirstConnectedGM();
|
||||
static isFirstOwnerPlayer(document) {
|
||||
if (!document.testUserPermission){
|
||||
return false
|
||||
}
|
||||
return game.users.find(u => document.testUserPermission(u, CONST.DOCUMENT_OWNERSHIP_LEVELS.OWNER)) == game.user
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -53,13 +53,18 @@ export class RdDCarac {
|
||||
return selectedCarac?.label?.toLowerCase()?.match(/r(e|ê)ve(( |-)actuel)?/);
|
||||
}
|
||||
|
||||
/**
|
||||
* L’appel à la chance n’est possible que pour recommencer les jets d’actions physiques :
|
||||
* tous les jets de combat, de FORCE, d’AGILITÉ, de DEXTÉRITÉ, de Dérobée, d’APPARENCE,
|
||||
* ainsi que de Perception active et volontaire.
|
||||
*/
|
||||
static isActionPhysique(selectedCarac) {
|
||||
return !selectedCarac ||
|
||||
selectedCarac?.label.match(/(Apparence|Force|Agilité|Dextérité|Vue|Ouïe|Odorat-Goût|Empathie|Dérobée|Mêlée|Tir|Lancer)/);
|
||||
return Grammar.toLowerCaseNoAccent(selectedCarac?.label)
|
||||
?.match(/(apparence|force|agilite|dexterite|vue|ouie|gout|odorat|empathie|melee|tir|lancer|derobee)/) != null
|
||||
}
|
||||
|
||||
static getCaracDerivee(value) {
|
||||
return TABLE_CARACTERISTIQUES_DERIVEES[Math.min(Math.max(Number(value), 1), 32)];
|
||||
return TABLE_CARACTERISTIQUES_DERIVEES[Math.min(Math.max(Math.floor(Number(value)), 1), 32)];
|
||||
}
|
||||
|
||||
static computeTotal(carac, beaute = undefined) {
|
||||
@ -90,15 +95,4 @@ export class RdDCarac {
|
||||
static getCaracXp(targetValue) {
|
||||
return RdDCarac.getCaracDerivee(targetValue)?.xp ?? 200;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* L’appel à la chance n’est possible que pour recommencer les jets d’actions physiques :
|
||||
* tous les jets de combat, de FORCE, d’AGILITÉ, de DEXTÉRITÉ, de Dérobée, d’APPARENCE,
|
||||
* ainsi que de Perception active et volontaire.
|
||||
*/
|
||||
static isActionPhysique(selectedCarac) {
|
||||
return Grammar.toLowerCaseNoAccent(selectedCarac?.label)?.match(/(apparence|force|agilite|dexterite|vue|ouie|odorat|empathie|melee|tir|lancer|derobee)/);
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -133,10 +133,10 @@ export class RdDCombatManager extends Combat {
|
||||
scene: canvas.scene._id,
|
||||
actor: combatant.actor?._id,
|
||||
token: combatant.token._id,
|
||||
alias: combatant.token.name,
|
||||
alias: combatant.token?.name,
|
||||
sound: CONFIG.sounds.dice,
|
||||
},
|
||||
flavor: `${combatant.token.name} a fait son jet d'Initiative (${messageOptions.info})<br>`
|
||||
flavor: `${combatant.token?.name} a fait son jet d'Initiative (${messageOptions.info})<br>`
|
||||
},
|
||||
messageOptions);
|
||||
roll.toMessage(messageData, { rollMode, create: true });
|
||||
@ -226,7 +226,7 @@ export class RdDCombatManager extends Combat {
|
||||
}
|
||||
|
||||
static $prepareAttaqueArme(infoAttaque) {
|
||||
const comp = infoAttaque.competences.find(c => c.name == infoAttaque.competence);
|
||||
const comp = infoAttaque.competences.find(it => Grammar.equalsInsensitive(it.name, infoAttaque.competence))
|
||||
const arme = infoAttaque.arme;
|
||||
const attaque = foundry.utils.duplicate(arme);
|
||||
attaque.action = 'attaque';
|
||||
@ -252,7 +252,7 @@ export class RdDCombatManager extends Combat {
|
||||
if (action && action.type == "arme") {
|
||||
for (let initData of premierRoundInit) {
|
||||
if (Grammar.toLowerCaseNoAccentNoSpace(action.system.initpremierround).includes(initData.pattern)) {
|
||||
let msg = `<h4>L'initiative de ${combatant.actor.name} a été modifiée !</h4>
|
||||
let msg = `<h4>L'initiative de ${combatant.actor.getAlias()} a été modifiée !</h4>
|
||||
<hr>
|
||||
<div>
|
||||
Etant donné son ${action.name}, son initative pour ce premier round est désormais de ${initData.init}.
|
||||
@ -435,11 +435,10 @@ export class RdDCombat {
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static onMsgEncaisser(msg) {
|
||||
if (Misc.isOwnerPlayerOrUniqueConnectedGM()) {
|
||||
let defender = canvas.tokens.get(msg.defenderToken.id).actor;
|
||||
if (Misc.isOwnerPlayer(defender)) {
|
||||
let attackerRoll = msg.attackerRoll;
|
||||
let attacker = msg.attackerId ? game.actors.get(msg.attackerId) : undefined;
|
||||
let defender = canvas.tokens.get(msg.defenderToken.id).actor;
|
||||
|
||||
defender.encaisserDommages(attackerRoll, attacker, msg.attackerToken);
|
||||
const rddCombat = RdDCombat.rddCombatForAttackerAndDefender(msg.attackerId, msg.attackerToken.id, msg.defenderToken.id);
|
||||
rddCombat?.removeChatMessageActionsPasseArme(attackerRoll.passeArme);
|
||||
@ -754,7 +753,7 @@ export class RdDCombat {
|
||||
/* -------------------------------------------- */
|
||||
_prepareAttaque(competence, arme) {
|
||||
let rollData = {
|
||||
alias: this.attackerToken.name,
|
||||
alias: this.attacker?.getAlias(),
|
||||
passeArme: foundry.utils.randomID(16),
|
||||
mortalite: arme?.system.mortalite,
|
||||
competence: competence,
|
||||
@ -774,9 +773,9 @@ export class RdDCombat {
|
||||
}
|
||||
else {
|
||||
// sans armes: à mains nues
|
||||
const niveau = competence.system.niveau;
|
||||
const init = RdDCombatManager.calculInitiative(niveau, this.attacker.system.carac['melee'].value);
|
||||
rollData.arme = RdDItemArme.mainsNues({ niveau: niveau, initiative: init });
|
||||
rollData.arme = RdDItemArme.corpsACorps(this.attacker)
|
||||
rollData.arme.system.niveau = competence.system.niveau
|
||||
rollData.arme.system.initiative = RdDCombatManager.calculInitiative(competence.system.niveau, this.attacker.system.carac['melee'].value);
|
||||
}
|
||||
return rollData;
|
||||
}
|
||||
@ -803,10 +802,10 @@ export class RdDCombat {
|
||||
}
|
||||
|
||||
const choixParticuliere = await ChatMessage.create({
|
||||
alias: this.attacker.name,
|
||||
alias: this.attacker.getAlias(),
|
||||
whisper: ChatUtility.getOwners(this.attacker),
|
||||
content: await renderTemplate('systems/foundryvtt-reve-de-dragon/templates/chat-demande-attaque-particuliere.html', {
|
||||
alias: this.attackerToken.name,
|
||||
alias: this.attacker.getAlias(),
|
||||
attackerId: this.attackerId,
|
||||
attackerToken: this.attackerToken,
|
||||
defenderToken: this.defenderToken,
|
||||
@ -826,7 +825,7 @@ export class RdDCombat {
|
||||
attackerRoll.dmg = RdDBonus.dmg(attackerRoll, this.attacker, this.defender.isEntite());
|
||||
let defenderRoll = { attackerRoll: attackerRoll, passeArme: attackerRoll.passeArme, show: {} }
|
||||
attackerRoll.show = {
|
||||
cible: this.defenderToken?.name ?? 'la cible',
|
||||
cible: this.defender?.getAlias() ?? 'la cible',
|
||||
isRecul: (attackerRoll.particuliere == 'force' || attackerRoll.tactique == 'charge')
|
||||
}
|
||||
await RdDResolutionTable.displayRollData(attackerRoll, this.attacker, 'chat-resultat-attaque.html');
|
||||
@ -892,7 +891,7 @@ export class RdDCombat {
|
||||
const choixDefense = await ChatMessage.create({
|
||||
// message privé: du défenseur à lui même (et aux GMs)
|
||||
speaker: ChatMessage.getSpeaker(this.defender, canvas.tokens.get(this.defenderTokenId)),
|
||||
alias: this.attackerToken.name,
|
||||
alias: this.attacker?.getAlias(),
|
||||
whisper: ChatUtility.getOwners(this.defender),
|
||||
content: await renderTemplate('systems/foundryvtt-reve-de-dragon/templates/chat-demande-defense.html', paramDemandeDefense),
|
||||
});
|
||||
@ -1015,7 +1014,7 @@ export class RdDCombat {
|
||||
/* -------------------------------------------- */
|
||||
_prepareParade(attackerRoll, armeParade, competenceParade) {
|
||||
let defenderRoll = {
|
||||
alias: this.defenderToken?.name,
|
||||
alias: this.defender?.getAlias(),
|
||||
passeArme: attackerRoll.passeArme,
|
||||
diffLibre: attackerRoll.diffLibre,
|
||||
attackerToken: this.attackerToken,
|
||||
@ -1072,7 +1071,7 @@ export class RdDCombat {
|
||||
async esquive(attackerRoll, compId, compName) {
|
||||
const esquive = this.defender.getCompetence(compId) ?? this.defender.getCompetence(compName)
|
||||
if (esquive == undefined) {
|
||||
ui.notifications.error(this.defender.name + " n'a pas de compétence " + compName);
|
||||
ui.notifications.error(this.defender.getAlias() + " n'a pas de compétence " + compName);
|
||||
return;
|
||||
}
|
||||
console.log("RdDCombat.esquive >>>", attackerRoll, esquive);
|
||||
@ -1099,7 +1098,7 @@ export class RdDCombat {
|
||||
/* -------------------------------------------- */
|
||||
_prepareEsquive(attackerRoll, competence) {
|
||||
let rollData = {
|
||||
alias: this.defenderToken?.name,
|
||||
alias: this.defender.getAlias(),
|
||||
passeArme: attackerRoll.passeArme,
|
||||
diffLibre: attackerRoll.diffLibre,
|
||||
attackerToken: this.attackerToken,
|
||||
@ -1252,7 +1251,7 @@ export class RdDCombat {
|
||||
this._onEchecTotal(defenderRoll);
|
||||
}
|
||||
|
||||
if (Misc.isOwnerPlayerOrUniqueConnectedGM(this.defender)) {
|
||||
if (Misc.isOwnerPlayer(this.defender)) {
|
||||
attackerRoll.attackerId = this.attackerId;
|
||||
attackerRoll.defenderTokenId = this.defenderToken.id;
|
||||
|
||||
@ -1278,9 +1277,10 @@ export class RdDCombat {
|
||||
if (!actor?.isActorCombat()) {
|
||||
return
|
||||
}
|
||||
const alias = token?.name ?? actor.getAlias();
|
||||
const formData = {
|
||||
combatId: combat._id,
|
||||
alias: token.name ?? actor.name,
|
||||
alias: alias,
|
||||
etatGeneral: actor.getEtatGeneral(),
|
||||
isSonne: actor.isSonne(),
|
||||
blessuresStatus: actor.computeResumeBlessure(),
|
||||
@ -1293,12 +1293,12 @@ export class RdDCombat {
|
||||
}
|
||||
await ChatMessage.create({
|
||||
content: await renderTemplate(`systems/foundryvtt-reve-de-dragon/templates/chat-actor-turn-acteur.hbs`, formData),
|
||||
alias: token.name ?? actor.name
|
||||
alias: alias
|
||||
})
|
||||
await ChatMessage.create({
|
||||
content: await renderTemplate(`systems/foundryvtt-reve-de-dragon/templates/chat-actor-turn-sante.hbs`, formData),
|
||||
whisper: ChatUtility.getOwners(actor),
|
||||
alias: token.name ?? actor.name
|
||||
alias: alias
|
||||
})
|
||||
}
|
||||
}
|
@ -360,13 +360,14 @@ export class RdDCommands {
|
||||
|
||||
async getTMRAleatoire(msg, params) {
|
||||
if (params.length < 2) {
|
||||
let type = params[0];
|
||||
const tmr = await TMRUtility.getTMRAleatoire(type ? (it => it.type == type) : (it => true));
|
||||
return RdDCommands._chatAnswer(msg, `Case aléatoire: ${tmr.coord} - ${tmr.label}`);
|
||||
}
|
||||
else {
|
||||
return false;
|
||||
let type = params[0]
|
||||
const solvedTerrain = TMRUtility.findTMRLike(type)?.type
|
||||
if (solvedTerrain){
|
||||
const tmr = await TMRUtility.getTMRAleatoire(type ? (it => it.type == solvedTerrain) : (it => true))
|
||||
return RdDCommands._chatAnswer(msg, `Case aléatoire: ${tmr.coord} - ${tmr.label}`)
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
async findTMR(msg, params) {
|
||||
@ -384,11 +385,11 @@ export class RdDCommands {
|
||||
async tableRencontres(msg, params) {
|
||||
if (params && params.length > 0) {
|
||||
const search = Misc.join(params, ' ');
|
||||
const solvedTerrain = TMRUtility.findTMRLike(search);
|
||||
const solvedTerrain = TMRUtility.findTMRLike(search)
|
||||
if (solvedTerrain == undefined) {
|
||||
return RdDCommands._chatAnswer(msg, 'Aucune TMR correspondant à ' + search);
|
||||
}
|
||||
return await game.system.rdd.rencontresTMR.chatTable(solvedTerrain);
|
||||
return await game.system.rdd.rencontresTMR.chatTable(solvedTMRType.name)
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
@ -28,9 +28,9 @@ export class RdDHerbes extends Item {
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static async addPotionFormData(formData) {
|
||||
formData.isSoins = formData.system.categorie.includes('Soin');
|
||||
formData.isRepos = formData.system.categorie.includes('Repos');
|
||||
static calculFormData(formData, item) {
|
||||
formData.isSoins = item.system.categorie.includes('Soin');
|
||||
formData.isRepos = item.system.categorie.includes('Repos');
|
||||
if (formData.isSoins) {
|
||||
RdDHerbes.calculBonusHerbe(formData, this.herbesSoins, 12);
|
||||
}
|
||||
@ -40,7 +40,7 @@ export class RdDHerbes extends Item {
|
||||
formData.herbesSoins = RdDHerbes.buildHerbesList(this.herbesSoins, 12);
|
||||
formData.herbesRepos = RdDHerbes.buildHerbesList(this.herbesRepos, 7);
|
||||
formData.dateActuelle = game.system.rdd.calendrier.dateCourante();
|
||||
formData.enchantement = RdDTimestamp.splitIndexDate(formData.system.prdate);
|
||||
formData.enchantement = RdDTimestamp.splitIndexDate(item.system.prdate);
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
|
@ -121,7 +121,7 @@ export class RdDHotbar {
|
||||
if (item.isCorpsACorps()) {
|
||||
switch (categorieArme) {
|
||||
case 'pugilat':
|
||||
return actor.rollArme(RdDItemArme.mainsNues(actor), 'competence');
|
||||
return actor.rollArme(RdDItemArme.corpsACorps(actor), 'competence');
|
||||
case 'empoignade':
|
||||
return actor.rollArme(RdDItemArme.empoignade(actor), 'competence');
|
||||
}
|
||||
|
@ -69,6 +69,8 @@ import { ExportScriptarium } from "./actor/export-scriptarium/export-scriptarium
|
||||
import { AppPersonnageAleatoire } from "./actor/random/app-personnage-aleatoire.js"
|
||||
import { RdDActorExportSheet } from "./actor/export-scriptarium/actor-encart-sheet.js"
|
||||
import { RdDStatBlockParser } from "./apps/rdd-import-stats.js"
|
||||
import { RdDItemSort } from "./item-sort.js"
|
||||
import { RdDItemTete } from "./item/tete.js"
|
||||
|
||||
/**
|
||||
* RdD system
|
||||
@ -96,6 +98,7 @@ export class SystemReveDeDragon {
|
||||
ombre: RdDItemOmbre,
|
||||
poison: RdDItemPoison,
|
||||
queue: RdDItemQueue,
|
||||
tete: RdDItemTete,
|
||||
rencontre: RdDRencontre,
|
||||
service: RdDItemService,
|
||||
signedraconique: RdDItemSigneDraconique,
|
||||
@ -122,6 +125,7 @@ export class SystemReveDeDragon {
|
||||
// preload handlebars templates
|
||||
RdDUtility.preloadHandlebarsTemplates()
|
||||
AppPersonnageAleatoire.preloadHandlebars()
|
||||
RdDItemSort.preloadHandlebars()
|
||||
|
||||
/* -------------------------------------------- */
|
||||
ReglesOptionnelles.initSettings()
|
||||
|
@ -7,6 +7,7 @@ import { RdDBonus } from "./rdd-bonus.js";
|
||||
import { RdDCarac } from "./rdd-carac.js";
|
||||
import { RdDResolutionTable } from "./rdd-resolution-table.js";
|
||||
import { ReglesOptionnelles } from "./settings/regles-optionnelles.js";
|
||||
import { Grammar } from "./grammar.js";
|
||||
|
||||
/**
|
||||
* Extend the base Dialog entity to select roll parameters
|
||||
@ -32,7 +33,7 @@ export class RdDRoll extends Dialog {
|
||||
/* -------------------------------------------- */
|
||||
static _setDefaultOptions(actor, rollData) {
|
||||
let defaultRollData = {
|
||||
alias: actor.name,
|
||||
alias: actor.getAlias(),
|
||||
ajustementsConditions: CONFIG.RDD.ajustementsConditions,
|
||||
difficultesLibres: CONFIG.RDD.difficultesLibres,
|
||||
etat: actor.getEtatGeneral(),
|
||||
@ -173,8 +174,8 @@ export class RdDRoll extends Dialog {
|
||||
this.html.find("[name='diffLibre']").val(this.rollData.diffLibre);
|
||||
});
|
||||
this.html.find('.roll-carac-competence').change((event) => {
|
||||
const competence = event.currentTarget.value;
|
||||
this.rollData.competence = this.rollData.competences.find(it => it.name == competence);
|
||||
const competence = event.currentTarget.value
|
||||
this.rollData.competence = this.rollData.competences.find(it => Grammar.equalsInsensitive(it.name, competence))
|
||||
this.updateRollResult(html);
|
||||
});
|
||||
this.html.find('.select-suivant-coeur').change((event) => {
|
||||
@ -345,24 +346,25 @@ export class RdDRoll extends Dialog {
|
||||
|
||||
/* -------------------------------------------- */
|
||||
_getTitle(rollData) {
|
||||
const alias = rollData.alias
|
||||
const carac = rollData.selectedCarac.label;
|
||||
if (!rollData.competence) {
|
||||
return carac;
|
||||
return `${alias}: ${carac}`
|
||||
}
|
||||
const compName = rollData.competence.name;
|
||||
const niveau = Misc.toSignedString(rollData.competence.system.niveau)
|
||||
if (compName == carac) {
|
||||
// cas des créatures
|
||||
return `${carac} Niveau ${niveau}`
|
||||
return `${alias}: ${carac} Niveau ${niveau}`
|
||||
}
|
||||
if (rollData.draconicList && rollData.selectedSort) {
|
||||
// cas de lancer de sort
|
||||
return `${rollData.competence.name} Niveau ${niveau} ${rollData.selectedSort.name}`
|
||||
return `${alias}: ${rollData.competence.name} Niveau ${niveau} ${rollData.selectedSort.name}`
|
||||
}
|
||||
if (rollData.arme && rollData.arme.name != compName) {
|
||||
// ajouter l'arme au titre si son nom n'est pas la compétence
|
||||
return `${carac} / ${compName} (${rollData.arme.name}) Niveau ${niveau}`
|
||||
return `${alias}: ${carac} / ${compName} (${rollData.arme.name}) Niveau ${niveau}`
|
||||
}
|
||||
return `${carac} / ${compName} Niveau ${niveau}`
|
||||
return `${alias}: ${carac} / ${compName} Niveau ${niveau}`
|
||||
}
|
||||
}
|
||||
|
@ -1,4 +1,3 @@
|
||||
import { Grammar } from "./grammar.js";
|
||||
import { CompendiumTable, CompendiumTableHelpers, SystemCompendiums } from "./settings/system-compendiums.js";
|
||||
|
||||
export class RdDRollTables {
|
||||
|
@ -460,7 +460,7 @@ export class RdDTMRDialog extends Dialog {
|
||||
|
||||
let rencontreData = {
|
||||
actor: this.actor,
|
||||
alias: this.actor.name,
|
||||
alias: this.actor.getAlias(),
|
||||
reveDepart: this.actor.getReveActuel(),
|
||||
competence: this.actor.getBestDraconic(),
|
||||
rencontre: this.currentRencontre,
|
||||
@ -641,7 +641,7 @@ export class RdDTMRDialog extends Dialog {
|
||||
// simuler une rencontre
|
||||
let rencontreData = {
|
||||
actor: this.actor,
|
||||
alias: this.actor.name,
|
||||
alias: this.actor.getAlias(),
|
||||
reveDepart: this.actor.getReveActuel(),
|
||||
competence: this.actor.getBestDraconic(),
|
||||
rencontre: this.currentRencontre,
|
||||
@ -1098,7 +1098,10 @@ export class RdDTMRDialog extends Dialog {
|
||||
if (!this.viewOnly && this.actor.isResonanceSigneDraconique(coord)) {
|
||||
ChatMessage.create({
|
||||
whisper: ChatUtility.getOwners(this.actor),
|
||||
content: await renderTemplate(`systems/foundryvtt-reve-de-dragon/templates/chat-signe-draconique-resonance.html`, { alias: this.actor.name, typeTMR: TMRUtility.getTMRType(coord) })
|
||||
content: await renderTemplate(`systems/foundryvtt-reve-de-dragon/templates/chat-signe-draconique-resonance.html`, {
|
||||
alias: this.actor.getAlias(),
|
||||
typeTMR: TMRUtility.getTMRType(coord)
|
||||
})
|
||||
});
|
||||
}
|
||||
}
|
||||
|
@ -20,6 +20,7 @@ import { ExperienceLog } from "./actor/experience-log.js";
|
||||
import { RdDCoeur } from "./coeur/rdd-coeur.js";
|
||||
import { APP_ASTROLOGIE_REFRESH } from "./sommeil/app-astrologie.js";
|
||||
import { RDD_CONFIG } from "./constants.js";
|
||||
import { RdDBaseActor } from "./actor/base-actor.js";
|
||||
|
||||
/* -------------------------------------------- */
|
||||
// This table starts at 0 -> niveau -10
|
||||
@ -121,6 +122,7 @@ export class RdDUtility {
|
||||
'systems/foundryvtt-reve-de-dragon/templates/actor/header-hautreve.html',
|
||||
'systems/foundryvtt-reve-de-dragon/templates/actor/archetype.hbs',
|
||||
'systems/foundryvtt-reve-de-dragon/templates/actor/vue-detaillee.html',
|
||||
'systems/foundryvtt-reve-de-dragon/templates/actor/armures.hbs',
|
||||
'systems/foundryvtt-reve-de-dragon/templates/actor/carac-main.html',
|
||||
'systems/foundryvtt-reve-de-dragon/templates/actor/carac-derivee.html',
|
||||
'systems/foundryvtt-reve-de-dragon/templates/actor/carac-creature.html',
|
||||
@ -145,8 +147,8 @@ export class RdDUtility {
|
||||
'systems/foundryvtt-reve-de-dragon/templates/actor/alchimie.html',
|
||||
'systems/foundryvtt-reve-de-dragon/templates/actor/astrologie.html',
|
||||
'systems/foundryvtt-reve-de-dragon/templates/actor/chirurgie.html',
|
||||
'systems/foundryvtt-reve-de-dragon/templates/actor/non-haut-revant.html',
|
||||
'systems/foundryvtt-reve-de-dragon/templates/actor/haut-revant.html',
|
||||
'systems/foundryvtt-reve-de-dragon/templates/actor/non-haut-revant.hbs',
|
||||
'systems/foundryvtt-reve-de-dragon/templates/actor/haut-revant.hbs',
|
||||
'systems/foundryvtt-reve-de-dragon/templates/actor/dragon-queues.html',
|
||||
'systems/foundryvtt-reve-de-dragon/templates/actor/dragon-queue.html',
|
||||
'systems/foundryvtt-reve-de-dragon/templates/actor/dragon-souffles.html',
|
||||
@ -263,12 +265,12 @@ export class RdDUtility {
|
||||
Handlebars.registerHelper('either', (a, b) => a ?? b);
|
||||
Handlebars.registerHelper('upperFirst', str => Misc.upperFirst(str ?? 'Null'));
|
||||
Handlebars.registerHelper('lowerFirst', str => Misc.lowerFirst(str ?? 'Null'));
|
||||
Handlebars.registerHelper('upper', str => str?.toUpperCase() ?? '');
|
||||
Handlebars.registerHelper('uppercase', str => str?.toUpperCase() ?? '');
|
||||
Handlebars.registerHelper('lowercase', str => str?.toLowerCase() ?? '');
|
||||
Handlebars.registerHelper('le', str => Grammar.articleDetermine(str));
|
||||
Handlebars.registerHelper('apostrophe', (article, str) => Grammar.apostrophe(article, str));
|
||||
Handlebars.registerHelper('un', str => Grammar.articleIndetermine(str));
|
||||
Handlebars.registerHelper('accord', (genre, ...args) => Grammar.accord(genre, args));
|
||||
Handlebars.registerHelper('grammar-le', str => Grammar.articleDetermine(str));
|
||||
Handlebars.registerHelper('grammar-apostrophe', (article, str) => Grammar.apostrophe(article, str));
|
||||
Handlebars.registerHelper('grammar-un', str => Grammar.articleIndetermine(str));
|
||||
Handlebars.registerHelper('grammar-accord', (genre, ...args) => Grammar.accord(genre, args));
|
||||
|
||||
Handlebars.registerHelper('RDD_CONFIG', path => RDD_CONFIG[path])
|
||||
Handlebars.registerHelper('computeResolutionScore', (row, col) => RdDResolutionTable.computePercentage(row, col));
|
||||
@ -288,6 +290,8 @@ export class RdDUtility {
|
||||
Handlebars.registerHelper('timestamp-formulesDuree', () => RdDTimestamp.formulesDuree());
|
||||
Handlebars.registerHelper('timestamp-formulesPeriode', () => RdDTimestamp.formulesPeriode());
|
||||
|
||||
Handlebars.registerHelper('actor-default', (actorType, ...path) => RdDBaseActor.getDefaultValue(actorType, path.slice(0, -1)));
|
||||
|
||||
Handlebars.registerHelper('array-includes', (array, value) => array.includes(value));
|
||||
Handlebars.registerHelper('min', (...args) => Math.min(...args.slice(0, -1)));
|
||||
Handlebars.registerHelper('isLastIndex', (index, list) => index + 1 >= list.length);
|
||||
|
@ -15,17 +15,17 @@ export const STATUSES = {
|
||||
}
|
||||
|
||||
const rddStatusEffects = [
|
||||
{ rdd: true, id: STATUSES.StatusStunned, label: 'EFFECT.StatusStunned', icon: 'icons/svg/stoned.svg', "duration.rounds": 1 },
|
||||
{ rdd: true, id: STATUSES.StatusBleeding, label: 'EFFECT.StatusBleeding', icon: 'icons/svg/blood.svg' },
|
||||
{ rdd: true, id: STATUSES.StatusProne, label: 'EFFECT.StatusProne', icon: 'icons/svg/falling.svg' },
|
||||
{ rdd: true, id: STATUSES.StatusGrappling, tint: '#33cc33', label: 'EFFECT.StatusGrappling', icon: 'systems/foundryvtt-reve-de-dragon/icons/empoignade.webp' },
|
||||
{ rdd: true, id: STATUSES.StatusGrappled, tint: '#ff9900', label: 'EFFECT.StatusGrappled', icon: 'systems/foundryvtt-reve-de-dragon/icons/empoignade.webp' },
|
||||
{ rdd: true, id: STATUSES.StatusRestrained, label: 'EFFECT.StatusRestrained', icon: 'icons/svg/net.svg' },
|
||||
{ rdd: true, id: STATUSES.StatusUnconscious, label: 'EFFECT.StatusUnconscious', icon: 'icons/svg/unconscious.svg' },
|
||||
{ rdd: true, id: STATUSES.StatusBlind, label: 'EFFECT.StatusBlind', icon: 'icons/svg/blind.svg' },
|
||||
{ rdd: true, id: STATUSES.StatusComma, label: 'EFFECT.StatusComma', icon: 'icons/svg/skull.svg' },
|
||||
{ rdd: true, id: STATUSES.StatusDead, label: 'EFFECT.StatusDead', icon: 'icons/svg/skull.svg' },
|
||||
{ rdd: true, id: STATUSES.StatusDemiReve, label: 'EFFECT.StatusDemiReve', icon: 'systems/foundryvtt-reve-de-dragon/icons/heures/hd12.svg' }
|
||||
{ rdd: true, id: STATUSES.StatusStunned, name: 'EFFECT.StatusStunned', img: 'icons/svg/stoned.svg', "duration.rounds": 1 },
|
||||
{ rdd: true, id: STATUSES.StatusBleeding, name: 'EFFECT.StatusBleeding', img: 'icons/svg/blood.svg' },
|
||||
{ rdd: true, id: STATUSES.StatusProne, name: 'EFFECT.StatusProne', img: 'icons/svg/falling.svg' },
|
||||
{ rdd: true, id: STATUSES.StatusGrappling, tint: '#33cc33', name: 'EFFECT.StatusGrappling', img: 'systems/foundryvtt-reve-de-dragon/icons/empoignade.webp' },
|
||||
{ rdd: true, id: STATUSES.StatusGrappled, tint: '#ff9900', name: 'EFFECT.StatusGrappled', img: 'systems/foundryvtt-reve-de-dragon/icons/empoignade.webp' },
|
||||
{ rdd: true, id: STATUSES.StatusRestrained, name: 'EFFECT.StatusRestrained', img: 'icons/svg/net.svg' },
|
||||
{ rdd: true, id: STATUSES.StatusUnconscious, name: 'EFFECT.StatusUnconscious', img: 'icons/svg/unconscious.svg' },
|
||||
{ rdd: true, id: STATUSES.StatusBlind, name: 'EFFECT.StatusBlind', img: 'icons/svg/blind.svg' },
|
||||
{ rdd: true, id: STATUSES.StatusComma, name: 'EFFECT.StatusComma', img: 'icons/svg/skull.svg' },
|
||||
{ rdd: true, id: STATUSES.StatusDead, name: 'EFFECT.StatusDead', img: 'icons/svg/skull.svg' },
|
||||
{ rdd: true, id: STATUSES.StatusDemiReve, name: 'EFFECT.StatusDemiReve', img: 'systems/foundryvtt-reve-de-dragon/icons/heures/hd12.svg' }
|
||||
];
|
||||
const demiReveStatusEffect = rddStatusEffects.find(it => it.id == STATUSES.StatusDemiReve);
|
||||
|
||||
@ -57,7 +57,7 @@ export class StatusEffects extends FormApplication {
|
||||
restricted: true
|
||||
});
|
||||
|
||||
CONFIG.RDD.allEffects = rddStatusEffects.concat(CONFIG.statusEffects.filter(it => !rddEffectIds.includes(it.id)));
|
||||
CONFIG.RDD.allEffects = rddStatusEffects.concat(CONFIG.statusEffects.filter(it => !rddEffectIds.includes(it.id)))
|
||||
|
||||
StatusEffects._setUseStatusEffects(StatusEffects._getUseStatusEffects());
|
||||
console.log('statusEffects', CONFIG.statusEffects);
|
||||
|
@ -1,5 +1,6 @@
|
||||
import { ChatUtility } from "../chat-utility.js";
|
||||
import { HIDE_DICE, SYSTEM_RDD } from "../constants.js";
|
||||
import { Grammar } from "../grammar.js";
|
||||
import { RdDItem } from "../item.js";
|
||||
import { Misc } from "../misc.js";
|
||||
import { RdDDice } from "../rdd-dice.js";
|
||||
@ -32,7 +33,7 @@ export class SystemCompendiums extends FormApplication {
|
||||
compendium: compendium,
|
||||
default: SystemCompendiums._getDefaultCompendium(compendium),
|
||||
setting: SystemCompendiums._getSettingCompendium(compendium)
|
||||
});
|
||||
})
|
||||
|
||||
game.settings.register(SYSTEM_RDD, definition.setting, {
|
||||
name: definition.label,
|
||||
@ -40,8 +41,8 @@ export class SystemCompendiums extends FormApplication {
|
||||
scope: "world",
|
||||
config: false,
|
||||
type: String
|
||||
});
|
||||
});
|
||||
})
|
||||
})
|
||||
|
||||
game.settings.registerMenu(SYSTEM_RDD, "compendium-settings", {
|
||||
name: "Choisir les compendiums système",
|
||||
@ -71,26 +72,27 @@ export class SystemCompendiums extends FormApplication {
|
||||
|
||||
static async getCompetences(actorType) {
|
||||
switch (actorType ?? 'personnage') {
|
||||
case 'personnage': return await SystemCompendiums.getWorldOrCompendiumItems('competence', 'competences');
|
||||
case 'creature': return await SystemCompendiums.getWorldOrCompendiumItems('competencecreature', 'competences-creatures');
|
||||
case 'entite': return await SystemCompendiums.getWorldOrCompendiumItems('competencecreature', 'competences-entites');
|
||||
case 'personnage':
|
||||
return await SystemCompendiums.getWorldOrCompendiumItems('competence', 'competences')
|
||||
case 'entite':
|
||||
case 'creature':
|
||||
return await SystemCompendiums.getWorldOrCompendiumItems('competencecreature', 'competences-creatures')
|
||||
case 'vehicule': return [];
|
||||
}
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static async getWorldOrCompendiumItems(itemType, compendium) {
|
||||
let items = game.items.filter(it => it.type == itemType);
|
||||
let items = game.items.filter(it => it.type == itemType)
|
||||
if (compendium) {
|
||||
const ids = items.map(it => it.id);
|
||||
const names = items.map(it => it.name.toLowerCase());
|
||||
const compendiumItems = await SystemCompendiums.getItems(compendium);
|
||||
items = items.concat(compendiumItems
|
||||
.filter(it => it.type == itemType)
|
||||
const ids = items.map(it => it.id)
|
||||
const names = items.map(it => Grammar.toLowerCaseNoAccent(it.name))
|
||||
const compendiumItems = await SystemCompendiums.getItems(compendium, itemType)
|
||||
return items.concat(compendiumItems
|
||||
.filter(it => !ids.includes(it.id))
|
||||
.filter(it => !names.includes(it.name.toLowerCase())));
|
||||
.filter(it => !names.includes(Grammar.equalsInsensitive(it.name))))
|
||||
}
|
||||
return items;
|
||||
return items
|
||||
}
|
||||
|
||||
static async loadDocument(document) {
|
||||
@ -284,23 +286,20 @@ export class CompendiumTableHelpers {
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static async tableRowToChatMessage(row, type = 'Item') {
|
||||
static async tableRowToChatMessage(row, type, options = { showSource: true }) {
|
||||
if (!row) {
|
||||
return;
|
||||
}
|
||||
const percentages = (row.total == 100) ? '%' : ''
|
||||
const flavorContent = await renderTemplate('systems/foundryvtt-reve-de-dragon/templates/chat-compendium-table-roll.hbs', {
|
||||
roll: row.roll,
|
||||
document: row.document,
|
||||
percentages,
|
||||
typeName: Misc.typeName(type, row.document?.type ?? 'objet'),
|
||||
isGM: game.user.isGM,
|
||||
options
|
||||
});
|
||||
const messageData = {
|
||||
// flavor: flavorContent,
|
||||
user: game.user.id,
|
||||
type: CONST.CHAT_MESSAGE_TYPES.ROLL,
|
||||
roll: row.roll,
|
||||
rolls: [row.roll],
|
||||
sound: CONFIG.sounds.dice,
|
||||
content: flavorContent
|
||||
};
|
||||
|
@ -26,22 +26,19 @@ export class TMRRencontres {
|
||||
* @param {*} forcedRoll
|
||||
*/
|
||||
async rollRencontre(terrain, forcedRoll) {
|
||||
terrain = TMRUtility.findTMRLike(terrain);
|
||||
if (terrain == undefined) {
|
||||
const tmrType = TMRUtility.findTMRLike(terrain)?.type
|
||||
if (tmrType == undefined) {
|
||||
return undefined;
|
||||
}
|
||||
|
||||
if (forcedRoll && (forcedRoll <= 0 || forcedRoll > 100)) {
|
||||
forcedRoll = undefined;
|
||||
}
|
||||
const codeTerrain = Grammar.toLowerCaseNoAccent(terrain)
|
||||
const filtreMauvaise = codeTerrain == 'mauvaise' ? it => it.system.mauvaiseRencontre : it => !it.system.mauvaiseRencontre;
|
||||
const frequence = it => it.system.frequence[codeTerrain];
|
||||
const filtreMauvaise = tmrType == 'mauvaise' ? it => it.system.mauvaiseRencontre : it => !it.system.mauvaiseRencontre;
|
||||
const frequence = it => it.system.frequence[tmrType];
|
||||
const row = await this.table.getRandom(frequence, filtreMauvaise, forcedRoll);
|
||||
if (row) {
|
||||
console.log("DORM", row);
|
||||
//row.document.system.computedForce = new Roll(row.document.system.formula).roll({async: false}).total;
|
||||
await CompendiumTableHelpers.tableRowToChatMessage(row);
|
||||
await CompendiumTableHelpers.tableRowToChatMessage(row, 'Item', {showSource: false});
|
||||
}
|
||||
|
||||
return row?.document;
|
||||
|
@ -2,228 +2,216 @@ import { Misc } from "./misc.js";
|
||||
import { Grammar } from "./grammar.js";
|
||||
import { RdDDice } from "./rdd-dice.js";
|
||||
|
||||
/* -------------------------------------------- */
|
||||
const TMRMapping = {
|
||||
A1: { type: "cite", label: "Cité Vide" },
|
||||
B1: { type: "plaines", label: "Plaines d’Assorh" },
|
||||
C1: { type: "necropole", label: "Nécropole de Kroak" },
|
||||
D1: { type: "fleuve", label: "Fleuve de l'Oubli" },
|
||||
E1: { type: "monts", label: "Monts de Kanaï" },
|
||||
F1: { type: "cite", label: "Cité Glauque" },
|
||||
G1: { type: "desolation", label: "Désolation de Jamais" },
|
||||
H1: { type: "lac", label: "Lac d’Anticalme" },
|
||||
I1: { type: "plaines", label: "Plaines Grises" },
|
||||
J1: { type: "monts", label: "Monts Fainéants" },
|
||||
K1: { type: "cite", label: "Cité d’Onkause" },
|
||||
L1: { type: "fleuve", label: "Fleuve de l'Oubli" },
|
||||
M1: { type: "cite", label: "Cité Jalouse" },
|
||||
|
||||
A2: { type: "desert", label: "Désert de Mieux" },
|
||||
B2: { type: "collines", label: "Collines de Dawell" },
|
||||
C2: { type: "marais", label: "Marais Glignants" },
|
||||
D2: { type: "cite", label: "Cité de Frost" },
|
||||
E2: { type: "plaines", label: "Plaines de Fiask" },
|
||||
F2: { type: "lac", label: "Lac de Misère" },
|
||||
G2: { type: "marais", label: "Marais Nuisants" },
|
||||
H2: { type: "collines", label: "Collines de Parta" },
|
||||
I2: { type: "foret", label: "Forêt Fade" },
|
||||
J2: { type: "desert", label: "Désert de Poly" },
|
||||
K2: { type: "foret", label: "Forêt Tamée" },
|
||||
L2: { type: "fleuve", label: "Fleuve de l'Oubli" },
|
||||
M2: { type: "necropole", label: "Nécropole de Logos" },
|
||||
|
||||
A3: { type: "desolation", label: "Désolation de Demain" },
|
||||
B3: { type: "plaines", label: "Plaines de Rubéga" },
|
||||
C3: { type: "fleuve", label: "Fleuve de l'Oubli" },
|
||||
D3: { type: "gouffre", label: "Gouffre d’Oki" },
|
||||
E3: { type: "foret", label: "Forêt d’Estoubh" },
|
||||
F3: { type: "fleuve", label: "Fleuve de l'Oubli" },
|
||||
G3: { type: "gouffre", label: "Gouffre de Sun" },
|
||||
H3: { type: "foret", label: "Forêt de Ganna" },
|
||||
I3: { type: "monts", label: "Monts Grinçants" },
|
||||
J3: { type: "cite", label: "Cité Venin" },
|
||||
K3: { type: "plaines", label: "Plaines de Dois" },
|
||||
L3: { type: "lac", label: "Lac Laineux" },
|
||||
M3: { type: "monts", label: "Monts de Vdah" },
|
||||
|
||||
A4: { type: "foret", label: "Forêt de Falconax" },
|
||||
B4: { type: "monts", label: "Monts Crâneurs" },
|
||||
C4: { type: "pont", label: "Pont de Giolii" },
|
||||
D4: { type: "lac", label: "Lac de Foam" },
|
||||
E4: { type: "plaines", label: "Plaines d’Orti" },
|
||||
F4: { type: "fleuve", label: "Fleuve de l'Oubli" },
|
||||
G4: { type: "sanctuaire", label: "Sanctuaire Blanc" },
|
||||
H4: { type: "plaines", label: "Plaines de Psark" },
|
||||
I4: { type: "plaines", label: "Plaines de Xiax" },
|
||||
J4: { type: "collines", label: "Collines d’Encre" },
|
||||
K4: { type: "pont", label: "Pont de Fah" },
|
||||
L4: { type: "sanctuaire", label: "Sanctuaire Mauve" },
|
||||
M4: { type: "gouffre", label: "Gouffre Grisant" },
|
||||
|
||||
A5: { type: "plaines", label: "Plaines de Trilkh" },
|
||||
B5: { type: "collines", label: "Collines de Tanegy" },
|
||||
C5: { type: "marais", label: "Marais Flouants" },
|
||||
D5: { type: "fleuve", label: "Fleuve de l'Oubli" },
|
||||
E5: { type: "monts", label: "Monts Brûlants" },
|
||||
F5: { type: "cite", label: "Cité de Panople" },
|
||||
G5: { type: "pont", label: "Pont d’Ik" },
|
||||
H5: { type: "desert", label: "Désert de Krane" },
|
||||
I5: { type: "desolation", label: "Désolation de Toujours" },
|
||||
J5: { type: "marais", label: "Marais de Jab" },
|
||||
K5: { type: "fleuve", label: "Fleuve de l'Oubli" },
|
||||
L5: { type: "collines", label: "Collines Suaves" },
|
||||
M5: { type: "cite", label: "Cité Rimarde" },
|
||||
|
||||
A6: { type: "necropole", label: "Nécropole de Zniak" },
|
||||
B6: { type: "foret", label: "Forêt de Bust" },
|
||||
C6: { type: "cite", label: "Cité Pavois" },
|
||||
D6: { type: "fleuve", label: "Fleuve de l'Oubli" },
|
||||
E6: { type: "sanctuaire", label: "Sanctuaire de Plaine" },
|
||||
F6: { type: "fleuve", label: "Fleuve de l'Oubli" },
|
||||
G6: { type: "marais", label: "Marais Glutants" },
|
||||
H6: { type: "monts", label: "Monts Gurdes" },
|
||||
I6: { type: "necropole", label: "Nécropole de Xotar" },
|
||||
J6: { type: "lac", label: "Lac d’Iaupe" },
|
||||
K6: { type: "desolation", label: "Désolation de Poor" },
|
||||
L6: { type: "foret", label: "Forêt Gueuse" },
|
||||
M6: { type: "desolation", label: "Désolation de Presque" },
|
||||
|
||||
A7: { type: "plaines", label: "Plaines de l’Arc" },
|
||||
B7: { type: "marais", label: "Marais Bluants" },
|
||||
C7: { type: "fleuve", label: "Fleuve de l'Oubli" },
|
||||
D7: { type: "plaines", label: "Plaines d’Affa" },
|
||||
E7: { type: "foret", label: "Forêt de Glusks" },
|
||||
F7: { type: "fleuve", label: "Fleuve de l'Oubli" },
|
||||
G7: { type: "cite", label: "Cité de Terwa" },
|
||||
H7: { type: "gouffre", label: "Gouffre de Kapfa" },
|
||||
I7: { type: "plaines", label: "Plaines de Troo" },
|
||||
J7: { type: "fleuve", label: "Fleuve de l'Oubli" },
|
||||
K7: { type: "cite", label: "Cité de Kolix" },
|
||||
L7: { type: "gouffre", label: "Gouffre d’Episophe" },
|
||||
M7: { type: "desert", label: "Désert de Lave" },
|
||||
|
||||
A8: { type: "gouffre", label: "Gouffre de Shok" },
|
||||
B8: { type: "fleuve", label: "Fleuve de l'Oubli" },
|
||||
C8: { type: "foret", label: "Forêt Turmide" },
|
||||
D8: { type: "cite", label: "Cité d’Olak" },
|
||||
E8: { type: "plaines", label: "Plaines d’Iolise" },
|
||||
F8: { type: "lac", label: "Lac des Chats" },
|
||||
G8: { type: "plaines", label: "Plaines Sans Joie" },
|
||||
H8: { type: "foret", label: "Forêt d’Ourf" },
|
||||
I8: { type: "fleuve", label: "Fleuve de l'Oubli" },
|
||||
J8: { type: "monts", label: "Monts Barask" },
|
||||
K8: { type: "desert", label: "Désert de Fumée" },
|
||||
L8: { type: "monts", label: "Monts Tavelés" },
|
||||
M8: { type: "plaines", label: "Plaines Lavées" },
|
||||
|
||||
A9: { type: "collines", label: "Collines de Korrex" },
|
||||
B9: { type: "lac", label: "Lac de Lucre" },
|
||||
C9: { type: "monts", label: "Monts Tuméfiés" },
|
||||
D9: { type: "pont", label: "Pont d’Orx" },
|
||||
E9: { type: "fleuve", label: "Fleuve de l'Oubli" },
|
||||
F9: { type: "plaines", label: "Plaines de Foe" },
|
||||
G9: { type: "desolation", label: "Désolation de Sel" },
|
||||
H9: { type: "collines", label: "Collines de Noirseul" },
|
||||
I9: { type: "fleuve", label: "Fleuve de l'Oubli" },
|
||||
J9: { type: "marais", label: "Marais Gronchants" },
|
||||
K9: { type: "sanctuaire", label: "Sanctuaire Noir" },
|
||||
L9: { type: "collines", label: "Collines Cornues" },
|
||||
M9: { type: "necropole", label: "Nécropole de Zonar" },
|
||||
|
||||
A10: { type: "sanctuaire", label: "Sanctuaire d’Olis" },
|
||||
B10: { type: "monts", label: "Monts Salés" },
|
||||
C10: { type: "marais", label: "Marais de Dom" },
|
||||
D10: { type: "fleuve", label: "Fleuve de l'Oubli" },
|
||||
E10: { type: "gouffre", label: "Gouffre de Junk" },
|
||||
F10: { type: "marais", label: "Marais Zultants" },
|
||||
G10: { type: "cite", label: "Cité de Sergal" },
|
||||
H10: { type: "plaines", label: "Plaines Noires" },
|
||||
I10: { type: "lac", label: "Lac Wanito" },
|
||||
J10: { type: "fleuve", label: "Fleuve de l'Oubli" },
|
||||
K10: { type: "plaines", label: "Plaines Jaunes" },
|
||||
L10: { type: "desert", label: "Désert de Nicrop" },
|
||||
M10: { type: "foret", label: "Forêt de Jajou" },
|
||||
|
||||
A11: { type: "desolation", label: "Désolation d’Hier" },
|
||||
B11: { type: "cite", label: "Cité de Brilz" },
|
||||
C11: { type: "pont", label: "Pont de Roï" },
|
||||
D11: { type: "desolation", label: "Désolation de Partout" },
|
||||
E11: { type: "lac", label: "Lac de Glinster" },
|
||||
F11: { type: "cite", label: "Cité de Noape" },
|
||||
G11: { type: "fleuve", label: "Fleuve de l'Oubli" },
|
||||
H11: { type: "fleuve", label: "Fleuve de l'Oubli" },
|
||||
I11: { type: "pont", label: "Pont de Yalm" },
|
||||
J11: { type: "plaines", label: "Plaines de Miltiar" },
|
||||
K11: { type: "cite", label: "Cité Tonnerre" },
|
||||
L11: { type: "collines", label: "Collines de Kol" },
|
||||
M11: { type: "cite", label: "Cité Crapaud" },
|
||||
|
||||
A12: { type: "plaines", label: "Plaines Sages" },
|
||||
B12: { type: "fleuve", label: "Fleuve de l'Oubli" },
|
||||
C12: { type: "lac", label: "Lac de Fricassa" },
|
||||
D12: { type: "collines", label: "Collines d’Huaï" },
|
||||
E12: { type: "monts", label: "Monts Ajourés" },
|
||||
F12: { type: "necropole", label: "Nécropole de Throat" },
|
||||
G12: { type: "plaines", label: "Plaines de Lufmil" },
|
||||
H12: { type: "collines", label: "Collines de Tooth" },
|
||||
I12: { type: "gouffre", label: "Gouffre Abimeux" },
|
||||
J12: { type: "cite", label: "Cité Folle" },
|
||||
K12: { type: "desolation", label: "Désolation d’Amour" },
|
||||
L12: { type: "plaines", label: "Plaines Venteuses" },
|
||||
M12: { type: "collines", label: "Collines Révulsantes" },
|
||||
|
||||
A13: { type: "fleuve", label: "Fleuve de l'Oubli" },
|
||||
B13: { type: "gouffre", label: "Gouffre des Litiges" },
|
||||
C13: { type: "desert", label: "Désert de Neige" },
|
||||
D13: { type: "cite", label: "Cité Sordide" },
|
||||
E13: { type: "plaines", label: "Plaines de Xnez" },
|
||||
F13: { type: "foret", label: "Forêt des Cris" },
|
||||
G13: { type: "plaines", label: "Plaines Calcaires" },
|
||||
H13: { type: "desolation", label: "Désolation de Rien" },
|
||||
I13: { type: "monts", label: "Monts Bigleux" },
|
||||
J13: { type: "gouffre", label: "Gouffre de Gromph" },
|
||||
K13: { type: "foret", label: "Forêt de Kluth" },
|
||||
L13: { type: "monts", label: "Monts Dormants" },
|
||||
M13: { type: "plaines", label: "Plaines d’Anjou" },
|
||||
|
||||
A14: { type: "collines", label: "Collines de Stolis" },
|
||||
B14: { type: "necropole", label: "Nécropole de Gorlo" },
|
||||
C14: { type: "foret", label: "Forêt de Bissam" },
|
||||
D14: { type: "sanctuaire", label: "Sanctuaire Plat" },
|
||||
E14: { type: "monts", label: "Monts de Quath" },
|
||||
F14: { type: "plaines", label: "Plaines Brisées" },
|
||||
G14: { type: "desert", label: "Désert de Sek" },
|
||||
H14: { type: "plaines", label: "Plaines Blanches" },
|
||||
I14: { type: "cite", label: "Cité Destituée" },
|
||||
J14: { type: "desert", label: "Désert de Sank" },
|
||||
K14: { type: "necropole", label: "Nécropole d’Antinéar" },
|
||||
L14: { type: "plaines", label: "Plaines de Jislith" },
|
||||
M14: { type: "desolation", label: "Désolation d’Après" },
|
||||
|
||||
A15: { type: "cite", label: "Cité de Mielh" },
|
||||
C15: { type: "plaines", label: "Plaines de Toué" },
|
||||
E15: { type: "foret", label: "Forêt des Furies" },
|
||||
G15: { type: "plaines", label: "Plaines des Soupirs" },
|
||||
I15: { type: "monts", label: "Monts des Dragées" },
|
||||
K15: { type: "collines", label: "Collines Pourpres" },
|
||||
M15: { type: "cite", label: "Cité de Klana" }
|
||||
export const TMRType = {
|
||||
cite: { type: 'cite', name: "cité", genre: "f" },
|
||||
sanctuaire: { type: 'sanctuaire', name: "sanctuaire", genre: 'm' },
|
||||
plaines: { type: 'plaines', name: "plaines", genre: "fp" },
|
||||
pont: { type: 'pont', name: "pont", genre: "m" },
|
||||
collines: { type: 'collines', name: "collines", genre: "p" },
|
||||
foret: { type: 'foret', name: "forêt", genre: "f" },
|
||||
monts: { type: 'monts', name: "monts", genre: "p" },
|
||||
desert: { type: 'desert', name: "désert", genre: "m" },
|
||||
fleuve: { type: 'fleuve', name: "fleuve", genre: "m" },
|
||||
lac: { type: 'lac', name: "lac", genre: "m" },
|
||||
marais: { type: 'marais', name: "marais", genre: "m" },
|
||||
gouffre: { type: 'gouffre', name: "gouffre", genre: "m" },
|
||||
necropole: { type: 'necropole', name: "nécropole", genre: "f" },
|
||||
desolation: { type: 'desolation', name: "désolation", genre: "f" }
|
||||
}
|
||||
|
||||
export const TMRType = {
|
||||
cite: { name: "cité", genre: "f" },
|
||||
sanctuaire: { name: "sanctuaire", genre: 'm' },
|
||||
plaines: { name: "plaines", genre: "fp" },
|
||||
pont: { name: "pont", genre: "m" },
|
||||
collines: { name: "collines", genre: "p" },
|
||||
foret: { name: "forêt", genre: "f" },
|
||||
monts: { name: "monts", genre: "p" },
|
||||
desert: { name: "désert", genre: "m" },
|
||||
fleuve: { name: "fleuve", genre: "m" },
|
||||
lac: { name: "lac", genre: "m" },
|
||||
marais: { name: "marais", genre: "m" },
|
||||
gouffre: { name: "gouffre", genre: "m" },
|
||||
necropole: { name: "nécropole", genre: "f" },
|
||||
desolation: { name: "désolation", genre: "f" }
|
||||
export const FLEUVE_COORD = 'Fleuve'
|
||||
|
||||
const TMRMapping = {
|
||||
Fleuve: { type: TMRType.fleuve.type, label: "Fleuve de l'Oubli" },
|
||||
A1: { type: TMRType.cite.type, label: "Cité Vide" },
|
||||
B1: { type: TMRType.plaines.type, label: "Plaines d’Assorh" },
|
||||
C1: { type: TMRType.necropole.type, label: "Nécropole de Kroak" },
|
||||
D1: { type: TMRType.fleuve.type, label: "Fleuve de l'Oubli" },
|
||||
E1: { type: TMRType.monts.type, label: "Monts de Kanaï" },
|
||||
F1: { type: TMRType.cite.type, label: "Cité Glauque" },
|
||||
G1: { type: TMRType.desolation.type, label: "Désolation de Jamais" },
|
||||
H1: { type: TMRType.lac.type, label: "Lac d’Anticalme" },
|
||||
I1: { type: TMRType.plaines.type, label: "Plaines Grises" },
|
||||
J1: { type: TMRType.monts.type, label: "Monts Fainéants" },
|
||||
K1: { type: TMRType.cite.type, label: "Cité d’Onkause" },
|
||||
L1: { type: TMRType.fleuve.type, label: "Fleuve de l'Oubli" },
|
||||
M1: { type: TMRType.cite.type, label: "Cité Jalouse" },
|
||||
A2: { type: TMRType.desert.type, label: "Désert de Mieux" },
|
||||
B2: { type: TMRType.collines.type, label: "Collines de Dawell" },
|
||||
C2: { type: TMRType.marais.type, label: "Marais Glignants" },
|
||||
D2: { type: TMRType.cite.type, label: "Cité de Frost" },
|
||||
E2: { type: TMRType.plaines.type, label: "Plaines de Fiask" },
|
||||
F2: { type: TMRType.lac.type, label: "Lac de Misère" },
|
||||
G2: { type: TMRType.marais.type, label: "Marais Nuisants" },
|
||||
H2: { type: TMRType.collines.type, label: "Collines de Parta" },
|
||||
I2: { type: TMRType.foret.type, label: "Forêt Fade" },
|
||||
J2: { type: TMRType.desert.type, label: "Désert de Poly" },
|
||||
K2: { type: TMRType.foret.type, label: "Forêt Tamée" },
|
||||
L2: { type: TMRType.fleuve.type, label: "Fleuve de l'Oubli" },
|
||||
M2: { type: TMRType.necropole.type, label: "Nécropole de Logos" },
|
||||
A3: { type: TMRType.desolation.type, label: "Désolation de Demain" },
|
||||
B3: { type: TMRType.plaines.type, label: "Plaines de Rubéga" },
|
||||
C3: { type: TMRType.fleuve.type, label: "Fleuve de l'Oubli" },
|
||||
D3: { type: TMRType.gouffre.type, label: "Gouffre d’Oki" },
|
||||
E3: { type: TMRType.foret.type, label: "Forêt d’Estoubh" },
|
||||
F3: { type: TMRType.fleuve.type, label: "Fleuve de l'Oubli" },
|
||||
G3: { type: TMRType.gouffre.type, label: "Gouffre de Sun" },
|
||||
H3: { type: TMRType.foret.type, label: "Forêt de Ganna" },
|
||||
I3: { type: TMRType.monts.type, label: "Monts Grinçants" },
|
||||
J3: { type: TMRType.cite.type, label: "Cité Venin" },
|
||||
K3: { type: TMRType.plaines.type, label: "Plaines de Dois" },
|
||||
L3: { type: TMRType.lac.type, label: "Lac Laineux" },
|
||||
M3: { type: TMRType.monts.type, label: "Monts de Vdah" },
|
||||
A4: { type: TMRType.foret.type, label: "Forêt de Falconax" },
|
||||
B4: { type: TMRType.monts.type, label: "Monts Crâneurs" },
|
||||
C4: { type: TMRType.pont.type, label: "Pont de Giolii" },
|
||||
D4: { type: TMRType.lac.type, label: "Lac de Foam" },
|
||||
E4: { type: TMRType.plaines.type, label: "Plaines d’Orti" },
|
||||
F4: { type: TMRType.fleuve.type, label: "Fleuve de l'Oubli" },
|
||||
G4: { type: TMRType.sanctuaire.type, label: "Sanctuaire Blanc" },
|
||||
H4: { type: TMRType.plaines.type, label: "Plaines de Psark" },
|
||||
I4: { type: TMRType.plaines.type, label: "Plaines de Xiax" },
|
||||
J4: { type: TMRType.collines.type, label: "Collines d’Encre" },
|
||||
K4: { type: TMRType.pont.type, label: "Pont de Fah" },
|
||||
L4: { type: TMRType.sanctuaire.type, label: "Sanctuaire Mauve" },
|
||||
M4: { type: TMRType.gouffre.type, label: "Gouffre Grisant" },
|
||||
A5: { type: TMRType.plaines.type, label: "Plaines de Trilkh" },
|
||||
B5: { type: TMRType.collines.type, label: "Collines de Tanegy" },
|
||||
C5: { type: TMRType.marais.type, label: "Marais Flouants" },
|
||||
D5: { type: TMRType.fleuve.type, label: "Fleuve de l'Oubli" },
|
||||
E5: { type: TMRType.monts.type, label: "Monts Brûlants" },
|
||||
F5: { type: TMRType.cite.type, label: "Cité de Panople" },
|
||||
G5: { type: TMRType.pont.type, label: "Pont d’Ik" },
|
||||
H5: { type: TMRType.desert.type, label: "Désert de Krane" },
|
||||
I5: { type: TMRType.desolation.type, label: "Désolation de Toujours" },
|
||||
J5: { type: TMRType.marais.type, label: "Marais de Jab" },
|
||||
K5: { type: TMRType.fleuve.type, label: "Fleuve de l'Oubli" },
|
||||
L5: { type: TMRType.collines.type, label: "Collines Suaves" },
|
||||
M5: { type: TMRType.cite.type, label: "Cité Rimarde" },
|
||||
A6: { type: TMRType.necropole.type, label: "Nécropole de Zniak" },
|
||||
B6: { type: TMRType.foret.type, label: "Forêt de Bust" },
|
||||
C6: { type: TMRType.cite.type, label: "Cité Pavois" },
|
||||
D6: { type: TMRType.fleuve.type, label: "Fleuve de l'Oubli" },
|
||||
E6: { type: TMRType.sanctuaire.type, label: "Sanctuaire de Plaine" },
|
||||
F6: { type: TMRType.fleuve.type, label: "Fleuve de l'Oubli" },
|
||||
G6: { type: TMRType.marais.type, label: "Marais Glutants" },
|
||||
H6: { type: TMRType.monts.type, label: "Monts Gurdes" },
|
||||
I6: { type: TMRType.necropole.type, label: "Nécropole de Xotar" },
|
||||
J6: { type: TMRType.lac.type, label: "Lac d’Iaupe" },
|
||||
K6: { type: TMRType.desolation.type, label: "Désolation de Poor" },
|
||||
L6: { type: TMRType.foret.type, label: "Forêt Gueuse" },
|
||||
M6: { type: TMRType.desolation.type, label: "Désolation de Presque" },
|
||||
A7: { type: TMRType.plaines.type, label: "Plaines de l’Arc" },
|
||||
B7: { type: TMRType.marais.type, label: "Marais Bluants" },
|
||||
C7: { type: TMRType.fleuve.type, label: "Fleuve de l'Oubli" },
|
||||
D7: { type: TMRType.plaines.type, label: "Plaines d’Affa" },
|
||||
E7: { type: TMRType.foret.type, label: "Forêt de Glusks" },
|
||||
F7: { type: TMRType.fleuve.type, label: "Fleuve de l'Oubli" },
|
||||
G7: { type: TMRType.cite.type, label: "Cité de Terwa" },
|
||||
H7: { type: TMRType.gouffre.type, label: "Gouffre de Kapfa" },
|
||||
I7: { type: TMRType.plaines.type, label: "Plaines de Troo" },
|
||||
J7: { type: TMRType.fleuve.type, label: "Fleuve de l'Oubli" },
|
||||
K7: { type: TMRType.cite.type, label: "Cité de Kolix" },
|
||||
L7: { type: TMRType.gouffre.type, label: "Gouffre d’Episophe" },
|
||||
M7: { type: TMRType.desert.type, label: "Désert de Lave" },
|
||||
A8: { type: TMRType.gouffre.type, label: "Gouffre de Shok" },
|
||||
B8: { type: TMRType.fleuve.type, label: "Fleuve de l'Oubli" },
|
||||
C8: { type: TMRType.foret.type, label: "Forêt Turmide" },
|
||||
D8: { type: TMRType.cite.type, label: "Cité d’Olak" },
|
||||
E8: { type: TMRType.plaines.type, label: "Plaines d’Iolise" },
|
||||
F8: { type: TMRType.lac.type, label: "Lac des Chats" },
|
||||
G8: { type: TMRType.plaines.type, label: "Plaines Sans Joie" },
|
||||
H8: { type: TMRType.foret.type, label: "Forêt d’Ourf" },
|
||||
I8: { type: TMRType.fleuve.type, label: "Fleuve de l'Oubli" },
|
||||
J8: { type: TMRType.monts.type, label: "Monts Barask" },
|
||||
K8: { type: TMRType.desert.type, label: "Désert de Fumée" },
|
||||
L8: { type: TMRType.monts.type, label: "Monts Tavelés" },
|
||||
M8: { type: TMRType.plaines.type, label: "Plaines Lavées" },
|
||||
A9: { type: TMRType.collines.type, label: "Collines de Korrex" },
|
||||
B9: { type: TMRType.lac.type, label: "Lac de Lucre" },
|
||||
C9: { type: TMRType.monts.type, label: "Monts Tuméfiés" },
|
||||
D9: { type: TMRType.pont.type, label: "Pont d’Orx" },
|
||||
E9: { type: TMRType.fleuve.type, label: "Fleuve de l'Oubli" },
|
||||
F9: { type: TMRType.plaines.type, label: "Plaines de Foe" },
|
||||
G9: { type: TMRType.desolation.type, label: "Désolation de Sel" },
|
||||
H9: { type: TMRType.collines.type, label: "Collines de Noirseul" },
|
||||
I9: { type: TMRType.fleuve.type, label: "Fleuve de l'Oubli" },
|
||||
J9: { type: TMRType.marais.type, label: "Marais Gronchants" },
|
||||
K9: { type: TMRType.sanctuaire.type, label: "Sanctuaire Noir" },
|
||||
L9: { type: TMRType.collines.type, label: "Collines Cornues" },
|
||||
M9: { type: TMRType.necropole.type, label: "Nécropole de Zonar" },
|
||||
A10: { type: TMRType.sanctuaire.type, label: "Sanctuaire d’Olis" },
|
||||
B10: { type: TMRType.monts.type, label: "Monts Salés" },
|
||||
C10: { type: TMRType.marais.type, label: "Marais de Dom" },
|
||||
D10: { type: TMRType.fleuve.type, label: "Fleuve de l'Oubli" },
|
||||
E10: { type: TMRType.gouffre.type, label: "Gouffre de Junk" },
|
||||
F10: { type: TMRType.marais.type, label: "Marais Zultants" },
|
||||
G10: { type: TMRType.cite.type, label: "Cité de Sergal" },
|
||||
H10: { type: TMRType.plaines.type, label: "Plaines Noires" },
|
||||
I10: { type: TMRType.lac.type, label: "Lac Wanito" },
|
||||
J10: { type: TMRType.fleuve.type, label: "Fleuve de l'Oubli" },
|
||||
K10: { type: TMRType.plaines.type, label: "Plaines Jaunes" },
|
||||
L10: { type: TMRType.desert.type, label: "Désert de Nicrop" },
|
||||
M10: { type: TMRType.foret.type, label: "Forêt de Jajou" },
|
||||
A11: { type: TMRType.desolation.type, label: "Désolation d’Hier" },
|
||||
B11: { type: TMRType.cite.type, label: "Cité de Brilz" },
|
||||
C11: { type: TMRType.pont.type, label: "Pont de Roï" },
|
||||
D11: { type: TMRType.desolation.type, label: "Désolation de Partout" },
|
||||
E11: { type: TMRType.lac.type, label: "Lac de Glinster" },
|
||||
F11: { type: TMRType.cite.type, label: "Cité de Noape" },
|
||||
G11: { type: TMRType.fleuve.type, label: "Fleuve de l'Oubli" },
|
||||
H11: { type: TMRType.fleuve.type, label: "Fleuve de l'Oubli" },
|
||||
I11: { type: TMRType.pont.type, label: "Pont de Yalm" },
|
||||
J11: { type: TMRType.plaines.type, label: "Plaines de Miltiar" },
|
||||
K11: { type: TMRType.cite.type, label: "Cité Tonnerre" },
|
||||
L11: { type: TMRType.collines.type, label: "Collines de Kol" },
|
||||
M11: { type: TMRType.cite.type, label: "Cité Crapaud" },
|
||||
A12: { type: TMRType.plaines.type, label: "Plaines Sages" },
|
||||
B12: { type: TMRType.fleuve.type, label: "Fleuve de l'Oubli" },
|
||||
C12: { type: TMRType.lac.type, label: "Lac de Fricassa" },
|
||||
D12: { type: TMRType.collines.type, label: "Collines d’Huaï" },
|
||||
E12: { type: TMRType.monts.type, label: "Monts Ajourés" },
|
||||
F12: { type: TMRType.necropole.type, label: "Nécropole de Throat" },
|
||||
G12: { type: TMRType.plaines.type, label: "Plaines de Lufmil" },
|
||||
H12: { type: TMRType.collines.type, label: "Collines de Tooth" },
|
||||
I12: { type: TMRType.gouffre.type, label: "Gouffre Abimeux" },
|
||||
J12: { type: TMRType.cite.type, label: "Cité Folle" },
|
||||
K12: { type: TMRType.desolation.type, label: "Désolation d’Amour" },
|
||||
L12: { type: TMRType.plaines.type, label: "Plaines Venteuses" },
|
||||
M12: { type: TMRType.collines.type, label: "Collines Révulsantes" },
|
||||
A13: { type: TMRType.fleuve.type, label: "Fleuve de l'Oubli" },
|
||||
B13: { type: TMRType.gouffre.type, label: "Gouffre des Litiges" },
|
||||
C13: { type: TMRType.desert.type, label: "Désert de Neige" },
|
||||
D13: { type: TMRType.cite.type, label: "Cité Sordide" },
|
||||
E13: { type: TMRType.plaines.type, label: "Plaines de Xnez" },
|
||||
F13: { type: TMRType.foret.type, label: "Forêt des Cris" },
|
||||
G13: { type: TMRType.plaines.type, label: "Plaines Calcaires" },
|
||||
H13: { type: TMRType.desolation.type, label: "Désolation de Rien" },
|
||||
I13: { type: TMRType.monts.type, label: "Monts Bigleux" },
|
||||
J13: { type: TMRType.gouffre.type, label: "Gouffre de Gromph" },
|
||||
K13: { type: TMRType.foret.type, label: "Forêt de Kluth" },
|
||||
L13: { type: TMRType.monts.type, label: "Monts Dormants" },
|
||||
M13: { type: TMRType.plaines.type, label: "Plaines d’Anjou" },
|
||||
A14: { type: TMRType.collines.type, label: "Collines de Stolis" },
|
||||
B14: { type: TMRType.necropole.type, label: "Nécropole de Gorlo" },
|
||||
C14: { type: TMRType.foret.type, label: "Forêt de Bissam" },
|
||||
D14: { type: TMRType.sanctuaire.type, label: "Sanctuaire Plat" },
|
||||
E14: { type: TMRType.monts.type, label: "Monts de Quath" },
|
||||
F14: { type: TMRType.plaines.type, label: "Plaines Brisées" },
|
||||
G14: { type: TMRType.desert.type, label: "Désert de Sek" },
|
||||
H14: { type: TMRType.plaines.type, label: "Plaines Blanches" },
|
||||
I14: { type: TMRType.cite.type, label: "Cité Destituée" },
|
||||
J14: { type: TMRType.desert.type, label: "Désert de Sank" },
|
||||
K14: { type: TMRType.necropole.type, label: "Nécropole d’Antinéar" },
|
||||
L14: { type: TMRType.plaines.type, label: "Plaines de Jislith" },
|
||||
M14: { type: TMRType.desolation.type, label: "Désolation d’Après" },
|
||||
A15: { type: TMRType.cite.type, label: "Cité de Mielh" },
|
||||
C15: { type: TMRType.plaines.type, label: "Plaines de Toué" },
|
||||
E15: { type: TMRType.foret.type, label: "Forêt des Furies" },
|
||||
G15: { type: TMRType.plaines.type, label: "Plaines des Soupirs" },
|
||||
I15: { type: TMRType.monts.type, label: "Monts des Dragées" },
|
||||
K15: { type: TMRType.collines.type, label: "Collines Pourpres" },
|
||||
M15: { type: TMRType.cite.type, label: "Cité de Klana" }
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
@ -251,13 +239,16 @@ const TMR_MOVE = {
|
||||
*/
|
||||
export class TMRUtility {
|
||||
static init() {
|
||||
|
||||
for (let coord in TMRMapping) {
|
||||
const tmr = TMRMapping[coord];
|
||||
tmr.coord = coord;
|
||||
tmr.oddq = TMRUtility.coordTMRToOddq(coord);
|
||||
tmr.genre = TMRType[tmr.type].genre;
|
||||
const tmr = TMRMapping[coord]
|
||||
tmr.coord = coord
|
||||
tmr.genre = TMRType[tmr.type].genre
|
||||
if (coord != FLEUVE_COORD) {
|
||||
tmr.oddq = TMRUtility.coordTMRToOddq(coord)
|
||||
}
|
||||
}
|
||||
let tmrByType = Misc.classify(Object.values(TMRMapping));
|
||||
let tmrByType = Misc.classify(Object.values(TMRMapping).filter(it => it.coord != FLEUVE_COORD))
|
||||
for (const [type, list] of Object.entries(tmrByType)) {
|
||||
TMRType[type].list = list;
|
||||
}
|
||||
@ -265,14 +256,17 @@ export class TMRUtility {
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static verifyTMRCoord(coord) {
|
||||
return Grammar.equalsInsensitive(coord, 'Fleuve') || TMRUtility.getTMR(coord);
|
||||
return Grammar.equalsInsensitive(coord, FLEUVE_COORD) || TMRUtility.getTMR(coord);
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static getTMR(coord) {
|
||||
return coord == 'Fleuve' ? TMRMapping['D1'] : TMRMapping[coord];
|
||||
return coord == FLEUVE_COORD ? TMRMapping['D1'] : TMRMapping[coord];
|
||||
}
|
||||
|
||||
static isFleuve(coord) {
|
||||
return TMRMapping[coord]?.type == TMRType.fleuve.type
|
||||
}
|
||||
static getTMRLabel(coord) {
|
||||
return TMRUtility.getTMR(coord)?.label ?? (coord + ": case inconnue");
|
||||
}
|
||||
@ -290,18 +284,18 @@ export class TMRUtility {
|
||||
static findTMRLike(type, options = { inclusMauvaise: true }) {
|
||||
const choix = [...Object.values(TMRType)]
|
||||
if (options.inclusMauvaise) {
|
||||
choix.push({ name: 'Mauvaise' });
|
||||
choix.push({ name: 'Mauvaise', type: 'mauvaise'});
|
||||
}
|
||||
const selection = Misc.findAllLike(type, choix).map(it => it.name);
|
||||
const selection = Misc.findAllLike(type, choix)
|
||||
if (selection.length == 0) {
|
||||
ui.notifications.warn(`Un type de TMR doit être indiqué, '${type}' n'est pas trouvé dans ${choix}`);
|
||||
return undefined;
|
||||
return undefined
|
||||
}
|
||||
if (selection.length > 1) {
|
||||
ui.notifications.warn(`Plusieurs types de TMR pourraient correspondre à '${type}': ${selection}`);
|
||||
ui.notifications.warn(`Plusieurs types de TMR pourraient correspondre à '${type}': ${selection.map(it => it.name)}`);
|
||||
return undefined;
|
||||
}
|
||||
return selection[0];
|
||||
return selection[0]
|
||||
}
|
||||
|
||||
static typeTmrName(type) {
|
||||
@ -326,7 +320,7 @@ export class TMRUtility {
|
||||
/* -------------------------------------------- */
|
||||
static deplacement(coordOrig, moveName) {
|
||||
const tmrMove = TMR_MOVE[moveName];
|
||||
if (! tmrMove) {
|
||||
if (!tmrMove) {
|
||||
ui.notifications.error(`Le déplacement dans les TMR '${moveName}' est inconnu`)
|
||||
return coordOrig
|
||||
}
|
||||
|
@ -17,7 +17,7 @@ items:
|
||||
carac_value: 13
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -28,14 +28,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!Igt8XPaL7NQrGYlq.shsUV8UpU18c0RJK'
|
||||
- _id: CYpxxf1uTa78NWR9
|
||||
name: Esquive
|
||||
@ -51,7 +46,7 @@ items:
|
||||
carac_value: 8
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -62,14 +57,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!Igt8XPaL7NQrGYlq.CYpxxf1uTa78NWR9'
|
||||
- _id: lzEdMrKXbOYrWG5S
|
||||
name: Vigilance
|
||||
@ -85,7 +75,7 @@ items:
|
||||
carac_value: 11
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -96,23 +86,14 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!Igt8XPaL7NQrGYlq.lzEdMrKXbOYrWG5S'
|
||||
- _id: NWmRryjNFkXcd1v9
|
||||
name: Piétinement
|
||||
type: competencecreature
|
||||
sort: 150000
|
||||
flags:
|
||||
core:
|
||||
sourceId: >-
|
||||
Compendium.foundryvtt-reve-de-dragon.competences-creatures.PrVuVpwuYaZtwRUi
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/compcreature-pietinement.webp
|
||||
effects: []
|
||||
folder: null
|
||||
@ -134,21 +115,12 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776394
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: >-
|
||||
Compendium.foundryvtt-reve-de-dragon.competences-creatures.PrVuVpwuYaZtwRUi
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!Igt8XPaL7NQrGYlq.NWmRryjNFkXcd1v9'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.Igt8XPaL7NQrGYlq
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -256,57 +228,9 @@ system:
|
||||
|
||||
<p> </p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
Q2G6GTdrotKzYGUC: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Aligate
|
||||
@ -385,12 +309,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574848
|
||||
modifiedTime: 1686701218698
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.Igt8XPaL7NQrGYlq
|
||||
duplicateSource: null
|
||||
_key: '!actors!Igt8XPaL7NQrGYlq'
|
||||
|
||||
|
@ -17,7 +17,7 @@ items:
|
||||
carac_value: 14
|
||||
niveau: 4
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -28,14 +28,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!ppjPZoSKp7j841bp.shsUV8UpU18c0RJK'
|
||||
- _id: yDHZfK4RmwQW4YaW
|
||||
name: Discrétion
|
||||
@ -51,7 +46,7 @@ items:
|
||||
carac_value: 14
|
||||
niveau: 4
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -62,14 +57,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!ppjPZoSKp7j841bp.yDHZfK4RmwQW4YaW'
|
||||
- _id: CYpxxf1uTa78NWR9
|
||||
name: Esquive
|
||||
@ -85,7 +75,7 @@ items:
|
||||
carac_value: 14
|
||||
niveau: 4
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -96,14 +86,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!ppjPZoSKp7j841bp.CYpxxf1uTa78NWR9'
|
||||
- _id: 6DK46pyO0hzEuuUg
|
||||
name: Morsure
|
||||
@ -131,13 +116,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776403
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!ppjPZoSKp7j841bp.6DK46pyO0hzEuuUg'
|
||||
- _id: lzEdMrKXbOYrWG5S
|
||||
name: Vigilance
|
||||
@ -153,7 +133,7 @@ items:
|
||||
carac_value: 15
|
||||
niveau: 6
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -164,21 +144,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!ppjPZoSKp7j841bp.lzEdMrKXbOYrWG5S'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.ppjPZoSKp7j841bp
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -327,57 +299,9 @@ system:
|
||||
|
||||
</table>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Araflate
|
||||
@ -456,12 +380,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574886
|
||||
modifiedTime: 1686701218699
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.ppjPZoSKp7j841bp
|
||||
duplicateSource: null
|
||||
_key: '!actors!ppjPZoSKp7j841bp'
|
||||
|
||||
|
@ -17,7 +17,7 @@ items:
|
||||
carac_value: 8
|
||||
niveau: 0
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -28,14 +28,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!Q0i8frS62Mn7SW5c.shsUV8UpU18c0RJK'
|
||||
- _id: yDHZfK4RmwQW4YaW
|
||||
name: Discrétion
|
||||
@ -51,7 +46,7 @@ items:
|
||||
carac_value: 13
|
||||
niveau: 4
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -62,14 +57,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!Q0i8frS62Mn7SW5c.yDHZfK4RmwQW4YaW'
|
||||
- _id: CYpxxf1uTa78NWR9
|
||||
name: Esquive
|
||||
@ -85,7 +75,7 @@ items:
|
||||
carac_value: 8
|
||||
niveau: 1
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -96,14 +86,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!Q0i8frS62Mn7SW5c.CYpxxf1uTa78NWR9'
|
||||
- _id: 6DK46pyO0hzEuuUg
|
||||
name: Morsure
|
||||
@ -131,13 +116,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776417
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!Q0i8frS62Mn7SW5c.6DK46pyO0hzEuuUg'
|
||||
- _id: lzEdMrKXbOYrWG5S
|
||||
name: Vigilance
|
||||
@ -153,7 +133,7 @@ items:
|
||||
carac_value: 12
|
||||
niveau: 4
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -164,21 +144,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!Q0i8frS62Mn7SW5c.lzEdMrKXbOYrWG5S'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.Q0i8frS62Mn7SW5c
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -278,57 +250,9 @@ system:
|
||||
dévorer tout ce qui bouge. Ses réussites particulières
|
||||
sont toujours en <em>force</em>.</p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Baffreux
|
||||
@ -341,9 +265,9 @@ prototypeToken:
|
||||
disposition: -1
|
||||
displayBars: 0
|
||||
bar1:
|
||||
attribute: null
|
||||
attribute: sante.vie
|
||||
bar2:
|
||||
attribute: null
|
||||
attribute: sante.endurance
|
||||
randomImg: false
|
||||
alpha: 1
|
||||
light:
|
||||
@ -407,12 +331,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574857
|
||||
modifiedTime: 1686701218700
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.Q0i8frS62Mn7SW5c
|
||||
duplicateSource: null
|
||||
_key: '!actors!Q0i8frS62Mn7SW5c'
|
||||
|
||||
|
@ -17,7 +17,7 @@ items:
|
||||
carac_value: 15
|
||||
niveau: 6
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -28,14 +28,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!ZLROmHLm6G9pElkk.shsUV8UpU18c0RJK'
|
||||
- _id: CYpxxf1uTa78NWR9
|
||||
name: Esquive
|
||||
@ -51,7 +46,7 @@ items:
|
||||
carac_value: 10
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -62,14 +57,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!ZLROmHLm6G9pElkk.CYpxxf1uTa78NWR9'
|
||||
- _id: BjqRrGtHtTzuNpZB
|
||||
name: Griffes et Crocs
|
||||
@ -97,13 +87,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776423
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!ZLROmHLm6G9pElkk.BjqRrGtHtTzuNpZB'
|
||||
- _id: lzEdMrKXbOYrWG5S
|
||||
name: Vigilance
|
||||
@ -119,7 +104,7 @@ items:
|
||||
carac_value: 13
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -130,21 +115,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!ZLROmHLm6G9pElkk.lzEdMrKXbOYrWG5S'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.ZLROmHLm6G9pElkk
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -260,57 +237,9 @@ system:
|
||||
comment vous y prendriez-vous pour le faire sortir de son antre en plein
|
||||
jour ?</p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Bandersnatch
|
||||
@ -389,12 +318,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574870
|
||||
modifiedTime: 1686701218700
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.ZLROmHLm6G9pElkk
|
||||
duplicateSource: null
|
||||
_key: '!actors!ZLROmHLm6G9pElkk'
|
||||
|
||||
|
@ -29,13 +29,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776438
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!zMvyRrp10dkfcS43.LWQHz5ymNBzh6ZEr'
|
||||
- _id: shsUV8UpU18c0RJK
|
||||
name: Course
|
||||
@ -51,7 +46,7 @@ items:
|
||||
carac_value: 15
|
||||
niveau: 6
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -62,14 +57,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!zMvyRrp10dkfcS43.shsUV8UpU18c0RJK'
|
||||
- _id: CYpxxf1uTa78NWR9
|
||||
name: Esquive
|
||||
@ -85,7 +75,7 @@ items:
|
||||
carac_value: 10
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -96,14 +86,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!zMvyRrp10dkfcS43.CYpxxf1uTa78NWR9'
|
||||
- _id: lzEdMrKXbOYrWG5S
|
||||
name: Vigilance
|
||||
@ -119,7 +104,7 @@ items:
|
||||
carac_value: 13
|
||||
niveau: 6
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -130,22 +115,14 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!zMvyRrp10dkfcS43.lzEdMrKXbOYrWG5S'
|
||||
- _id: iwQo9KoK5tfIN7sw
|
||||
name: Saut
|
||||
type: competencecreature
|
||||
sort: 100000
|
||||
flags:
|
||||
core:
|
||||
sourceId: Item.JZDgJ7ySiV84llkK
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_saut.webp
|
||||
effects: []
|
||||
folder: null
|
||||
@ -155,7 +132,7 @@ items:
|
||||
carac_value: 15
|
||||
niveau: 6
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -166,21 +143,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: Item.JZDgJ7ySiV84llkK
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!zMvyRrp10dkfcS43.iwQo9KoK5tfIN7sw'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.zMvyRrp10dkfcS43
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -283,57 +252,9 @@ system:
|
||||
n’hésitent pas à charger les intrus pour protéger
|
||||
biches et faons.</p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Bramart
|
||||
@ -412,12 +333,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574891
|
||||
modifiedTime: 1686701218701
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.zMvyRrp10dkfcS43
|
||||
duplicateSource: null
|
||||
_key: '!actors!zMvyRrp10dkfcS43'
|
||||
|
||||
|
@ -17,7 +17,7 @@ items:
|
||||
carac_value: 13
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -28,14 +28,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!twCuK1GjVBTUFGXF.shsUV8UpU18c0RJK'
|
||||
- _id: 4GmpkphbsmQjvVVK
|
||||
name: Escalade
|
||||
@ -51,7 +46,7 @@ items:
|
||||
carac_value: 15
|
||||
niveau: 4
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -62,14 +57,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!twCuK1GjVBTUFGXF.4GmpkphbsmQjvVVK'
|
||||
- _id: CYpxxf1uTa78NWR9
|
||||
name: Esquive
|
||||
@ -85,7 +75,7 @@ items:
|
||||
carac_value: 13
|
||||
niveau: 5
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -96,14 +86,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!twCuK1GjVBTUFGXF.CYpxxf1uTa78NWR9'
|
||||
- _id: BjqRrGtHtTzuNpZB
|
||||
name: Griffes et Crocs
|
||||
@ -131,13 +116,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776442
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!twCuK1GjVBTUFGXF.BjqRrGtHtTzuNpZB'
|
||||
- _id: lzEdMrKXbOYrWG5S
|
||||
name: Vigilance
|
||||
@ -153,7 +133,7 @@ items:
|
||||
carac_value: 14
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -164,22 +144,14 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!twCuK1GjVBTUFGXF.lzEdMrKXbOYrWG5S'
|
||||
- _id: plIWZXJT0XGKJ5ar
|
||||
name: Saut
|
||||
type: competencecreature
|
||||
sort: 200000
|
||||
flags:
|
||||
core:
|
||||
sourceId: Item.JZDgJ7ySiV84llkK
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_saut.webp
|
||||
effects: []
|
||||
folder: null
|
||||
@ -189,7 +161,7 @@ items:
|
||||
carac_value: 13
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -200,21 +172,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: Item.JZDgJ7ySiV84llkK
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!twCuK1GjVBTUFGXF.plIWZXJT0XGKJ5ar'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.twCuK1GjVBTUFGXF
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -340,57 +304,9 @@ system:
|
||||
combat indiquées ne s’appliquent qu’à la
|
||||
pointue.</p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Brolute rieuse
|
||||
@ -469,12 +385,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574889
|
||||
modifiedTime: 1686701218702
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.twCuK1GjVBTUFGXF
|
||||
duplicateSource: null
|
||||
_key: '!actors!twCuK1GjVBTUFGXF'
|
||||
|
||||
|
@ -2,9 +2,6 @@ _id: LqYHIJf9LVGxRT7S
|
||||
name: Chamule
|
||||
type: creature
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.LqYHIJf9LVGxRT7S
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/creatures/chamule.svg
|
||||
items:
|
||||
- _id: shsUV8UpU18c0RJK
|
||||
@ -20,7 +17,7 @@ items:
|
||||
carac_value: 12
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -32,14 +29,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!LqYHIJf9LVGxRT7S.shsUV8UpU18c0RJK'
|
||||
- _id: CYpxxf1uTa78NWR9
|
||||
name: Esquive
|
||||
@ -54,7 +46,7 @@ items:
|
||||
carac_value: 8
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -66,14 +58,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!LqYHIJf9LVGxRT7S.CYpxxf1uTa78NWR9'
|
||||
- _id: 6DK46pyO0hzEuuUg
|
||||
name: Morsure
|
||||
@ -101,13 +88,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776536
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!LqYHIJf9LVGxRT7S.6DK46pyO0hzEuuUg'
|
||||
- _id: lzEdMrKXbOYrWG5S
|
||||
name: Vigilance
|
||||
@ -122,7 +104,7 @@ items:
|
||||
carac_value: 12
|
||||
niveau: 0
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -134,23 +116,14 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!LqYHIJf9LVGxRT7S.lzEdMrKXbOYrWG5S'
|
||||
- _id: 3MgAaUHeKGBcbyr5
|
||||
name: Coup de pied
|
||||
type: competencecreature
|
||||
sort: 500000
|
||||
flags:
|
||||
core:
|
||||
sourceId: >-
|
||||
Compendium.foundryvtt-reve-de-dragon.competences-creatures.Zpl2Bi451vB3r91W
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/compcreature-coup_de_pied.webp
|
||||
effects: []
|
||||
system:
|
||||
@ -172,14 +145,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776536
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: >-
|
||||
Compendium.foundryvtt-reve-de-dragon.competences-creatures.Zpl2Bi451vB3r91W
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!LqYHIJf9LVGxRT7S.3MgAaUHeKGBcbyr5'
|
||||
effects: []
|
||||
system:
|
||||
@ -290,57 +257,9 @@ system:
|
||||
normalement de graines et de fruits. Si on les laisse goûter à
|
||||
la chair, elles deviennent agressives, intraitables, et mordent.</p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Chamule
|
||||
@ -420,12 +339,7 @@ prototypeToken:
|
||||
folder: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574851
|
||||
modifiedTime: 1686701218702
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.LqYHIJf9LVGxRT7S
|
||||
duplicateSource: null
|
||||
_key: '!actors!LqYHIJf9LVGxRT7S'
|
||||
|
||||
|
@ -17,7 +17,7 @@ items:
|
||||
carac_value: 14
|
||||
niveau: 4
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -28,14 +28,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!76I21ASdWYBqsg8I.shsUV8UpU18c0RJK'
|
||||
- _id: CYpxxf1uTa78NWR9
|
||||
name: Esquive
|
||||
@ -51,7 +46,7 @@ items:
|
||||
carac_value: 9
|
||||
niveau: 1
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -62,14 +57,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!76I21ASdWYBqsg8I.CYpxxf1uTa78NWR9'
|
||||
- _id: ndNshntOYb1JFNqi
|
||||
name: Ruade
|
||||
@ -97,13 +87,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776446
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!76I21ASdWYBqsg8I.ndNshntOYb1JFNqi'
|
||||
- _id: lzEdMrKXbOYrWG5S
|
||||
name: Vigilance
|
||||
@ -119,7 +104,7 @@ items:
|
||||
carac_value: 12
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -130,21 +115,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!76I21ASdWYBqsg8I.lzEdMrKXbOYrWG5S'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.76I21ASdWYBqsg8I
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -243,57 +220,9 @@ system:
|
||||
course est rajoutée une fois pour toutes, mais peut être
|
||||
modulée par un jet de course sur la table de Course animale.</p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Cheval
|
||||
@ -372,12 +301,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574839
|
||||
modifiedTime: 1686701218703
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.76I21ASdWYBqsg8I
|
||||
duplicateSource: null
|
||||
_key: '!actors!76I21ASdWYBqsg8I'
|
||||
|
||||
|
@ -2,9 +2,6 @@ _id: XuDpG772k6PAQ5LJ
|
||||
name: Chiard
|
||||
type: creature
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.XuDpG772k6PAQ5LJ
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/creatures/chiard.svg
|
||||
items:
|
||||
- _id: shsUV8UpU18c0RJK
|
||||
@ -20,7 +17,7 @@ items:
|
||||
carac_value: 12
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -32,14 +29,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!XuDpG772k6PAQ5LJ.shsUV8UpU18c0RJK'
|
||||
- _id: CYpxxf1uTa78NWR9
|
||||
name: Esquive
|
||||
@ -54,7 +46,7 @@ items:
|
||||
carac_value: 10
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -66,14 +58,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!XuDpG772k6PAQ5LJ.CYpxxf1uTa78NWR9'
|
||||
- _id: 6DK46pyO0hzEuuUg
|
||||
name: Morsure
|
||||
@ -101,13 +88,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776448
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!XuDpG772k6PAQ5LJ.6DK46pyO0hzEuuUg'
|
||||
- _id: lzEdMrKXbOYrWG5S
|
||||
name: Vigilance
|
||||
@ -122,7 +104,7 @@ items:
|
||||
carac_value: 11
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -134,22 +116,14 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!XuDpG772k6PAQ5LJ.lzEdMrKXbOYrWG5S'
|
||||
- _id: Rtt7bny59v2jBhuO
|
||||
name: Saut
|
||||
type: competencecreature
|
||||
sort: 200000
|
||||
flags:
|
||||
core:
|
||||
sourceId: Item.JZDgJ7ySiV84llkK
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_saut.webp
|
||||
effects: []
|
||||
system:
|
||||
@ -158,7 +132,7 @@ items:
|
||||
carac_value: 12
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -170,14 +144,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: Item.JZDgJ7ySiV84llkK
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!XuDpG772k6PAQ5LJ.Rtt7bny59v2jBhuO'
|
||||
effects: []
|
||||
system:
|
||||
@ -277,57 +246,9 @@ system:
|
||||
s’il est affamé. Un individu adulte pèse en moyenne 40
|
||||
kg.</p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Chiard
|
||||
@ -407,12 +328,7 @@ prototypeToken:
|
||||
folder: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574867
|
||||
modifiedTime: 1686701218704
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.XuDpG772k6PAQ5LJ
|
||||
duplicateSource: null
|
||||
_key: '!actors!XuDpG772k6PAQ5LJ'
|
||||
|
||||
|
@ -17,7 +17,7 @@ items:
|
||||
carac_value: 11
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -28,14 +28,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!yL1XStIKWxGnhKvR.shsUV8UpU18c0RJK'
|
||||
- _id: CYpxxf1uTa78NWR9
|
||||
name: Esquive
|
||||
@ -51,7 +46,7 @@ items:
|
||||
carac_value: 10
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -62,14 +57,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!yL1XStIKWxGnhKvR.CYpxxf1uTa78NWR9'
|
||||
- _id: XgfRxSj8Ty1d3JFM
|
||||
name: Mandibules
|
||||
@ -97,13 +87,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776455
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!yL1XStIKWxGnhKvR.XgfRxSj8Ty1d3JFM'
|
||||
- _id: lzEdMrKXbOYrWG5S
|
||||
name: Vigilance
|
||||
@ -119,7 +104,7 @@ items:
|
||||
carac_value: 10
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -130,21 +115,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!yL1XStIKWxGnhKvR.lzEdMrKXbOYrWG5S'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.yL1XStIKWxGnhKvR
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -292,57 +269,9 @@ system:
|
||||
|
||||
</table>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Chrasme
|
||||
@ -421,12 +350,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574889
|
||||
modifiedTime: 1686701218705
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.yL1XStIKWxGnhKvR
|
||||
duplicateSource: null
|
||||
_key: '!actors!yL1XStIKWxGnhKvR'
|
||||
|
||||
|
@ -29,13 +29,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776458
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!VsEw24DEekBbU69Z.LWQHz5ymNBzh6ZEr'
|
||||
- _id: shsUV8UpU18c0RJK
|
||||
name: Course
|
||||
@ -51,7 +46,7 @@ items:
|
||||
carac_value: 11
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -62,14 +57,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!VsEw24DEekBbU69Z.shsUV8UpU18c0RJK'
|
||||
- _id: yDHZfK4RmwQW4YaW
|
||||
name: Discrétion
|
||||
@ -85,7 +75,7 @@ items:
|
||||
carac_value: 10
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -96,14 +86,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!VsEw24DEekBbU69Z.yDHZfK4RmwQW4YaW'
|
||||
- _id: CYpxxf1uTa78NWR9
|
||||
name: Esquive
|
||||
@ -119,7 +104,7 @@ items:
|
||||
carac_value: 11
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -130,14 +115,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!VsEw24DEekBbU69Z.CYpxxf1uTa78NWR9'
|
||||
- _id: lzEdMrKXbOYrWG5S
|
||||
name: Vigilance
|
||||
@ -153,7 +133,7 @@ items:
|
||||
carac_value: 13
|
||||
niveau: 4
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -164,21 +144,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!VsEw24DEekBbU69Z.lzEdMrKXbOYrWG5S'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.VsEw24DEekBbU69Z
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -284,57 +256,9 @@ system:
|
||||
prédateur qui n’hésite pas à s’attaquer
|
||||
à l’homme, se servant redoutablement de ses cornes.</p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Cornicochon
|
||||
@ -413,12 +337,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574860
|
||||
modifiedTime: 1686701218707
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.VsEw24DEekBbU69Z
|
||||
duplicateSource: null
|
||||
_key: '!actors!VsEw24DEekBbU69Z'
|
||||
|
||||
|
@ -17,7 +17,7 @@ items:
|
||||
carac_value: 13
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -28,14 +28,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!IdZUNtuYcDBffZKn.shsUV8UpU18c0RJK'
|
||||
- _id: CYpxxf1uTa78NWR9
|
||||
name: Esquive
|
||||
@ -51,7 +46,7 @@ items:
|
||||
carac_value: 13
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -62,14 +57,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!IdZUNtuYcDBffZKn.CYpxxf1uTa78NWR9'
|
||||
- _id: BjqRrGtHtTzuNpZB
|
||||
name: Griffes et Crocs
|
||||
@ -97,13 +87,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776466
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!IdZUNtuYcDBffZKn.BjqRrGtHtTzuNpZB'
|
||||
- _id: lzEdMrKXbOYrWG5S
|
||||
name: Vigilance
|
||||
@ -119,7 +104,7 @@ items:
|
||||
carac_value: 10
|
||||
niveau: 0
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -130,22 +115,14 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!IdZUNtuYcDBffZKn.lzEdMrKXbOYrWG5S'
|
||||
- _id: 0bTL8SzhNJoPrXd4
|
||||
name: Saut
|
||||
type: competencecreature
|
||||
sort: 150000
|
||||
flags:
|
||||
core:
|
||||
sourceId: Item.JZDgJ7ySiV84llkK
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_saut.webp
|
||||
effects: []
|
||||
folder: null
|
||||
@ -155,7 +132,7 @@ items:
|
||||
carac_value: 13
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -166,21 +143,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: Item.JZDgJ7ySiV84llkK
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!IdZUNtuYcDBffZKn.0bTL8SzhNJoPrXd4'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.IdZUNtuYcDBffZKn
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -290,57 +259,9 @@ system:
|
||||
Quand il bondit, son attaque est considérée comme une
|
||||
<em>charge</em>.</p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Dong
|
||||
@ -419,12 +340,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574846
|
||||
modifiedTime: 1686701218708
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.IdZUNtuYcDBffZKn
|
||||
duplicateSource: null
|
||||
_key: '!actors!IdZUNtuYcDBffZKn'
|
||||
|
||||
|
@ -17,7 +17,7 @@ items:
|
||||
carac_value: 10
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -28,14 +28,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!kPDswxsWVnSYitfL.CYpxxf1uTa78NWR9'
|
||||
- _id: 6DK46pyO0hzEuuUg
|
||||
name: Morsure
|
||||
@ -63,13 +58,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776469
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!kPDswxsWVnSYitfL.6DK46pyO0hzEuuUg'
|
||||
- _id: Kt7WlB5Ui97X211z
|
||||
name: Vol
|
||||
@ -85,7 +75,7 @@ items:
|
||||
carac_value: 10
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -96,21 +86,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!kPDswxsWVnSYitfL.Kt7WlB5Ui97X211z'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.kPDswxsWVnSYitfL
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -232,57 +214,9 @@ system:
|
||||
d’attaque, puisqu’il cause des dommages automatiques, mais peut
|
||||
contrer empoignade ou attaque de dague par le battement de ses ailes.</p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Drakkule
|
||||
@ -361,12 +295,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574882
|
||||
modifiedTime: 1686701218708
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.kPDswxsWVnSYitfL
|
||||
duplicateSource: null
|
||||
_key: '!actors!kPDswxsWVnSYitfL'
|
||||
|
||||
|
@ -17,7 +17,7 @@ items:
|
||||
carac_value: 11
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -28,14 +28,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!tbBCUzaYThtcq3Ch.CYpxxf1uTa78NWR9'
|
||||
- _id: lzEdMrKXbOYrWG5S
|
||||
name: Vigilance
|
||||
@ -51,7 +46,7 @@ items:
|
||||
carac_value: 13
|
||||
niveau: 0
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -62,14 +57,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!tbBCUzaYThtcq3Ch.lzEdMrKXbOYrWG5S'
|
||||
- _id: Kt7WlB5Ui97X211z
|
||||
name: Vol
|
||||
@ -85,7 +75,7 @@ items:
|
||||
carac_value: 11
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -96,21 +86,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!tbBCUzaYThtcq3Ch.Kt7WlB5Ui97X211z'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.tbBCUzaYThtcq3Ch
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -219,57 +201,9 @@ system:
|
||||
pratiquement pas de mémoire. Au demeurant adorable, un félorn
|
||||
de compagnie peut vite devenir assez crispant.</p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Félorn
|
||||
@ -348,12 +282,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574888
|
||||
modifiedTime: 1686701218709
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.tbBCUzaYThtcq3Ch
|
||||
duplicateSource: null
|
||||
_key: '!actors!tbBCUzaYThtcq3Ch'
|
||||
|
||||
|
@ -17,7 +17,7 @@ items:
|
||||
carac_value: 10
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -28,14 +28,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!f31jeCsQgw3hWjk6.shsUV8UpU18c0RJK'
|
||||
- _id: yDHZfK4RmwQW4YaW
|
||||
name: Discrétion
|
||||
@ -51,7 +46,7 @@ items:
|
||||
carac_value: 14
|
||||
niveau: 5
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -62,14 +57,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!f31jeCsQgw3hWjk6.yDHZfK4RmwQW4YaW'
|
||||
- _id: 4GmpkphbsmQjvVVK
|
||||
name: Escalade
|
||||
@ -85,7 +75,7 @@ items:
|
||||
carac_value: 14
|
||||
niveau: 5
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -96,14 +86,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!f31jeCsQgw3hWjk6.4GmpkphbsmQjvVVK'
|
||||
- _id: CYpxxf1uTa78NWR9
|
||||
name: Esquive
|
||||
@ -119,7 +104,7 @@ items:
|
||||
carac_value: 12
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -130,14 +115,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!f31jeCsQgw3hWjk6.CYpxxf1uTa78NWR9'
|
||||
- _id: 6DK46pyO0hzEuuUg
|
||||
name: Morsure
|
||||
@ -165,13 +145,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776477
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!f31jeCsQgw3hWjk6.6DK46pyO0hzEuuUg'
|
||||
- _id: lzEdMrKXbOYrWG5S
|
||||
name: Vigilance
|
||||
@ -187,7 +162,7 @@ items:
|
||||
carac_value: 13
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -198,21 +173,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!f31jeCsQgw3hWjk6.lzEdMrKXbOYrWG5S'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.f31jeCsQgw3hWjk6
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -318,57 +285,9 @@ system:
|
||||
chevreuils, voire aux humains isolés. La fourrure de furlong est
|
||||
très recherchée.</p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Furlong
|
||||
@ -381,9 +300,9 @@ prototypeToken:
|
||||
disposition: -1
|
||||
displayBars: 0
|
||||
bar1:
|
||||
attribute: null
|
||||
attribute: sante.vie
|
||||
bar2:
|
||||
attribute: null
|
||||
attribute: sante.endurance
|
||||
randomImg: false
|
||||
alpha: 1
|
||||
light:
|
||||
@ -447,12 +366,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574877
|
||||
modifiedTime: 1686701218709
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.f31jeCsQgw3hWjk6
|
||||
duplicateSource: null
|
||||
_key: '!actors!f31jeCsQgw3hWjk6'
|
||||
|
||||
|
@ -7,10 +7,6 @@ items:
|
||||
name: Morsure
|
||||
type: competencecreature
|
||||
sort: 100000
|
||||
flags:
|
||||
core:
|
||||
sourceId: >-
|
||||
Compendium.foundryvtt-reve-de-dragon.competences-creatures.6DK46pyO0hzEuuUg
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/compcreature-morsure.webp
|
||||
effects: []
|
||||
folder: null
|
||||
@ -32,23 +28,13 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776480
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: >-
|
||||
Compendium.foundryvtt-reve-de-dragon.competences-creatures.6DK46pyO0hzEuuUg
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!igtHarwizNIUhd8M.bwJZ6nTLX9hohV7Q'
|
||||
- _id: 7td0EmFMtpwNyWwo
|
||||
name: Esquive
|
||||
type: competencecreature
|
||||
sort: 200000
|
||||
flags:
|
||||
core:
|
||||
sourceId: >-
|
||||
Compendium.foundryvtt-reve-de-dragon.competences-creatures.CYpxxf1uTa78NWR9
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_esquive.webp
|
||||
effects: []
|
||||
folder: null
|
||||
@ -58,7 +44,7 @@ items:
|
||||
carac_value: 15
|
||||
niveau: 6
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -69,24 +55,14 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: >-
|
||||
Compendium.foundryvtt-reve-de-dragon.competences-creatures.CYpxxf1uTa78NWR9
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!igtHarwizNIUhd8M.7td0EmFMtpwNyWwo'
|
||||
- _id: d2yxJ5c57vMatAQV
|
||||
name: Discrétion
|
||||
type: competencecreature
|
||||
sort: 300000
|
||||
flags:
|
||||
core:
|
||||
sourceId: >-
|
||||
Compendium.foundryvtt-reve-de-dragon.competences-creatures.yDHZfK4RmwQW4YaW
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_discretion.webp
|
||||
effects: []
|
||||
folder: null
|
||||
@ -96,7 +72,7 @@ items:
|
||||
carac_value: 14
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -107,24 +83,14 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: >-
|
||||
Compendium.foundryvtt-reve-de-dragon.competences-creatures.yDHZfK4RmwQW4YaW
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!igtHarwizNIUhd8M.d2yxJ5c57vMatAQV'
|
||||
- _id: aGm8xRr55CPUo5rM
|
||||
name: Pickpocket
|
||||
type: competencecreature
|
||||
sort: 400000
|
||||
flags:
|
||||
core:
|
||||
sourceId: >-
|
||||
Compendium.foundryvtt-reve-de-dragon.competences-creatures.sUdXhpuVVOAlcVpo
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_pickpocket.webp
|
||||
effects: []
|
||||
folder: null
|
||||
@ -134,7 +100,7 @@ items:
|
||||
carac_value: 14
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -145,24 +111,14 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: >-
|
||||
Compendium.foundryvtt-reve-de-dragon.competences-creatures.sUdXhpuVVOAlcVpo
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!igtHarwizNIUhd8M.aGm8xRr55CPUo5rM'
|
||||
- _id: bL7lL688cp1s1Vke
|
||||
name: Vigilance
|
||||
type: competencecreature
|
||||
sort: 500000
|
||||
flags:
|
||||
core:
|
||||
sourceId: >-
|
||||
Compendium.foundryvtt-reve-de-dragon.competences-creatures.lzEdMrKXbOYrWG5S
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_vigilance.webp
|
||||
effects: []
|
||||
folder: null
|
||||
@ -172,7 +128,7 @@ items:
|
||||
carac_value: 14
|
||||
niveau: 0
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -183,24 +139,14 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: >-
|
||||
Compendium.foundryvtt-reve-de-dragon.competences-creatures.lzEdMrKXbOYrWG5S
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!igtHarwizNIUhd8M.bL7lL688cp1s1Vke'
|
||||
- _id: Fu61NMCeLxi9nfSD
|
||||
name: Course
|
||||
type: competencecreature
|
||||
sort: 600000
|
||||
flags:
|
||||
core:
|
||||
sourceId: >-
|
||||
Compendium.foundryvtt-reve-de-dragon.competences-creatures.shsUV8UpU18c0RJK
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_course.webp
|
||||
effects: []
|
||||
folder: null
|
||||
@ -210,7 +156,7 @@ items:
|
||||
carac_value: 15
|
||||
niveau: 6
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -221,23 +167,14 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: >-
|
||||
Compendium.foundryvtt-reve-de-dragon.competences-creatures.shsUV8UpU18c0RJK
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!igtHarwizNIUhd8M.Fu61NMCeLxi9nfSD'
|
||||
- _id: uW9fTmhw6GBnf1e9
|
||||
name: Saut
|
||||
type: competencecreature
|
||||
sort: 700000
|
||||
flags:
|
||||
core:
|
||||
sourceId: Item.JZDgJ7ySiV84llkK
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_saut.webp
|
||||
effects: []
|
||||
folder: null
|
||||
@ -247,7 +184,7 @@ items:
|
||||
carac_value: 15
|
||||
niveau: 6
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -258,21 +195,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: Item.JZDgJ7ySiV84llkK
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!igtHarwizNIUhd8M.uW9fTmhw6GBnf1e9'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.igtHarwizNIUhd8M
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -388,57 +317,9 @@ system:
|
||||
agressif, le glipzouk ne se bat que s’il est acculé sans
|
||||
pouvoir fuir.</p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Glipzouk
|
||||
@ -451,9 +332,9 @@ prototypeToken:
|
||||
disposition: -1
|
||||
displayBars: 0
|
||||
bar1:
|
||||
attribute: null
|
||||
attribute: sante.vie
|
||||
bar2:
|
||||
attribute: null
|
||||
attribute: sante.endurance
|
||||
randomImg: false
|
||||
alpha: 1
|
||||
light:
|
||||
@ -517,12 +398,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574881
|
||||
modifiedTime: 1686701218712
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.igtHarwizNIUhd8M
|
||||
duplicateSource: null
|
||||
_key: '!actors!igtHarwizNIUhd8M'
|
||||
|
||||
|
@ -29,13 +29,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.0.16
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1663624241418
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!X7j6D136KAhFvItD.shsUV8UpU18c0RJK'
|
||||
- _id: JTuBQCPdumw3DfxH
|
||||
name: Crête
|
||||
@ -63,13 +58,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776482
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!X7j6D136KAhFvItD.JTuBQCPdumw3DfxH'
|
||||
- _id: yDHZfK4RmwQW4YaW
|
||||
name: Discrétion
|
||||
@ -85,7 +75,7 @@ items:
|
||||
carac_value: 10
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -96,14 +86,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!X7j6D136KAhFvItD.yDHZfK4RmwQW4YaW'
|
||||
- _id: CYpxxf1uTa78NWR9
|
||||
name: Esquive
|
||||
@ -119,7 +104,7 @@ items:
|
||||
carac_value: 9
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -130,14 +115,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!X7j6D136KAhFvItD.CYpxxf1uTa78NWR9'
|
||||
- _id: efl1HdDSKpBfImQ1
|
||||
name: Pierre Lancée
|
||||
@ -165,13 +145,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.0.16
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1663624231257
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!X7j6D136KAhFvItD.efl1HdDSKpBfImQ1'
|
||||
- _id: OzHBowOMADRwcVXR
|
||||
name: Pierre Tenue
|
||||
@ -199,13 +174,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.0.16
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1663624295697
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!X7j6D136KAhFvItD.OzHBowOMADRwcVXR'
|
||||
- _id: lzEdMrKXbOYrWG5S
|
||||
name: Vigilance
|
||||
@ -221,7 +191,7 @@ items:
|
||||
carac_value: 10
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -232,22 +202,14 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!X7j6D136KAhFvItD.lzEdMrKXbOYrWG5S'
|
||||
- _id: 2G5PanD98Nj91PQD
|
||||
name: Saut
|
||||
type: competencecreature
|
||||
sort: 750000
|
||||
flags:
|
||||
core:
|
||||
sourceId: Item.JZDgJ7ySiV84llkK
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_saut.webp
|
||||
effects: []
|
||||
folder: null
|
||||
@ -257,7 +219,7 @@ items:
|
||||
carac_value: 13
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -268,21 +230,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: Item.JZDgJ7ySiV84llkK
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!X7j6D136KAhFvItD.2G5PanD98Nj91PQD'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.X7j6D136KAhFvItD
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -392,57 +346,9 @@ system:
|
||||
les glous. Agressifs et omnivores, les glous dévorent la chair de
|
||||
leurs vaincus.</p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Glou
|
||||
@ -455,9 +361,9 @@ prototypeToken:
|
||||
disposition: -1
|
||||
displayBars: 0
|
||||
bar1:
|
||||
attribute: null
|
||||
attribute: sante.vie
|
||||
bar2:
|
||||
attribute: null
|
||||
attribute: sante.endurance
|
||||
randomImg: false
|
||||
alpha: 1
|
||||
light:
|
||||
@ -521,12 +427,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574862
|
||||
modifiedTime: 1686701218712
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.X7j6D136KAhFvItD
|
||||
duplicateSource: null
|
||||
_key: '!actors!X7j6D136KAhFvItD'
|
||||
|
||||
|
@ -17,7 +17,7 @@ items:
|
||||
carac_value: 10
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -28,14 +28,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!f6wzOaOzdwy51prt.shsUV8UpU18c0RJK'
|
||||
- _id: yDHZfK4RmwQW4YaW
|
||||
name: Discrétion
|
||||
@ -51,7 +46,7 @@ items:
|
||||
carac_value: 10
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -62,14 +57,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!f6wzOaOzdwy51prt.yDHZfK4RmwQW4YaW'
|
||||
- _id: CYpxxf1uTa78NWR9
|
||||
name: Esquive
|
||||
@ -85,7 +75,7 @@ items:
|
||||
carac_value: 10
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -96,14 +86,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!f6wzOaOzdwy51prt.CYpxxf1uTa78NWR9'
|
||||
- _id: BjqRrGtHtTzuNpZB
|
||||
name: Griffes et Crocs
|
||||
@ -131,13 +116,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776484
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!f6wzOaOzdwy51prt.BjqRrGtHtTzuNpZB'
|
||||
- _id: lzEdMrKXbOYrWG5S
|
||||
name: Vigilance
|
||||
@ -153,7 +133,7 @@ items:
|
||||
carac_value: 10
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -164,21 +144,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!f6wzOaOzdwy51prt.lzEdMrKXbOYrWG5S'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.f6wzOaOzdwy51prt
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -344,57 +316,9 @@ system:
|
||||
(pour une dose": une demi-mesure de chaque). Puis chauffer le mélange
|
||||
jusqu’à couleur bleu-sangue (-2).</p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Goule
|
||||
@ -407,9 +331,9 @@ prototypeToken:
|
||||
disposition: -1
|
||||
displayBars: 0
|
||||
bar1:
|
||||
attribute: null
|
||||
attribute: sante.vie
|
||||
bar2:
|
||||
attribute: null
|
||||
attribute: sante.endurance
|
||||
randomImg: false
|
||||
alpha: 1
|
||||
light:
|
||||
@ -473,12 +397,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574878
|
||||
modifiedTime: 1686701218713
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.f6wzOaOzdwy51prt
|
||||
duplicateSource: null
|
||||
_key: '!actors!f6wzOaOzdwy51prt'
|
||||
|
||||
|
@ -17,7 +17,7 @@ items:
|
||||
carac_value: 15
|
||||
niveau: 5
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -28,21 +28,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!VCRmWnhzCF9tJTD0.yDHZfK4RmwQW4YaW'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.VCRmWnhzCF9tJTD0
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -153,57 +145,9 @@ system:
|
||||
|
||||
<p>Tout coup qui touche la grincette l’extermine.</p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Grincette
|
||||
@ -216,9 +160,9 @@ prototypeToken:
|
||||
disposition: -1
|
||||
displayBars: 0
|
||||
bar1:
|
||||
attribute: null
|
||||
attribute: sante.vie
|
||||
bar2:
|
||||
attribute: null
|
||||
attribute: sante.endurance
|
||||
randomImg: false
|
||||
alpha: 1
|
||||
light:
|
||||
@ -282,12 +226,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574858
|
||||
modifiedTime: 1686701218714
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.VCRmWnhzCF9tJTD0
|
||||
duplicateSource: null
|
||||
_key: '!actors!VCRmWnhzCF9tJTD0'
|
||||
|
||||
|
@ -17,7 +17,7 @@ items:
|
||||
carac_value: 14
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -28,14 +28,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!OWuf2ryyCtipWnpE.shsUV8UpU18c0RJK'
|
||||
- _id: 4GmpkphbsmQjvVVK
|
||||
name: Escalade
|
||||
@ -51,7 +46,7 @@ items:
|
||||
carac_value: 14
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -62,14 +57,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!OWuf2ryyCtipWnpE.4GmpkphbsmQjvVVK'
|
||||
- _id: CYpxxf1uTa78NWR9
|
||||
name: Esquive
|
||||
@ -85,7 +75,7 @@ items:
|
||||
carac_value: 10
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -96,14 +86,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!OWuf2ryyCtipWnpE.CYpxxf1uTa78NWR9'
|
||||
- _id: BjqRrGtHtTzuNpZB
|
||||
name: Griffes et Crocs
|
||||
@ -131,13 +116,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776487
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!OWuf2ryyCtipWnpE.BjqRrGtHtTzuNpZB'
|
||||
- _id: lzEdMrKXbOYrWG5S
|
||||
name: Vigilance
|
||||
@ -153,7 +133,7 @@ items:
|
||||
carac_value: 11
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -164,22 +144,14 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!OWuf2ryyCtipWnpE.lzEdMrKXbOYrWG5S'
|
||||
- _id: wxT2H9CD43z4LlnS
|
||||
name: Saut
|
||||
type: competencecreature
|
||||
sort: 100000
|
||||
flags:
|
||||
core:
|
||||
sourceId: Item.JZDgJ7ySiV84llkK
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_saut.webp
|
||||
effects: []
|
||||
folder: null
|
||||
@ -189,7 +161,7 @@ items:
|
||||
carac_value: 14
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -200,21 +172,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: Item.JZDgJ7ySiV84llkK
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!OWuf2ryyCtipWnpE.wxT2H9CD43z4LlnS'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.OWuf2ryyCtipWnpE
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -322,57 +286,9 @@ system:
|
||||
prématurément. En combat, ses réussites
|
||||
particulières sont usuellement passées en <em>force</em>.</p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Grizzal
|
||||
@ -385,9 +301,9 @@ prototypeToken:
|
||||
disposition: -1
|
||||
displayBars: 0
|
||||
bar1:
|
||||
attribute: null
|
||||
attribute: sante.vie
|
||||
bar2:
|
||||
attribute: null
|
||||
attribute: sante.endurance
|
||||
randomImg: false
|
||||
alpha: 1
|
||||
light:
|
||||
@ -451,12 +367,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574854
|
||||
modifiedTime: 1686701218714
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.OWuf2ryyCtipWnpE
|
||||
duplicateSource: null
|
||||
_key: '!actors!OWuf2ryyCtipWnpE'
|
||||
|
||||
|
@ -17,7 +17,7 @@ items:
|
||||
carac_value: 11
|
||||
niveau: 4
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -28,14 +28,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!BgXjyfnolHRQNWCj.CYpxxf1uTa78NWR9'
|
||||
- _id: ndNshntOYb1JFNqi
|
||||
name: Serres
|
||||
@ -63,20 +58,12 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776491
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!BgXjyfnolHRQNWCj.ndNshntOYb1JFNqi'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.BgXjyfnolHRQNWCj
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -197,57 +184,9 @@ system:
|
||||
ne peut pas réutiliser son pouvoir sur un personnage qui a
|
||||
réussi son JR.</p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Harpie
|
||||
@ -326,12 +265,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574842
|
||||
modifiedTime: 1686701218715
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.BgXjyfnolHRQNWCj
|
||||
duplicateSource: null
|
||||
_key: '!actors!BgXjyfnolHRQNWCj'
|
||||
|
||||
|
@ -17,7 +17,7 @@ items:
|
||||
carac_value: 12
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -28,14 +28,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!lHt8Tyexy3qzAerO.shsUV8UpU18c0RJK'
|
||||
- _id: CYpxxf1uTa78NWR9
|
||||
name: Esquive
|
||||
@ -51,7 +46,7 @@ items:
|
||||
carac_value: 11
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -62,14 +57,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!lHt8Tyexy3qzAerO.CYpxxf1uTa78NWR9'
|
||||
- _id: BjqRrGtHtTzuNpZB
|
||||
name: Griffes et Crocs
|
||||
@ -97,13 +87,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776493
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!lHt8Tyexy3qzAerO.BjqRrGtHtTzuNpZB'
|
||||
- _id: lzEdMrKXbOYrWG5S
|
||||
name: Vigilance
|
||||
@ -119,7 +104,7 @@ items:
|
||||
carac_value: 11
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -130,22 +115,14 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!lHt8Tyexy3qzAerO.lzEdMrKXbOYrWG5S'
|
||||
- _id: 4JttwOCHxLNbsW4R
|
||||
name: Saut
|
||||
type: competencecreature
|
||||
sort: 1900000
|
||||
flags:
|
||||
core:
|
||||
sourceId: Item.JZDgJ7ySiV84llkK
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_saut.webp
|
||||
effects: []
|
||||
folder: null
|
||||
@ -155,7 +132,7 @@ items:
|
||||
carac_value: 12
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -166,21 +143,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: Item.JZDgJ7ySiV84llkK
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!lHt8Tyexy3qzAerO.4JttwOCHxLNbsW4R'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.lHt8Tyexy3qzAerO
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -284,57 +253,9 @@ system:
|
||||
l’un des deux partenaires, généralement le mâle,
|
||||
trouve la mort.</p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Jigstang
|
||||
@ -347,9 +268,9 @@ prototypeToken:
|
||||
disposition: -1
|
||||
displayBars: 0
|
||||
bar1:
|
||||
attribute: null
|
||||
attribute: sante.vie
|
||||
bar2:
|
||||
attribute: null
|
||||
attribute: sante.endurance
|
||||
randomImg: false
|
||||
alpha: 1
|
||||
light:
|
||||
@ -413,12 +334,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574884
|
||||
modifiedTime: 1686701218716
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.lHt8Tyexy3qzAerO
|
||||
duplicateSource: null
|
||||
_key: '!actors!lHt8Tyexy3qzAerO'
|
||||
|
||||
|
@ -17,7 +17,7 @@ items:
|
||||
carac_value: 12
|
||||
niveau: 4
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -28,14 +28,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!YjBDfNoLA7rlofsh.CYpxxf1uTa78NWR9'
|
||||
- _id: h9ASt4vrvEgxfj7j
|
||||
name: Tronçonneuse
|
||||
@ -63,13 +58,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776495
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!YjBDfNoLA7rlofsh.h9ASt4vrvEgxfj7j'
|
||||
- _id: lzEdMrKXbOYrWG5S
|
||||
name: Vigilance
|
||||
@ -85,7 +75,7 @@ items:
|
||||
carac_value: 11
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -96,14 +86,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!YjBDfNoLA7rlofsh.lzEdMrKXbOYrWG5S'
|
||||
- _id: Kt7WlB5Ui97X211z
|
||||
name: Vol
|
||||
@ -119,7 +104,7 @@ items:
|
||||
carac_value: 14
|
||||
niveau: 6
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -130,21 +115,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!YjBDfNoLA7rlofsh.Kt7WlB5Ui97X211z'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.YjBDfNoLA7rlofsh
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -255,57 +232,9 @@ system:
|
||||
rebrousser chemin le round suivant et revenir examiner ce qui bouge
|
||||
encore.</p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Libelle
|
||||
@ -318,9 +247,9 @@ prototypeToken:
|
||||
disposition: -1
|
||||
displayBars: 0
|
||||
bar1:
|
||||
attribute: null
|
||||
attribute: sante.vie
|
||||
bar2:
|
||||
attribute: null
|
||||
attribute: sante.endurance
|
||||
randomImg: false
|
||||
alpha: 1
|
||||
light:
|
||||
@ -384,12 +313,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574869
|
||||
modifiedTime: 1686701218716
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.YjBDfNoLA7rlofsh
|
||||
duplicateSource: null
|
||||
_key: '!actors!YjBDfNoLA7rlofsh'
|
||||
|
||||
|
@ -17,7 +17,7 @@ items:
|
||||
carac_value: 12
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -28,14 +28,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!99I06oTwCziLTnnl.shsUV8UpU18c0RJK'
|
||||
- _id: yDHZfK4RmwQW4YaW
|
||||
name: Discrétion
|
||||
@ -51,7 +46,7 @@ items:
|
||||
carac_value: 12
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -62,14 +57,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!99I06oTwCziLTnnl.yDHZfK4RmwQW4YaW'
|
||||
- _id: CYpxxf1uTa78NWR9
|
||||
name: Esquive
|
||||
@ -85,7 +75,7 @@ items:
|
||||
carac_value: 11
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -96,14 +86,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!99I06oTwCziLTnnl.CYpxxf1uTa78NWR9'
|
||||
- _id: 6DK46pyO0hzEuuUg
|
||||
name: Morsure
|
||||
@ -131,13 +116,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776497
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!99I06oTwCziLTnnl.6DK46pyO0hzEuuUg'
|
||||
- _id: lzEdMrKXbOYrWG5S
|
||||
name: Vigilance
|
||||
@ -153,7 +133,7 @@ items:
|
||||
carac_value: 13
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -164,22 +144,14 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!99I06oTwCziLTnnl.lzEdMrKXbOYrWG5S'
|
||||
- _id: PBS6YfmZLbSbwzpH
|
||||
name: Saut
|
||||
type: competencecreature
|
||||
sort: 100000
|
||||
flags:
|
||||
core:
|
||||
sourceId: Item.JZDgJ7ySiV84llkK
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_saut.webp
|
||||
effects: []
|
||||
folder: null
|
||||
@ -189,7 +161,7 @@ items:
|
||||
carac_value: 12
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -200,21 +172,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: Item.JZDgJ7ySiV84llkK
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!99I06oTwCziLTnnl.PBS6YfmZLbSbwzpH'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.99I06oTwCziLTnnl
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -322,57 +286,9 @@ system:
|
||||
vont même jusqu’à effectuer des razzias sur les
|
||||
villages.</p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Lycan
|
||||
@ -451,12 +367,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574841
|
||||
modifiedTime: 1686701218717
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.99I06oTwCziLTnnl
|
||||
duplicateSource: null
|
||||
_key: '!actors!99I06oTwCziLTnnl'
|
||||
|
||||
|
@ -17,7 +17,7 @@ items:
|
||||
carac_value: 10
|
||||
niveau: 0
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -28,14 +28,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!DsE2xomX97onO2mN.shsUV8UpU18c0RJK'
|
||||
- _id: yDHZfK4RmwQW4YaW
|
||||
name: Discrétion
|
||||
@ -51,7 +46,7 @@ items:
|
||||
carac_value: 12
|
||||
niveau: 4
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -62,14 +57,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!DsE2xomX97onO2mN.yDHZfK4RmwQW4YaW'
|
||||
- _id: CYpxxf1uTa78NWR9
|
||||
name: Esquive
|
||||
@ -85,7 +75,7 @@ items:
|
||||
carac_value: 11
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -96,14 +86,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!DsE2xomX97onO2mN.CYpxxf1uTa78NWR9'
|
||||
- _id: 6DK46pyO0hzEuuUg
|
||||
name: Morsure
|
||||
@ -131,13 +116,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776499
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!DsE2xomX97onO2mN.6DK46pyO0hzEuuUg'
|
||||
- _id: efl1HdDSKpBfImQ1
|
||||
name: Pierre Lancée
|
||||
@ -165,13 +145,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.0.16
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1663624147664
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!DsE2xomX97onO2mN.efl1HdDSKpBfImQ1'
|
||||
- _id: lzEdMrKXbOYrWG5S
|
||||
name: Vigilance
|
||||
@ -187,7 +162,7 @@ items:
|
||||
carac_value: 10
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -198,22 +173,14 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!DsE2xomX97onO2mN.lzEdMrKXbOYrWG5S'
|
||||
- _id: WJq3afIoq0xUV2dF
|
||||
name: Saut
|
||||
type: competencecreature
|
||||
sort: 100000
|
||||
flags:
|
||||
core:
|
||||
sourceId: Item.JZDgJ7ySiV84llkK
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_saut.webp
|
||||
effects: []
|
||||
folder: null
|
||||
@ -223,7 +190,7 @@ items:
|
||||
carac_value: 12
|
||||
niveau: 4
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -234,21 +201,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: Item.JZDgJ7ySiV84llkK
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!DsE2xomX97onO2mN.WJq3afIoq0xUV2dF'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.DsE2xomX97onO2mN
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -365,57 +324,9 @@ system:
|
||||
déployée. Certaines de leurs fosses sont assez grandes pour
|
||||
accueillir des hommes.</p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Mariol
|
||||
@ -494,12 +405,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574844
|
||||
modifiedTime: 1686701218718
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.DsE2xomX97onO2mN
|
||||
duplicateSource: null
|
||||
_key: '!actors!DsE2xomX97onO2mN'
|
||||
|
||||
|
@ -17,7 +17,7 @@ items:
|
||||
carac_value: 12
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -28,14 +28,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!i7pvn7kgTwIdKYtP.shsUV8UpU18c0RJK'
|
||||
- _id: CYpxxf1uTa78NWR9
|
||||
name: Esquive
|
||||
@ -51,7 +46,7 @@ items:
|
||||
carac_value: 8
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -62,14 +57,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!i7pvn7kgTwIdKYtP.CYpxxf1uTa78NWR9'
|
||||
- _id: 6DK46pyO0hzEuuUg
|
||||
name: Morsure
|
||||
@ -97,13 +87,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776538
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!i7pvn7kgTwIdKYtP.6DK46pyO0hzEuuUg'
|
||||
- _id: lzEdMrKXbOYrWG5S
|
||||
name: Vigilance
|
||||
@ -119,7 +104,7 @@ items:
|
||||
carac_value: 12
|
||||
niveau: 0
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -130,23 +115,14 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!i7pvn7kgTwIdKYtP.lzEdMrKXbOYrWG5S'
|
||||
- _id: 3MgAaUHeKGBcbyr5
|
||||
name: Coup de pied
|
||||
type: competencecreature
|
||||
sort: 500000
|
||||
flags:
|
||||
core:
|
||||
sourceId: >-
|
||||
Compendium.foundryvtt-reve-de-dragon.competences-creatures.Zpl2Bi451vB3r91W
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/compcreature-coup_de_pied.webp
|
||||
effects: []
|
||||
folder: null
|
||||
@ -168,21 +144,12 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776538
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: >-
|
||||
Compendium.foundryvtt-reve-de-dragon.competences-creatures.Zpl2Bi451vB3r91W
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!i7pvn7kgTwIdKYtP.3MgAaUHeKGBcbyr5'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.i7pvn7kgTwIdKYtP
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -273,65 +240,9 @@ system:
|
||||
<p>La mule est une le croisement entre un cheval et une ânesse.
|
||||
Adulte, la mule pèse 300 kg pour 1m65 au garrot.</p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
loc: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
loc: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
loc: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
loc: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
loc: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
loc: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
loc: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
loc: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
Q2G6GTdrotKzYGUC: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Mule
|
||||
@ -410,12 +321,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574879
|
||||
modifiedTime: 1686701218719
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.i7pvn7kgTwIdKYtP
|
||||
duplicateSource: null
|
||||
_key: '!actors!i7pvn7kgTwIdKYtP'
|
||||
|
||||
|
@ -17,7 +17,7 @@ items:
|
||||
carac_value: 15
|
||||
niveau: 5
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -28,21 +28,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!0ogeNTXl7IwYfWZR.Kt7WlB5Ui97X211z'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.0ogeNTXl7IwYfWZR
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -155,57 +147,9 @@ system:
|
||||
revoit plus. Paranos affirme par ailleurs que tuer un oiseau-oracle porte
|
||||
une terrible malchance.</p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Oiseau-oracle
|
||||
@ -218,9 +162,9 @@ prototypeToken:
|
||||
disposition: -1
|
||||
displayBars: 0
|
||||
bar1:
|
||||
attribute: null
|
||||
attribute: sante.vie
|
||||
bar2:
|
||||
attribute: null
|
||||
attribute: sante.endurance
|
||||
randomImg: false
|
||||
alpha: 1
|
||||
light:
|
||||
@ -284,12 +228,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574837
|
||||
modifiedTime: 1686701218719
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.0ogeNTXl7IwYfWZR
|
||||
duplicateSource: null
|
||||
_key: '!actors!0ogeNTXl7IwYfWZR'
|
||||
|
||||
|
@ -17,7 +17,7 @@ items:
|
||||
carac_value: 14
|
||||
niveau: 4
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -28,14 +28,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!c2CVCRQY3FiZXFre.shsUV8UpU18c0RJK'
|
||||
- _id: qilRzXpVaGceNmQp
|
||||
name: Dague
|
||||
@ -63,13 +58,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.0.16
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1663624101180
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!c2CVCRQY3FiZXFre.qilRzXpVaGceNmQp'
|
||||
- _id: yDHZfK4RmwQW4YaW
|
||||
name: Discrétion
|
||||
@ -85,7 +75,7 @@ items:
|
||||
carac_value: 13
|
||||
niveau: 5
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -96,14 +86,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!c2CVCRQY3FiZXFre.yDHZfK4RmwQW4YaW'
|
||||
- _id: CYpxxf1uTa78NWR9
|
||||
name: Esquive
|
||||
@ -119,7 +104,7 @@ items:
|
||||
carac_value: 13
|
||||
niveau: 5
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -130,14 +115,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!c2CVCRQY3FiZXFre.CYpxxf1uTa78NWR9'
|
||||
- _id: BjqRrGtHtTzuNpZB
|
||||
name: Griffes et Crocs
|
||||
@ -165,13 +145,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776504
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!c2CVCRQY3FiZXFre.BjqRrGtHtTzuNpZB'
|
||||
- _id: lzEdMrKXbOYrWG5S
|
||||
name: Vigilance
|
||||
@ -187,7 +162,7 @@ items:
|
||||
carac_value: 17
|
||||
niveau: 5
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -198,22 +173,14 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!c2CVCRQY3FiZXFre.lzEdMrKXbOYrWG5S'
|
||||
- _id: tqslo53FM201P3PM
|
||||
name: Saut
|
||||
type: competencecreature
|
||||
sort: 100000
|
||||
flags:
|
||||
core:
|
||||
sourceId: Item.JZDgJ7ySiV84llkK
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_saut.webp
|
||||
effects: []
|
||||
folder: null
|
||||
@ -223,7 +190,7 @@ items:
|
||||
carac_value: 14
|
||||
niveau: 4
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -234,21 +201,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: Item.JZDgJ7ySiV84llkK
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!c2CVCRQY3FiZXFre.tqslo53FM201P3PM'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.c2CVCRQY3FiZXFre
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -357,57 +316,9 @@ system:
|
||||
pantodars peuvent assez facilement s’apprivoiser"; devenus adultes,
|
||||
ils sont étonnamment fidèles.</p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Pantodar
|
||||
@ -420,9 +331,9 @@ prototypeToken:
|
||||
disposition: -1
|
||||
displayBars: 0
|
||||
bar1:
|
||||
attribute: null
|
||||
attribute: sante.vie
|
||||
bar2:
|
||||
attribute: null
|
||||
attribute: sante.endurance
|
||||
randomImg: false
|
||||
alpha: 1
|
||||
light:
|
||||
@ -486,12 +397,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574872
|
||||
modifiedTime: 1686701218720
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.c2CVCRQY3FiZXFre
|
||||
duplicateSource: null
|
||||
_key: '!actors!c2CVCRQY3FiZXFre'
|
||||
|
||||
|
@ -17,7 +17,7 @@ items:
|
||||
carac_value: 12
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -28,14 +28,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!eGvgsF9uiR4vKLB2.shsUV8UpU18c0RJK'
|
||||
- _id: 4GmpkphbsmQjvVVK
|
||||
name: Escalade
|
||||
@ -51,7 +46,7 @@ items:
|
||||
carac_value: 15
|
||||
niveau: 5
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -62,14 +57,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!eGvgsF9uiR4vKLB2.4GmpkphbsmQjvVVK'
|
||||
- _id: CYpxxf1uTa78NWR9
|
||||
name: Esquive
|
||||
@ -85,7 +75,7 @@ items:
|
||||
carac_value: 12
|
||||
niveau: 5
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -96,14 +86,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!eGvgsF9uiR4vKLB2.CYpxxf1uTa78NWR9'
|
||||
- _id: BjqRrGtHtTzuNpZB
|
||||
name: Griffes et Crocs
|
||||
@ -131,13 +116,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776508
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!eGvgsF9uiR4vKLB2.BjqRrGtHtTzuNpZB'
|
||||
- _id: lzEdMrKXbOYrWG5S
|
||||
name: Vigilance
|
||||
@ -153,7 +133,7 @@ items:
|
||||
carac_value: 10
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -164,22 +144,14 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!eGvgsF9uiR4vKLB2.lzEdMrKXbOYrWG5S'
|
||||
- _id: 8O8e3Msr2KPZqwkY
|
||||
name: Saut
|
||||
type: competencecreature
|
||||
sort: 1900000
|
||||
flags:
|
||||
core:
|
||||
sourceId: Item.JZDgJ7ySiV84llkK
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_saut.webp
|
||||
effects: []
|
||||
folder: null
|
||||
@ -189,7 +161,7 @@ items:
|
||||
carac_value: 15
|
||||
niveau: 5
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -200,21 +172,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: Item.JZDgJ7ySiV84llkK
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!eGvgsF9uiR4vKLB2.8O8e3Msr2KPZqwkY'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.eGvgsF9uiR4vKLB2
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -326,57 +290,9 @@ system:
|
||||
particulières sont toujours passées en
|
||||
<em>rapidité</em>.</p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Quileurbist
|
||||
@ -389,9 +305,9 @@ prototypeToken:
|
||||
disposition: -1
|
||||
displayBars: 0
|
||||
bar1:
|
||||
attribute: null
|
||||
attribute: sante.vie
|
||||
bar2:
|
||||
attribute: null
|
||||
attribute: sante.endurance
|
||||
randomImg: false
|
||||
alpha: 1
|
||||
light:
|
||||
@ -455,12 +371,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574876
|
||||
modifiedTime: 1686701218721
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.eGvgsF9uiR4vKLB2
|
||||
duplicateSource: null
|
||||
_key: '!actors!eGvgsF9uiR4vKLB2'
|
||||
|
||||
|
@ -7,10 +7,6 @@ items:
|
||||
name: Morsure (maladie)
|
||||
type: competencecreature
|
||||
sort: 100000
|
||||
flags:
|
||||
core:
|
||||
sourceId: >-
|
||||
Compendium.foundryvtt-reve-de-dragon.competences-creatures.6DK46pyO0hzEuuUg
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/compcreature-morsure.webp
|
||||
effects: []
|
||||
folder: null
|
||||
@ -32,23 +28,13 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776510
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: >-
|
||||
Compendium.foundryvtt-reve-de-dragon.competences-creatures.6DK46pyO0hzEuuUg
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!icS4ht40EGkUbUus.0z35nbSeViandim4'
|
||||
- _id: w1BjJ6evq83ZMieY
|
||||
name: Esquive
|
||||
type: competencecreature
|
||||
sort: 200000
|
||||
flags:
|
||||
core:
|
||||
sourceId: >-
|
||||
Compendium.foundryvtt-reve-de-dragon.competences-creatures.CYpxxf1uTa78NWR9
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_esquive.webp
|
||||
effects: []
|
||||
folder: null
|
||||
@ -58,7 +44,7 @@ items:
|
||||
carac_value: 10
|
||||
niveau: 2
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -69,24 +55,14 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: >-
|
||||
Compendium.foundryvtt-reve-de-dragon.competences-creatures.CYpxxf1uTa78NWR9
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!icS4ht40EGkUbUus.w1BjJ6evq83ZMieY'
|
||||
- _id: dv9QLfHGa5ZwDN7l
|
||||
name: Course
|
||||
type: competencecreature
|
||||
sort: 300000
|
||||
flags:
|
||||
core:
|
||||
sourceId: >-
|
||||
Compendium.foundryvtt-reve-de-dragon.competences-creatures.shsUV8UpU18c0RJK
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_course.webp
|
||||
effects: []
|
||||
folder: null
|
||||
@ -96,7 +72,7 @@ items:
|
||||
carac_value: 11
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -107,24 +83,14 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: >-
|
||||
Compendium.foundryvtt-reve-de-dragon.competences-creatures.shsUV8UpU18c0RJK
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!icS4ht40EGkUbUus.dv9QLfHGa5ZwDN7l'
|
||||
- _id: VdLbNp5bz8hU6KDl
|
||||
name: Discrétion
|
||||
type: competencecreature
|
||||
sort: 400000
|
||||
flags:
|
||||
core:
|
||||
sourceId: >-
|
||||
Compendium.foundryvtt-reve-de-dragon.competences-creatures.yDHZfK4RmwQW4YaW
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_discretion.webp
|
||||
effects: []
|
||||
folder: null
|
||||
@ -134,7 +100,7 @@ items:
|
||||
carac_value: 10
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -145,24 +111,14 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: >-
|
||||
Compendium.foundryvtt-reve-de-dragon.competences-creatures.yDHZfK4RmwQW4YaW
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!icS4ht40EGkUbUus.VdLbNp5bz8hU6KDl'
|
||||
- _id: TXC25fwUDxF6Qp5A
|
||||
name: Vigilance
|
||||
type: competencecreature
|
||||
sort: 500000
|
||||
flags:
|
||||
core:
|
||||
sourceId: >-
|
||||
Compendium.foundryvtt-reve-de-dragon.competences-creatures.lzEdMrKXbOYrWG5S
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_vigilance.webp
|
||||
effects: []
|
||||
folder: null
|
||||
@ -172,7 +128,7 @@ items:
|
||||
carac_value: 10
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -183,22 +139,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: >-
|
||||
Compendium.foundryvtt-reve-de-dragon.competences-creatures.lzEdMrKXbOYrWG5S
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!icS4ht40EGkUbUus.TXC25fwUDxF6Qp5A'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.icS4ht40EGkUbUus
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -350,57 +297,9 @@ system:
|
||||
|
||||
<p> </p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Rananècre
|
||||
@ -479,12 +378,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574880
|
||||
modifiedTime: 1686701218721
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.icS4ht40EGkUbUus
|
||||
duplicateSource: null
|
||||
_key: '!actors!icS4ht40EGkUbUus'
|
||||
|
||||
|
@ -17,7 +17,7 @@ items:
|
||||
carac_value: 16
|
||||
niveau: 5
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -28,14 +28,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!sAcoQO3vvDDEJFva.shsUV8UpU18c0RJK'
|
||||
- _id: yDHZfK4RmwQW4YaW
|
||||
name: Discrétion
|
||||
@ -51,7 +46,7 @@ items:
|
||||
carac_value: 16
|
||||
niveau: 5
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -62,14 +57,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!sAcoQO3vvDDEJFva.yDHZfK4RmwQW4YaW'
|
||||
- _id: CYpxxf1uTa78NWR9
|
||||
name: Esquive
|
||||
@ -85,7 +75,7 @@ items:
|
||||
carac_value: 14
|
||||
niveau: 5
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -96,14 +86,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!sAcoQO3vvDDEJFva.CYpxxf1uTa78NWR9'
|
||||
- _id: BjqRrGtHtTzuNpZB
|
||||
name: Griffes et Crocs
|
||||
@ -131,13 +116,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776512
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!sAcoQO3vvDDEJFva.BjqRrGtHtTzuNpZB'
|
||||
- _id: lzEdMrKXbOYrWG5S
|
||||
name: Vigilance
|
||||
@ -153,7 +133,7 @@ items:
|
||||
carac_value: 17
|
||||
niveau: 5
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -164,22 +144,14 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!sAcoQO3vvDDEJFva.lzEdMrKXbOYrWG5S'
|
||||
- _id: WML1KyyQrFRbmsLn
|
||||
name: Saut
|
||||
type: competencecreature
|
||||
sort: 1900000
|
||||
flags:
|
||||
core:
|
||||
sourceId: Item.JZDgJ7ySiV84llkK
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_saut.webp
|
||||
effects: []
|
||||
folder: null
|
||||
@ -189,7 +161,7 @@ items:
|
||||
carac_value: 16
|
||||
niveau: 5
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -200,21 +172,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: Item.JZDgJ7ySiV84llkK
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!sAcoQO3vvDDEJFva.WML1KyyQrFRbmsLn'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.sAcoQO3vvDDEJFva
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -323,57 +287,9 @@ system:
|
||||
<em>charge</em>. Au sol, ses réussites particulières sont
|
||||
usuellement passées en <em>rapidité</em>.</p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Sanguinox
|
||||
@ -452,12 +368,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574887
|
||||
modifiedTime: 1686701218722
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.sAcoQO3vvDDEJFva
|
||||
duplicateSource: null
|
||||
_key: '!actors!sAcoQO3vvDDEJFva'
|
||||
|
||||
|
@ -17,7 +17,7 @@ items:
|
||||
carac_value: 13
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -28,14 +28,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!YwqgGvzxMTgYZFyc.yDHZfK4RmwQW4YaW'
|
||||
- _id: CYpxxf1uTa78NWR9
|
||||
name: Esquive
|
||||
@ -51,7 +46,7 @@ items:
|
||||
carac_value: 10
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -62,14 +57,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!YwqgGvzxMTgYZFyc.CYpxxf1uTa78NWR9'
|
||||
- _id: 6DK46pyO0hzEuuUg
|
||||
name: Morsure
|
||||
@ -97,13 +87,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776514
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!YwqgGvzxMTgYZFyc.6DK46pyO0hzEuuUg'
|
||||
- _id: lzEdMrKXbOYrWG5S
|
||||
name: Vigilance
|
||||
@ -119,7 +104,7 @@ items:
|
||||
carac_value: 10
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -130,21 +115,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!YwqgGvzxMTgYZFyc.lzEdMrKXbOYrWG5S'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.YwqgGvzxMTgYZFyc
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -287,57 +264,9 @@ system:
|
||||
|
||||
</table>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Scologriffe
|
||||
@ -416,12 +345,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574869
|
||||
modifiedTime: 1686701218723
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.YwqgGvzxMTgYZFyc
|
||||
duplicateSource: null
|
||||
_key: '!actors!YwqgGvzxMTgYZFyc'
|
||||
|
||||
|
@ -17,7 +17,7 @@ items:
|
||||
carac_value: 13
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -28,14 +28,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!NZfwIplunfOuuzuD.CYpxxf1uTa78NWR9'
|
||||
- _id: BjqRrGtHtTzuNpZB
|
||||
name: Griffes et Crocs
|
||||
@ -63,22 +58,13 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776516
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!NZfwIplunfOuuzuD.BjqRrGtHtTzuNpZB'
|
||||
- _id: wDH57NvDsoN8IwhS
|
||||
name: Esquive (sol)
|
||||
type: competencecreature
|
||||
sort: 1000000
|
||||
flags:
|
||||
core:
|
||||
sourceId: >-
|
||||
Compendium.foundryvtt-reve-de-dragon.competences-creatures.CYpxxf1uTa78NWR9
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_esquive.webp
|
||||
effects: []
|
||||
folder: null
|
||||
@ -88,7 +74,7 @@ items:
|
||||
carac_value: 8
|
||||
niveau: 1
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -99,22 +85,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: >-
|
||||
Compendium.foundryvtt-reve-de-dragon.competences-creatures.CYpxxf1uTa78NWR9
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!NZfwIplunfOuuzuD.wDH57NvDsoN8IwhS'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.NZfwIplunfOuuzuD
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -266,57 +243,9 @@ system:
|
||||
sirènes, quand bien même un tel personnage n’a (en
|
||||
principe) aucune raison d’être attiré par une fille.</p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Sirène
|
||||
@ -395,12 +324,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574852
|
||||
modifiedTime: 1686701218724
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.NZfwIplunfOuuzuD
|
||||
duplicateSource: null
|
||||
_key: '!actors!NZfwIplunfOuuzuD'
|
||||
|
||||
|
@ -17,7 +17,7 @@ items:
|
||||
carac_value: 14
|
||||
niveau: 4
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -28,14 +28,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!dfssLNfeAGrUe70T.shsUV8UpU18c0RJK'
|
||||
- _id: yDHZfK4RmwQW4YaW
|
||||
name: Discrétion
|
||||
@ -51,7 +46,7 @@ items:
|
||||
carac_value: 15
|
||||
niveau: 4
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -62,22 +57,14 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!dfssLNfeAGrUe70T.yDHZfK4RmwQW4YaW'
|
||||
- _id: CYpxxf1uTa78NWR9
|
||||
name: Esquive
|
||||
type: competencecreature
|
||||
sort: 400000
|
||||
flags:
|
||||
core:
|
||||
sourceId: Actor.dfssLNfeAGrUe70T.Item.CYpxxf1uTa78NWR9
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_esquive.webp
|
||||
effects: []
|
||||
folder: null
|
||||
@ -87,7 +74,7 @@ items:
|
||||
carac_value: 12
|
||||
niveau: 4
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -98,22 +85,14 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: Actor.dfssLNfeAGrUe70T.Item.CYpxxf1uTa78NWR9
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!dfssLNfeAGrUe70T.CYpxxf1uTa78NWR9'
|
||||
- _id: BjqRrGtHtTzuNpZB
|
||||
name: Griffes et Crocs
|
||||
type: competencecreature
|
||||
sort: 150000
|
||||
flags:
|
||||
core:
|
||||
sourceId: Actor.dfssLNfeAGrUe70T.Item.BjqRrGtHtTzuNpZB
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/compcreature-griffes.webp
|
||||
effects: []
|
||||
folder: null
|
||||
@ -135,13 +114,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776519
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Actor.dfssLNfeAGrUe70T.Item.BjqRrGtHtTzuNpZB
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!dfssLNfeAGrUe70T.BjqRrGtHtTzuNpZB'
|
||||
- _id: lzEdMrKXbOYrWG5S
|
||||
name: Vigilance
|
||||
@ -157,7 +131,7 @@ items:
|
||||
carac_value: 15
|
||||
niveau: 4
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -168,22 +142,14 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!dfssLNfeAGrUe70T.lzEdMrKXbOYrWG5S'
|
||||
- _id: MBJkmpxzFM0ZJyyS
|
||||
name: Saut
|
||||
type: competencecreature
|
||||
sort: 100000
|
||||
flags:
|
||||
core:
|
||||
sourceId: Item.JZDgJ7ySiV84llkK
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/competence_saut.webp
|
||||
effects: []
|
||||
folder: null
|
||||
@ -193,7 +159,7 @@ items:
|
||||
carac_value: 14
|
||||
niveau: 4
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -204,21 +170,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: Item.JZDgJ7ySiV84llkK
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!dfssLNfeAGrUe70T.MBJkmpxzFM0ZJyyS'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.dfssLNfeAGrUe70T
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -320,57 +278,9 @@ system:
|
||||
|
||||
<p> </p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
Q4cUvqxCxMoTJXDL: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Tigre Vert
|
||||
@ -449,12 +359,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574873
|
||||
modifiedTime: 1686701218724
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.dfssLNfeAGrUe70T
|
||||
duplicateSource: null
|
||||
_key: '!actors!dfssLNfeAGrUe70T'
|
||||
|
||||
|
@ -29,13 +29,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686701048727
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!e4KXDpAj4seWov6A.NctG7suzvGE7ZZzj'
|
||||
- _id: shsUV8UpU18c0RJK
|
||||
name: Course
|
||||
@ -51,7 +46,7 @@ items:
|
||||
carac_value: 12
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -62,14 +57,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!e4KXDpAj4seWov6A.shsUV8UpU18c0RJK'
|
||||
- _id: CYpxxf1uTa78NWR9
|
||||
name: Esquive
|
||||
@ -85,7 +75,7 @@ items:
|
||||
carac_value: 12
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -96,14 +86,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!e4KXDpAj4seWov6A.CYpxxf1uTa78NWR9'
|
||||
- _id: lzEdMrKXbOYrWG5S
|
||||
name: Vigilance
|
||||
@ -119,7 +104,7 @@ items:
|
||||
carac_value: 14
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -130,21 +115,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!e4KXDpAj4seWov6A.lzEdMrKXbOYrWG5S'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.e4KXDpAj4seWov6A
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -264,57 +241,9 @@ system:
|
||||
particulières sont usuellement passées en
|
||||
<em>rapidité</em>.</p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
Q4cUvqxCxMoTJXDL: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Tournedent
|
||||
@ -393,12 +322,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574874
|
||||
modifiedTime: 1686701218725
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.e4KXDpAj4seWov6A
|
||||
duplicateSource: null
|
||||
_key: '!actors!e4KXDpAj4seWov6A'
|
||||
|
||||
|
@ -17,7 +17,7 @@ items:
|
||||
carac_value: 12
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -28,14 +28,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!PwcnOb8HIb6mBcFo.yDHZfK4RmwQW4YaW'
|
||||
- _id: CYpxxf1uTa78NWR9
|
||||
name: Esquive
|
||||
@ -51,7 +46,7 @@ items:
|
||||
carac_value: 8
|
||||
niveau: 0
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -62,14 +57,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!PwcnOb8HIb6mBcFo.CYpxxf1uTa78NWR9'
|
||||
- _id: 6DK46pyO0hzEuuUg
|
||||
name: Morsure
|
||||
@ -97,13 +87,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776525
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!PwcnOb8HIb6mBcFo.6DK46pyO0hzEuuUg'
|
||||
- _id: lzEdMrKXbOYrWG5S
|
||||
name: Vigilance
|
||||
@ -119,7 +104,7 @@ items:
|
||||
carac_value: 10
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -130,21 +115,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!PwcnOb8HIb6mBcFo.lzEdMrKXbOYrWG5S'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.PwcnOb8HIb6mBcFo
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -280,57 +257,9 @@ system:
|
||||
|
||||
</table>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Vipère jaune
|
||||
@ -409,12 +338,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574856
|
||||
modifiedTime: 1686701218725
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.PwcnOb8HIb6mBcFo
|
||||
duplicateSource: null
|
||||
_key: '!actors!PwcnOb8HIb6mBcFo'
|
||||
|
||||
|
@ -17,7 +17,7 @@ items:
|
||||
carac_value: 7
|
||||
niveau: 0
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -28,23 +28,14 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!ZjE5HioS5N2GX88S.CYpxxf1uTa78NWR9'
|
||||
- _id: 5LRlcObZfaefTV6j
|
||||
name: Pinces
|
||||
type: competencecreature
|
||||
sort: 0
|
||||
flags:
|
||||
core:
|
||||
sourceId: >-
|
||||
Compendium.foundryvtt-reve-de-dragon.competences-creatures.RAnasKnoA3OQgwfv
|
||||
img: systems/foundryvtt-reve-de-dragon/icons/compcreature-pinces.webp
|
||||
effects: []
|
||||
folder: null
|
||||
@ -66,21 +57,12 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686701069505
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: >-
|
||||
Compendium.foundryvtt-reve-de-dragon.competences-creatures.RAnasKnoA3OQgwfv
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!ZjE5HioS5N2GX88S.5LRlcObZfaefTV6j'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.ZjE5HioS5N2GX88S
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -181,57 +163,9 @@ system:
|
||||
résistantes qu’il peut s’en servir pour parer
|
||||
(mêmes limitations que les parades de l’épée).</p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Zomar
|
||||
@ -310,12 +244,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574871
|
||||
modifiedTime: 1686701218726
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.ZjE5HioS5N2GX88S
|
||||
duplicateSource: null
|
||||
_key: '!actors!ZjE5HioS5N2GX88S'
|
||||
|
||||
|
@ -29,13 +29,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776530
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!m5clAUpf4PKPD7E9.os88Rsp7mBkahqmh'
|
||||
- _id: CYpxxf1uTa78NWR9
|
||||
name: Esquive (vol)
|
||||
@ -51,7 +46,7 @@ items:
|
||||
carac_value: 11
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -62,14 +57,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!m5clAUpf4PKPD7E9.CYpxxf1uTa78NWR9'
|
||||
- _id: lzEdMrKXbOYrWG5S
|
||||
name: Vigilance
|
||||
@ -85,7 +75,7 @@ items:
|
||||
carac_value: 14
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -96,21 +86,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!m5clAUpf4PKPD7E9.lzEdMrKXbOYrWG5S'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.m5clAUpf4PKPD7E9
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -215,57 +197,9 @@ system:
|
||||
zombrel, lorsqu’il plane au-dessus de votre tête, est de vous
|
||||
protéger efficacement des brûlures du soleil.</p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Zombrel
|
||||
@ -344,12 +278,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574885
|
||||
modifiedTime: 1686701218727
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.m5clAUpf4PKPD7E9
|
||||
duplicateSource: null
|
||||
_key: '!actors!m5clAUpf4PKPD7E9'
|
||||
|
||||
|
@ -29,13 +29,8 @@ items:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: 1686700776532
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!31XA4x5Yk04TGUHR.os88Rsp7mBkahqmh'
|
||||
- _id: shsUV8UpU18c0RJK
|
||||
name: Course
|
||||
@ -51,7 +46,7 @@ items:
|
||||
carac_value: 11
|
||||
niveau: 3
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -62,14 +57,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!31XA4x5Yk04TGUHR.shsUV8UpU18c0RJK'
|
||||
- _id: CYpxxf1uTa78NWR9
|
||||
name: Esquive
|
||||
@ -85,7 +75,7 @@ items:
|
||||
carac_value: 9
|
||||
niveau: 0
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -96,14 +86,9 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!31XA4x5Yk04TGUHR.CYpxxf1uTa78NWR9'
|
||||
- _id: lzEdMrKXbOYrWG5S
|
||||
name: Vigilance
|
||||
@ -119,7 +104,7 @@ items:
|
||||
carac_value: 9
|
||||
niveau: 0
|
||||
default_diffLibre: 0
|
||||
categorie: ''
|
||||
categorie: generale
|
||||
categorie_parade: ''
|
||||
iscombat: false
|
||||
isnaturelle: true
|
||||
@ -130,21 +115,13 @@ items:
|
||||
ownership:
|
||||
default: 0
|
||||
_stats:
|
||||
systemId: null
|
||||
systemVersion: null
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: null
|
||||
modifiedTime: null
|
||||
lastModifiedBy: null
|
||||
compendiumSource: null
|
||||
duplicateSource: null
|
||||
_key: '!actors.items!31XA4x5Yk04TGUHR.lzEdMrKXbOYrWG5S'
|
||||
effects: []
|
||||
folder: null
|
||||
sort: 100001
|
||||
flags:
|
||||
core:
|
||||
sourceId: Compendium.foundryvtt-reve-de-dragon.animaux.31XA4x5Yk04TGUHR
|
||||
system:
|
||||
carac:
|
||||
taille:
|
||||
@ -262,57 +239,9 @@ system:
|
||||
|
||||
<p> </p>
|
||||
race: ''
|
||||
notesmj: Notes du MJ
|
||||
blessures:
|
||||
legeres:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
graves:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
critiques:
|
||||
liste:
|
||||
- active: false
|
||||
premiers_soins: 0
|
||||
soins_complets: 0
|
||||
jours: 0
|
||||
localisation: ''
|
||||
notesmj: ''
|
||||
ownership:
|
||||
default: 0
|
||||
jOzRscDxoXZWpGS6: 3
|
||||
prototypeToken:
|
||||
flags: {}
|
||||
name: Zyglute
|
||||
@ -391,12 +320,7 @@ prototypeToken:
|
||||
texture: null
|
||||
_stats:
|
||||
systemId: foundryvtt-reve-de-dragon
|
||||
systemVersion: 10.7.19
|
||||
systemVersion: 12.0.22
|
||||
coreVersion: '12.331'
|
||||
createdTime: 1663623574838
|
||||
modifiedTime: 1686701218727
|
||||
lastModifiedBy: Hp9ImM4o9YRTSdfu
|
||||
compendiumSource: Compendium.foundryvtt-reve-de-dragon.animaux.31XA4x5Yk04TGUHR
|
||||
duplicateSource: null
|
||||
_key: '!actors!31XA4x5Yk04TGUHR'
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user