Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import pygame
- import random
- red = (255,0,0)
- darkRed = (200,0,0)
- orange = (255,165,0)
- gold = (255,215,0)
- darkBlue = (0,0,128)
- blue = (0,0,255)
- class Apples():
- def __init__(self, grid_width, grid_hight, block_size):
- self.grid_width = grid_width
- self.grid_hight = grid_hight
- self.block_size = block_size
- self.appleList = []
- self.apples()
- def apples(self, dmd=False):
- if len(self.appleList) <= 1 or random.randrange(0,2) == 1 or dmd:
- if dmd or len(self.appleList) < 10:
- if random.randrange(0,500) == 1:
- typ = 3
- elif random.randrange(0,30) == 1:
- typ = 2
- else:
- typ = 1
- size = 2
- randAppleX = random.randrange(0, self.grid_width) * self.block_size
- randAppleY = random.randrange(0, self.grid_hight) * self.block_size
- self.appleList.append([randAppleX, randAppleY, typ, size])
- if random.randrange(0,2) == 1 and not dmd:
- self.apples()
- def update(self, disp, snakeX,snakeY):
- typ = 0
- for item in self.appleList:
- if snakeX == item[0] and snakeY == item[1]:
- self.appleList.remove(item)
- self.apples()
- if item[2] == 1:
- typ = 1
- elif item[2] == 2:
- typ = 2
- elif item[2] == 3:
- typ = 3
- loop = 100
- while loop > 0:
- self.apples(True)
- loop -= 1
- if item[3] < self.block_size:
- offSet = (self.block_size - item[3]) / 2
- locX = item[0] + offSet
- locY = item[1] + offSet
- else:
- locX = item[0]
- locY = item[1]
- if item[2] == 1:
- pygame.draw.rect(disp, red, [locX, locY, item[3], item[3]])
- pygame.draw.rect(disp, darkRed, [locX, locY, item[3], item[3]], 1)
- elif item[2] == 2:
- pygame.draw.rect(disp, gold, [locX, locY, item[3], item[3]])
- pygame.draw.rect(disp, orange, [locX, locY, item[3], item[3]], 1)
- elif item[2] == 3:
- pygame.draw.rect(disp, blue, [locX, locY, item[3], item[3]])
- pygame.draw.rect(disp, darkBlue, [locX, locY, item[3], item[3]], 1)
- return typ
- def appleGrow(self):
- for item in self.appleList:
- if item[3] < self.block_size:
- item[3] += 2
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement