Fix: vente depuis un commerce

La quantité proposée est limitée à la quantité disponible
ou illimité si le commerce est illimité
This commit is contained in:
2023-01-03 23:46:08 +01:00
parent 39d14c8496
commit 8e0825b6b9
3 changed files with 18 additions and 11 deletions

View File

@ -4,7 +4,7 @@ export class DialogItemVente extends Dialog {
static async display({ item, callback, quantiteMax = undefined }) {
const quantite = quantiteMax ?? item.getQuantite() ?? 1;
const isOwned = item.isOwned;
const isOwned = item.parent;
const venteData = {
item: item,
alias: item.actor?.name ?? game.user.name,
@ -16,7 +16,7 @@ export class DialogItemVente extends Dialog {
quantiteNbLots: quantite,
quantiteMaxLots: quantite,
quantiteMax: quantite,
quantiteIllimite: !isOwned || quantiteMax == undefined,
quantiteIllimite: item.isItemCommerce() ? quantiteMax == undefined : !isOwned,
isOwned: isOwned,
};
const html = await renderTemplate(`systems/foundryvtt-reve-de-dragon/templates/dialog-item-vente.html`, venteData);
@ -41,8 +41,7 @@ export class DialogItemVente extends Dialog {
activateListeners(html) {
super.activateListeners(html);
this.html = html;
HtmlUtility._showControlWhen(this.html.find(".quantiteNbLots"), !this.venteData.quantiteIllimite)
this.setQuantiteIllimite(this.venteData.quantiteIllimite);
this.html.find(".tailleLot").change(event => this.setTailleLot(Number(event.currentTarget.value)));
this.html.find(".quantiteNbLots").change(event => this.setNbLots(Number(event.currentTarget.value)));
this.html.find(".quantiteIllimite").change(event => this.setQuantiteIllimite(event.currentTarget.checked));