forked from public/foundryvtt-reve-de-dragon
Bug fixe sort
This commit is contained in:
@ -739,7 +739,7 @@ export class RdDActor extends Actor {
|
||||
|
||||
/* -------------------------------------------- */
|
||||
async ajouterSouffle(options = {chat : false}) {
|
||||
let souffle = RdDRollTables.getSouffle();
|
||||
let souffle = await RdDRollTables.getSouffle();
|
||||
await this.createOwnedItem(souffle);
|
||||
if (options.chat){
|
||||
ChatMessage.create({
|
||||
@ -1305,7 +1305,7 @@ export class RdDActor extends Actor {
|
||||
+ " pour " + sort.data.ptreve_reel + " points de Rêve"
|
||||
+ "<br>Depuis la case " + rollData.coord + " (" + TMRUtility.getTMRDescription(rollData.coord).label + ")";
|
||||
|
||||
let depenseReve = sort.data.ptreve_reel;
|
||||
let depenseReve = Number(sort.data.ptreve_reel);
|
||||
let myReve = duplicate(this.data.data.reve.reve);
|
||||
if (rolled.isSuccess) { // Réussite du sort !
|
||||
//sort.ptreve_reel = coutReve;
|
||||
@ -1335,7 +1335,7 @@ export class RdDActor extends Actor {
|
||||
}
|
||||
} else {
|
||||
if (rolled.isETotal) { // Echec total !
|
||||
depenseReve = Math.max(myReve.value, Math.floor(depenseReve * 1.5))
|
||||
depenseReve = Math.min(myReve.value, Math.floor(depenseReve * 1.5));
|
||||
explications += "<br><strong>Echec TOTAL</strong> du sort : " + depenseReve + " Points de Rêve";
|
||||
// TODO: mise en réserve d'un échec total...
|
||||
} else {
|
||||
|
@ -348,7 +348,7 @@ export class RdDTMRDialog extends Dialog {
|
||||
}
|
||||
if (rolled.isPart) {
|
||||
explication += "<br>Vous avez fait une Réussite Particulière";
|
||||
this.actor._appliquerAjoutExperience({ rolled: rolled, seletedCarac: {label: 'reve'}, competence: draconic.name })
|
||||
this.actor._appliquerAjoutExperience({ rolled: rolled, seletedCarac: { label: 'reve'}, competence: draconic.name })
|
||||
msg2MJ += "<br>Et a fait une réussite particulière";
|
||||
}
|
||||
|
||||
@ -372,7 +372,8 @@ export class RdDTMRDialog extends Dialog {
|
||||
if (this.viewOnly) {
|
||||
return;
|
||||
}
|
||||
let sortReserve = this.sortReserves.find(it => it.coord == coordTMR)
|
||||
|
||||
let sortReserve = TMRUtility.getSortReserve( this.sortReserves, coordTMR );
|
||||
if (sortReserve != undefined) {
|
||||
await this.actor.deleteSortReserve(sortReserve.coord);
|
||||
this.updateSortReserve();
|
||||
|
@ -558,6 +558,19 @@ export class TMRUtility {
|
||||
}
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static getSortReserve( reserveList, coordTMR ) {
|
||||
// TODO : Gérer les têtes spéciales réserve!
|
||||
let sortReserve
|
||||
let tmrDescr = this.getTMRDescription(coordTMR);
|
||||
if ( tmrDescr.type == 'fleuve') { // Gestion de la reserve en Fleuve
|
||||
sortReserve = reserveList.find(it => { TMRUtility.getTMRDescription(it.coord).type == 'fleuve' } );
|
||||
} else { // Reserve sur un case "normale"
|
||||
sortReserve = reserveList.find(it => it.coord == coordTMR);
|
||||
}
|
||||
return sortReserve;
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
/** Returns a list of case inside a given distance
|
||||
*
|
||||
|
Reference in New Issue
Block a user