This commit is contained in:
TheGiddyLimit
2024-02-01 15:54:34 +00:00
parent a4e391a3e7
commit 7c341dc1a7
54 changed files with 5931 additions and 121 deletions

View File

@@ -20,11 +20,11 @@ class RenderDecks {
}),
};
static getCardTextHtml ({card}) {
static getCardTextHtml ({card, deck = null}) {
const ptText = Renderer.get()
.setFirstSection(true)
.setPartPageExpandCollapseDisabled(true)
.render({name: card.name, entries: Renderer.card.getFullEntries(card)}, 1);
.render({name: card.name, entries: Renderer.card.getFullEntries(card, {backCredit: deck?.back?.credit})}, 1);
Renderer.get().setPartPageExpandCollapseDisabled(false);
return ptText;
}
@@ -45,6 +45,12 @@ class RenderDecks {
.map((card, ixCard) => {
const ptText = this.getCardTextHtml({card});
const $btnMarkDrawn = $(`<button class="btn btn-default btn-xs" title="Mark Card as Drawn"><i class="fas fa-fw fa-cards"></i></button>`)
.click(async evt => {
evt.stopPropagation();
await cardStateManager.pDrawCard(ent, card);
});
const $btnReplace = $(`<button class="btn btn-default btn-xs" title="Return Card to Deck"><i class="fas fa-arrow-rotate-left"></i></button>`)
.click(async evt => {
evt.stopPropagation();
@@ -65,6 +71,7 @@ class RenderDecks {
const $wrpFace = $$`<div class="no-shrink px-1 decks__wrp-card-face relative">
<div class="absolute pt-2 pr-2 decks__wrp-btn-show-card">
<div class="btn-group ve-flex-v-center">
${$btnMarkDrawn}
${$btnReplace}
${$btnViewer}
</div>
@@ -72,12 +79,15 @@ class RenderDecks {
${Renderer.get().setFirstSection(true).render({...card.face, title: card.name, altText: card.name})}
</div>`;
const $imgFace = $wrpFace.find("img");
const title = $imgFace.closest(`[title]`).title();
const propCardDrawn = cardStateManager.getPropCardDrawn({hashDeck, ixCard});
const hkCardDrawn = cardStateManager.addHookBase(propCardDrawn, () => {
const isDrawn = !!cardStateManager.get(propCardDrawn);
$btnMarkDrawn.prop("disabled", isDrawn);
$btnReplace.prop("disabled", !isDrawn);
$wrpFace.toggleClass("decks__wrp-card-face--drawn", isDrawn);
$wrpFace.find("img").title(isDrawn ? `${card.name} (Drawn)` : card.name);
$imgFace.title(isDrawn ? `${title} (Drawn)` : title);
});
fnsCleanup.push(() => cardStateManager.removeHookBase(propCardDrawn, hkCardDrawn));
hkCardDrawn();
@@ -208,7 +218,7 @@ class RenderDecks {
${$wrpCardSway}
</div>`;
const ptText = RenderDecks.getCardTextHtml({card});
const ptText = RenderDecks.getCardTextHtml({card, deck});
const $wrpInfo = $$`<div class="stats stats--book decks-draw__wrp-desc mobile__hidden px-2 ve-text-center mb-4">${ptText}</div>`
.click(evt => evt.stopPropagation());