Version avec doc

This commit is contained in:
sladecraven 2020-07-24 10:51:11 +02:00
parent 2cb51e7999
commit c82d0fe8a1
7 changed files with 93 additions and 21 deletions

View File

@ -28,18 +28,21 @@ long_line_behaviour=1
long_line_column=72
[files]
current_page=10
FILE_NAME_0=6460;JSON;0;EUTF-8;0;1;0;%2Fhome%2Fmorr%2Fwork%2Ffoundryvtt%2Ffoundryvtt-reve-de-dragon%2Ftemplate.json;0;2
FILE_NAME_1=5276;Javascript;0;EUTF-8;0;1;0;%2Fhome%2Fmorr%2Fwork%2Ffoundryvtt%2Ffoundryvtt-reve-de-dragon%2Fmodule%2Factor-sheet.js;0;2
current_page=13
FILE_NAME_0=9714;JSON;0;EUTF-8;0;1;0;%2Fhome%2Fmorr%2Fwork%2Ffoundryvtt%2Ffoundryvtt-reve-de-dragon%2Ftemplate.json;0;2
FILE_NAME_1=5468;Javascript;0;EUTF-8;0;1;0;%2Fhome%2Fmorr%2Fwork%2Ffoundryvtt%2Ffoundryvtt-reve-de-dragon%2Fmodule%2Factor-sheet.js;0;2
FILE_NAME_2=17984;HTML;0;EUTF-8;0;1;0;%2Fhome%2Fmorr%2Fwork%2Ffoundryvtt%2Ffoundryvtt-reve-de-dragon%2Ftemplates%2Factor-sheet.html;0;2
FILE_NAME_3=4521;Javascript;0;EUTF-8;0;1;0;%2Fhome%2Fmorr%2Fwork%2Ffoundryvtt%2Ffoundryvtt-reve-de-dragon%2Fmodule%2Frdd-utility.js;0;2
FILE_NAME_4=13685;Javascript;0;EUTF-8;0;1;0;%2Fhome%2Fmorr%2Fwork%2Ffoundryvtt%2Ffoundryvtt-reve-de-dragon%2Fmodule%2Frdd-tmr-dialog.js;0;2
FILE_NAME_5=693;HTML;0;EUTF-8;0;1;0;%2Fhome%2Fmorr%2Fwork%2Ffoundryvtt%2Ffoundryvtt-reve-de-dragon%2Ftemplates%2Fdialog-tmr.html;0;2
FILE_NAME_6=18262;Javascript;0;EUTF-8;0;1;0;%2Fhome%2Fmorr%2Fwork%2Ffoundryvtt%2Ffoundryvtt-reve-de-dragon%2Fmodule%2Factor.js;0;2
FILE_NAME_7=1121;Javascript;0;EUTF-8;0;1;0;%2Fhome%2Fmorr%2Fwork%2Ffoundryvtt%2Ffoundryvtt-reve-de-dragon%2Fmodule%2Frdd-main.js;0;2
FILE_NAME_3=6672;Javascript;0;EUTF-8;0;1;0;%2Fhome%2Fmorr%2Fwork%2Ffoundryvtt%2Ffoundryvtt-reve-de-dragon%2Fmodule%2Frdd-utility.js;0;2
FILE_NAME_4=11979;Javascript;0;EUTF-8;0;1;0;%2Fhome%2Fmorr%2Fwork%2Ffoundryvtt%2Ffoundryvtt-reve-de-dragon%2Fmodule%2Frdd-tmr-dialog.js;0;2
FILE_NAME_5=1692;HTML;0;EUTF-8;0;1;0;%2Fhome%2Fmorr%2Fwork%2Ffoundryvtt%2Ffoundryvtt-reve-de-dragon%2Ftemplates%2Fdialog-tmr.html;0;2
FILE_NAME_6=8489;Javascript;0;EUTF-8;0;1;0;%2Fhome%2Fmorr%2Fwork%2Ffoundryvtt%2Ffoundryvtt-reve-de-dragon%2Fmodule%2Factor.js;0;2
FILE_NAME_7=761;Javascript;0;EUTF-8;0;1;0;%2Fhome%2Fmorr%2Fwork%2Ffoundryvtt%2Ffoundryvtt-reve-de-dragon%2Fmodule%2Frdd-main.js;0;2
FILE_NAME_8=8120;CSS;0;EUTF-8;0;1;0;%2Fhome%2Fmorr%2Fwork%2Ffoundryvtt%2Ffoundryvtt-reve-de-dragon%2Fstyles%2Fsimple.css;0;2
FILE_NAME_9=18700;Javascript;0;EUTF-8;0;1;0;%2Fhome%2Fmorr%2Fwork%2Ffoundryvtt%2Ffoundryvtt-reve-de-dragon%2Fmodule%2Ftmr-utility.js;0;2
FILE_NAME_10=164;JSON;0;EUTF-8;0;1;0;%2Fhome%2Fmorr%2Fwork%2Ffoundryvtt%2Ffoundryvtt-reve-de-dragon%2Fsystem.json;0;2
FILE_NAME_10=396;HTML;0;EUTF-8;0;1;0;%2Fhome%2Fmorr%2Fwork%2Ffoundryvtt%2Ffoundryvtt-reve-de-dragon%2Ftemplates%2Fdialog-roll-sort.html;0;2
FILE_NAME_11=244;HTML;0;EUTF-8;0;1;0;%2Fhome%2Fmorr%2Fwork%2Ffoundryvtt%2Ffoundryvtt-reve-de-dragon%2Ftemplates%2Fdialog-roll-carac.html;0;2
FILE_NAME_12=335;HTML;0;EUTF-8;0;1;0;%2Fhome%2Fmorr%2Fwork%2Ffoundryvtt%2Ffoundryvtt-reve-de-dragon%2Ftemplates%2Fdialog-competence.html;0;2
FILE_NAME_13=1259;Javascript;0;EUTF-8;0;1;0;%2Fhome%2Fmorr%2Fwork%2Ffoundryvtt%2Ffoundryvtt-reve-de-dragon%2Fmodule%2Frdd-roll-dialog.js;0;2
[VTE]
last_dir=/home/sigmar

