forked from public/foundryvtt-reve-de-dragon
#42 Tchat message fin
parade, esquive inclus deterioration arme de parade inclus recul sous le choc
This commit is contained in:
@ -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')
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
|
Reference in New Issue
Block a user