dodana ikonka skrzynki na listy #22
45
ekran.py
45
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)
|
5
grid.py
5
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
|
||||
|
||||
|
||||
|
BIN
images/letterbox.png
Normal file
BIN
images/letterbox.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 3.0 KiB |
28
main.py
28
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)
|
||||
|
||||
|
||||
|
18
plansza.py
18
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
|
||||
@ -31,6 +34,10 @@ while True:
|
||||
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),
|
||||
(x1, y1), (x1+1, y1), (x1, y1+1), (x1+1, y1+1),
|
||||
@ -54,3 +61,6 @@ 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)
|
||||
|
||||
c_pix = obliczPixeleNaPodstawieKratek(c)
|
||||
d_pix = obliczPixeleNaPodstawieKratek(d)
|
4
wozek.py
4
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")
|
||||
|
@ -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
|
||||
|
Loading…
Reference in New Issue
Block a user