20 lines
569 B
Python
20 lines
569 B
Python
class SnakeBuilder:
|
|
SNAKE_VERSIONS = {
|
|
"TemplateSnake": "1.0.0",
|
|
"DummSnake": "1.0.0",
|
|
"LogicSnake": "1.1.0",
|
|
"MasterSnake": "1.2.0",
|
|
"BetterMasterSnake": "1.3.0",
|
|
"BestBattleSnake": "2.5.0",
|
|
}
|
|
|
|
@classmethod
|
|
def build(self, selected_snake:str):
|
|
snake_module = __import__(f"snakes.{selected_snake}", fromlist=[selected_snake])
|
|
snake_class = getattr(snake_module, selected_snake)
|
|
return snake_class()
|
|
|
|
@classmethod
|
|
def get_version(self, selected_snake:str) -> str | None:
|
|
return self.SNAKE_VERSIONS.get(selected_snake)
|