-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathplayer.py
67 lines (55 loc) · 2.42 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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
# 이 클래스는 플레이어에 관한 정보와 동작을 정의합니다.
class Player:
# 사용자가 지정할 수 있는 카테고리의 개수를 나타내는 상수
UPPER = 6
LOWER = 7
def __init__(self, name):
self.name = name
self.scores = [0 for i in range(self.UPPER + self.LOWER)] # 13개의 카테고리 점수를 나타냄
self.used = [False for i in range(self.UPPER + self.LOWER)] # 각 카테고리의 사용 여부
self.bonus = 0 # 보너스 점수 유무
def setScore(self, score, index):
""" 각 카테고리 별로 점수를 scores 리스트에 작성하는 함수 """
self.scores[index] = score
def setAtUsed(self, index):
""" 13개 카테고리에 대해서 사용한 카테고리를 True로 변경하는 함수 """
self.used[index] = True
def getUpperScore(self):
""" 상단의 카테고리가 모두 기입되면 그 합을 구하는 함수 """
sum = 0
for i in range(self.UPPER):
sum += self.scores[i]
self.upperScore = sum
return self.upperScore
def getLowerScore(self):
""" 하단의 카테고리가 모두 기입되면 그 합을 구하는 함수 """
sum = 0
for i in range(self.LOWER):
sum += self.scores[self.UPPER + i]
self.lowerScore = sum
return self.lowerScore
def getUsed(self, index):
""" used 카테고리 리스트를 가져오는 getter 함수 """
return self.used[index]
def getTotalScore(self):
""" 13개 카테고리가 모두 사용되었을 때 총점을 가져오는 getter 함수 """
sum = 0
for i in range(self.LOWER + self.UPPER):
sum += self.scores[i]
self.totalScore = sum
return self.totalScore
def toString(self):
""" 이름을 반환하는 함수 """
return self.name
def allLowerUsed(self):
""" 하위 카테고리 7개가 모두 사용되었는지를 반환하는 함수 """
for i in range(6, 13):
if not self.used[i]:
return False
return True
def allUpperUsed(self):
""" 상위 카테고리 6개가 모두 사용되었는지를 반환하는 함수 """
for i in range(self.UPPER):
if not self.used[i]:
return False
return True