View File

@ -93,6 +93,10 @@ export class RdDActorSheet extends ActorSheet {
data.data.potions = this._checkNull(data.itemsByType['potions']);
data.data.herbes = this._checkNull(data.itemsByType['herbes']);
data.data.sorts = this._checkNull(data.itemsByType['sort']);
data.data.queues = this._checkNull(data.itemsByType['queue']);
data.data.souffles = this._checkNull(data.itemsByType['souffle']);
data.data.ombres = this._checkNull(data.itemsByType['ombre']);
data.data.tetes = this._checkNull(data.itemsByType['tete']);
data.data.competenceByCategory = data.competenceByCategory;
//data.data.armes = data.itemsByType.arme;
//console.log(">>>>> data update");
@ -156,10 +160,22 @@ export class RdDActorSheet extends ActorSheet {
this.actor.rollArme( armeName);
});
// Roll spell
// Display TMR
html.find('.monte-tmr a').click((event) => {
this.actor.displayTMR( );
});
// Display info about queue
html.find('.queuesouffle-label a').click((event) => {
let myID = event.currentTarget.attributes['data-id'].value;
const item = this.actor.getOwnedItem(myID);
item.sheet.render(true);
});
// Display info about queue
html.find('.sort-label a').click((event) => {
let sortID = event.currentTarget.attributes['data-id'].value;
this.actor.displayTMR( sortID);
let myID = event.currentTarget.attributes['data-id'].value;
const item = this.actor.getOwnedItem(myID);
item.sheet.render(true);
});
// On carac change

View File

