AIprojekt-wozek/Package.py

44 lines
1.6 KiB
Python
Raw Normal View History

2022-03-24 20:02:21 +01:00
import glob2
import pygame
import random
from Field import Field
from Global_variables import Global_variables as G_var
from Types_colors import Types_colors
from Package_types import Package_types
import math
2022-05-12 21:16:05 +02:00
from CompanyFactory import CompanyFactory
2022-05-12 23:19:46 +02:00
from decision_tree.Decision_tree import DecisionTree
2022-05-26 22:56:40 +02:00
from neural_network.NeuralNetwork import NeuralNetwork
2022-03-24 20:02:21 +01:00
class Package(Field):
def __init__(self, window, x, y, type):
Field.__init__(self, window, x, y)
2022-05-26 22:56:40 +02:00
# self.mark_image = self.get_marking_photo()
self.type = type
2022-05-12 21:16:05 +02:00
self.company = CompanyFactory()
self.payed_upfront = random.randint(0,1)
2022-04-25 17:58:51 +02:00
self.is_placed = False
2022-05-12 23:19:46 +02:00
weekend = random.randint(0,1)
self.sector = self.use_decision_tree(weekend)
2022-03-24 20:02:21 +01:00
2022-05-12 23:19:46 +02:00
def use_decision_tree(self, weekend):
marking = self.type
if marking == Package_types.fragile:
marking = 0
elif marking == Package_types.priority:
marking = 1
tree = DecisionTree(marking, weekend, self.company.popularity,
self.company.payment_delay, self.payed_upfront,
self.company.shipping_type)
decision = tree.decision
2022-05-26 22:56:40 +02:00
# print("Decision tree: ", decision)
2022-05-12 23:19:46 +02:00
return decision
2022-03-24 20:02:21 +01:00
def draw(self):
self.color = Types_colors.get_package_color(self.type)
2022-05-26 22:56:40 +02:00
# self.color = (110,64,48)
block = pygame.Rect(self.x * G_var().RECT_SIZE, self.y *
G_var().RECT_SIZE, G_var().RECT_SIZE, G_var().RECT_SIZE)
pygame.draw.rect(self.window, self.color, block)