Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import pygame, sys
- from pygame.locals import *
- pygame.init()
- window = pygame.display.set_mode((800, 600))
- clock = pygame.time.Clock()
- black = (0,0,0)
- white = (255,255,255)
- background = pygame.image.load('grassy.gif')
- turret = pygame.image.load('turret.png').convert_alpha()
- bullet = pygame.image.load('bullet.png').convert_alpha()
- pygame.display.set_caption("Zombie Wave!")
- moveX, moveY = 0,0
- class Bullet(pygame.sprite.Sprite):
- def __init__(self):
- pygame.sprite.Sprite.__init__(self)
- self.image = pygame.image.load("bullet.png")
- self.rect = self.image.get_rect()
- def update(self):
- self.rect.y -= 3
- class Turret:
- def __init__ (self, x, y):
- self.x=x
- self.y=y
- self.i0 = pygame.image.load("turret.png")
- self.i1 = pygame.image.load("turret2.png")
- self.timeTarget = 10
- self.timeNum = 0
- self.currentImage = 0
- self.rect = self.i0.get_rect()
- def update (self):
- self.timeNum+=1
- if (self.timeNum==self.timeTarget):
- if (self.currentImage==0):
- self.currentImage+=1
- else:
- self.currentImage=0
- self.timeNum=0
- self.render()
- def render(self):
- if (self.currentImage==0):
- window.blit(self.i0, (self.x, self.y))
- else:
- window.blit(self.i1, (self.x, self.y))
- player = Turret(380, 480)
- all_sprites_list = pygame.sprite.Group()
- block_list = pygame.sprite.Group()
- bullet_list = pygame.sprite.Group()
- while True:
- for event in pygame.event.get():
- if event.type == QUIT or (event.type == KEYDOWN and event.key == K_ESCAPE):
- sys.exit()
- if (event.type==pygame.KEYDOWN):
- if (event.key==pygame.K_LEFT):
- moveX = -7
- if (event.key==pygame.K_RIGHT):
- moveX = 7
- if (event.key==pygame.K_SPACE):
- bullet = Bullet()
- bullet.rect.x = player.rect.x
- bullet.rect.y = player.rect.y
- all_sprites_list.add(bullet)
- bullet_list.add(bullet)
- if (event.type==pygame.KEYUP):
- if (event.key==pygame.K_LEFT):
- moveX = 0
- if (event.key==pygame.K_RIGHT):
- moveX = 0
- if (event.key==pygame.K_SPACE):
- moveY = 0
- for bullet in bullet_list:
- block_hit_list = pygame.sprite.spritecollide(bullet, block_list, True)
- for block in block_hit_list:
- bullet_list.remove(bullet)
- all_sprites_list.remove(bullet)
- score += 1
- print(score)
- if bullet.rect.y < -10:
- bullet_list.remove(bullet)
- all_sprites_list.remove(bullet)
- window.blit(background, (0,0))
- player.x+=moveX
- player.y+=moveY
- all_sprites_list.update()
- all_sprites_list.draw(window)
- pygame.display.update()
- clock.tick(60)
- pygame.quit()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement