]> git.armaanb.net Git - lightcards.git/blobdiff - lightcards/deck.py
Fix pickle implementation
[lightcards.git] / lightcards / deck.py
index 2136ecc589bdc0f843a2db68399b64385e1934b9..110c5b4fdcee15ab50a27c5eca2ea52dfa3a0ee7 100644 (file)
@@ -1,8 +1,28 @@
 # Classes pertaining to the card deck
 # Armaan Bhojwani 2021
 
-class Card(list):
-    starred = False
+
+class Card:
+    """Class containing the card information."""
+
+    def __init__(self, inp):
+        self.starred = False
+        self.side = 0
+        self.front = ""
+        self.back = ""
+        if len(inp) >= 1:
+            self.front = inp[0]
+        if len(inp) >= 2:
+            self.back = inp[1]
+
+    def __str__(self):
+        return f"{self.front}, {self.back}"
+
+    def unStar(self):
+        self.starred = False
+
+    def star(self):
+        self.starred = True
 
     def toggleStar(self):
         if self.starred:
@@ -11,23 +31,28 @@ class Card(list):
             self.starred = True
 
     def getStar(self):
+        return self.starred
+
+    def printStar(self):
         if self.starred:
             return "★ Starred ★"
         else:
             return "Not starred"
 
+    def setSide(self, inp):
+        self.side = inp
 
-class Status():
-    index = 0
-    side = 0
+    def getSide(self):
+        return self.side
 
-    def forward(self, stack):
-        if not self.index == len(stack) - 1:
-            self.index += 1
+    def get(self):
+        if self.side == 0:
+            return self.front
+        else:
+            return self.back
 
-    def back(self):
-        if not self.index < 1:
-            self.index -= 1
+    def getFront(self):
+        return self.front
 
     def flip(self):
         if self.side == 0:
@@ -35,11 +60,23 @@ class Status():
         else:
             self.side = 0
 
-    def setSide(self, inp):
-        self.side = inp
 
-    def getSide(self):
-        return self.side
+class Status:
+    """Keeps track of where in the deck the user is"""
+
+    def __init__(self):
+        self.index = 0
+
+    def forward(self, stack):
+        if self.index != len(stack):
+            self.index += 1
+
+    def back(self):
+        if not self.index < 1:
+            self.index -= 1
+
+    def setIdx(self, inp):
+        self.index = inp
 
     def getIdx(self):
         return self.index