-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathEquip.py
86 lines (73 loc) · 1.98 KB
/
Equip.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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
# -*- coding: utf-8 -*-
__author__ = 'xavier'
class Equip(object):
"""
Classe que representa un dels equips d'estirar a corda.
Conté la llista dels jugadors que en formen part
"""
def __init__(self, equip):
self.equip = equip
self.jugadors = []
def getnom(self):
"""
:return: retorna el nom del jugador
"""
return self.equip
def afegir_jugador(self, jugador):
"""
Afegeix un jugador a l'equip
:param jugador: jugador a afegir
:return:
"""
self.jugadors.append(jugador)
def estira(self):
"""
Suma les forces de tots els jugadors de l'equip
:return: suma de les forces
"""
forca = 0
for jugador in self.jugadors:
forca = forca + jugador.estira()
return forca
def mou(self, moviment):
"""
Mou tots els jugadors 'x' pixels
:param moviment: pixels a moure
:return:
"""
for jugador in self.jugadors:
jugador.mou(moviment)
def get_jugadors(self):
"""
:return: llista dels jugadors de l'equip
"""
return self.jugadors
@property
def quants_jugadors(self):
"""
:return: Número de jugadors de l'equip
"""
return len(self.jugadors)
def posiciona_jugadors(self, x, y):
"""
Posiciona els jugadors en una posició a partir
de l'especificada
:param x:
:param y:
:return:
"""
posx = x
for jugador in self.jugadors:
jugador.posiciona(posx, y)
posx = jugador.get_punt_maxim()
return posx
def suma_amplades(self):
"""
Suma les amplades dels jugadors per saber quan d'espai
ocupa l'equip
:return: amplada de l'equip
"""
suma = 0
for jugador in self.jugadors:
suma = suma + jugador.get_ample()
return suma