import Stan import Srodek import random class Roslina: nazwa = None #[string] stan = None #[Stan] srodek = None #[List] """ Nawodnienie (update co 30s): - pszenica: -8 - kukurydza: -7 - ziemniak: -6 - słonecznik: -5 - borówka: -4 - winogrono: -4 Żyzność (update co 30s): - pszenica: -7 - kukurydza: -4 - ziemniak: -5 - słonecznik: -3 - borówka: -5 - winogrono: -4 Wzrost (update co 30s): - pszenica: +8 - kukurydza: +4 - ziemniak: +5 - słonecznik: +3 - borówka: +5 - winogrono: +4 Koszt (0-15): - pszenica: 7 - kukurydza: 9 - ziemniak: 2 - słonecznik: 5 - borówka: 3 - winogrono: 4 - szuter (ścieżka): 0 - błoto: 15 def __init__(self, nazwa, stan, srodek): self.nazwa = nazwa self.stan = stan self.srodek = srodek """ def __init__(self, nazwa): self.nazwa = nazwa self.stan = Stan.Stan() if nazwa == "dirt": self.stan.koszt = 0 self.stan.nawodnienie = 100 elif nazwa == "mud": self.stan.koszt = 15 self.stan.nawodnienie = 100 else: self.stan.set_random() if nazwa == "pszenica": self.stan.koszt = 7 elif nazwa == "kukurydza": self.stan.koszt = 9 elif nazwa == "ziemniak": self.stan.koszt = 2 elif nazwa == "slonecznik": self.stan.koszt = 5 elif nazwa == "borowka": self.stan.koszt = 3 else: # winogrono self.stan.koszt = 4 self.srodek = None def checkSrodek(self): #może wykorzystać AI do porównywania zdjęć for i in self.srodek: for j in self.stan.akcja.srodki: if i == j: return i return False def doAkcja(self): # sprawdza jaki srodek do danej akcji i jaki z nich może być użyty przy tej roślinie # robi akcje # aktualizuje dane o stanie i zdjęcie w zależności od wykonanej czynności (benefits w klasie akcja) -> (self.stan.akcja.benefits) x = self.checkSrodek() # robi akcje setattr(self.stan, self.stan.akcja.benefits[0], self.stan.akcja.benefits[1]) return def isAkcja(self): # sprawdza czy jakaś akcja musi być wykonana, jeżeli tak, to ją wywołuje # sprawdza czy jeszcze coś trzeba zrobić self.stan.checkStan() while self.stan.akcja != None: self.doAkcja() self.stan.checkStan() return def return_stan(self): return self.stan def get_hydrate_stats(self): return self.stan.return_hydrate() def report_status(self): return f"Nazwa rosliny: {self.nazwa} "+self.stan.report_all()