]> bicyclesonthemoon.info Git - ott/molpy-up/commitdiff
Fixed mustard with left-facing molpy, intrduced Waiting For It after T** E**
authorPeter Gerwinski <peter.gerwinski@hs-bochum.de>
Wed, 28 Mar 2018 21:03:33 +0000 (23:03 +0200)
committerPeter Gerwinski <peter.gerwinski@hs-bochum.de>
Wed, 28 Mar 2018 21:03:33 +0000 (23:03 +0200)
assets/playerLeftDown.png
molpyup.py

index ea884f07a16d1093ae98c12fe52672562f4ed6f1..7b116b83de177cc3b098ad3a3665d45748571295 100644 (file)
Binary files a/assets/playerLeftDown.png and b/assets/playerLeftDown.png differ
index a154f91b3497e4f05682eeea366bd8ab8de1e1ce..8b8d59e0779e341e81b2e0aa6d19397a41d6178b 100644 (file)
@@ -185,7 +185,37 @@ class MolpyUp:
         for x in range(80):
             pygame.draw.line(self.screen, (222,222,222), (x * 12, 0), (x * 12, self.sy))
             pygame.draw.line(self.screen, (222,222,222), (0, x * 12), (self.sx, x * 12))
-    
+
+    def showScore(self):
+        line1 = self.font.render("Press ENTER to restart,", -1, (0, 0, 0))
+        line2 = self.font.render("ESC to quit.", -1, (0, 0, 0))
+        w = max(line1.get_width(), line2.get_width())
+        h = line1.get_height() + line2.get_height()
+        dx = 10
+        dy = 5
+        pygame.draw.rect(self.screen, (255,255,255), ((self.sx - w) // 2 - dx, (self.sy - h) // 2 - dy, w + 2 * dx, h + 2 * dy))
+        pygame.draw.rect(self.screen, (0,0,0), ((self.sx - w) // 2 - dx, (self.sy - h) // 2 - dy, w + 2 * dx, h + 2 * dy), 3)
+        self.screen.blit(line1, ((self.sx - line1.get_width()) // 2, self.sy // 2 - line1.get_height()))
+        self.screen.blit(line2, ((self.sx - line2.get_width()) // 2, self.sy // 2))
+        pygame.display.flip() 
+        waitForIt = True
+        while waitForIt:
+            pygame.event.get()
+            key = pygame.key.get_pressed()
+            if key[K_RETURN]:
+                waitForIt = False
+            elif key[K_ESCAPE]:
+                sys.exit()
+
+    def reset(self):
+        self.cameray = 0
+        self.score = 0
+        self.accelerators = []
+        self.playerx = self.sx // 2
+        self.playery = self.sy * 3 // 4
+        self.platforms = [[self.playerx, self.playery + self.sy // 6, 0, 0]]
+        self.generatePlatforms()
+
     def run(self):
         clock = pygame.time.Clock()
         self.generatePlatforms()
@@ -195,19 +225,14 @@ class MolpyUp:
             for event in pygame.event.get():
                 if event.type == QUIT:
                     sys.exit()
-            if self.playery - self.cameray > self.sy * 7 // 6:
-                self.cameray = 0
-                self.score = 0
-                self.accelerators = []
-                self.playerx = self.sx // 2
-                self.playery = self.sy * 3 // 4
-                self.platforms = [[self.playerx, self.playery + self.sy // 6, 0, 0]]
-                self.generatePlatforms()
             self.drawGrid()
             self.drawPlatforms()
             self.updatePlayer()
             self.updatePlatforms()
             self.screen.blit(self.font.render(str(self.score), -1, (0, 0, 0)), (self.sx // 32, self.sy // 24))
+            if self.playery - self.cameray > self.sy * 7 // 6:
+                self.showScore()
+                self.reset()
             pygame.display.flip()