automatyczny_kelner/agent.py
2023-06-01 17:45:01 +02:00

38 lines
1.0 KiB
Python

import random
from src.Engine import Engine
from src.obj.Waiter import Waiter
from src.obj.Block import Block
from src.obj.Kitchen import Kitchen
from src.obj.Table import Table
from src.UserController import UserController
from src.StateController import StateController
SCREEN_SIZE = [800, 800]
SQUARE_SIZE = 40
waiter = Waiter([0, 0], 0, SQUARE_SIZE, SCREEN_SIZE)
kitchen = Kitchen([0, 0], 0, SQUARE_SIZE, SCREEN_SIZE)
objects = []
for i in range(150):
pos = [0, 0]
while any([o.compare_pos(pos) for o in objects]) or pos == [0, 0]:
pos = [random.randint(1, SCREEN_SIZE[0]/SQUARE_SIZE - 1),
random.randint(1, SCREEN_SIZE[0]/SQUARE_SIZE - 1)]
if (random.randint(0, 1)):
objects.append(Block(pos, 0, SQUARE_SIZE, SCREEN_SIZE))
else:
objects.append(Table(pos, 0, SQUARE_SIZE, SCREEN_SIZE))
user = UserController(waiter)
state = StateController(waiter)
engine = Engine(SCREEN_SIZE, SQUARE_SIZE, kitchen, user, state)
for o in objects:
engine.subscribe(o)
engine.loop()