Guest User

Untitled

a guest
Feb 27th, 2022
251
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.07 KB | None | 0 0
  1. import pygame, sys, time
  2. import random
  3. import pygame.locals
  4. #initalize pygame
  5. pygame.init()
  6. fps = 60
  7. framesPerSec = pygame.time.Clock()
  8. SCORE = 0
  9. #colours
  10. BLUE  = (0, 0, 255)
  11. RED   = (255, 0, 0)
  12. GREEN = (0, 255, 0)
  13. BLACK = (0, 0, 0)
  14. WHITE = (255, 255, 255)
  15. #fonts
  16. font = pygame.font.SysFont("Verdana", 60)
  17. font_small = pygame.font.SysFont("Verdana", 20)
  18. game_over = font.render("Game Over", True, BLACK)
  19. scoreMsg = "Your score: {0}".format(SCORE)
  20. show_score = font_small.render(scoreMsg, True, BLACK)
  21.  
  22. SPEED = 5
  23.  
  24.  
  25. #set up screen
  26. screen = pygame.display.set_mode((400,600))
  27. screen.fill(WHITE)
  28. pygame.display.set_caption("Racing Game")
  29.  
  30. #player sprite
  31. class Player(pygame.sprite.Sprite):
  32.   def __init__(self):
  33.     super().__init__()
  34.     self.image = pygame.image.load("Player.png")
  35.     self.rect = self.image.get_rect()
  36.     self.rect.center = (160, 520)
  37.   def move(self):
  38.     SCREENWIDTH = 400
  39.     pressed_keys = pygame.key.get_pressed()
  40.     if self.rect.left > 0:
  41.       if pressed_keys[pygame.K_LEFT]:
  42.         self.rect.move_ip(-10, 0)
  43.     if self.rect.right < SCREENWIDTH:
  44.       if pressed_keys[pygame.K_RIGHT]:
  45.         self.rect.move_ip(10, 0)
  46.   def draw(self, surface):
  47.     surface.blit(self.image, self.rect)    
  48.  
  49.  
  50. #enemy car sprite
  51. class Enemy(pygame.sprite.Sprite):
  52.   def __init__(self):
  53.     SCREENWIDTH = 400
  54.     super().__init__()
  55.     self.image = pygame.image.load("Enemy.png")
  56.     self.rect = self.image.get_rect()
  57.     self.rect.center=(random.randint(40,SCREENWIDTH-40),0)
  58.   def move(self):
  59.     global SCORE
  60.     self.rect.move_ip(0,SPEED)
  61.     if (self.rect.top > 600):
  62.       self.rect.top = 0
  63.       SCORE+=1
  64.       self.rect.center = (random.randint(30, 370), 0)
  65.   def draw(self, surface):
  66.     surface.blit(self.image, self.rect)
  67.  
  68. P1 = Player()
  69. E1 = Enemy()
  70. E2 = Enemy()
  71. background = pygame.image.load("AnimatedStreet.png")
  72. #sprite groups or something
  73. enemies = pygame.sprite.Group()
  74. enemies2 = pygame.sprite.Group()
  75. enemies.add(E1)
  76. all_sprites = pygame.sprite.Group()
  77. all_sprites.add(P1)
  78. all_sprites.add(E1)
  79. inc_speed = pygame.USEREVENT + 1
  80. pygame.time.set_timer(inc_speed, 3000)
  81. #game loop
  82. while True:
  83.   for event in pygame.event.get():  
  84.     if event.type == inc_speed:
  85.       if SCORE < 35:
  86.         SPEED +=1
  87.      
  88.     if event.type == pygame.QUIT:
  89.         pygame.quit()
  90.         sys.exit()
  91.   screen.blit(background,(0,0))
  92.   scores = font_small.render(str(SCORE), True, BLACK)
  93.   screen.blit(scores, (10,10))
  94.   for entity in all_sprites:
  95.     screen.blit(entity.image, entity.rect)
  96.     entity.move()
  97.   if pygame.sprite.spritecollideany(P1, enemies):
  98.     pygame.mixer.Sound('crash.wav').play()
  99.     time.sleep(0.5)
  100.     screen.fill(RED)
  101.     screen.blit(game_over, (30,250))
  102.     screen.blit(show_score, (30, 400))
  103.     print("YOUR SCORE is",SCORE)
  104.     pygame.display.update()
  105.     for entity in all_sprites:
  106.       entity.kill()
  107.     time.sleep(2)
  108.     pygame.quit()
  109.     sys.exit()  
  110.   P1.draw(screen)
  111.   E1.draw(screen)
  112.  
  113.   print(SPEED)
  114.   print(f"score{SCORE}")
  115.   pygame.display.update()
  116.   framesPerSec.tick(fps)
  117.  
Advertisement
Add Comment
Please, Sign In to add comment