@ -53,6 +53,14 @@ Hooks.once("init", async function() {
Items.registerSheet("foundryvtt-reve-de-dragon", RdDItemSheet, {makeDefault: true});
});
/* -------------------------------------------- */
/* Foundry VTT Initialization */
/* -------------------------------------------- */
Hooks.once("ready", function() {
ChatMessage.create( { title: "Bienvenu dans le Rêve !", content : "Bienvenu dans le Rêve des Dragons !<br> " +
"Vous trouverez quelques infos pour démarrer dans ce document : @Compendium[foundryvtt-reve-de-dragon.rappel-des-regles.7uGrUHGdPu0EmIu2]{Documentation MJ/Joueurs}" } );
} );
/* -------------------------------------------- */
/* Foundry VTT Initialization */
/* -------------------------------------------- */

View File

@ -1,5 +1,5 @@
{"_id":"0jrEZ62Q2Jz4kBGf","name":"Mauvaise rencontre en perspective","permission":{"default":0,"jOzRscDxoXZWpGS6":3},"type":"queue","data":{"description":"<p>Tirer la prochaine rencontre dans les TMR sur la @RollTable[52ymSWISvXPUhRyQ]{Table spéciale de rencontres}</p>","refoulement":1},"flags":{},"img":"icons/svg/mystery-man.svg"}
{"_id":"1gGVlZM0UyifL6RK","name":"Souvenir obsessionnel de l'archétype","permission":{"default":0,"jOzRscDxoXZWpGS6":3},"type":"queue","data":{"description":"<p>Les prochains points dexpérience dus au stress doivent être mis dans une compétence déterminée aléatoirement par la table de @Compendium[foundryvtt-reve-de-dragon.tables-diverses.E0WLgjn6LA9WsvKJ]{Détermination aléatoire de compétence}.</p>","refoulement":1},"flags":{},"img":"icons/svg/mystery-man.svg"}
{"_id":"1gGVlZM0UyifL6RK","name":"Souvenir obsessionnel de l'archétype","permission":{"default":0,"jOzRscDxoXZWpGS6":3},"type":"queue","data":{"description":"<p>Les prochains points dexpérience dus au stress doivent être mis dans une compétence déterminée aléatoirement par la table de @Compendium[world.tables-diverses.E0WLgjn6LA9WsvKJ]{Détermination aléatoire de compétence}.</p>","refoulement":1},"flags":{},"img":"icons/svg/mystery-man.svg"}
{"_id":"32LbwxxokC9Tn370","name":"Coup de foudre fatal","permission":{"default":0,"jOzRscDxoXZWpGS6":3},"type":"queue","data":{"description":"<p>On devient immédiatement amoureux fou de la première personne inconnue de sexe opposé et de même espèce rencontrée. Tant que satisfaction nest pas obtenue, traiter comme un désir lancinant.&nbsp;</p>","refoulement":2},"flags":{},"img":"icons/svg/mystery-man.svg"}
{"_id":"5knw1NcnBsLIjHpr","name":"Montée laborieuse","permission":{"default":0,"jOzRscDxoXZWpGS6":3},"type":"queue","data":{"description":"<p>Pendant un jour, monter en TMR coûte 2 points de rêve au lieu dun, et 3 points en déplacement accéléré.</p>","refoulement":1},"flags":{},"img":"icons/svg/mystery-man.svg"}
{"_id":"EUrxQGd7FuW628NS","name":"Inertie draconique","permission":{"default":0,"jOzRscDxoXZWpGS6":3},"type":"queue","data":{"description":"<p>Pendant un jour, la fatigue en TMR est doublée. Chaque case ou round coûte 2 points au lieu dun.</p>","refoulement":1},"flags":{},"img":"icons/svg/mystery-man.svg"}

View File

