forked from public/foundryvtt-reve-de-dragon
Les services sont inquantifiables
Ne pas décrémenter leur quantité, et leur quantite disponible est undefined (ie: infinie)
This commit is contained in:
@@ -220,7 +220,7 @@ export class RdDBaseActor extends Actor {
|
||||
/* -------------------------------------------- */
|
||||
|
||||
getQuantiteDisponible(item) {
|
||||
return item?.getQuantite();
|
||||
return item?.isService() ? undefined : item?.getQuantite();
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
@@ -310,6 +310,9 @@ export class RdDBaseActor extends Actor {
|
||||
|
||||
|
||||
async decrementerQuantiteItem(item, quantite, options = { supprimerSiZero: true }) {
|
||||
if (itemVendu.isService()) {
|
||||
return;
|
||||
}
|
||||
let resteQuantite = (item.system.quantite ?? 1) - quantite;
|
||||
if (resteQuantite <= 0) {
|
||||
if (options.supprimerSiZero) {
|
||||
|
@@ -2,7 +2,7 @@ import { Misc } from "../misc.js";
|
||||
import { RdDBaseActor } from "./base-actor.js";
|
||||
|
||||
export class RdDCommerce extends RdDBaseActor {
|
||||
|
||||
|
||||
static get defaultIcon() {
|
||||
return "systems/foundryvtt-reve-de-dragon/icons/services/commerce.webp";
|
||||
}
|
||||
@@ -15,16 +15,16 @@ export class RdDCommerce extends RdDBaseActor {
|
||||
}
|
||||
|
||||
canReceive(item) {
|
||||
if (item.isInventaire('all')) {
|
||||
if (item.isInventaire('all')) {
|
||||
return true;
|
||||
}
|
||||
return super.canReceive(item);
|
||||
}
|
||||
|
||||
getQuantiteDisponible(item) {
|
||||
return this.system.illimite ? undefined : item.getQuantite();
|
||||
return this.system.illimite || item.isService() ? undefined : item.getQuantite();
|
||||
}
|
||||
|
||||
|
||||
verifierFortune(cout) {
|
||||
return this.system.illimite || super.verifierFortune(cout);
|
||||
}
|
||||
@@ -43,11 +43,11 @@ export class RdDCommerce extends RdDBaseActor {
|
||||
if (this.system.illimite) {
|
||||
return;
|
||||
}
|
||||
await super.decrementerQuantiteItem(itemVendu, quantite, {supprimerSiZero: false});
|
||||
await super.decrementerQuantiteItem(itemVendu, quantite, { supprimerSiZero: false });
|
||||
}
|
||||
|
||||
calculerPrix(item) {
|
||||
const pourcentage = this.system.pourcentage ?? 100;
|
||||
return Misc.keepDecimals(Math.ceil(item.system.cout * pourcentage)/100, 2);
|
||||
return Misc.keepDecimals(Math.ceil(item.system.cout * pourcentage) / 100, 2);
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user