from server.Files import save_file class GameStorage: def __init__(self, snake:str): self.snake_type = snake def start_new_game(self, game_type:dict, game_board:dict, snake:dict): self.game_type = game_type self.start_position = snake self.game_board = [game_board] self.moves = [] def add_moves(self, game_board:dict, my_move:str): self.game_board.append(game_board) self.moves.append(my_move) def add_end_state(self, game_board:dict, snake_history_state:list[dict]): self.game_board.append(game_board) self.snake_history = snake_history_state def save(self, path:str, callback=None, **kwargs): save_file(path, { "snake": { "type": self.snake_type, "choices": self.snake_history, }, "game": { "type": self.game_type, "snake_start": self.start_position, "gameboard": self.game_board, "my_moves": self.moves, } }, callback=callback, **kwargs)