przyrost1

poprawa growing
This commit is contained in:
Dominik Małyszka 2020-04-07 17:50:34 +00:00
parent c2e1a88895
commit 7304d0b03c

130
plant.py
View File

@ -1,65 +1,65 @@
from abc import abc, abstractmethod from abc import abc, abstractmethod
class Plant: class Plant:
#tworzymy jakas rosline co ma nazwe,i id. ID powiedzmy ze buraki beda mialy 1, marchewki 2 itd. gleby powiedzmy tez damy 4 i beda mialy id 5-8 #tworzymy jakas rosline co ma nazwe,i id. ID powiedzmy ze buraki beda mialy 1, marchewki 2 itd. gleby powiedzmy tez damy 4 i beda mialy id 5-8
def __init__(self, name, ID): def __init__(self, name, ID):
super().__init__() super().__init__()
self._soil = -1 #jak tworzymy rosline to nie bedzie ona miala gleby self._soil = -1 #jak tworzymy rosline to nie bedzie ona miala gleby
self._name = name #to nazwa rosliny będzie np. burak1 self._name = name #to nazwa rosliny będzie np. burak1
self._id = ID #id rosliny buraki bedą mialy 1, i po tym inne obiekty beda rozpoznawac ten obiekt self._id = ID #id rosliny buraki bedą mialy 1, i po tym inne obiekty beda rozpoznawac ten obiekt
self._collect = 0 #nowa roslina jest w 0% dojrzala self._collect = 0 #nowa roslina jest w 0% dojrzala
#to jest jakbysmy usuneli obiekt. zabezpieczenie, zeby gleba pozniej byla wolna #to jest jakbysmy usuneli obiekt. zabezpieczenie, zeby gleba pozniej byla wolna
def __del__(self): def __del__(self):
self.leave_soil() self.leave_soil()
#to sie drukuje jak zapytamy o stworzony obiekt #to sie drukuje jak zapytamy o stworzony obiekt
def __str__(self): def __str__(self):
return 'Plant: %s , Soil: %s , Status: %s' % (self._name, self._soil, self._collect()) return 'Plant: %s , Soil: %s , Status: %s' % (self._name, self._soil, self._collect())
#metoda abstrakcyjna, kazda roslina ma inny czas rosniecia wiec pass #metoda abstrakcyjna, kazda roslina ma inny czas rosniecia wiec pass
@abstractmethod @abstractmethod
def collect(self): def collect(self):
pass pass
@abstractmethod @abstractmethod
def fertillizing(self): def fertillizing(self):
pass pass
@abstractmethod @abstractmethod
def growing(self): def __growing(self):
pass pass
#pobieramy wspolrzedne roslinki #pobieramy wspolrzedne roslinki
def get_coordinates(self): def get_coordinates(self):
if self.have_soil(): if self.have_soil():
a = self.get_soil() a = self.get_soil()
a.get_coordinates(self) #get coordinates jest metoda w glebie a.get_coordinates(self) #get coordinates jest metoda w glebie
#pobieramy id roślinki #pobieramy id roślinki
def get_id(self): def get_id(self):
return self._id return self._id
#dodajemy glebe #dodajemy glebe
def add_soil(self, soil): def add_soil(self, soil):
self._soil = soil self._soil = soil
#zwraca czy roslinka znajduje sie w ziemii obecnie - jak nie ma gleby to znaczy ze nie jest zasadzona jeszcze albo już. #zwraca czy roslinka znajduje sie w ziemii obecnie - jak nie ma gleby to znaczy ze nie jest zasadzona jeszcze albo już.
def have_soil(self): def have_soil(self):
return self._soil is not -1 return self._soil is not -1
#pobieramy jaka ma glebe, gleba tutaj będzie obiektem #pobieramy jaka ma glebe, gleba tutaj będzie obiektem
def get_soil(self): def get_soil(self):
return self._soil return self._soil
#to w przypadku jak bedziemy wyciagac z ziemii roslinke #to w przypadku jak bedziemy wyciagac z ziemii roslinke
def leave_soil(self): def leave_soil(self):
if self.have_soil(): if self.have_soil():
a = self.get_soil() a = self.get_soil()
a.plant_remove() #to bedzie metoda w klasie Soil, bedzie usuwac roslinke z gleby a.plant_remove() #to bedzie metoda w klasie Soil, bedzie usuwac roslinke z gleby
self._soil = -1 self._soil = -1