diff --git a/game.py b/game.py index d0a52be..5e244a7 100644 --- a/game.py +++ b/game.py @@ -84,7 +84,7 @@ plansza[4, 4].setJestKontenerem(True) doms_array = ['resources/plansza/domy/dom1.png', 'resources/plansza/domy/dom2.png', 'resources/plansza/domy/dom3.png', 'resources/plansza/domy/dom4.png', 'resources/plansza/domy/dom5.png'] -wspolrzedne_domow = modele.generujWspolrzedneDomow() +wspolrzedne_domow = modele.generujWspolrzedneDomow(10) domy_lista = pygame.sprite.Group() smieci_lista = [os.path.join(path, filename) @@ -92,9 +92,9 @@ smieci_lista = [os.path.join(path, filename) for filename in files] for i in range(len(wspolrzedne_domow)): - dom = modele.Dom(wspolrzedne_domow[i, 0], wspolrzedne_domow[i, 1]) + dom = modele.Dom(wspolrzedne_domow[i][0], wspolrzedne_domow[i][1]) dom.setImage(pygame.image.load(random.choice(doms_array))) - plansza[wspolrzedne_domow[i, 0], wspolrzedne_domow[i, 1]].setJestDomem(True) + plansza[wspolrzedne_domow[i][0], wspolrzedne_domow[i][1]].setJestDomem(True) for j in range(5): dom.dodajSmiec(random.choice(smieci_lista)) diff --git a/modele.py b/modele.py index dbf0ff4..ccbbe98 100644 --- a/modele.py +++ b/modele.py @@ -173,27 +173,21 @@ class Kratka(pygame.sprite.Sprite): self.kolor = kolor -def generujWspolrzedneDomow(): - unikalne = False - wspolrzedne_domow = np.array([[0 for i in range(2)] for j in range(15)]) - while not unikalne: - for i in range(15): - wspolrzedne_domow[i, 0] = random.randrange(15) - if wspolrzedne_domow[i, 0] < 5: - wspolrzedne_domow[i, 1] = random.randrange(5, 15) - else: - wspolrzedne_domow[i, 1] = random.randrange(0, 15) - wspolrzedne_domow = np.unique(wspolrzedne_domow, axis=0) +def generujWspolrzedneDomow(ilosc_domow): + wspolrzedne_domow = [] - j = 0 - while True: - if j >= len(wspolrzedne_domow): - break - if np.sum(wspolrzedne_domow[j, 0] == wspolrzedne_domow[:, 0]) > 1: - wspolrzedne_domow = np.delete(wspolrzedne_domow, j, axis=0) - else: - j += 1 + r = len(wspolrzedne_domow) - if len(wspolrzedne_domow) > 5: - unikalne = True + while r < ilosc_domow: + wspolrzedne_domu = [] + x = random.randrange(15) + if x < 5: + y = random.randrange(5,15) + else: + y = random.randrange(15) + wspolrzedne_domu.append(x) + wspolrzedne_domu.append(y) + if wspolrzedne_domu not in wspolrzedne_domow: + wspolrzedne_domow.append(wspolrzedne_domu) + r = r + 1 return wspolrzedne_domow