Я новичок, но я пытаюсь реализовать настольную игру (Орлеан) на python.Я создал класс для состояния игры и класс для каждого игрока.Я думал о создании класса для каждого типа пространства действий и создании экземпляра пространства действий для каждого игрока, поскольку у каждого игрока есть общий набор пространств действий.Каждый из этих классов пространства действия имеет некоторые атрибуты, обычно устанавливаемые в методе __init__()
.Однако у них нет других методов.Это хорошее использование классов, или я должен просто изменить код для работы с большим количеством отдельных переменных вместо этого?Причина, по которой я сделал их классами, заключалась в том, чтобы именование переменных было более интуитивно понятным.В приведенном ниже коде приведен пример класса игрока и двух классов пространства действия:
class Player:
def __init__(self, start_characters, name):
// other attributes
self.farmhouse = Farmhouse()
self.village = Village()
class Farmhouse:
def __init__(self):
self.boatman = False
self.craftsman = False
class Village:
def __init__(self):
self.farmer = False
self.boatman = False
self.craftsman = False
В этом случае класс состояния игры будет иметь функции, которые будут принимать экземпляр игрока в качестве аргумента, проверяя, является ли пространство действияимеет каждое из соответствующих требований для запуска этого действия.