Fix: achat multiples rejetés

Il manquait le jsondata et les propriétés lors du remplacement
du message de vente dans le tchat
This commit is contained in:
Vincent Vandemeulebrouck 2021-06-08 00:32:27 +02:00
parent 32c14a8533
commit 0418a8a625
2 changed files with 9 additions and 2 deletions

View File

@ -31,6 +31,7 @@ import { DialogConsommer } from "./dialog-item-consommer.js";
import { DialogFabriquerPotion } from "./dialog-fabriquer-potion.js"; import { DialogFabriquerPotion } from "./dialog-fabriquer-potion.js";
import { RollDataAjustements } from "./rolldata-ajustements.js"; import { RollDataAjustements } from "./rolldata-ajustements.js";
import { DialogItemAchat } from "./dialog-item-achat.js"; import { DialogItemAchat } from "./dialog-item-achat.js";
import { RdDItem } from "./item.js";
/* -------------------------------------------- */ /* -------------------------------------------- */
@ -3586,7 +3587,9 @@ export class RdDActor extends Actor {
ChatUtility.removeChatMessageId(chatMessageIdVente); ChatUtility.removeChatMessageId(chatMessageIdVente);
} }
else { else {
vente["properties"] = new RdDItem(vente.item).getProprietes();
vente.quantiteNbLots -= achat.nombreLots; vente.quantiteNbLots -= achat.nombreLots;
vente.jsondata = JSON.stringify(vente.item);
messageVente.update({ content: await renderTemplate('systems/foundryvtt-reve-de-dragon/templates/chat-vente-item.html', vente) }); messageVente.update({ content: await renderTemplate('systems/foundryvtt-reve-de-dragon/templates/chat-vente-item.html', vente) });
messageVente.render(true); messageVente.render(true);
} }

View File

@ -215,7 +215,7 @@ export class RdDItem extends Item {
} }
async _onProposerVente(venteData) { async _onProposerVente(venteData) {
venteData["properties"] = this[`_${venteData.item.type}ChatData`](); venteData["properties"] = this.getProprietes();
if (venteData.isOwned) { if (venteData.isOwned) {
if (venteData.quantiteNbLots * venteData.tailleLot > venteData.quantiteMax) { if (venteData.quantiteNbLots * venteData.tailleLot > venteData.quantiteMax) {
ui.notifications.warn(`Vous avez ${venteData.quantiteMax} ${venteData.item.name}, ce n'est pas suffisant pour vendre ${venteData.quantiteNbLots} de ${venteData.tailleLot}`) ui.notifications.warn(`Vous avez ${venteData.quantiteMax} ${venteData.item.name}, ce n'est pas suffisant pour vendre ${venteData.quantiteNbLots} de ${venteData.tailleLot}`)
@ -229,11 +229,15 @@ export class RdDItem extends Item {
ChatMessage.create(RdDUtility.chatDataSetup(html)); ChatMessage.create(RdDUtility.chatDataSetup(html));
} }
getProprietes() {
return this[`_${Misc.data(this).type}ChatData`]();
}
/* -------------------------------------------- */ /* -------------------------------------------- */
async postItem() { async postItem() {
console.log(this); console.log(this);
let chatData = duplicate(Misc.data(this)); let chatData = duplicate(Misc.data(this));
const properties = this[`_${chatData.type}ChatData`](); const properties = this.getProprietes();
chatData["properties"] = properties chatData["properties"] = properties
if (this.actor) { if (this.actor) {
chatData.actor = { id: this.actor.id }; chatData.actor = { id: this.actor.id };