Dodanie listy wszystkich elementow
This commit is contained in:
parent
a1ab3c9c4a
commit
1f63cd61be
@ -2,10 +2,8 @@
|
||||
<project version="4">
|
||||
<component name="ChangeListManager">
|
||||
<list default="true" id="152ea650-8e02-4ed6-aa8c-04d44b275be4" name="Default Changelist" comment="">
|
||||
<change afterPath="$PROJECT_DIR$/.idea/vcs.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/Images/order.py" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/gridElement.py" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/gridElement.py" beforeDir="false" afterPath="$PROJECT_DIR$/gridElement.py" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/run.py" beforeDir="false" afterPath="$PROJECT_DIR$/run.py" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/table.py" beforeDir="false" afterPath="$PROJECT_DIR$/table.py" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/waiter.py" beforeDir="false" afterPath="$PROJECT_DIR$/waiter.py" afterDir="false" />
|
||||
@ -21,17 +19,17 @@
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/table.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="306">
|
||||
<caret line="18" column="49" selection-start-line="18" selection-start-column="49" selection-end-line="18" selection-end-column="49" />
|
||||
<state relative-caret-position="204">
|
||||
<caret line="12" column="33" selection-start-line="12" selection-start-column="33" selection-end-line="12" selection-end-column="33" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<file pinned="false" current-in-tab="true">
|
||||
<entry file="file://$PROJECT_DIR$/waiter.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="510">
|
||||
<caret line="30" column="61" selection-start-line="30" selection-start-column="61" selection-end-line="30" selection-end-column="61" />
|
||||
<state relative-caret-position="350">
|
||||
<caret line="26" column="12" selection-start-line="26" selection-start-column="12" selection-end-line="26" selection-end-column="12" />
|
||||
<folding>
|
||||
<element signature="e#0#13#0" expanded="true" />
|
||||
</folding>
|
||||
@ -42,8 +40,8 @@
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/gridElement.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="187">
|
||||
<caret line="11" column="58" selection-start-line="11" selection-start-column="58" selection-end-line="11" selection-end-column="58" />
|
||||
<state relative-caret-position="102">
|
||||
<caret line="6" column="33" selection-start-line="6" selection-start-column="33" selection-end-line="6" selection-end-column="33" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
@ -51,8 +49,8 @@
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/run.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="204">
|
||||
<caret line="12" column="24" selection-start-line="12" selection-start-column="24" selection-end-line="12" selection-end-column="24" />
|
||||
<state relative-caret-position="537">
|
||||
<caret line="42" column="42" lean-forward="true" selection-start-line="42" selection-start-column="42" selection-end-line="42" selection-end-column="42" />
|
||||
<folding>
|
||||
<element signature="e#0#18#0" expanded="true" />
|
||||
</folding>
|
||||
@ -60,11 +58,11 @@
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="true">
|
||||
<entry file="file://$PROJECT_DIR$/Images/order.py">
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/order.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="85">
|
||||
<caret line="5" column="4" selection-start-line="5" selection-start-column="4" selection-end-line="5" selection-end-column="4" />
|
||||
<caret line="5" selection-start-line="5" selection-end-line="5" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
@ -72,7 +70,7 @@
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$USER_HOME$/Desktop/pygame-elsa/elsa_gra.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="1020">
|
||||
<state relative-caret-position="537">
|
||||
<caret line="66" column="32" selection-start-line="66" selection-start-column="17" selection-end-line="66" selection-end-column="32" />
|
||||
</state>
|
||||
</provider>
|
||||
@ -103,11 +101,11 @@
|
||||
<option name="CHANGED_PATHS">
|
||||
<list>
|
||||
<option value="$PROJECT_DIR$/1" />
|
||||
<option value="$PROJECT_DIR$/table.py" />
|
||||
<option value="$PROJECT_DIR$/waiter.py" />
|
||||
<option value="$PROJECT_DIR$/gridElement.py" />
|
||||
<option value="$PROJECT_DIR$/run.py" />
|
||||
<option value="$PROJECT_DIR$/Images/order.py" />
|
||||
<option value="$PROJECT_DIR$/gridElement.py" />
|
||||
<option value="$PROJECT_DIR$/table.py" />
|
||||
<option value="$PROJECT_DIR$/run.py" />
|
||||
<option value="$PROJECT_DIR$/waiter.py" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
@ -125,7 +123,6 @@
|
||||
<foldersAlwaysOnTop value="true" />
|
||||
</navigator>
|
||||
<panes>
|
||||
<pane id="Scope" />
|
||||
<pane id="ProjectPane">
|
||||
<subPane>
|
||||
<expand>
|
||||
@ -142,6 +139,7 @@
|
||||
<select />
|
||||
</subPane>
|
||||
</pane>
|
||||
<pane id="Scope" />
|
||||
</panes>
|
||||
</component>
|
||||
<component name="PropertiesComponent">
|
||||
@ -150,6 +148,7 @@
|
||||
</component>
|
||||
<component name="RecentsManager">
|
||||
<key name="MoveFile.RECENT_KEYS">
|
||||
<recent name="C:\Users\user\PycharmProjects\Test\Sztuczna_Inteligencja" />
|
||||
<recent name="C:\Users\user\PycharmProjects\Test\Images" />
|
||||
</key>
|
||||
</component>
|
||||
@ -204,6 +203,14 @@
|
||||
<option name="presentableId" value="Default" />
|
||||
<updated>1552504215314</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00001" summary="Dodanie gridElement">
|
||||
<created>1553110976143</created>
|
||||
<option name="number" value="00001" />
|
||||
<option name="presentableId" value="LOCAL-00001" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1553110976143</updated>
|
||||
</task>
|
||||
<option name="localTasksCounter" value="2" />
|
||||
<servers />
|
||||
</component>
|
||||
<component name="TodoView">
|
||||
@ -238,6 +245,10 @@
|
||||
<window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
|
||||
</layout>
|
||||
</component>
|
||||
<component name="VcsManagerConfiguration">
|
||||
<MESSAGE value="Dodanie gridElement" />
|
||||
<option name="LAST_COMMIT_MESSAGE" value="Dodanie gridElement" />
|
||||
</component>
|
||||
<component name="editorHistoryManager">
|
||||
<entry file="file://$PROJECT_DIR$/1">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
@ -270,13 +281,6 @@
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$USER_HOME$/Desktop/pygame-elsa/elsa_gra.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="1020">
|
||||
<caret line="66" column="32" selection-start-line="66" selection-start-column="17" selection-end-line="66" selection-end-column="32" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/Images/tlo.jpg">
|
||||
<provider selected="true" editor-type-id="images" />
|
||||
</entry>
|
||||
@ -287,44 +291,51 @@
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/order.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="85">
|
||||
<caret line="5" selection-start-line="5" selection-end-line="5" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$USER_HOME$/Desktop/pygame-elsa/elsa_gra.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="537">
|
||||
<caret line="66" column="32" selection-start-line="66" selection-start-column="17" selection-end-line="66" selection-end-column="32" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/table.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="306">
|
||||
<caret line="18" column="49" selection-start-line="18" selection-start-column="49" selection-end-line="18" selection-end-column="49" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/gridElement.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="187">
|
||||
<caret line="11" column="58" selection-start-line="11" selection-start-column="58" selection-end-line="11" selection-end-column="58" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/waiter.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="510">
|
||||
<caret line="30" column="61" selection-start-line="30" selection-start-column="61" selection-end-line="30" selection-end-column="61" />
|
||||
<folding>
|
||||
<element signature="e#0#13#0" expanded="true" />
|
||||
</folding>
|
||||
<state relative-caret-position="204">
|
||||
<caret line="12" column="33" selection-start-line="12" selection-start-column="33" selection-end-line="12" selection-end-column="33" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/run.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="204">
|
||||
<caret line="12" column="24" selection-start-line="12" selection-start-column="24" selection-end-line="12" selection-end-column="24" />
|
||||
<state relative-caret-position="537">
|
||||
<caret line="42" column="42" lean-forward="true" selection-start-line="42" selection-start-column="42" selection-end-line="42" selection-end-column="42" />
|
||||
<folding>
|
||||
<element signature="e#0#18#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/Images/order.py">
|
||||
<entry file="file://$PROJECT_DIR$/gridElement.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="85">
|
||||
<caret line="5" column="4" selection-start-line="5" selection-start-column="4" selection-end-line="5" selection-end-column="4" />
|
||||
<state relative-caret-position="102">
|
||||
<caret line="6" column="33" selection-start-line="6" selection-start-column="33" selection-end-line="6" selection-end-column="33" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/waiter.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="350">
|
||||
<caret line="26" column="12" selection-start-line="26" selection-start-column="12" selection-end-line="26" selection-end-column="12" />
|
||||
<folding>
|
||||
<element signature="e#0#13#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
|
@ -1,11 +1,14 @@
|
||||
import pygame
|
||||
|
||||
class GridEleemnt(object):
|
||||
class GridElement(object):
|
||||
def __init__(self,x,y,game):
|
||||
self.game = game
|
||||
game.idItem += 1
|
||||
self.number = game.idItem
|
||||
self.x = x
|
||||
self.y = y
|
||||
self.image = pygame.image.load("./Images/plytka.png")
|
||||
self.type = "gridElement"
|
||||
|
||||
def draw(self):
|
||||
self.rect = pygame.Rect(self.x, self.y, 50, 50)
|
||||
|
52
run.py
52
run.py
@ -1,7 +1,8 @@
|
||||
import pygame, sys
|
||||
from waiter import Waiter
|
||||
from table import Table
|
||||
from gridElement import GridEleemnt
|
||||
from gridElement import GridElement
|
||||
|
||||
|
||||
class Game(object):
|
||||
def __init__(self):
|
||||
@ -11,19 +12,24 @@ class Game(object):
|
||||
self.fpsClock = pygame.time.Clock()
|
||||
self.idTable = 0
|
||||
self.idOrder = 0
|
||||
self.idItem = -1
|
||||
self.waiterNumberInGrid = 0
|
||||
pygame.display.set_caption('Automatic Waiter')
|
||||
self.background = pygame.image.load("./Images/tlo.jpg")
|
||||
|
||||
self.waiter = Waiter(self)
|
||||
self.tables = [Table(50, 50, self), Table(400, 50, self), Table(750, 50, self), Table(50, 450, self), Table(400, 450, self), Table(750, 450, self)]
|
||||
# The most important list
|
||||
self.grid = []
|
||||
for i in range(20):
|
||||
for b in range(18):
|
||||
self.grid.append(GridEleemnt(i*50, b*50, self))
|
||||
|
||||
|
||||
for t in self.tables:
|
||||
print(t.id)
|
||||
for b in range(18):
|
||||
for i in range(20):
|
||||
if ((i == 0) or (i == 8) or (i == 16)) and ((b == 2) or (b == 8)):
|
||||
self.grid.append(Table(i * 50, b * 50, self))
|
||||
elif i == 18 and b == 14:
|
||||
self.grid.append(Waiter(self, i * 50, b * 50))
|
||||
self.waiterNumberInGrid = (b * 20) + i
|
||||
else:
|
||||
self.grid.append(GridElement(i * 50, b * 50, self))
|
||||
|
||||
while True:
|
||||
|
||||
@ -31,31 +37,23 @@ class Game(object):
|
||||
if event.type == pygame.QUIT:
|
||||
sys.exit(0)
|
||||
|
||||
#self.screen.fill((0, 0, 0))
|
||||
#self.screen.blit(self.background, (0, 0))
|
||||
self.draw()
|
||||
self.waiter.move()
|
||||
self.grid[self.waiterNumberInGrid].move(self)
|
||||
pygame.display.flip()
|
||||
|
||||
print(self.waiterNumberInGrid)
|
||||
self.fpsClock.tick(10)
|
||||
|
||||
|
||||
def draw(self):
|
||||
|
||||
tempTable = []
|
||||
for gridElement in self.grid:
|
||||
gridElement.draw()
|
||||
self.waiter.draw()
|
||||
for table in self.tables:
|
||||
table.draw()
|
||||
if gridElement.type == "gridElement":
|
||||
gridElement.draw()
|
||||
else:
|
||||
tempTable.append(gridElement)
|
||||
for otherElement in tempTable:
|
||||
otherElement.draw()
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
Game()
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
3
table.py
3
table.py
@ -9,9 +9,12 @@ class Table(object):
|
||||
self.width = width
|
||||
self.game = game
|
||||
game.idTable += 1
|
||||
game.idItem += 1
|
||||
self.number = game.idItem
|
||||
self.isBusy = False
|
||||
self.id = game.idTable
|
||||
self.image = pygame.image.load("./Images/tableSmall.png")
|
||||
self.type = "table"
|
||||
|
||||
def draw(self):
|
||||
self.table = pygame.Rect(self.x, self.y, 50, 50)
|
||||
|
28
waiter.py
28
waiter.py
@ -3,29 +3,33 @@ from pygame.math import Vector2
|
||||
|
||||
class Waiter(object):
|
||||
|
||||
def __init__(self, game):
|
||||
def __init__(self, game, x, y):
|
||||
self.game = game
|
||||
game.idItem += 1
|
||||
self.size= self.game.screen.get_size()
|
||||
self.position = Vector2(self.size[0]-100,self.size[1]-200)
|
||||
self.x = x
|
||||
self.y = y
|
||||
self.image = pygame.image.load("./Images/w1.png").convert()
|
||||
self.image.set_colorkey((255, 255, 255))
|
||||
self.type = "waiter"
|
||||
self.numberInGrid = game.idItem
|
||||
|
||||
def changePosition(self, vector):
|
||||
self.position += vector
|
||||
|
||||
|
||||
def move(self):
|
||||
def move(self, game):
|
||||
keys = pygame.key.get_pressed()
|
||||
if keys[pygame.K_DOWN]:
|
||||
self.changePosition(Vector2(0,50))
|
||||
if keys[pygame.K_UP]:
|
||||
self.changePosition(Vector2(0,-50))
|
||||
if keys[pygame.K_RIGHT]:
|
||||
self.changePosition(Vector2(50,0))
|
||||
if keys[pygame.K_LEFT]:
|
||||
self.changePosition(Vector2(-50,0))
|
||||
tmp = game.grid[game.waiterNumberInGrid-1]
|
||||
tmp.x = tmp.x+50
|
||||
game.grid[game.waiterNumberInGrid-1] = game.grid[game.waiterNumberInGrid]
|
||||
game.grid[game.waiterNumberInGrid-1].x -= 50
|
||||
game.grid[game.waiterNumberInGrid] = tmp
|
||||
game.waiterNumberInGrid -= 1
|
||||
|
||||
|
||||
def draw(self):
|
||||
self.rect1 = pygame.Rect(self.position.x, self.position.y, 50, 100)
|
||||
self.rect1 = pygame.Rect(self.x, self.y, 50, 50)
|
||||
pygame.draw.rect(self.game.screen, (0, 150, 255), self.rect1)
|
||||
self.game.screen.blit(self.image, (self.position.x-50, self.position.y))
|
||||
self.game.screen.blit(self.image, (self.x-50, self.y))
|
||||
|
Loading…
Reference in New Issue
Block a user