-
Notifications
You must be signed in to change notification settings - Fork 4
Open
Description
class GameRuleType(enum.Enum): # Тип правил игры
grNextStep = enum.auto() # Правила следующего хода
grFinish = enum.auto() # Правила завершения
grStartUserID = enum.auto() # Кто ходит первым
grListStartPoints = enum.auto() # Список клеток, с которых можно начать ход
grListNextPoints = enum.auto() # Список клеток, на которые можно сходить
class GameRule: # Правила игры
def __init__(self, a_Type, a_Function):
self.rType = a_Type
self.rFunction = a_Function
class Game: # Игра целиком
def __init__(self, a_UserList, a_Board, a_RulesList):
self.gUserList = a_UserList
self.gBoard = a_Board
self.gRulesList = a_RulesList
self.startPoint = Point(0,0)
def GetCurrentUserID(self): # Игрок, который ходит
# Найти в self.gRulesList правило grStartUserID и запустить функцию rFunction
def GetStartStepPoints(): # Откуда начинаем
# Вызвать функцию из правил grListStartPoints
return [Point(),Point()]
def StartStep(p):
# Записать в игру, что пользователь выбрал стартовую клетку
self.startPoint = p
def GetNextStepPoints(): # Очередная часть хода
# Вызвать функцию из правил grListNextPoints
return [Point(),Point()]
def NextStep(p): # Куда сходил игрок
Metadata
Metadata
Assignees
Labels
No labels