AI_PROJECT/Stan.py

67 lines
2.1 KiB
Python

import Akcja
import random
class Stan:
nawodnienie = None #[int] 0-100 (0-60: trzeba podlać), spada w zaleznosci od rosliny: aktualizowane bedzie "w tle"
zyznosc = None #[int] 0-100 (0-60: trzeba użyźnić), spada w zaleznosci od rosliny: aktualizowane bedzie "w tle"
wzrost = None #[int] 0-100 (75-100: scinanie), wzrasta w zaleznosci od rosliny: aktualizowane bedzie "w tle"
choroba = None #[int] brak-0,choroba-1
akcja = None #[Akcja]
koszt = None #[int] 0-15, im więcej tym trudniej wjechać
def __init__(self, nawodnienie, zyznosc, wzrost, choroba):
self.nawodnienie = nawodnienie
self.zyznosc = zyznosc
self.wzrost = wzrost
self.choroba = choroba
def __init__(self):
self.nawodnienie=0
def set_random(self):
self.nawodnienie=random.randint(0,100)
self.zyznosc=random.randint(0,100)
self.wzrost=random.randint(0,100)
self.choroba=random.randint(0,1)
def checkStan(self):
# sprawdza stan rośliny i podejmuje akcje jeśli potrzebna
if self.nawodnienie <= 60:
self.akcja = Akcja.Akcja("nawodnienie")
return
elif self.zyznosc <= 60:
self.akcja = Akcja.Akcja("zyznosc")
return
elif self.wzrost >= 75:
self.akcja = Akcja.Akcja("wzrost")
return
elif self.choroba != "brak":
self.akcja = Akcja.Akcja(self.choroba)
return
else:
self.akcja = None
return
def return_hydrate(self):
return self.nawodnienie
def return_disease(self):
return self.choroba
def return_disease_as_string(self):
if(self.choroba==0):
return "Zdrowa"
if(self.choroba==1):
return "Chora"
def return_stan_for_tree(self):
return [self.nawodnienie,self.wzrost,self.choroba,self.zyznosc]
def report_all(self):
return f"Nawodnienie: {self.nawodnienie} Zyznosc: {self.zyznosc} Wzrost: {self.wzrost} Choroba: {self.return_disease_as_string()}"