Zaktualizuj 'field.py'

This commit is contained in:
Cezary Adamczak 2021-05-10 14:36:55 +02:00
parent 53173b9975
commit bc02986bb3

View File

@ -3,41 +3,56 @@ from colors import *
from dimensions import * from dimensions import *
class Field(pygame.sprite.Sprite): class Field(pygame.sprite.Sprite):
def __init__(self, row, column): def __init__(self, row, column, field_type):
super(Field, self).__init__() super(Field, self).__init__()
self.surf = pygame.Surface((WIDTH, HEIGHT)) self.surf = pygame.Surface((WIDTH, HEIGHT))
self.surf.fill(BROWN) self.field_type = field_type
if self.field_type == "soil":
self.moveCost = 3
self.surf.fill(BROWN0)
elif self.field_type == "rocks":
self.moveCost = 5
self.surf.fill(LBROWN)
elif self.field_type == "road":
self.moveCost = 1
self.surf.fill(GREY)
elif self.field_type == "pond":
self.moveCost = 1000
self.surf.fill(BLUE)
self.rect = self.surf.get_rect( self.rect = self.surf.get_rect(
topleft=((MARGIN + WIDTH) * row + MARGIN, (MARGIN + HEIGHT) * column + MARGIN)) topleft=((MARGIN + WIDTH) * row + MARGIN, (MARGIN + HEIGHT) * column + MARGIN))
self.position = [row, column] self.position = [row, column]
self.hydration = 0 self.hydration = 0
self.isRocky = False
self.planted = 0 self.planted = 0
self.ferility = 1 self.ferility = 1
def hydrate(self): def hydrate(self):
if self.hydration <= 3: if self.field_type == "soil" and self.hydration <= 4:
self.hydration += 1 self.hydration += 1
if self.hydration == 0: if self.hydration == 0:
self.surf.fill(BROWN) self.surf.fill(BROWN0)
if self.hydration == 1: if self.hydration == 1:
self.surf.fill(YELLOW) self.surf.fill(BROWN1)
if self.hydration == 2: if self.hydration == 2:
self.surf.fill(GREEN) self.surf.fill(BROWN2)
if self.hydration == 3: if self.hydration == 3:
self.surf.fill(BLUE) self.surf.fill(BROWN3)
if self.hydration == 4:
self.surf.fill(BROWN4)
def dehydrate(self): def dehydrate(self):
if self.hydration > 0: if self.field_type == "soil" and self.hydration > 0:
self.hydration -= 1 self.hydration -= 1
if self.hydration == 0: if self.hydration == 0:
self.surf.fill(BROWN) self.surf.fill(BROWN0)
if self.hydration == 1: if self.hydration == 1:
self.surf.fill(YELLOW) self.surf.fill(BROWN1)
if self.hydration == 2: if self.hydration == 2:
self.surf.fill(GREEN) self.surf.fill(BROWN2)
if self.hydration == 3: if self.hydration == 3:
self.surf.fill(BLUE) self.surf.fill(BROWN3)
if self.hydration == 4:
self.surf.fill(BROWN4)
def free(self): def free(self):
self.planted = 0 self.planted = 0