Amélioration des potions
- effet de base en cas de résistance à potion magique - un seul message de tchat - affichage du résultat du jet de résistance - utilisation des l'image de la potion - fabrication avec image de l'herbe
This commit is contained in:
parent
9a637be4e9
commit
bf2ec639c8
@ -3841,32 +3841,21 @@ export class RdDActor extends Actor {
|
||||
potionData.supprimer = true;
|
||||
|
||||
if (potionData.data.magique) {
|
||||
// Gestion de la résistance:
|
||||
potionData.rolled = await RdDResolutionTable.roll(this.getReveActuel(), -8);
|
||||
if (potionData.rolled.isEchec) {
|
||||
await this.reveActuelIncDec(-1);
|
||||
potionData.guerisonData = await this.buildPotionGuerisonList(potionData.data.puissance);
|
||||
potionData.guerisonMinutes = potionData.guerisonData.pointsConsommes * 5;
|
||||
}
|
||||
}
|
||||
if (!potionData.data.magique || potionData.rolled.isSuccess) {
|
||||
this.bonusRecuperationPotion = potionData.data.herbeBonus;
|
||||
}
|
||||
ChatMessage.create({
|
||||
whisper: ChatUtility.getWhisperRecipientsAndGMs(game.user.name),
|
||||
content: await renderTemplate(`systems/foundryvtt-reve-de-dragon/templates/chat-consommer-potion-soin.html`, potionData)
|
||||
});
|
||||
// Gestion de la résistance:
|
||||
let rolled = await RdDResolutionTable.roll(this.getReveActuel(), -8);
|
||||
potionData.reveResultDice = rolled.roll;
|
||||
potionData.scoreReve = rolled.score;
|
||||
potionData.reussiteReve = false;
|
||||
if (!rolled.isSuccess) {
|
||||
await this.reveActuelIncDec(-1);
|
||||
potionData.guerisonData = await this.buildPotionGuerisonList(potionData.data.puissance);
|
||||
potionData.guerisonMinutes = potionData.guerisonData.pointsConsommes * 5;
|
||||
potionData.reussiteReve = true;
|
||||
}
|
||||
ChatMessage.create({
|
||||
whisper: ChatUtility.getWhisperRecipientsAndGMs(game.user.name),
|
||||
content: await renderTemplate(`systems/foundryvtt-reve-de-dragon/templates/chat-appliquer-potion-soin.html`, potionData)
|
||||
});
|
||||
} else {
|
||||
ChatMessage.create({
|
||||
whisper: ChatUtility.getWhisperRecipientsAndGMs(game.user.name),
|
||||
content: await renderTemplate(`systems/foundryvtt-reve-de-dragon/templates/chat-appliquer-potion-soin.html`, potionData)
|
||||
});
|
||||
this.bonusRecuperationPotion = potionData.data.herbeBonus;
|
||||
}
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
@ -3875,22 +3864,14 @@ export class RdDActor extends Actor {
|
||||
potionData.supprimer = true;
|
||||
|
||||
if (potionData.data.magique) {
|
||||
ChatMessage.create({
|
||||
whisper: ChatUtility.getWhisperRecipientsAndGMs(game.user.name),
|
||||
content: await renderTemplate(`systems/foundryvtt-reve-de-dragon/templates/chat-consommer-potion-repos.html`, potionData)
|
||||
});
|
||||
// Gestion de la résistance:
|
||||
let rolled = await RdDResolutionTable.roll(this.getReveActuel(), -8);
|
||||
potionData.reveResultDice = rolled.roll;
|
||||
potionData.scoreReve = rolled.score;
|
||||
potionData.reussiteReve = false;
|
||||
if (!rolled.isSuccess) {
|
||||
potionData.rolled = await RdDResolutionTable.roll(this.getReveActuel(), -8);
|
||||
if (potionData.rolled.isEchec) {
|
||||
await this.reveActuelIncDec(-1);
|
||||
let fatigueActuelle = this.getFatigueActuelle();
|
||||
potionData.caseFatigueReel = Math.min(fatigueActuelle, potionData.data.puissance);
|
||||
potionData.guerisonDureeUnite = (potionData.data.reposalchimique) ? "rounds" : "minutes";
|
||||
potionData.guerisonDureeValue = (potionData.data.reposalchimique) ? potionData.caseFatigueReel : potionData.caseFatigueReel * 5;
|
||||
potionData.reussiteReve = true;
|
||||
potionData.aphasiePermanente = false;
|
||||
if (potionData.data.reposalchimique) {
|
||||
let chanceAphasie = await RdDDice.rollTotal("1d100");
|
||||
@ -3900,17 +3881,14 @@ export class RdDActor extends Actor {
|
||||
}
|
||||
await this.santeIncDec("fatigue", -potionData.caseFatigueReel);
|
||||
}
|
||||
ChatMessage.create({
|
||||
whisper: ChatUtility.getWhisperRecipientsAndGMs(game.user.name),
|
||||
content: await renderTemplate(`systems/foundryvtt-reve-de-dragon/templates/chat-appliquer-potion-repos.html`, potionData)
|
||||
});
|
||||
} else {
|
||||
ChatMessage.create({
|
||||
whisper: ChatUtility.getWhisperRecipientsAndGMs(game.user.name),
|
||||
content: await renderTemplate(`systems/foundryvtt-reve-de-dragon/templates/chat-appliquer-potion-repos.html`, potionData)
|
||||
});
|
||||
}
|
||||
if (!potionData.data.magique || potionData.rolled.isSuccess) {
|
||||
this.bonusRepos = potionData.data.herbeBonus;
|
||||
}
|
||||
ChatMessage.create({
|
||||
whisper: ChatUtility.getWhisperRecipientsAndGMs(game.user.name),
|
||||
content: await renderTemplate(`systems/foundryvtt-reve-de-dragon/templates/chat-consommer-potion-repos.html`, potionData)
|
||||
});
|
||||
}
|
||||
/* -------------------------------------------- */
|
||||
dialogFabriquerPotion(herbe) {
|
||||
@ -3938,10 +3916,9 @@ export class RdDActor extends Actor {
|
||||
let newQuantite = herbeData.data.quantite - herbeData.nbBrins;
|
||||
let messageData = {
|
||||
alias: this.name,
|
||||
categorie: herbeData.data.categorie,
|
||||
herbe: herbeData.name,
|
||||
nbBrinsPotion: herbeData.nbBrins,
|
||||
nbBrinsReste: newQuantite
|
||||
nbBrinsReste: newQuantite,
|
||||
potion: newPotion,
|
||||
herbe: herbeData
|
||||
}
|
||||
this.diminuerQuantiteObjet(herbeData._id, herbeData.nbBrins);
|
||||
|
||||
@ -3949,7 +3926,6 @@ export class RdDActor extends Actor {
|
||||
whisper: ChatUtility.getWhisperRecipientsAndGMs(game.user.name),
|
||||
content: await renderTemplate(`systems/foundryvtt-reve-de-dragon/templates/chat-fabriquer-potion-base.html`, messageData)
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
@ -3964,6 +3940,13 @@ export class RdDActor extends Actor {
|
||||
async consommerPotionGenerique(potionData) {
|
||||
potionData.alias = this.name;
|
||||
|
||||
if (potionData.data.magique) {
|
||||
// Gestion de la résistance:
|
||||
potionData.rolled = await RdDResolutionTable.roll(this.getReveActuel(), -8);
|
||||
if (potionData.rolled.isEchec) {
|
||||
await this.reveActuelIncDec(-1);
|
||||
}
|
||||
}
|
||||
ChatMessage.create({
|
||||
whisper: ChatUtility.getWhisperRecipientsAndGMs(game.user.name),
|
||||
content: await renderTemplate(`systems/foundryvtt-reve-de-dragon/templates/chat-consommer-potion-generique.html`, potionData)
|
||||
|
@ -1,22 +0,0 @@
|
||||
<img class="chat-icon" src="systems/foundryvtt-reve-de-dragon/icons/competence_botanique.png" alt="potion de repos" />
|
||||
<h4>
|
||||
{{#if reussiteReve}}
|
||||
{{alias}} a bu la potion et a échoué son Jet de Résistance (Rêve actuel à -8 : {{reveResultDice}}/{{scoreReve}}) : la potion fait effet !
|
||||
{{else}}
|
||||
{{alias}} a bu la potion et a réussi son Jet de Résistance (Rêve actuel à -8 : {{reveResultDice}}/{{scoreReve}}) : la potion ne fait pas effet !
|
||||
{{/if}}
|
||||
</h4>
|
||||
<hr>
|
||||
<div>
|
||||
{{#if reussiteReve}}
|
||||
{{alias}} perd 1 point de rêve (déduit automatiquement) et s'endort pour {{guerisonDureeValue}} {{guerisonDureeUnite}} et
|
||||
se repose de {{caseFatigueReel}} cases de fatigue.<br>
|
||||
{{#if data.reposalchimique}}
|
||||
De plus, étant donné que la potion était alchimique, {{alias}} est en aphasie pendant cette durée.
|
||||
{{#if aphasiePermanente}}
|
||||
Et malheureusement, l'aphasie est permanente tant que {{alias}} ne réussit pas un jet de VOLONTE à 0 à Chateau Dormant (le moral compte).
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
La potion a également été supprimée de l'équipement.
|
||||
</div>
|
@ -1,21 +0,0 @@
|
||||
<img class="chat-icon" src="systems/foundryvtt-reve-de-dragon/icons/competence_botanique.png" alt="potion de soin" />
|
||||
<h4>
|
||||
{{#if reussiteReve}}
|
||||
{{alias}} a bu la potion et a échoué son Jet de Résistance (Rêve actuel à -8 : {{reveResultDice}}/{{scoreReve}}) : la potion fait effet !
|
||||
{{else}}
|
||||
{{alias}} a bu la potion et a réussi son Jet de Résistance (Rêve actuel à -8 : {{reveResultDice}}/{{scoreReve}}) : la potion ne fait pas effet !
|
||||
{{/if}}
|
||||
</h4>
|
||||
<hr>
|
||||
<div>
|
||||
{{#if reussiteReve}}
|
||||
{{alias}} perd 1 point de rêve (déduit automatiquement) et s'endort pour {{guerisonMinutes}} minutes. A son réveil, les blessures suivantes seront guéries :
|
||||
<ul>
|
||||
{{#each guerisonData.list as |guerison key|}}
|
||||
<li>{{guerison}}</li>
|
||||
{{/each}}
|
||||
</ul>
|
||||
<br>
|
||||
{{/if}}
|
||||
La potion a également été supprimée de l'équipement.
|
||||
</div>
|
@ -1,9 +1,18 @@
|
||||
<img class="chat-icon" src="systems/foundryvtt-reve-de-dragon/icons/competence_botanique.png" alt="potion de repos" />
|
||||
<img class="chat-icon" src="{{img}}" alt="potion de repos" />
|
||||
<h4>
|
||||
{{alias}} consomme sa <b>Potion {{#if data.magique}}enchantée{{/if}}</b> de {{name}}.
|
||||
{{alias}} a bu une <strong>{{name}}{{#if data.magique}} enchantée{{/if}}</strong>
|
||||
</h4>
|
||||
<hr>
|
||||
<div>
|
||||
Les effets de la potions sont à gérer manuellement, en fonction de sa nature{{#if data.magique}} et de son enchantement ({{data.pr}} Points de Rêve){{/if}}.
|
||||
{{#if data.magique}}
|
||||
Le Jet de Résistance est {{#if rolled.isSuccess}}réussi{{else}}échoué{{/if}}.
|
||||
{{> "systems/foundryvtt-reve-de-dragon/templates/chat-infojet.html"}}
|
||||
{{/if}}
|
||||
<br>Les effets de la potions sont à gérer manuellement, en fonction de sa nature
|
||||
{{#if data.magique}}
|
||||
{{#if rolled.isEchec}}et de son enchantement ({{data.pr}} Points de Rêve)
|
||||
{{else}}son enchantement n'a pas d'effet
|
||||
{{/if}}
|
||||
{{/if}}.
|
||||
<br>La potion a été supprimée de l'équipement.
|
||||
</div>
|
||||
|
@ -1,13 +1,27 @@
|
||||
<img class="chat-icon" src="systems/foundryvtt-reve-de-dragon/icons/competence_botanique.png" alt="potion de repos" />
|
||||
<img class="chat-icon" src="{{img}}" alt="potion de repos" />
|
||||
<h4>
|
||||
{{alias}} consomme sa <b>Potion de Repos {{#if data.magique}}enchantée{{/if}}</b> de {{name}} ({{data.herbe}}, {{data.herbebrins}} brins).
|
||||
{{alias}} a bu une <strong>{{name}}{{#if data.magique}} enchantée{{/if}}</strong>
|
||||
</h4>
|
||||
<hr>
|
||||
<div>
|
||||
{{#if data.magique}}
|
||||
Elle permet de récupérer jusqu'à {{data.puissance}} cases de repos.
|
||||
{{else}}
|
||||
Une fois consommée vers fin Lyre, elle vous octroie un bonus de {{data.herbebonus}} segments de fatigue récupérés en plus à la fin de Chateau Dormant (à gérer manuellement).
|
||||
<br>La potion a également été supprimée de l'équipement.
|
||||
Le Jet de Résistance est {{#if rolled.isSuccess}}réussi{{else}}échoué{{/if}}.
|
||||
{{> "systems/foundryvtt-reve-de-dragon/templates/chat-infojet.html"}}
|
||||
{{#if rolled.isEchec}}
|
||||
<br>La potion fait effet !
|
||||
{{alias}} a perdu 1 point de rêve et s'endort pour {{guerisonDureeValue}} {{guerisonDureeUnite}} et
|
||||
se récupère {{caseFatigueReel}} cases de fatigue.<br>
|
||||
{{#if data.reposalchimique}}
|
||||
De plus, la potion étant alchimique, {{alias}} est en aphasie pendant cette durée.
|
||||
{{#if aphasiePermanente}}
|
||||
Malheureusement, l'aphasie est permanente tant que {{alias}} ne réussit pas un jet de VOLONTE à 0 à Chateau Dormant (le moral compte).
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
{{else}}
|
||||
<br>La potion ne fait pas effet ! Elle vous octroie tout de même un bonus de {{data.herbebonus}} segments de fatigue récupérés en plus à la fin de Chateau Dormant (à gérer manuellement).
|
||||
{{/if}}
|
||||
{{else}}
|
||||
Une fois consommée (vers fin Lyre), elle vous octroie un bonus de {{data.herbebonus}} segments de fatigue récupérés en plus à la fin de Chateau Dormant (à gérer manuellement).
|
||||
{{/if}}
|
||||
<br>La potion a été supprimée de l'équipement.
|
||||
</div>
|
||||
|
@ -1,13 +1,25 @@
|
||||
<img class="chat-icon" src="systems/foundryvtt-reve-de-dragon/icons/competence_botanique.png" alt="potion de soin" />
|
||||
<img class="chat-icon" src="{{img}}" alt="potion de soin" />
|
||||
<h4>
|
||||
{{alias}} consomme sa <b>Potion de soins {{#if data.magique}}enchantée{{/if}}</b> de {{name}} ({{data.herbe}}, {{data.herbebrins}} brins).
|
||||
{{alias}} a bu une <strong>{{name}}{{#if data.magique}} enchantée{{/if}}</strong>
|
||||
</h4>
|
||||
<hr>
|
||||
<div>
|
||||
{{#if data.magique}}
|
||||
Elle permet de guérir {{data.puissance}} Points de Guérison.
|
||||
Le Jet de Résistance est {{#if rolled.isSuccess}}réussi{{else}}échoué{{/if}}.
|
||||
{{> "systems/foundryvtt-reve-de-dragon/templates/chat-infojet.html"}}
|
||||
{{#if rolled.isEchec}}
|
||||
<br>La potion fait effet!
|
||||
{{alias}} a perdu 1 point de rêve et s'endort pour {{guerisonMinutes}} minutes. A son réveil, les blessures suivantes seront guéries :
|
||||
<ul>
|
||||
{{#each guerisonData.list as |guerison key|}}
|
||||
<li>{{guerison}}</li>
|
||||
{{/each}}
|
||||
</ul>
|
||||
{{else}}
|
||||
<br>La potion ne fait pas effet ! Lors de votre prochain jet de récupération à Chateau Dormant, vous bénéficierez d'un bonus de {{data.herbebonus}} (appliqué automatiquement).
|
||||
{{/if}}
|
||||
{{else}}
|
||||
Lors de votre prochain jet de récupération à Chateau Dormant, vous bénéficierez d'un bonus de {{data.herbebonus}} (appliqué automatiquement).
|
||||
<br>La potion a également été supprimée de l'équipement.
|
||||
{{/if}}
|
||||
<br>La potion a été supprimée de l'équipement.
|
||||
</div>
|
||||
|
@ -1,6 +1,6 @@
|
||||
<img class="chat-icon" src="systems/foundryvtt-reve-de-dragon/icons/competence_botanique.png" alt="fabrication" />
|
||||
<img class="chat-icon" src="{{herbe.img}}" alt="fabrication" />
|
||||
<h4>
|
||||
{{alias}} a fabriqué une potion de {{categorie}} de {{herbe}}, avec {{nbBrinsPotion}} brins.
|
||||
{{alias}} a fabriqué une potion de {{herbe.data.categorie}} de {{herbe.name}}, avec {{herbe.nbBrins}} brins.
|
||||
</h4>
|
||||
<hr>
|
||||
<div>
|
||||
|
Loading…
Reference in New Issue
Block a user