-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathPlayer.py
executable file
·49 lines (43 loc) · 1.56 KB
/
Player.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
from Point import Point
import pygame
from Estremidade import Estremidade
class Player:
def __init__(self, player, cor, id_especial_1, id_especial_2, id_especial_3, estremidade, controle):
self.posicao = Point(0, 0)
self.id_1 = id_especial_1
self.id_1_usado = False
self.id_2 = id_especial_2
self.id_2_usado = False
self.id_3 = id_especial_3
self.id_3_usado = False
self.estrem = estremidade
self.retang = None
self.controle = controle
self.v = 10
self.cor = cor
self.player = player
self.movendo_dir = False
self.movendo_esq = False
def set_posicao(self, x, y):
self.posicao.x = x
self.posicao.y = y
def mover(self, i):
self.posicao.x = self.posicao.x + i
if self.posicao.x - 30 < self.estrem.p1.x:
self.posicao.x = self.estrem.p1.x + 30
elif self.posicao.x + 30 > self.estrem.p2.x:
self.posicao.x = self.estrem.p2.x - 30
def get_evento(self, keys):
for key in keys:
if self.controle.dir(key):
self.mover(self.v)
self.movendo_dir = True
else:
self.movendo_dir = False
if self.controle.esq(key):
self.mover(-self.v)
self.movendo_esq = True
else:
self.movendo_esq = False
def draw(self, display):
self.retang = pygame.draw.line(display, self.cor, [self.posicao.x-30, self.posicao.y], [self.posicao.x+30, self.posicao.y], 4)