]> git.armaanb.net Git - lightcards.git/blob - lightcards/deck.py
Reformat using Black
[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
12     def unStar(self):
13         self.starred = False
14
15     def star(self):
16         self.starred = True
17
18     def toggleStar(self):
19         if self.starred:
20             self.starred = False
21         else:
22             self.starred = True
23
24     def getStar(self):
25         return self.starred
26
27     def printStar(self):
28         if self.starred:
29             return "★ Starred ★"
30         else:
31             return "Not starred"
32
33
34 class Status:
35     """The status class keeps track of where in the deck the user is"""
36
37     def __init__(self):
38         self.index = 0
39         self.side = 0
40
41     def forward(self, stack):
42         if not self.index == len(stack):
43             self.index += 1
44
45     def back(self):
46         if not self.index < 1:
47             self.index -= 1
48
49     def flip(self):
50         if self.side == 0:
51             self.side = 1
52         else:
53             self.side = 0
54
55     def setSide(self, inp):
56         self.side = inp
57
58     def setIdx(self, inp):
59         self.index = inp
60
61     def getSide(self):
62         return self.side
63
64     def getIdx(self):
65         return self.index