import pygame, random, sys, time from pygame.locals import * #set up some variables WINDOWWIDTH = 600 WINDOWHEIGHT = 400 window = pygame.display.set_mode((600,400)) TEXTCOLOR = (255, 0, 0) BLACK = (0,0,0) BLUE = (0, 0, 255) RED = (255, 0, 0) playerImage = pygame.image.load('Player.png') playerRect = playerImage.get_rect() moveX,moveY=0,0 mainClock = pygame.time.Clock() class Sprite: def __init__(self,x,y): self.x=x self.y=y self.image=playerImage self.rect=playerRect surface=pygame.get_rect() def render(self): pygame.draw.rect(window,white,(self.x,self.y,self.width,self.height)) def terminate(): pygame.quit() sys.exit() def waitForPlayerToPressKey(): while True: for event in pygame.event.get(): if event.type == QUIT: terminate() if event.type == KEYDOWN: if event.key == K_ESCAPE: # pressing escape quits terminate() if event.key == K_RETURN: return if event.key == ord('q'): return def drawText(text, font, surface, x, y): textobj = font.render(text, 1, TEXTCOLOR) textrect = textobj.get_rect() textrect.topleft = (x, y) surface.blit(textobj, textrect) player = Sprite # set up pygame, the window, and the mouse cursor pygame.init() windowSurface = pygame.display.set_mode((WINDOWWIDTH, WINDOWHEIGHT)) pygame.display.set_caption('ESCAPE') pygame.mouse.set_visible(True) # set up fonts font = pygame.font.SysFont(None, 48) # set up images backgroundImage = pygame.image.load('background1.png') rescaledBackground = pygame.transform.scale(backgroundImage, (WINDOWWIDTH, WINDOWHEIGHT)) # show the "Start" screen windowSurface.blit(rescaledBackground, (0, 0)) drawText(' Welcome to ESCAPE', font, windowSurface, (WINDOWWIDTH / 2) - 105, (WINDOWHEIGHT / 3)) drawText('Press Enter to start', font, windowSurface, (WINDOWWIDTH / 2) - 135, (WINDOWHEIGHT / 3) + 50) pygame.display.update() waitForPlayerToPressKey() while True: # set up start of game moveLeft = moveRight =False moveUp = moveDown = False while True: # the game loop runs while the game part is playing for event in pygame.event.get(): if event.type == QUIT: terminate() if event.type == KEYDOWN: if event.key == K_LEFT or event.key == ord('a'): moveRight = False moveLeft = True moveX=-5 if event.key == K_RIGHT or event.key == ord('d'): moveLeft = False moveRight = True moveX=5 if event.key == K_UP or event.key == ord('w'): moveUp = True moveDown = False moveY=-5 if event.key == K_DOWN or event.key == ord('s'): moveUp = False moveDown = True moveY=5 if event.type == KEYUP: if event.key == K_ESCAPE: terminate() if event.key == K_LEFT or event.key == ord('a'): moveLeft = False moveX=0 if event.key == K_RIGHT or event.key == ord('d'): moveRight = False moveX=0 if event.key == K_DOWN or event.key == ord('s'): moveDown = False moveY=0 if event.key == K_UP or event.key == ord('w'): moveUp = False moveY=0 # Move the player around. player.x += moveX player.y += moveY # Draw the game world on the window. windowSurface.blit(rescaledBackground, (0, 0)) # Draw the game world on the window. windowSurface.blit(rescaledBackground, (0, 0)) # Draw the player's rectangle, rails windowSurface.blit(playerImage,playerRect, (x,y,50,50)) # update the display pygame.display.update() pygame.display.flip() mainClock.tick(50)