Add member_quantity attribute to purchased ninja cards

This value is increased if the card was purchased in-game via any member-only purchase method.
This commit is contained in:
Ben
2020-02-14 21:49:37 +00:00
parent a95b237292
commit ef421dc957
3 changed files with 6 additions and 2 deletions

View File

@@ -22,6 +22,7 @@ class PenguinCard(db.Model):
card_id = db.Column(db.ForeignKey('card.id', ondelete='CASCADE', onupdate='CASCADE'), primary_key=True,
nullable=False)
quantity = db.Column(db.SmallInteger, nullable=False, server_default=db.text("1"))
member_quantity = db.Column(db.SmallInteger, nullable=False, server_default=db.text("0"))
class CardCollection(AbstractDataCollection):

View File

@@ -175,12 +175,13 @@ class Penguin(Spheniscidae, penguin.Penguin):
return True
async def add_card(self, card, quantity=1):
async def add_card(self, card, quantity=1, member_quantity=0):
if card.id in self.cards:
penguin_card = self.cards[card.id]
await penguin_card.update(
quantity=penguin_card.quantity + quantity).apply()
quantity=penguin_card.quantity + quantity,
member_quantity=member_quantity).apply()
else:
await self.cards.insert(card_id=card.id)