Tweak the embedded item updating method to make it retrieve the value correctly
This commit is contained in:
parent
6700c8c1fb
commit
9a61b9f127
2 changed files with 13 additions and 12 deletions
|
|
@ -31,8 +31,19 @@ export class ActorHandler extends Actor {
|
||||||
};
|
};
|
||||||
|
|
||||||
async genericEmbeddedUpdate($event) {
|
async genericEmbeddedUpdate($event) {
|
||||||
if (!this.fn?.genericEmbeddedUpdate) return;
|
if (this.fn?.genericEmbeddedUpdate) {
|
||||||
this.fn.genericEmbeddedUpdate.bind(this)($event);
|
return this.fn.genericEmbeddedUpdate.bind(this)($event);
|
||||||
|
};
|
||||||
|
const target = $event.delegateTarget;
|
||||||
|
const data = target.dataset;
|
||||||
|
const item = await fromUuid(data.embeddedId);
|
||||||
|
|
||||||
|
let value = target.value;
|
||||||
|
switch (target.type) {
|
||||||
|
case "checkbox": value = target.checked; break;
|
||||||
|
};
|
||||||
|
|
||||||
|
await item?.update({ [data.embeddedUpdate]: value });
|
||||||
};
|
};
|
||||||
|
|
||||||
async genericEmbeddedDelete($event) {
|
async genericEmbeddedDelete($event) {
|
||||||
|
|
|
||||||
|
|
@ -1,13 +1,5 @@
|
||||||
import { ItemHandler } from "../Item/Handler.mjs";
|
import { ItemHandler } from "../Item/Handler.mjs";
|
||||||
|
|
||||||
/** @this {Actor} */
|
|
||||||
async function genericEmbeddedUpdate($event) {
|
|
||||||
let data = $event.delegateTarget.dataset;
|
|
||||||
let item = await fromUuid(data.embeddedId);
|
|
||||||
item?.update({ [data.embeddedUpdate]: $event.target.value });
|
|
||||||
this.sheet.render();
|
|
||||||
};
|
|
||||||
|
|
||||||
/** @this {Actor} */
|
/** @this {Actor} */
|
||||||
async function genericEmbeddedDelete($event) {
|
async function genericEmbeddedDelete($event) {
|
||||||
let data = $event.currentTarget.dataset;
|
let data = $event.currentTarget.dataset;
|
||||||
|
|
@ -73,7 +65,6 @@ async function createCustomSpell() {
|
||||||
/** @this {Actor} */
|
/** @this {Actor} */
|
||||||
async function atAspectLimit() {
|
async function atAspectLimit() {
|
||||||
let limit = game.settings.get(`dotdungeon`, `aspectLimit`);
|
let limit = game.settings.get(`dotdungeon`, `aspectLimit`);
|
||||||
console.log(this.itemTypes.aspect.length, `>=`, limit, `-->`, this.itemTypes.aspect.length >= limit)
|
|
||||||
return this.itemTypes.aspect.length >= limit;
|
return this.itemTypes.aspect.length >= limit;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -100,6 +91,5 @@ export default {
|
||||||
createCustomAspect,
|
createCustomAspect,
|
||||||
createCustomSpell,
|
createCustomSpell,
|
||||||
genericEmbeddedDelete,
|
genericEmbeddedDelete,
|
||||||
genericEmbeddedUpdate,
|
|
||||||
preAspectEmbed,
|
preAspectEmbed,
|
||||||
};
|
};
|
||||||
Loading…
Add table
Add a link
Reference in a new issue