Advertisement
Guest User

Untitled

a guest
Jan 20th, 2019
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.38 KB | None | 0 0
  1. import pygame
  2. import random
  3. import time
  4. import os
  5. os.environ['SDL_VIDEO_WINDOW_POS'] = "%d, %d" %(0, 20)
  6. pygame.init()
  7.  
  8. SIZE = W, H = 400, 700
  9. screen = pygame.display.set_mode(SIZE)
  10. clock = pygame.time.Clock()
  11.  
  12. # colours
  13. RED = (255, 0, 0)
  14. GREEN = (0, 255, 0)
  15. BLUE = (0, 0, 255)
  16. BACKGROUND = (94, 194, 222)
  17. STRIPE = (60, 160, 190)
  18. LANELINE = (255, 255, 255)
  19.  
  20. x1 = 30
  21. x2 = 330
  22. lane1 = 30
  23. lane2 = 130
  24. lane3 = 230
  25. lane4 = 330
  26. y = 530
  27. width = 40
  28. height = 64
  29.  
  30. toggle1 = 0
  31. toggle2 = 0
  32.  
  33. target_x1 = 30
  34. target_x2 = 330
  35. vel_x = 10
  36.  
  37. def drawScene():
  38.     screen.fill(BACKGROUND)
  39.     pygame.draw.polygon(screen, STRIPE, ((200, 700), (300, 700), (400, 600), (400, 500)))
  40.     pygame.draw.polygon(screen, STRIPE, ((0, 700), (100, 700), (400, 400), (400, 300)))
  41.     pygame.draw.polygon(screen, STRIPE, ((0, 500), (0, 600), (400, 200), (400, 100)))
  42.     pygame.draw.polygon(screen, STRIPE, ((0, 300), (0, 400), (400, 0), (300, 0)))
  43.     pygame.draw.polygon(screen, STRIPE, ((0, 100), (0, 200), (200, 0), (100, 0)))
  44.     pygame.draw.line(screen, LANELINE, (100, 0), (100, 700), 2)
  45.     pygame.draw.line(screen, LANELINE, (200, 0), (200, 700), 4)
  46.     pygame.draw.line(screen, LANELINE, (300, 0), (300, 700), 2)
  47.  
  48.  
  49. mainsheet = pygame.image.load("dolphinSheet.png").convert()
  50. sheetSize = mainsheet.get_size()
  51. horiz_cells = 6
  52. vert_cells = 1
  53. cell_width = int(sheetSize[0] / horiz_cells)
  54. cell_height = int(sheetSize[1] / vert_cells)
  55.  
  56. cellList = []
  57. for vert in range(0, sheetSize[1], cell_height):
  58.     for horz in range(0, sheetSize[0], cell_width):
  59.         surface = pygame.Surface((cell_width, cell_height))
  60.         surface.blit(mainsheet, (0, 0),
  61.                      (horz, vert, cell_width, cell_height))
  62.         colorkey = surface.get_at((0, 0))
  63.         surface.set_colorkey(colorkey)
  64.         cellList.append(surface)
  65.  
  66. cellPosition = 0
  67.  
  68. # main loop
  69.  
  70. while True:
  71.     clock.tick(60)
  72.  
  73.     for event in pygame.event.get():
  74.         if event.type == pygame.QUIT:
  75.             run = False
  76.  
  77.         if event.type == pygame.KEYDOWN:
  78.             if event.key == pygame.K_a:
  79.                 pygame.mixer.music.load('percussiveHit.mp3')
  80.                 pygame.mixer.music.play()
  81.                 toggle1 += 1
  82.                 if toggle1 % 2 == 1:
  83.                     target_x1 += 100
  84.                 else:
  85.                     target_x1 -= 100
  86.             elif event.key == pygame.K_d:
  87.                 pygame.mixer.music.load('percussiveHit.mp3')
  88.                 pygame.mixer.music.play()
  89.                 toggle2 += 1
  90.                 if toggle2 % 2 == 1:
  91.                     target_x2 -= 100
  92.                 else:
  93.                     target_x2 += 100
  94.  
  95.     if x1 < target_x1:
  96.         x1 = min(x1 + vel_x, target_x1)
  97.     else:
  98.         x1 = max(x1 - vel_x, target_x1)
  99.  
  100.     if x2 < target_x2:
  101.         x2 = min(x2 + vel_x, target_x2)
  102.     else:
  103.         x2 = max(x2 - vel_x, target_x2)
  104.  
  105.     if cellPosition < len(cellList) - 1:
  106.         cellPosition += 1
  107.     else:
  108.         cellPosition = 0
  109.  
  110.     drawScene()
  111.     pygame.draw.rect(screen, RED, (x1, y, width, height))
  112.     pygame.draw.rect(screen, RED, (x2, y, width, height))
  113.  
  114.     screen.blit(cellList[cellPosition], (x1 + 4, y - 1))
  115.     screen.blit(cellList[cellPosition], (x2 + 4, y - 1))
  116.     # players
  117.     # screen.blit(playerImg, (x1 + 4, y - 5))
  118.     # screen.blit(playerImg, (x2 + 4, y - 5))
  119.     pygame.display.update()
  120.  
  121. pygame.quit()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement