#42 Tchat message fin

parade, esquive

 inclus deterioration arme de parade
 inclus recul sous le choc
This commit is contained in:
Vincent Vandemeulebrouck
2021-01-02 04:28:43 +01:00
parent cd36331702
commit 0a3f578bf3
19 changed files with 428 additions and 337 deletions

View File

@ -204,6 +204,7 @@ export class RdDActor extends Actor {
getEncombrementTotal() {
return this.encTotal ? Math.floor(this.encTotal) : 0
}
/* -------------------------------------------- */
async deleteSortReserve(sortReserve) {
let reserve = duplicate(this.data.data.reve.reserve);
@ -212,13 +213,18 @@ export class RdDActor extends Actor {
let newTable = [];
for( i=0; i < len; i++) {
if (reserve.list[i].coord != sortReserve.coord && reserve.list[i].sort.name != sortReserve.sort.name )
newTable.push(reserve.list[i]);
newTable.push(reserve.list[i]);
}
if ( newTable.length != len ) {
reserve.list = newTable;
await this.update( {"data.reve.reserve": reserve } );
}
}
/* -------------------------------------------- */
getDiviseurSignificative() {
return this.getSurprise() == 'demi' ? 2 : 1;
}
/* -------------------------------------------- */
getSurprise() {
@ -1512,8 +1518,7 @@ export class RdDActor extends Actor {
this.currentTMR.maximize(); // Re-display TMR
}
// Final chat message
let chatOptions = { content: await RdDResolutionTable.explainRollDataV2(rollData, 'chat-resultat-sort.html') }
ChatUtility.chatWithRollMode(chatOptions, this.name)
await RdDResolutionTable.displayRollData(rollData, this.name, 'chat-resultat-sort.html');
if (myReve.value == 0) { // 0 points de reve
ChatMessage.create({ content: this.name + " est réduit à 0 Points de Rêve, et tombe endormi !" });
@ -1525,7 +1530,7 @@ export class RdDActor extends Actor {
async rollCarac( caracName ) {
let rollData = {
selectedCarac: this.getCaracByName(caracName),
needSignificative : !this.isEntiteCauchemar() && this.data.data.sante.sonne.value
diviseur : this.getDiviseurSignificative()
};
const dialog = await RdDRoll.create(this, rollData,
@ -1535,7 +1540,7 @@ export class RdDActor extends Actor {
label: 'Jet ' + Grammar.apostrophe('de', rollData.selectedCarac.label),
callbacks: [
this.createCallbackExperience(),
{ action: this._rollCaracResult }
{ action: this._onRollCaracResult }
]
}
);
@ -1543,22 +1548,16 @@ export class RdDActor extends Actor {
}
/* -------------------------------------------- */
async _rollCaracResult(rollData) {
rollData.show = {
title: rollData.selectedCarac.label,
points: true
};
async _onRollCaracResult(rollData) {
// Final chat message
let chatOptions = { content: await RdDResolutionTable.explainRollDataV2(rollData) }
ChatUtility.chatWithRollMode(chatOptions, this.name)
await RdDResolutionTable.displayRollData(rollData, this.name);
}
/* -------------------------------------------- */
async rollCompetence( name ) {
let rollData = {
competence: this.getCompetence(name),
needSignificative : !this.isEntiteCauchemar() && this.data.data.sante.sonne.value
diviseur : this.getDiviseurSignificative()
}
if (rollData.competence.type == 'competencecreature') {
@ -1611,7 +1610,7 @@ export class RdDActor extends Actor {
competence.data.defaut_carac = tache.data.carac; // Patch !
let rollData = {
competence: competence,
needSignificative : this.data.data.sante.sonne.value,
diviseur : this.getDiviseurSignificative(),
tache: tache,
diffConditions: tache.data.difficulte,
editLibre: false,
@ -1642,9 +1641,7 @@ export class RdDActor extends Actor {
this.updateEmbeddedEntity( "OwnedItem", rollData.tache);
this.santeIncDec( "fatigue", rollData.tache.data.fatigue);
ChatUtility.chatWithRollMode({
content: await RdDResolutionTable.explainRollDataV2(rollData, 'chat-resultat-tache.html')
}, this.name);
RdDResolutionTable.displayRollData(rollData, this.name, 'chat-resultat-tache.html');
}
/* -------------------------------------------- */
@ -1655,10 +1652,7 @@ export class RdDActor extends Actor {
/* -------------------------------------------- */
async _competenceResult(rollData) {
rollData.show = {points:true};
ChatUtility.chatWithRollMode({
content: await RdDResolutionTable.explainRollDataV2(rollData, 'chat-resultat-competence.html')
}, this.name);
RdDResolutionTable.displayRollData(rollData, this.name, 'chat-resultat-competence.html')
}
/* -------------------------------------------- */
@ -1682,6 +1676,7 @@ export class RdDActor extends Actor {
/* -------------------------------------------- */
async _appelChanceResult(rollData) {
// TODO:
const message = {
user: game.user._id,
alias: this.name,
@ -1693,9 +1688,7 @@ export class RdDActor extends Actor {
}
ChatMessage.create(message);
ChatUtility.chatWithRollMode({
content: await RdDResolutionTable.explainRollDataV2(rollData, 'chat-resultat-appelchance.html')
}, this.name);
RdDResolutionTable.displayRollData(rollData, this.name, 'chat-resultat-appelchance.html')
}
/* -------------------------------------------- */