Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import pygame, random, sys, time
- from pygame.locals import *
- from MyLibrary import *
- global screen, timer
- pygame.init()
- screen = pygame.display.set_mode((640,480))
- pygame.display.set_caption("Coins!")
- timer = pygame.time.Clock()
- nncoin = False
- class Coin(MySprite):
- def off_screen_check(self):
- if self.Y > 480:
- pygame.kill(self)
- #create groups
- coin_group = pygame.sprite.Group()
- pointer_group = pygame.sprite.Group()
- collected_group = pygame.sprite.Group()
- pointer = MySprite()
- pointer.load("pointer.png", 32, 32, 1)
- pointer_group.add(pointer)
- def create_coins(n):
- n = int(n)
- for i in range(n):
- coin = Coin()
- coin.load("coin1.png", 32, 32, 1)
- coin.position = random.randint(0,640),-64
- coin_group.add(coin)
- def create_newcoin():
- bcoin = Coin()
- bcoin.load("coin1s.png", 32, 32, 1)
- bcoin.position = 0,0
- collected_group.add(bcoin)
- def move_pointer():
- pointer_group.update(ticks, 15)
- for pointer in pointer_group:
- x,y = pygame.mouse.get_pos()
- pointer.position = x,y
- def move_coins():
- coin_group.update(ticks, 30)
- for coin in coin_group:
- if coin.Y > 480:
- coin.velocity = Point(0,0)
- coin.kill()
- else:
- coin.velocity = Point(0,1)
- coin.Y += coin.velocity.y
- collected_group.update(ticks, 30)
- for coin in collected_group:
- if coin.Y > 480:
- coin.velocity = Point(0,0)
- coin.kill()
- else:
- coin.velocity = Point(0,1)
- coin.Y += coin.velocity.y
- def check_collision():
- for coin in coin_group:
- if pygame.sprite.collide_rect(coin, pointer):
- create_newcoin()
- ##coin_group.remove(coin)
- #main program begins
- game_over = False
- last_time = 0
- pygame.mouse.set_visible(False)
- #repeating loop
- while True:
- timer.tick(30)
- ticks = pygame.time.get_ticks()
- #check keypresses
- for event in pygame.event.get():
- if event.type == QUIT:
- sys.exit("Exit")
- keys = pygame.key.get_pressed()
- if keys[K_ESCAPE]:
- sys.exit("Exit")
- if ticks > last_time + 1000:
- create_coins(1)
- last_time = ticks
- screen.fill((0,0,0))
- if not game_over:
- move_coins()
- move_pointer()
- if pygame.sprite.spritecollideany(pointer, coin_group):
- print_text(pygame.font.Font(None,16), 0, 0, "Collision!")
- check_collision()
- coin_group.draw(screen)
- collected_group.draw(screen)
- pointer_group.draw(screen)
- pygame.display.update()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement