Prześlij pliki do ''

This commit is contained in:
Yevheniia Kryzhanovska 2023-04-10 19:41:56 +02:00
parent 477d5b0ead
commit 078ce5ac80
5 changed files with 206 additions and 0 deletions

29
Bee.py Normal file
View File

@ -0,0 +1,29 @@
import pygame
import Flower
class Bee:
# typeOfBee = None
# genotype = None
# favFloweColor = None
# biome = None
# product = None
def __init__(self, typeOfBee, genotype, biome, product, favFlowerColor = Flower.Flower.color):
# self.x = 64
# self.y = 64
# self.xChange = 0
# self.yChange = 0
# self.height = 64
# self.width = 64
# self.beeImg = pygame.image.load("spritesNtiles/bee64.png")
self.typeOfBee = typeOfBee
self.genotype = genotype
self.favFlowerColor = favFlowerColor
self.biome = biome
self.product = product
self.amountOfPollinatedFlowers = 0
self.favFlowerColor = favFlowerColor
self.amountOfPollinatedFlowers = 0

14
Beehive.py Normal file
View File

@ -0,0 +1,14 @@
import Frames
import Bee
class Beehive:
bees = []
coordinate = None
frames = [] #Frames
outputSlots = None #?
def __init__(self, bees, coordinate, frames, outputSlots):
self.bees = bees
self.coordinate = coordinate
self.frames = frames
self.outputSlots = outputSlots

15
Flower.py Normal file
View File

@ -0,0 +1,15 @@
import random
class PossibleFlower:
color = ['red', 'blue', 'yellow', 'white', 'pink']
name = ['tulip', 'sunflower', 'rose', 'dandelion', 'daisy']
class Flower:
color = None
name = None
coordinates = []
def __init__(self, coordinates, color = PossibleFlower.color[random.randint(0, 4)], name = PossibleFlower.name[random.randint(0, 4)]):
self.color = color
self.name = name
self.coordinates = coordinates

7
Frames.py Normal file
View File

@ -0,0 +1,7 @@
class Frames:
# name = None
# productivity = None
def __init__(self, name, productivity):
self.name = name
self.productivity = productivity

141
main.py Normal file
View File

@ -0,0 +1,141 @@
import pygame
import Flower
import Beehive
import Frames
white = (255, 255, 255)
#setting caption and icon
pygame.display.set_caption('Smart Bee')
setIcon = pygame.image.load('spritesNtiles/bee64.png')
pygame.display.set_icon(setIcon)
#
###
########################################
#SHORT = pygame.image.load('spritesNtiles/shortGrass64.png') #0
#TALL = pygame.image.load('spritesNtiles/tallGrass64.png') #1
#TREE = pygame.image.load('spritesNtiles/dirtTree64.png') #10
### tilemap
SHORT = 0
TALL = 1
TREE = 10
BEE = pygame.image.load('spritesNtiles/bee64.png')
tiles = {
SHORT: pygame.image.load('spritesNtiles/shortGrass64.png'),
TALL: pygame.image.load('spritesNtiles/tallGrass64.png'),
TREE: pygame.image.load('spritesNtiles/dirtTree64.png')
}
tilemap = [
[SHORT, SHORT, SHORT, TREE, SHORT, TALL, TALL, SHORT, SHORT, TREE, SHORT, SHORT, TALL, SHORT, SHORT],
[SHORT, SHORT, SHORT, TALL, TALL, SHORT, SHORT, TREE, SHORT, SHORT, SHORT, SHORT, SHORT, SHORT, SHORT],
[SHORT, SHORT, SHORT, SHORT, TALL, SHORT, SHORT, SHORT, SHORT, SHORT, SHORT, SHORT, TALL, SHORT, SHORT],
[TALL, TREE, SHORT, SHORT, SHORT, TREE, SHORT, SHORT, SHORT, SHORT, SHORT, TALL, SHORT, SHORT, TREE],
[SHORT, SHORT, SHORT, SHORT, SHORT, SHORT, SHORT, TREE, SHORT, TREE, SHORT, SHORT, SHORT, SHORT, SHORT],
[SHORT, SHORT, SHORT, SHORT, TALL, SHORT, SHORT, SHORT, SHORT, TALL, SHORT, SHORT, SHORT, SHORT, TALL],
[SHORT, SHORT, TALL, SHORT, SHORT, SHORT, SHORT, SHORT, TREE, SHORT, SHORT, TREE, SHORT, SHORT, SHORT],
[SHORT, TREE, SHORT, TREE, SHORT, SHORT, SHORT, SHORT, TALL, TALL, SHORT, SHORT, SHORT, TALL, SHORT],
[SHORT, SHORT, SHORT, SHORT, TALL, SHORT, SHORT, SHORT, SHORT, TREE, SHORT, SHORT, SHORT, SHORT, SHORT],
[TALL, SHORT, SHORT, SHORT, SHORT, SHORT, TREE, SHORT, SHORT, SHORT, SHORT, SHORT, SHORT, SHORT, TALL],
[SHORT, SHORT, SHORT, SHORT, SHORT, TREE, SHORT, SHORT, SHORT, TALL, SHORT, SHORT, SHORT, SHORT, SHORT],
[SHORT, SHORT, SHORT, SHORT, TALL, SHORT, SHORT, SHORT, SHORT, SHORT, SHORT, SHORT, TALL, SHORT, SHORT],
]
tilemapSizeY = 12
tilemapSizeX = 15
tileSize = 64
###
#calculate the window size
disX = tilemapSizeX * tileSize
disY = tilemapSizeY * tileSize
# tilemap = [
# [0, 0, 0, 10, 0, 1, 1, 0, 0, 10],
# [0, 0, 0, 1, 1, 0, 0, 10, 0, 0],
# [0, 0, 0, 0, 1, 0, 0, 0, 0, 0],
# [1, 10, 0, 0, 0, 10, 0, 0, 0, 0],
# [0, 0, 0, 0, 0, 0, 0, 10, 0, 10],
# [0, 0, 0, 0, 1, 0, 0, 0, 0, 1],
# [0, 0, 1, 0, 0, 0, 0, 0, 10, 0],
# [0, 10, 0, 10, 0, 0, 0, 0, 1, 1],
# [0, 0, 0, 0, 1, 0, 0, 0, 0, 10],
# [1, 0, 0, 0, 0, 0, 10, 0, 0, 0]
# ]
pygame.init()
dis = pygame.display.set_mode((disX, disY))
clock = pygame.time.Clock()
#position of the bee and pos changings
XChanges = 0
XPosBee = 64
YChanges = 0
YPosBee = 64
while True:
for event in pygame.event.get():
#check to quit
if (event.type == pygame.QUIT) or (event.type == pygame.KEYDOWN and event.key == pygame.K_ESCAPE):
# game_over = True
pygame.quit()
quit()
#printing map
for i in range(len(tilemap)):
for j in range(len(tilemap[i])):
dis.blit(tiles[tilemap[i][j]], (j * tileSize, i * tileSize))
#movement speed
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_UP:
XChanges = 0
YChanges = -16
if event.key == pygame.K_DOWN:
XChanges = 0
YChanges = 16
if event.key == pygame.K_LEFT:
XChanges = -16
YChanges = 0
if event.key == pygame.K_RIGHT:
XChanges = 16
YChanges = 0
#stopmovement when a key is up
if event.type == pygame.KEYUP:
XChanges = 0
YChanges = 0
#calculating position of the bee
if disX >= XPosBee >= 0:
XPosBee = XPosBee + XChanges
if disY >= YPosBee >= 0:
YPosBee = YPosBee + YChanges
#left and up restriction
if XPosBee <= 0:
XPosBee = 0
elif XPosBee >= disX:
XPosBee = disX
elif YPosBee <= 0:
YPosBee = 0
elif YPosBee >= disY:
YPosBee = disY
#beatiful bee
dis.blit(BEE, (XPosBee, YPosBee))
#updating
# pygame.display.flip()
pygame.display.update()
clock.tick(10000)