Spaces:
Sleeping
Sleeping
import pygame | |
import sys | |
from classes.Spritesheet import Spritesheet | |
from classes.GaussianBlur import GaussianBlur | |
class Pause: | |
def __init__(self, screen, entity, dashboard): | |
self.screen = screen | |
self.entity = entity | |
self.dashboard = dashboard | |
self.state = 0 | |
self.spritesheet = Spritesheet("game/supermario/img/title_screen.png") | |
self.pause_srfc = GaussianBlur().filter(self.screen, 0, 0, 640, 480) | |
self.dot = self.spritesheet.image_at( | |
0, 150, 2, colorkey=[255, 0, 220], ignoreTileSize=True | |
) | |
self.gray_dot = self.spritesheet.image_at( | |
20, 150, 2, colorkey=[255, 0, 220], ignoreTileSize=True | |
) | |
def update(self): | |
self.screen.blit(self.pause_srfc, (0, 0)) | |
self.dashboard.drawText("PAUSED", 120, 160, 68) | |
self.dashboard.drawText("CONTINUE", 150, 280, 32) | |
self.dashboard.drawText("BACK TO MENU", 150, 320, 32) | |
self.drawDot() | |
pygame.display.update() | |
self.checkInput() | |
def drawDot(self): | |
if self.state == 0: | |
self.screen.blit(self.dot, (100, 275)) | |
self.screen.blit(self.gray_dot, (100, 315)) | |
elif self.state == 1: | |
self.screen.blit(self.dot, (100, 315)) | |
self.screen.blit(self.gray_dot, (100, 275)) | |
def checkInput(self): | |
events = pygame.event.get() | |
for event in events: | |
if event.type == pygame.QUIT: | |
pygame.quit() | |
sys.exit() | |
if event.type == pygame.KEYDOWN: | |
if event.key == pygame.K_RETURN: | |
if self.state == 0: | |
self.entity.pause = False | |
elif self.state == 1: | |
self.entity.restart = True | |
elif event.key == pygame.K_UP: | |
if self.state > 0: | |
self.state -= 1 | |
elif event.key == pygame.K_DOWN: | |
if self.state < 1: | |
self.state += 1 | |
def createBackgroundBlur(self): | |
self.pause_srfc = GaussianBlur().filter(self.screen, 0, 0, 640, 480) | |