]> git.armaanb.net Git - lightcards.git/blob - lightcards/deck.py
2a612027ad00d5d7c61fc3b02d9c7d22e14e4b6d
[lightcards.git] / lightcards / deck.py
1 # Classes pertaining to the card deck
2 # Armaan Bhojwani 2021
3
4
5 class Card(list):
6     """Card extends the list class, and adds ability to star them."""
7
8     def __init__(self, inp):
9         super().__init__(inp)
10         self.starred = False
11         self.side = 0
12
13     def unStar(self):
14         self.starred = False
15
16     def star(self):
17         self.starred = True
18
19     def toggleStar(self):
20         if self.starred:
21             self.starred = False
22         else:
23             self.starred = True
24
25     def getStar(self):
26         return self.starred
27
28     def printStar(self):
29         if self.starred:
30             return "★ Starred ★"
31         else:
32             return "Not starred"
33
34     def setSide(self, inp):
35         self.side = inp
36
37     def getSide(self):
38         return self.side
39
40     def flip(self):
41         if self.side == 0:
42             self.side = 1
43         else:
44             self.side = 0
45
46
47 class Status:
48     """The status class keeps track of where in the deck the user is"""
49
50     def __init__(self):
51         self.index = 0
52
53     def forward(self, stack):
54         if not self.index == len(stack):
55             self.index += 1
56
57     def back(self):
58         if not self.index < 1:
59             self.index -= 1
60
61     def setIdx(self, inp):
62         self.index = inp
63
64     def getIdx(self):
65         return self.index