@ -1,4 +1,5 @@
{"_id":"3wVxF2IRf3c1lOxC","name":"Communication avec les créatures invoquées","permission":{"default":0,"jOzRscDxoXZWpGS6":3},"flags":{},"content":"<p>Seul le haut-r&ecirc;vant invocateur peut communiquer avec sa cr&eacute;ature invoqu&eacute;e (Guerrier Sorde, Kanaillou, etc.) et ne peut le faire qu&rsquo;oralement. Cela sous-entend que le haut-r&ecirc;vant doit &ecirc;tre en mesure de parler.</p>"}
{"name":"Documentation MJ/Joueurs","permission":{"default":0,"Q4cUvqxCxMoTJXDL":3},"flags":{},"content":"<h1>Pr&eacute;ambule</h1>\n<p>Ce syst&egrave;me pour Foundry est un impl&eacute;mentation de R&ecirc;ve de Dragon, un jeu de Denis Gerfaud, publi&eacute; dans sa troisi&egrave;me &eacute;dition par \"Le Scriptarium\". Tout les droits leur en reviennent naturellement.</p>\n<p>Merci &agrave; Fred et Fab du Discord Foudry Francophone pour le gros travail de saisie des Compendiums !</p>\n<p>Pour me contacter : https://discord.gg/pPSDNJk , Pseudo LeRatierBretonnien</p>\n<h1>Cr&eacute;er un Personnage</h1>\n<p>Tout se fait manuellement &agrave; l'heure actuelle, il convient donc proc&eacute;der comme suit :&nbsp;</p>\n<ul>\n<li>Renseignez les caract&eacute;ristiques dans l'onglet concern&eacute;.</li>\n<li>Renseignez les niveaux de comp&eacute;tences n&eacute;cessaires</li>\n<li>Ouvrez le compendium de l'&eacute;quipement et faites glisser/d&eacute;placer sur l'&eacute;quipement que vous souhaitez</li>\n<li>Si votre personnage est haut-&ecirc;vant, ouvrez le compendium des sorts et faites glisser/d&eacute;placer pour attribuer les sorts.</li>\n</ul>\n<p>Chaque &eacute;l&eacute;ment appara&icirc;t dans son onglet propre.</p>\n<p>Pour r&eacute;aliser un jet, il suffit de cliquer sur le nom d'une caract&eacute;ristique, comp&eacute;tence ou objet. Ce click ouvre la boite de dialogue des jets, qui permet de param&eacute;trer les diff&eacute;rentes options (difficult&eacute;, comp&eacute;tence/carac, etc). Le lancer affiche les r&eacute;sultats dans le tchat, avec le r&eacute;sultat, la qualit&eacute; de la r&eacute;ussite, les points d'exp&eacute;rience &eacute;ventuels et les points de taches.</p>\n<h1>Combat</h1>\n<p>Pour l'instant, l'initiative est &agrave; r&eacute;gler manuellement. Une fois qu'un personnage est cibl&eacute;, l'attaquant clique sur <strong>l'arme </strong>( et pas la comp&eacute;tence) concern&eacute;. La difficult&eacute; libre est alors propos&eacute;e.&nbsp;</p>\n<p>Si l'attaque r&eacute;ussit, le d&eacute;feseur se voit ouvrir un message dans le tchat avec ses actions de r&eacute;ponse possibles, selon ses comp&eacute;tences : Encaisser, Esquiver, Parer, ...</p>\n<p>Un click sur ces actions g&eacute;n&egrave;re le jet de riposte et produit les r&eacute;sultats. Les Blessures et l'&eacute;tat g&eacute;n&eacute;ral est automatiquement mis &agrave; jour.</p>\n<h1>Haut R&ecirc;ve</h1>\n<p>Pour monter dans les Terres M&eacute;dianes, il suffit de cliquer sur le lien \"<strong>Monter dans les Terres M&eacute;dianes!</strong>\".</p>\n<p>La description des sorts est disponible en cliquant sur le sort.</p>\n<p>La fiche des TMR apparait alors, vous permettant de vous d&eacute;placer. Le point de r&ecirc;ve de mont&eacute;e, la fatigue, les rencontres, les cases humides sont automatiquement g&eacute;r&eacute;s. Lorsque vous &ecirc;tes sur la bonne case, il vous suffit de cliquer sur 'Lancer le sort', qui ouvre la boite de dialogue du lancement.<br /><br /></p>\n<h1>Ce qui n'est pas impl&eacute;ment&eacute;/en cours</h1>\n<ul>\n<li>Rendre plus jolie les feuilles de perso</li>\n<li>Mettre un bouton permettant de re-initialiser tout les champs et compteurs (notamment pour cr&eacute;ation de personnage).</li>\n<li>Le Stress et les jets associ&eacute;s</li>\n<li>La mont&eacute; rapide en TMR</li>\n<li>Les points d'XP sur les&nbsp; particuli&egrave;res sont &agrave; v&eacute;rifier</li>\n<li>Des messages pour le MJ sur certaines actions des joueurs, pour le pr&eacute;venir (TMR notamment)</li>\n<li>Ajouter des commandes de tirage et d'aides pour le MJ (commande /table&nbsp; &agrave; compl&eacute;ter)</li>\n</ul>","_id":"7uGrUHGdPu0EmIu2"}
{"name":"Passeur fou","permission":{"default":0,"jOzRscDxoXZWpGS6":3},"flags":{},"content":"<p>Non ma&icirc;tris&eacute;, le Passeur fou emporte imm&eacute;diatement le demi- r&ecirc;ve du haut-r&ecirc;vant jusqu&rsquo;&agrave; la plus proche case o&ugrave; il a un sort en r&eacute;serve, l&rsquo;obligeant &agrave; le d&eacute;clencher. Peu importe la distance, m&ecirc;me si elle exc&egrave;de les 2d8. &Agrave; distances &eacute;gales, choisir le haut de la carte en priorit&eacute; et tourner dans le sens des aiguilles d&rsquo;une montre. Si aucun sort n&rsquo;est en r&eacute;serve, le Passeur fou emporte le demi-r&ecirc;ve du haut-r&ecirc;vant dans une direction al&eacute;atoire et &agrave; un nombre de cases &eacute;quivalent &agrave; sa force.</p>","_id":"G2WDlZwZaEyH94Au"}
{"_id":"GRKYbbNDIHdzVNaj","name":"Note sur les invocations de créatures","permission":{"default":0,"jOzRscDxoXZWpGS6":3},"flags":{},"content":"<p>Les cr&eacute;atures invoqu&eacute;es ne sont pas des hologrammes sans substance mais des pr&eacute;sences physiques v&eacute;ritables. La plupart d&rsquo;entre elles, comme les guerriers, peuvent &ecirc;tre bless&eacute;es, sonn&eacute;es, tu&eacute;es. &Agrave; l&rsquo;exception du Kanaillou, chaque type de cr&eacute;ature invoqu&eacute;e ne peut accomplir qu&rsquo;un genre de t&acirc;che sp&eacute;cifique. Le ciblage doit &ecirc;tre fait, dans les limites de la port&eacute;e, sur un point du sol libre de tout obstacle, o&ugrave; la cr&eacute;ature puisse se mat&eacute;rialiser. La dur&eacute;e de l&rsquo;invocation d&eacute;pend de la t&acirc;che, mais ne peut exc&eacute;der la fin de l&rsquo;heure de naissance du haut-r&ecirc;vant. &Agrave; ce moment, la cr&eacute;ature se d&eacute;mat&eacute;rialise int&eacute;gralement, ainsi que tout son &eacute;quipement. M&ecirc;me chose si elle est tu&eacute;e. Il est vain de songer &agrave; r&eacute;cup&eacute;rer l&rsquo;armure et les armes d&rsquo;un Guerrier Sorde. Chaque type de cr&eacute;ature est toujours invoqu&eacute; dans une case sp&eacute;cifique et non pas dans n&rsquo;importe quelle case du m&ecirc;me genre. Par ailleurs, ces rituels ob&eacute;issent &agrave; toutes les r&egrave;gles standard d&rsquo;application des rituels.</p>"}
{"name":"Tourbillon rouge","permission":{"default":0,"jOzRscDxoXZWpGS6":3},"flags":{},"content":"<p>Le Tourbillon rouge est un tourbillon vampire. Il fonctionne comme les Tourbillons blancs et noirs, sauf que chaque round tant qu&rsquo;il n&rsquo;est pas ma&icirc;tris&eacute; fait d&eacute;river le demi-r&ecirc;ve de 4 cases, draine 2 points de r&ecirc;ve et 1 point de vie.</p>\n<p>On peut se d&eacute;rober normalement devant ces rencontres ou les refouler. <em>Toutefois, leur refoulement co&ucirc;te 2 points au lieu d&rsquo;un, sauf le Tourbillon rouge qui en co&ucirc;te 3</em>.</p>","_id":"K42KNuBHizMppV5F"}

