add game url in GameStorage if its not local

This commit is contained in:
2024-04-15 03:06:01 +02:00
parent 24e744f705
commit b601b378c8
+8
View File
@@ -18,9 +18,11 @@ class GameStorage:
def start_new_game(self, game_info:dict, game_board:dict, snake:dict):
self.init_game_board = game_board
self.game_info = game_info
self.my_snake_id = snake['id']
self.moves = []
self.now_date = datetime.now()
self.game_url = self._get_game_url(True if game_info["ruleset"]["version"] == "cli" else False)
def add_moves(self, turn:int, game_board:dict, my_move:str):
self.turns[turn] = {
@@ -33,6 +35,11 @@ class GameStorage:
self.snake_history = snake_history_state
self._set_winner_snake_name(game_board['snakes'])
def _get_game_url(self, local_game:bool):
if local_game:
return None
return f"https://play.battlesnake.com/game/{self.game_info['id']}"
def _set_winner_snake_name(self, snakes:list[dict]):
if self.my_snake_id in [ x["id"] for x in snakes]:
self.winner_snake_names = "me"
@@ -74,6 +81,7 @@ class GameStorage:
save_file(save_file_path, {
"winner": self.winner_snake_names,
"game": {
"url": self.game_url,
"id": self.game_info["id"],
"final_turns": self.final_turns,
"map": self.game_info["map"],