AI_PRO/main.py
2021-03-29 13:32:51 +02:00

70 lines
2.2 KiB
Python

import pygame
# wersja 1.05
from pygame import sysfont
from Main import Board, driving, drawUI
from Main.Tractor import Tractor
from Main.TractorAction import action
from Main.constants import *
pygame.init()
display = pygame.display.set_mode((DISPLAY_SIZE_HORIZONTAL, DISPLAY_SIZE_VERTICAL))
pygame.display.set_caption('Tractor')
working = True
cruiseControl = True
lastDirection = "RIGHT"
horizontal_change = 0
vertical_change = 0
board = Board.generate()
tractor = Tractor(horizontal_index=0, vertical_index=0, hitch="nothing", header=False)
tractor.turnOnEngine()
clock = pygame.time.Clock()
while working:
for event in pygame.event.get():
if event.type == pygame.QUIT:
working = False
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_SPACE:
field = board[tractor.horizontal_index][tractor.vertical_index]
print(action(field, tractor))
field.state = action(field, tractor)
#print(field.state)
if event.key == pygame.K_q:
tractor.hitch = "Crop Trailer"
if event.key == pygame.K_w:
tractor.header = True
horizontal_change, vertical_change = driving.manualTurning(event, tractor.horizontal_index,
tractor.vertical_index, horizontal_change,
vertical_change)
tractor.horizontal_index += horizontal_change
tractor.vertical_index += vertical_change
horizontal_change, vertical_change = driving.cruiseControl(cruiseControl, horizontal_change, vertical_change,
tractor)
direction = driving.getDirection(horizontal_change, vertical_change)
if direction != "STOP":
lastDirection = direction
drawUI.drawUI(board, display, tractor, direction)
else:
drawUI.drawUI(board, display, tractor, lastDirection)
clock.tick(FPS)
tractor.reduce_fuel()
print(tractor.fuel_tank)
print(tractor.horizontal_index + horizontal_change, " ", tractor.vertical_index + vertical_change)
print(horizontal_change, " ", vertical_change)
pygame.quit()
quit()