Utilisation de system dans les Item/Actor Sheet

Utilisation de system dans les data de formulaire pour tous
les Item/Actor (à la base, ou les sous-éléments)

Corrections sur les sorts en réserve (ce ne sont pas des Item)

Petites améliorations:

* `actor.itemTypes[type]`
   revient à faire (sans besoin de filtrer)
    `actor.items.filter(it => it.type == type)`
* dans les ItemSheet, this.object et this.document
  remplacés par this.item
* dans les ActorSheet, this.object et this.document
  remplacés par this.actor

Quelques corrections en plus:
* parade ne marchait pas
* problèmes sur le commerce
This commit is contained in:
Vincent Vandemeulebrouck
2022-09-07 18:47:56 +02:00
parent 5cd9fb3a1c
commit 509b7f97dc
90 changed files with 786 additions and 815 deletions

View File

@ -13,8 +13,8 @@
<label class="compteur">
<a class="jet-vie">Vie</a>
<a class="vie-moins"><i class="fas fa-minus-square"></i></a>
<input class="resource-content" type="text" name="system.sante.vie.value" value="{{data.sante.vie.value}}" data-dtype="Number"/>
<span>/ {{data.sante.vie.max}}</span>
<input class="resource-content" type="text" name="system.sante.vie.value" value="{{system.sante.vie.value}}" data-dtype="Number"/>
<span>/ {{system.sante.vie.max}}</span>
<a class="vie-plus"><i class="fas fa-plus-square"></i></a>
</label>
</li>
@ -22,8 +22,8 @@
<label class="compteur">
<a class="jet-endurance">Endurance</a>
<a class="endurance-moins"><i class="fas fa-minus-square"></i></a>
<input class="resource-content" type="text" name="system.sante.endurance.value" value="{{data.sante.endurance.value}}" data-dtype="Number"/>
<span>/ {{data.sante.endurance.max}}</span>
<input class="resource-content" type="text" name="system.sante.endurance.value" value="{{system.sante.endurance.value}}" data-dtype="Number"/>
<span>/ {{system.sante.endurance.max}}</span>
<a class="endurance-plus"><i class="fas fa-plus-square"></i></a>
</label>
</li>
@ -32,8 +32,8 @@
<span class="tooltiptext ttt-fatigue">{{{calc.fatigue.html}}}</span>
Fatigue
<a class="fatigue-moins"><i class="fas fa-minus-square"></i></a>
<input class="resource-content" id="fatigue-value" type="text" name="system.sante.fatigue.value" value="{{data.sante.fatigue.value}}" data-dtype="Number" />
<span>/ {{data.sante.fatigue.max}}</span>
<input class="resource-content" id="fatigue-value" type="text" name="system.sante.fatigue.value" value="{{system.sante.fatigue.value}}" data-dtype="Number" />
<span>/ {{system.sante.fatigue.max}}</span>
<a class="fatigue-plus"><i class="fas fa-plus-square"></i></a>
</label>
</li>
@ -41,8 +41,8 @@
<label class="compteur">
<span class="ptreve-actuel"><a>Rêve</a></span>
<a class="ptreve-actuel-moins"><i class="fas fa-minus-square"></i></a>
<input class="resource-content" id="pointsreve-value" type="text" name="system.reve.reve.value" value="{{data.reve.reve.value}}" data-dtype="Number" />
<span>/ {{data.reve.seuil.value}}</span>
<input class="resource-content" id="pointsreve-value" type="text" name="system.reve.reve.value" value="{{system.reve.reve.value}}" data-dtype="Number" />
<span>/ {{system.reve.seuil.value}}</span>
<a class="ptreve-actuel-plus"><i class="fas fa-plus-square"></i></a>
</label>
</li>
@ -52,7 +52,7 @@
<span class="encaisser-direct"><a title="Encaisser des dommages"><img class="button-img" src="icons/svg/bones.svg" alt="Encaisser des dommages"/></a></span>
<span class="gm-only remise-a-neuf"><a title="Remise à neuf"><img class="button-img" src="icons/svg/regen.svg" alt="Remise à neuf"/></a></span>
<span class="repos"><a title="Repos"><img class="button-img" src="icons/svg/sleep.svg" alt="Se reposer"/></a></span>
{{#if data.attributs.hautrevant.value}}
{{#if system.attributs.hautrevant.value}}
<span class="monte-tmr"><a title="Montée dans les Terres M&eacute;dianes !" {{#if hautreve.isDemiReve}}disabled{{/if}}><img class="button-img" src="systems/foundryvtt-reve-de-dragon/styles/img/ui/icon-tmr-normal.svg" alt="Montée dans les Terres M&eacute;dianes !"/></a></span>
<span class="monte-tmr-rapide"><a title="Montée accélérée dans les Terres M&eacute;dianes !"><img class="button-img" src="systems/foundryvtt-reve-de-dragon/styles/img/ui/icon-tmr-rapide.svg" alt="Montée accélérée dans les Terres M&eacute;dianes !"/></a></span>
<span class="visu-tmr"><a title="Regarder les Terres M&eacute;dianes"><img class="button-img" src="systems/foundryvtt-reve-de-dragon/styles/img/ui/icon-tmr-view.svg" alt="Regarder les Terres M&eacute;dianes"/></a></span>
@ -65,8 +65,8 @@
<span>{{calc.resumeBlessures}}</span>
</div>
<div class="flexrow">
<span>{{data.compteurs.etat.label}}: {{data.compteurs.etat.value}}</span>
<span>{{data.compteurs.surenc.label}}: {{data.compteurs.surenc.value}}</span>
<span>{{system.compteurs.etat.label}}: {{system.compteurs.etat.value}}</span>
<span>{{system.compteurs.surenc.label}}: {{system.compteurs.surenc.value}}</span>
</div>
<div class="flexrow">
{{>"systems/foundryvtt-reve-de-dragon/templates/actor-sheet-effects-partial.html"}}
@ -100,7 +100,7 @@
<div class="grid grid-2col">
<div class="flex-group-left flexcol">
<ul class="carac-list alterne-list">
{{#each data.carac as |carac key|}}
{{#each system.carac as |carac key|}}
{{#if carac.isLevelUp}}
<li class="caracteristique flexrow item-list xp-level-up" data-attribute="{{key}}">
{{else}}
@ -149,10 +149,10 @@
<ul class="carac-list">
<li class="caracteristique flexrow list-item">
<span class="carac-label" name="beaute">Beauté&nbsp;:</span>
<input class="description-value" type="text" name="system.beaute" value="{{data.beaute}}" data-dtype="String" {{#unless @root.options.editCaracComp}}disabled{{/unless}}/>
<input class="description-value" type="text" name="system.beaute" value="{{system.beaute}}" data-dtype="String" {{#unless @root.options.editCaracComp}}disabled{{/unless}}/>
<label class="carac-xp"/>
</li>
{{#each data.attributs as |attr key|}}
{{#each system.attributs as |attr key|}}
{{#unless (eq key 'hautrevant')}}
<li class="caracteristique flexrow list-item" data-attribute="{{key}}">
<span class="carac-label" name="system.attributs.{{key}}.label">{{attr.label}}&nbsp;:</span>
@ -169,10 +169,10 @@
<ul class="carac-list alterne-list">
<li class="caracteristique flexrow list-item">
<span class="attribut-label chance-actuelle"><a>Chance actuelle</a></span>
<input class="description-value compteur-edit" type="text" name="chance" value="{{data.compteurs.chance.value}}" data-dtype="number"/>
<input class="description-value compteur-edit" type="text" name="chance" value="{{system.compteurs.chance.value}}" data-dtype="number"/>
<span class="utiliser-attribut" style="padding-left: 5px"><a class="chance-appel">Utiliser</a></span>
</li>
{{#each data.compteurs as |compteur key|}}
{{#each system.compteurs as |compteur key|}}
{{#if (eq compteur.label 'Chance')}}
{{else if (eq compteur.label 'Experience')}}
{{else if compteur.isInput}}
@ -240,7 +240,7 @@
{{> "systems/foundryvtt-reve-de-dragon/templates/actor-sheet-categorie-competences-partial.html" competences=(filtreTriCompetences competenceByCategory.tir) categorie="Compétences de Tir"}}
{{> "systems/foundryvtt-reve-de-dragon/templates/actor-sheet-categorie-competences-partial.html" competences=(filtreTriCompetences competenceByCategory.lancer) categorie="Compétences de Lancer"}}
{{> "systems/foundryvtt-reve-de-dragon/templates/actor-sheet-categorie-competences-partial.html" competences=(filtreTriCompetences competenceByCategory.connaissance) categorie="Connaissances"}}
{{#if (or data.attributs.hautrevant.value options.vueDetaillee)}}
{{#if (or system.attributs.hautrevant.value options.vueDetaillee)}}
{{> "systems/foundryvtt-reve-de-dragon/templates/actor-sheet-categorie-competences-partial.html" competences=(filtreTriCompetences competenceByCategory.draconic) categorie="Draconic"}}
{{/if}}
@ -248,7 +248,7 @@
<ul class="item-list">
<li class="item flexrow">
<span class="generic-label">Stress transformé</span>
<input class="compteur-edit" type="text" name="experience" value="{{data.compteurs.experience.value}}" data-dtype="number" size="3"/>
<input class="compteur-edit" type="text" name="experience" value="{{system.compteurs.experience.value}}" data-dtype="number" size="3"/>
</li>
<li class="item flexrow">
@ -444,13 +444,13 @@
{{!-- hautreve Tab --}}
<div class="tab hautreve " data-group="primary" data-tab="hautreve" style="height:200px">
<div>
{{#if data.attributs.hautrevant.value}}
{{#if system.attributs.hautrevant.value}}
<h3>Haut rêvant</h3>
{{else}}
<h3>Vous n'avez pas le don de haut-rêve! Il faut attribuer la Tête de Dragon 'Don de Haut Rêve' si votre personnage est ou devient Haut-Rêvant.</h3>
{{/if}}
<ul class="item-list">
{{#if data.attributs.hautrevant.value}}
{{#if system.attributs.hautrevant.value}}
{{#if options.isGM}}
<li class="item flexrow">
<span>
@ -464,23 +464,23 @@
<li class="item flexrow">
{{#if options.isGM}}
<span class="competence-label flex-shrink">Demi rêve :
<span>{{caseTmr-label data.reve.tmrpos.coord}}</span>
<span>{{caseTmr-label system.reve.tmrpos.coord}}</span>
</span>
<span>
<input class="competence-value" type="text" name="system.reve.tmrpos.coord" value="{{data.reve.tmrpos.coord}}" data-dtype="String"/>
<input class="competence-value" type="text" name="system.reve.tmrpos.coord" value="{{system.reve.tmrpos.coord}}" data-dtype="String"/>
</span>
{{else}}
<span class="competence-label flex-shrink">Demi rêve :
{{#unless hautreve.cacheTMR}}
<span>{{caseTmr-label data.reve.tmrpos.coord}}</span>
<span>{{caseTmr-label system.reve.tmrpos.coord}}</span>
{{/unless}}
</span>
<span>
{{#if hautreve.cacheTMR}}
??
{{else}}
{{data.reve.tmrpos.coord}}
{{system.reve.tmrpos.coord}}
{{/if}}
</span>
{{/if}}
@ -490,9 +490,9 @@
<span class="competence-label">Seuil de Rêve :</span>
<span>
{{#if options.isGM}}
<input class="seuil-reve-value" type="text" name="system.reve.seuil.value" value="{{data.reve.seuil.value}}" data-dtype="Number"/>
<input class="seuil-reve-value" type="text" name="system.reve.seuil.value" value="{{system.reve.seuil.value}}" data-dtype="Number"/>
{{else}}
{{data.reve.seuil.value}}
{{system.reve.seuil.value}}
{{/if}}
</span>
</li>
@ -500,9 +500,9 @@
<span class="competence-label">Refoulement : </span>
<span>
{{#if options.isGM}}
<input class="competence-value" type="text" name="system.reve.refoulement.value" value="{{data.reve.refoulement.value}}" data-dtype="Number"/>
<input class="competence-value" type="text" name="system.reve.refoulement.value" value="{{system.reve.refoulement.value}}" data-dtype="Number"/>
{{else}}
{{data.reve.refoulement.value}}
{{system.reve.refoulement.value}}
{{/if}}
</span>
</li>
@ -562,7 +562,7 @@
{{/each}}
</ul>
{{/if}}
{{#if data.attributs.hautrevant.value}}
{{#if system.attributs.hautrevant.value}}
{{#if (and options.isGM signesdraconiques.length)}}
<h3>Signes draconiques</h3>
<ul class="item-list alterne-list">
@ -676,50 +676,50 @@
<article class="flexrow">
<ul class="item-list alterne-list">
<li class="item flexrow list-item">
<label for="data.race">Race :</label>
<input class="flex-grow" type="text" name="system.race" value="{{data.race}}" data-dtype="String"/>
<label for="system.race">Race :</label>
<input class="flex-grow" type="text" name="system.race" value="{{system.race}}" data-dtype="String"/>
</li>
<li class="item flexrow list-item">
<label for="data.sexe">Sexe :</label>
<input class="flex-grow" type="text" name="system.sexe" value="{{data.sexe}}" data-dtype="String"/>
<label for="system.sexe">Sexe :</label>
<input class="flex-grow" type="text" name="system.sexe" value="{{system.sexe}}" data-dtype="String"/>
</li>
<li class="item flexrow list-item">
<label for="data.age">Age :</label>
<input class="flex-grow" type="text" name="system.age" value="{{data.age}}" data-dtype="String"/>
<label for="system.age">Age :</label>
<input class="flex-grow" type="text" name="system.age" value="{{system.age}}" data-dtype="String"/>
</li>
<li class="item flexrow list-item">
<label for="data.poids">Poids :</label>
<input class="flex-grow" type="text" name="system.poids" value="{{data.poids}}" data-dtype="String"/>
<label for="system.poids">Poids :</label>
<input class="flex-grow" type="text" name="system.poids" value="{{system.poids}}" data-dtype="String"/>
</li>
<li class="item flexrow list-item">
<label for="data.taille">Taille :</label>
<input class="flex-grow" type="text" name="system.taille" value="{{data.taille}}" data-dtype="String"/>
<label for="system.taille">Taille :</label>
<input class="flex-grow" type="text" name="system.taille" value="{{system.taille}}" data-dtype="String"/>
</li>
</ul>
<ul class="item-list alterne-list">
<li class="item flexrow list-item">
<label for="data.main">Main directrice :</label>
<input type="text" name="system.main" value="{{data.main}}" data-dtype="String"/>
<label for="system.main">Main directrice :</label>
<input type="text" name="system.main" value="{{system.main}}" data-dtype="String"/>
</li>
<li class="item flexrow list-item">
<label for="data.heure">Heure de naissance :</label>
<select type="text" name="system.heure" value="{{data.heure}}" data-dtype="String">
{{#select data.heure}}
<label for="system.heure">Heure de naissance :</label>
<select type="text" name="system.heure" value="{{system.heure}}" data-dtype="String">
{{#select system.heure}}
{{>"systems/foundryvtt-reve-de-dragon/templates/heures-select-option.html"}}
{{/select}}
</select>
</li>
<li class="item flexrow list-item">
<label>Beauté :</label>
<input type="text" value="{{data.beaute}}" data-dtype="String" disabled/>
<input type="text" value="{{system.beaute}}" data-dtype="String" disabled/>
</li>
<li class="item flexrow list-item">
<label for="data.cheveux">Cheveux :</label>
<input class="flex-grow" type="text" name="system.cheveux" value="{{data.cheveux}}" data-dtype="String"/>
<label for="system.cheveux">Cheveux :</label>
<input class="flex-grow" type="text" name="system.cheveux" value="{{system.cheveux}}" data-dtype="String"/>
</li>
<li class="item flexrow list-item">
<label for="data.yeux">Yeux :</label>
<input class="flex-grow" type="text" name="system.yeux" value="{{data.yeux}}" data-dtype="String"/>
<label for="system.yeux">Yeux :</label>
<input class="flex-grow" type="text" name="system.yeux" value="{{system.yeux}}" data-dtype="String"/>
</li>
</ul>
</article>
@ -727,16 +727,16 @@
<article class="flexcol">
<h3>Biographie : </h3>
<div class="form-group editor">
{{editor data.biographie target="system.biographie" button=true owner=owner editable=editable}}
{{editor system.biographie target="system.biographie" button=true owner=owner editable=editable}}
</div>
<h3>Notes : </h3>
<div class="form-group editor">
{{editor data.notes target="system.notes" button=true owner=owner editable=editable}}
{{editor system.notes target="system.notes" button=true owner=owner editable=editable}}
</div>
<h3>Journal d'Experience</h3>
<div class="form-group editor">
<ul class="item-list alterne-list">
{{#each data.experiencelog as |xp key|}}
{{#each system.experiencelog as |xp key|}}
<li class="item flexrow list-item">
<label class="flex-shrink">{{xp.mode}} </label>
<label class="flex-grow">{{xp.valeur}} {{xp.raison}} </label>