Skip to content

Commit bc6773c

Browse files
committed
[新增]接收來自大平台使用者的nickname資訊
1 parent 89699d3 commit bc6773c

File tree

2 files changed

+9
-4
lines changed

2 files changed

+9
-4
lines changed

backend/app/__init__.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -167,12 +167,12 @@ def start_game(current_user):
167167
return jsonify({"message": "Number of players must be 5"}), 400
168168

169169
player_ids = [player["id"] for player in players]
170+
player_nickname = [player["nickname"] for player in players]
170171

171172
if current_user not in player_ids:
172173
return jsonify({"message": "Unauthorized to start this game"}), 403
173174

174-
# result = GameService.start_game(room_id, player_ids, player_nicknames)
175-
room_id = GameService.create_game(player_ids)
175+
room_id = GameService.create_game(player_ids, player_nickname)
176176
gameRoomID = str(room_id.game_id)
177177
return (
178178
jsonify(

backend/service/game_service.py

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from typing import Tuple
1+
from typing import Tuple, Optional, List
22
from bson.objectid import ObjectId
33
from repository.game_repository import GameRepository
44
from domain.game import Game
@@ -9,12 +9,17 @@ class GameService:
99
def __init__(self, game_repository: GameRepository):
1010
self.game_repository = game_repository
1111

12-
def create_game(self, player_ids: list[str]) -> Game:
12+
def create_game(
13+
self, player_ids: list[str], player_nickname: Optional[List[str]] = None
14+
) -> Game:
1315
game = Game(game_id=None, players=player_ids)
1416
game_id = self.game_repository.create_game(game)
1517
game.game_id = game_id # 從資料取得的game_id
1618
game.action_message = "開始遊戲"
1719
game.event_name = "game_started"
20+
if player_nickname and len(player_ids) == len(player_nickname):
21+
for player, nickname in zip(game.players, player_nickname):
22+
player.name = nickname
1823
self.game_repository.update_game(game)
1924
return game
2025

0 commit comments

Comments
 (0)