View File

@ -2,7 +2,7 @@
"name": "foundryvtt-reve-de-dragon",
"title": "Rêve de Dragon",
"description": "L'implémentation de Rêve de Dragon pour FoundryVTT",
"version": "0.7.21",
"version": "0.8.0",
"minimumCoreVersion": "0.6.0",
"compatibleCoreVersion": "0.6.2",
"templateVersion": 20,

View File

@ -50,6 +50,7 @@
<a class="item" data-tab="blessures">Blessures</a>
<a class="item" data-tab="hautreve">Haut-Rêve</a>
<a class="item" data-tab="items">Equipement</a>
<a class="item" data-tab="queuesouffle">Queues, Souffles et Têtes</a>
<a class="item" data-tab="description">Description</a>
</nav>
@ -302,17 +303,24 @@
{{!-- hautreve Tab --}}
<div class="tab hautreve" data-group="primary" data-tab="hautreve" style="height:200px">
<div>
<span class="monte-tmr"><strong><a>Monter dans les Terres Medianes !</a></strong></span>
</div>
<div>
<ol class="item-list">
<li class="item flexrow" >Points de Rêve actuels : <input class="pointsreve-value flexrow" type="text" name="data.reve.reve.value" value="{{data.reve.reve.value}}" data-dtype="Number"/></li>
<li class="item flexrow" >Position en TMR : {{data.reve.tmrpos.coord}} </li>
<li class="item flexrow" >Refoulement : {{data.reve.refoulement.value}} </li>
</ol>
</div>
<div>
<span>Sorts:</span>
<span><strong>Sorts:</strong></span>
<ol class="item-list">
{{#each data.sorts as |mysort key|}}
<li class="item flexrow" data-attribute={{key}}>
<span class="sort-label"> <a data-id="{{mysort._id}}">{{mysort.name}}</a></span> <span>{{mysort.data.draconic}} - {{mysort.data.difficulte}}</span>
</li>
{{/each}}
</ol>
</div>
</div>
@ -346,6 +354,42 @@
</ol>
</div>
{{!-- queue/tete/souffle Tab --}}
<div class="tab queuesouffle" data-group="primary" data-tab="queuesouffle" style="height:200px">
<div>
<span><strong>Queues:</strong></span>
{{#each data.queues as |queue key|}}
<li class="item flexrow" data-attribute={{key}}>
<span class="queuesouffle-label"> <a data-id="{{queue._id}}">{{queue.name}}</a></span>
</li>
{{/each}}
</div>
<div>
<span><strong>Souffles:</strong></span>
{{#each data.souffles as |souffle key|}}
<li class="item flexrow" data-attribute={{key}}>
<span class="queuesouffle-label"> <a data-id="{{souffle._id}}">{{souffle.name}}</a></span>
</li>
{{/each}}
</div>
<div>
<span><strong>Tetes:</strong></span>
{{#each data.tetes as |tete key|}}
<li class="item flexrow" data-attribute={{key}}>
<span class="queuesouffle-label"> <a data-id="{{tete._id}}">{{tete.name}}</a></span>
</li>
{{/each}}
</div>
<div>
<span><strong>Ombres de Thanatos:</strong></span>
{{#each data.ombres as |ombre key|}}
<li class="item flexrow" data-attribute={{key}}>
<span class="queuesouffle-label"> <a data-id="{{ombre._id}}">{{ombre.name}}</a></span>
</li>
{{/each}}
</div>
</div>
{{!-- Biography Tab --}}
<div class="tab biography" data-group="primary" data-tab="description" style="height:200px">
{{editor content=data.biographie target="data.biographie" button=true owner=owner editable=editable}}