40 lines
1.3 KiB
Python
40 lines
1.3 KiB
Python
import pygame
|
|
|
|
class Input:
|
|
def __init__(self):
|
|
self.left: bool = False
|
|
self.right: bool = False
|
|
self.down: bool = False
|
|
self.up: bool = False
|
|
self.close: bool = False
|
|
|
|
def poll(self) -> None:
|
|
events = pygame.event.get()
|
|
for event in events:
|
|
if event.type == pygame.QUIT:
|
|
self.close = True
|
|
if event.type == pygame.KEYDOWN:
|
|
if event.key == pygame.K_LEFT:
|
|
self.left = True
|
|
if event.key == pygame.K_RIGHT:
|
|
self.right = True
|
|
if event.key == pygame.K_UP:
|
|
self.up = True
|
|
if event.key == pygame.K_DOWN:
|
|
self.down = True
|
|
if event.type == pygame.KEYUP:
|
|
if event.key == pygame.K_LEFT:
|
|
self.left = False
|
|
if event.key == pygame.K_RIGHT:
|
|
self.right = False
|
|
if event.key == pygame.K_UP:
|
|
self.up = False
|
|
if event.key == pygame.K_DOWN:
|
|
self.down = False
|
|
|
|
def horizontal(self) -> float:
|
|
return self.right - self.left
|
|
|
|
def vertical(self) -> float:
|
|
return self.down - self.up
|