Working card limits
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing

This commit is contained in:
Hamcha 2019-09-11 21:07:06 +02:00
parent 3c85c7985d
commit 80fc16d27b
Signed by: hamcha
GPG key ID: 41467804B19A3315

View file

@ -303,6 +303,17 @@ function sortByColor(a: Card, b: Card) {
return 0; return 0;
} }
function cardLimit(type: string) {
switch (type) {
case "Mane Character":
return 1;
case "Problem":
return 2;
default:
return 3;
}
}
@Component({ @Component({
components: { components: {
DeckList, DeckList,
@ -388,11 +399,17 @@ export default class DeckBuilder extends Vue {
private get currentPage(): CardSlot[] { private get currentPage(): CardSlot[] {
return this.filtered return this.filtered
.slice(this.offset, this.offset + this.itemsPerPage) .slice(this.offset, this.offset + this.itemsPerPage)
.map(card => ({ .map(card => {
const res = this.decklist.find(c => c.data.ID == card.ID);
if (res) {
return res;
}
return {
data: card, data: card,
limit: card.Type == "Problem" ? 2 : 3, limit: cardLimit(card.Type),
howmany: this.decklist.filter(c => c.data.ID == card.ID).length howmany: 0
})); };
});
} }
private elementIconURL(element: string): string { private elementIconURL(element: string): string {
@ -466,7 +483,7 @@ export default class DeckBuilder extends Vue {
} else { } else {
this.decklist.push({ this.decklist.push({
data: card, data: card,
limit: card.Type == "Problem" ? 2 : 3, limit: cardLimit(card.Type),
howmany: 1 howmany: 1
}); });
} }