Add the code I forgot to commit for the functional filters
This commit is contained in:
parent
3c412dde32
commit
c716f0dbbd
1 changed files with 16 additions and 10 deletions
|
|
@ -14,7 +14,7 @@ export class PlayerSheetv2 extends GenericActorSheet {
|
||||||
group: `page`,
|
group: `page`,
|
||||||
navSelector: `nav.page`,
|
navSelector: `nav.page`,
|
||||||
contentSelector: `.page-content`,
|
contentSelector: `.page-content`,
|
||||||
initial: `avatar`,
|
initial: `inventory`,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
group: `inventory`,
|
group: `inventory`,
|
||||||
|
|
@ -42,6 +42,12 @@ export class PlayerSheetv2 extends GenericActorSheet {
|
||||||
name: "Default AE",
|
name: "Default AE",
|
||||||
}, { parent: this.actor, renderSheet: true });
|
}, { parent: this.actor, renderSheet: true });
|
||||||
});
|
});
|
||||||
|
html.find(`[data-filter-toggle]`).on(`change`, ($e) => {
|
||||||
|
const target = $e.delegateTarget;
|
||||||
|
const filter = target.dataset.filterToggle;
|
||||||
|
this.toggleItemFilter(filter);
|
||||||
|
this._renderInner();
|
||||||
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
async getData() {
|
async getData() {
|
||||||
|
|
@ -58,6 +64,7 @@ export class PlayerSheetv2 extends GenericActorSheet {
|
||||||
canAddAspect: !await actor.proxyFunction.bind(actor)(`atAspectLimit`),
|
canAddAspect: !await actor.proxyFunction.bind(actor)(`atAspectLimit`),
|
||||||
stats: this.#statData,
|
stats: this.#statData,
|
||||||
itemFilters: this.#itemFilters,
|
itemFilters: this.#itemFilters,
|
||||||
|
noItemTypesVisible: this._itemTypesHidden.size === DOTDUNGEON.itemFilters.length,
|
||||||
capacity: this.#inventoryCapacity,
|
capacity: this.#inventoryCapacity,
|
||||||
};
|
};
|
||||||
console.log(ctx)
|
console.log(ctx)
|
||||||
|
|
@ -111,25 +118,24 @@ export class PlayerSheetv2 extends GenericActorSheet {
|
||||||
return stats;
|
return stats;
|
||||||
};
|
};
|
||||||
|
|
||||||
_itemFiltersActive = new Set();
|
_itemTypesHidden = new Set();
|
||||||
toggleItemFilter(filterName) {
|
toggleItemFilter(filterName) {
|
||||||
if (this._itemFiltersActive.has(filterName)) {
|
if (this._itemTypesHidden.has(filterName)) {
|
||||||
this._itemFiltersActive.delete(filterName);
|
this._itemTypesHidden.delete(filterName);
|
||||||
} else {
|
} else {
|
||||||
this._itemFiltersActive.add(filterName);
|
this._itemTypesHidden.add(filterName);
|
||||||
};
|
};
|
||||||
this.render();
|
this.render();
|
||||||
};
|
};
|
||||||
|
|
||||||
get #itemFilters() {
|
get #itemFilters() {
|
||||||
const types = DOTDUNGEON.itemFilters;
|
const types = DOTDUNGEON.itemFilters;
|
||||||
const filters = [];
|
const filters = {};
|
||||||
for (const type of types) {
|
for (const type of types) {
|
||||||
filters.push({
|
filters[type] = {
|
||||||
label: localizer(`TYPES.Item.${type}`),
|
label: localizer(`TYPES.Item.${type}`),
|
||||||
key: type,
|
active: !this._itemTypesHidden.has(type),
|
||||||
active: this._itemFiltersActive.has(type),
|
};
|
||||||
});
|
|
||||||
};
|
};
|
||||||
return filters;
|
return filters;
|
||||||
};
|
};
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue