Advertisement
M0n5t3r

Untitled

Apr 24th, 2019
239
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.87 KB | None | 0 0
  1. import pygame
  2. from random import randint
  3. import time
  4. import easingScripts
  5.  
  6. # Initialize the game engine
  7. pygame.init()
  8. # Set the height and width of the screen
  9. width = 1920
  10. height = 1080
  11.  
  12. # Set screen
  13. screen = pygame.display.set_mode((width,height), pygame.FULLSCREEN)
  14. pygame.display.set_caption("Mira")
  15. black = (0, 0, 0)
  16. background = pygame.Surface(screen.get_size())
  17. background.fill(black)
  18.  
  19. # Set sprite
  20. sprite = pygame.image.load("giphy.gif")
  21. sprite_rect = sprite.get_rect()
  22. sprite_rect.centerx = (width//2)
  23. sprite_rect.centery = (height//2)
  24. screen.blit(sprite, sprite_rect)
  25.  
  26. # Set clock
  27. clock = pygame.time.Clock()
  28.  
  29. given_x = 300
  30. given_y = 200
  31. # Loop until the user clicks the close button.
  32. done = False
  33. while not done:
  34.  
  35.     for event in pygame.event.get():   # User did something
  36.         if event.type == pygame.QUIT:  # If user clicked close
  37.             done = True   # Flag that we are done so we exit this loop
  38.  
  39.     # Go ahead and update the screen with what we've drawn.
  40.         clock.tick(30)
  41.     pygame.event.pump()
  42.     # a key has been pressed
  43.     keyinput = pygame.key.get_pressed()
  44.     # press escape key to quit game
  45.     if keyinput[pygame.K_ESCAPE]:
  46.         raise SystemExit
  47.     # optional exit on window corner x click
  48.     for event in pygame.event.get():
  49.         if event.type == pygame.QUIT:
  50.             pygame.quit()
  51.             raise SystemExit
  52.     # check arrow keys
  53.     # move sprite in direction of arrow by 2 pixels
  54.     if keyinput[pygame.K_SPACE]:
  55.         print(sprite_rect.centerx)
  56.         print(sprite_rect.centery)
  57.         given_x = randint(300, 1920-300)
  58.         given_y = randint(200, 1080-200)
  59.         time.sleep(1)
  60.     #########################
  61.     # ANIMATEIONS
  62.     #########################
  63.     while (int(sprite_rect.centerx) != int(given_x)) or (int(sprite_rect.centery) != int(given_y)):
  64.         target_x = float(given_x)  
  65.         target_y = float(given_y)
  66.  
  67.         position_x = float(sprite_rect.centerx)
  68.         position_y = float(sprite_rect.centery)
  69.  
  70.         new_x_pos = [99]
  71.         new_y_pos = [99]
  72.  
  73.         for q in range(0,42):
  74.             p = q + 1
  75.             new_x_pos.append(easingScripts.easeInOutQuint(1, position_x, target_x-position_x, p))
  76.             new_y_pos.append(easingScripts.easeInOutQuint(1, position_y, target_y-position_y, p))
  77.        
  78.         new_x_pos.reverse()
  79.         new_y_pos.reverse()
  80.  
  81.         for v in range(2,42):
  82.             sprite_rect.centerx = new_x_pos[v]
  83.             sprite_rect.centery = new_y_pos[v]
  84.             clock.tick(120)
  85.             pygame.display.flip()
  86.  
  87.     #########################
  88.     # ANIMATION END
  89.     #########################
  90.     screen.blit(background, (0,0))
  91.     screen.blit(sprite, sprite_rect)
  92.     # update display
  93.     pygame.display.flip()
  94.  
  95. # Be IDLE friendly. If you forget this line, the program will 'hang'
  96. # on exit.
  97. pygame.quit()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement