From c946313bcdf0b4daf05cc970fdf9f852ff6ba7bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zuzanna=20W=C3=B3jcik?= Date: Wed, 31 May 2023 09:25:37 +0200 Subject: [PATCH] dodana ikonka skrzynki na listy --- ekran.py | 45 +++++++++++++++++++++++-------------------- grid.py | 5 +++-- images/letterbox.png | Bin 0 -> 3108 bytes main.py | 28 --------------------------- plansza.py | 20 ++++++++++++++----- wozek.py | 4 ---- wyszukiwanie.py | 2 +- 7 files changed, 43 insertions(+), 61 deletions(-) create mode 100644 images/letterbox.png diff --git a/ekran.py b/ekran.py index 4a1a6a7..2f58e07 100644 --- a/ekran.py +++ b/ekran.py @@ -1,6 +1,6 @@ import pygame -from plansza import x1, y1, x2, y2, x3, y3, x4, y4, a_pix, b_pix -from regal import Regal, obliczPixeleNaPodstawieKratek +import plansza +from regal import Regal from packageList import * EKRAN_SZEROKOSC = 770 @@ -8,6 +8,8 @@ EKRAN_WYSOKOSC = 770 screen = pygame.display.set_mode((EKRAN_SZEROKOSC, EKRAN_WYSOKOSC)) miejsce = pygame.image.load('images/miejsce_paczek.png') miejsce = pygame.transform.scale(miejsce, (70, 70)) +skrzynka = pygame.image.load('images/letterbox.png') +skrzynka = pygame.transform.scale(skrzynka, (64, 64)) pygame.display.set_caption("Inteligentny wozek") icon = pygame.image.load('images/icon.png') pygame.display.set_icon(icon) @@ -17,25 +19,25 @@ lista_paczek_na_regalach = [] def narysuj_regaly(): global lista_regalow - r1 = Regal('ogród', x1, y1) - r2 = Regal('ogród', x1, y1+1) - r3 = Regal('ogród', x1+1, y1) - r4 = Regal('ogród', x1+1, y1+1) + r1 = Regal('ogród', plansza.x1, plansza.y1) + r2 = Regal('ogród', plansza.x1, plansza.y1+1) + r3 = Regal('ogród', plansza.x1+1, plansza.y1) + r4 = Regal('ogród', plansza.x1+1, plansza.y1+1) - r5 = Regal('narzedzia', x2, y2) - r6 = Regal('narzedzia', x2, y2+1) - r7 = Regal('narzedzia', x2+1, y2) - r8 = Regal('narzedzia', x2+1, y2+1) + r5 = Regal('narzedzia', plansza.x2, plansza.y2) + r6 = Regal('narzedzia', plansza.x2, plansza.y2+1) + r7 = Regal('narzedzia', plansza.x2+1, plansza.y2) + r8 = Regal('narzedzia', plansza.x2+1, plansza.y2+1) - r9 = Regal('kuchnia', x3, y3) - r10 = Regal('kuchnia', x3, y3+1) - r11 = Regal('kuchnia', x3+1, y3) - r12 = Regal('kuchnia', x3+1, y3+1) + r9 = Regal('kuchnia', plansza.x3, plansza.y3) + r10 = Regal('kuchnia', plansza.x3, plansza.y3+1) + r11 = Regal('kuchnia', plansza.x3+1, plansza.y3) + r12 = Regal('kuchnia', plansza.x3+1, plansza.y3+1) - r13 = Regal('motoryzacja', x4, y4) - r14 = Regal('motoryzacja', x4, y4+1) - r15 = Regal('motoryzacja', x4+1, y4) - r16 = Regal('motoryzacja', x4+1, y4+1) + r13 = Regal('motoryzacja', plansza.x4, plansza.y4) + r14 = Regal('motoryzacja', plansza.x4, plansza.y4+1) + r15 = Regal('motoryzacja', plansza.x4+1, plansza.y4) + r16 = Regal('motoryzacja', plansza.x4+1, plansza.y4+1) lista_regalow = [r1,r2,r3,r4,r5,r6,r7,r8,r9,r10,r11,r12,r13,r14,r15,r16] @@ -57,7 +59,8 @@ def narysuj_siatke(): def odswiez_ekran(wozek): screen.fill((51, 51, 51)) # removes object trail - screen.blit(miejsce,(a_pix, b_pix)) + screen.blit(miejsce,(plansza.a_pix, plansza.b_pix)) + screen.blit(skrzynka,(plansza.c_pix, plansza.d_pix)) narysuj_siatke() narysuj_paczki(wozek) narysuj_paczke_na_regale() @@ -94,5 +97,5 @@ def narysuj_paczke_na_regale(): def dodaj_paczki_na_rampe(p1, p2): lista_paczek.append(p1) lista_paczek.append(p2) - p1.update_position(a_pix, b_pix) - p2.update_position(a_pix, b_pix) + p1.update_position(plansza.a_pix, plansza.b_pix) + p2.update_position(plansza.a_pix, plansza.b_pix) \ No newline at end of file diff --git a/grid.py b/grid.py index bb1d918..51313ab 100644 --- a/grid.py +++ b/grid.py @@ -1,5 +1,6 @@ from enum import Enum -from plansza import x1,x2,x3,x4,y1,y2,y3,y4,a,b +from plansza import x1,x2,x3,x4,y1,y2,y3,y4 +import plansza from typing import Tuple, Dict @@ -29,7 +30,7 @@ class SearchGrid: for c, d in [(x1, y1), (x1, y1+1), (x1+1, y1), (x1+1, y1+1), (x2, y2), (x2+1, y2), (x2, y2+1), (x2+1, y2+1), (x3, y3), (x3+1, y3), (x3, y3+1), (x3+1, y3+1), (x4, y4), (x4+1, y4), (x4, y4+1), (x4+1, y4+1),]: self.grid[(c,d)] = GridCellType.RACK - for e, f in [(a,b)]: + for e, f in [(plansza.a, plansza.b),(plansza.c, plansza.d)]: self.grid[(e,f)] = GridCellType.PLACE diff --git a/images/letterbox.png b/images/letterbox.png new file mode 100644 index 0000000000000000000000000000000000000000..4df3959c2eddb4c6b8aa43fa9fe08e7f322329ad GIT binary patch literal 3108 zcmV+<4BPXGP)m34Ky4)Yd|wyo3t0 zpdgC8d<<4$Kq=sKRFJ9Fk-tY{mv0mO2!*Ph&o_S?wAYA1pGib z;5qE<$~8#=2_SyhIRdl*&A@J8x0Et8?y{CjfDl3ervVoM7Xym`Z|S0qh$yfV_zUm~ z@Gn`S0>?#w5W)dm30#7ycs^C!+%B>0>#ez$*0FcrR61qV= ztCP@m5?P%dElW!(&E901mQy z%U8~_Dlg~w%9-tU;?5~IUP$T&dy)gZ9*OZvZmM3Wlt*2-c*`?ElW~2Na{LC-5{kK3>XFg zPK!Aj+=>OaqTp66_-s~Yxg5-PIhf|KV-dq;O6dl#M`COaM|q~JkFb`_KS}@(1M8)f z?IjT)gs=lY$|-LHXmZ-QwXu%t8v-~jLrQn38McOFycUV^ULr+HN=3~nSSlPA3o~5~ zPVqQ7-(SJ9DlheR+u-v7!(dZKFTZRHv423#-`0Tjz#1u~IzqRmj-wGEgjfPR2FwFk zQ10gT>2+LQ<3|zZ=hzub@@!Who5NAwPYxW_heg0tyPcUX2eoz^p2NPdM^SJnWtUA5!3>ujhov-MkTwijQ!0B?Y2J<|*fIjyOMT_sI=zlds(gc{@?iEF zTJ2+5m6s{@vXYb?D}ri`lNcUs}CT6kgD;+)^`5T)i;_s zeo+9g1Lv#=__(ab&)#I3sxm8Ist-_UvjXsLBE=oe2iczc;!efFm+J%E(pbmIPW!}b zTmbt9R32yx@kB@Opi@1|SI+vm(>cZM1fWmL@|(_H4#v|2gq7FgasH7=0BjdPCs6m> zQ)hBnwSQRWJsFK3?+fzlj$U*rv0DVUO|R#h(`xbO$eApNXj$%W3-ODCAu>{;2*C|g zs=2Fa3V||H)<{aDEs|ziJkFY65THu{8-W`f77Jf#2ykh&pOBiNIhp3sU^nrs4#2W1 zFF%{z$PAa`MCmvtw5HOm-hGg*eK7#atqNbCQp0Sw1Cf@z+}FVs zZb2ssB4_`_WH<_%KvOQtYjRHRxxW+?906aQQq5woXE3B}$i?~t$vB&T``E-wS0v(* zK7gYBNeU7mfRA~GhWb2@lM5=nyxJEf*t+NVq?}-Uvck=oKF^rnFGxU7Mq^{Jhc7h* z23h^nCuZ|TB+j1EBdimKlbsIEudFDlO+f-45B6}+z96xz&ONiH4c}Q z1F&TI6@2dI)l8o|AJs6pzq|XGvK7KHO{o}rUeW|R?-VSZ0Vx%(`;o@?9?CLO`f$hl z2B+Vc;mvmq95(p%R|UVgN?;v9qPC2g;qlkjGxw8c;tf=@=z`_Lo*gg7w}=naRlv5} z1vj5-UjO{bESG*aLtlKzBp!P~=loR}I>M61O8EO~!I#e%z0Z7oF%b!qjGF1Wu0#6) zuv;u8%|7E!0Dw(_2d)u3c&#~nw!C9-#!VUCX*T%gdX1ZYu93;Y;_2|t_XG>474C1o z)5*u3PP9yh|7?E)DJ8pJ-vYqZet$_Z!-Nn3(35~CcMg4<{hg8}H)nY0`60jXpHA4? zJhuMkJI%aACY?qIP*W)Y<~d7C%}odaZy$t3_ex&d15PV!SPmD@H2q1f2i7l#^G#_W`_4EYWXf2U|aT@^{9d7=e zWaV#6-n-4{+fCKDr?R2 zz7stH6d};1W9rtgNo)uJ-o9x%l~J^C%UkI-SFmyRWg4ry>#dq;t!2 zfKOFau)LCv%3%(w)@I|@nwnAD9WTaZ7Fg(V zvG4=x&^s)h3_ssl}5*j-Tg7qh^Mpc3l9*|G_GoG1^yoh4b1|<^oUziKT=4j yIw4J?`-q@uD<|F=ov33gn7h6I7fIL(Ec!3#*m*}HxOa8{0000w@ literal 0 HcmV?d00001 diff --git a/main.py b/main.py index 6f88d2d..7ed8ed7 100644 --- a/main.py +++ b/main.py @@ -93,22 +93,6 @@ def main(): # wozek.drop_package() # wozek.dynamic_wozek_picture() - if event.type == pygame.KEYDOWN: - if event.key == pygame.K_DOWN: - wozek.y_change = 1 - if event.key == pygame.K_UP: - wozek.y_change = -1 - if event.key == pygame.K_RIGHT: - wozek.x_change = 1 - if event.key == pygame.K_LEFT: - wozek.x_change = -1 - - if event.type == pygame.KEYUP: - if event.key == pygame.K_DOWN or event.key == pygame.K_UP: - wozek.y_change = 0 - if event.key == pygame.K_RIGHT or event.key == pygame.K_LEFT: - wozek.x_change = 0 - # if event.type == pygame.KEYDOWN: # if event.key == pygame.K_SPACE: # if wozek.ln == 0: @@ -118,18 +102,6 @@ def main(): # wozek.drop_package() # wozek.dynamic_wozek_picture() - wozek.obecnyStan.x += wozek.x_change - wozek.obecnyStan.y += wozek.y_change - - if wozek.obecnyStan.x <= 0: - wozek.obecnyStan.x = 0 - elif wozek.obecnyStan.x >= ekran.EKRAN_SZEROKOSC-70: - wozek.obecnyStan.x = ekran.EKRAN_SZEROKOSC-70 - if wozek.obecnyStan.y <= 0: - wozek.obecnyStan.y = 0 - elif wozek.obecnyStan.y >= ekran.EKRAN_WYSOKOSC-70: - wozek.obecnyStan.y = ekran.EKRAN_WYSOKOSC-70 - ekran.odswiez_ekran(wozek) diff --git a/plansza.py b/plansza.py index e82212c..5029de9 100644 --- a/plansza.py +++ b/plansza.py @@ -3,10 +3,13 @@ import random def obliczPixeleNaPodstawieKratek(wymiar): #Przeliczanie współrzędnych podanych w kratkach na pixele i = 1 pixele = 70 - while (i < wymiar): - pixele = pixele + 70 - i = i + 1 - return pixele + if wymiar == 0: + return 0 + else: + while (i < wymiar): + pixele = pixele + 70 + i = i + 1 + return pixele EKRAN_SZEROKOSC = 770 EKRAN_WYSOKOSC = 770 @@ -30,6 +33,10 @@ while True: #wspolrzedne miejsca paczek a = 5 b = 5 + + #wspolrzedne skrzynki na listy + c = 5 + d = 0 #dodane wspolrzedne (0, 0), (4, 4), (4, 6), (6, 4), (6, 6) zeby regaly sie nie stykaly table = [(0, 0), (4, 4), (4, 6), (6, 4), (6, 6), @@ -53,4 +60,7 @@ random.shuffle(coordinates) x1, x2, x3, x4, y1, y2, y3, y4 = map(int, [x1, x2, x3, x4, y1, y2, y3, y4]) a_pix = obliczPixeleNaPodstawieKratek(a) -b_pix = obliczPixeleNaPodstawieKratek(b) \ No newline at end of file +b_pix = obliczPixeleNaPodstawieKratek(b) + +c_pix = obliczPixeleNaPodstawieKratek(c) +d_pix = obliczPixeleNaPodstawieKratek(d) \ No newline at end of file diff --git a/wozek.py b/wozek.py index a867a2c..d09c273 100644 --- a/wozek.py +++ b/wozek.py @@ -9,10 +9,6 @@ class Wozek(pygame.sprite.Sprite): def __init__(self): super().__init__() self.obecnyStan = None - # self.x = 55 - # self.y = 55 - self.x_change = 0 - self.y_change = 0 self.height = 64 self.width = 64 self.image = pygame.image.load("images/pusty_wozek.png") diff --git a/wyszukiwanie.py b/wyszukiwanie.py index 648a5bd..dbf5270 100644 --- a/wyszukiwanie.py +++ b/wyszukiwanie.py @@ -147,6 +147,6 @@ def dobierz_wage_do_wezla(wezel, search_grid): elif search_grid.grid[(x1, y1)] is GridCellType.RACK: wezel.waga = 99999 elif search_grid.grid[(x1, y1)] is GridCellType.PLACE: - wezel.waga = 1 + wezel.waga = 500 return None