diff --git a/apps/client/src/scenes/lobby/LobbyScene.tsx b/apps/client/src/scenes/lobby/LobbyScene.tsx index 759e6d1..0984df4 100644 --- a/apps/client/src/scenes/lobby/LobbyScene.tsx +++ b/apps/client/src/scenes/lobby/LobbyScene.tsx @@ -23,19 +23,23 @@ LOBBY_HOST_SETTINGS_LABEL_STYLE, LOBBY_HOST_SETTINGS_STYLE, LOBBY_HOST_SETTINGS_VALUE_STYLE, + LOBBY_LABEL_STYLE, LOBBY_LEFT_INNER_STYLE, LOBBY_LEFT_PANEL_STYLE, LOBBY_PLAYER_LIST_HEADER_STYLE, LOBBY_PLAYER_LIST_ITEM_STYLE, LOBBY_PLAYER_LIST_PANEL_STYLE, + LOBBY_SELECT_STYLE, LOBBY_SETTINGS_GEAR_BUTTON_STYLE, LOBBY_START_BUTTON_STYLE, LOBBY_TITLE_STYLE, LOBBY_WAITING_STYLE, } from "./styles/LobbyScene.styles"; -/** チームIDを1始まりの表示ラベルに変換する */ -const toTeamLabel = (teamId: number): string => `チーム${teamId + 1}`; +const TEAM_COLOR_LABELS = ["赤チーム", "青チーム", "緑チーム", "黄チーム"] as const; + +/** チームIDを色名ラベルに変換する */ +const toTeamLabel = (teamId: number): string => TEAM_COLOR_LABELS[teamId] ?? `チーム${teamId + 1}`; /** チーム選択のオプション(チームID 0〜3 + ランダム) */ const TEAM_SELECT_OPTIONS: Array<{ value: number | null; label: string }> = [ @@ -222,6 +226,34 @@ > ルールを見る + + {/* チーム選択プルダウン(ランダムモード時はdisabled) */} +
+ + + {teamFullMessage && ( +
+ {teamFullMessage} +
+ )} +
) : (
@@ -258,36 +290,35 @@ > ルールを見る -
- )} - {/* player_selectモード時の全員向けチーム選択UI */} - {room.teamAssignmentMode === "player_select" && ( -
-
チームを選ぶ
-
- {TEAM_SELECT_OPTIONS.map(({ value, label }) => { - const isSelected = myPreferredTeamId === value; - return ( -
)}
diff --git a/apps/client/src/scenes/lobby/styles/LobbyScene.styles.ts b/apps/client/src/scenes/lobby/styles/LobbyScene.styles.ts index 6948237..ce8bef8 100644 --- a/apps/client/src/scenes/lobby/styles/LobbyScene.styles.ts +++ b/apps/client/src/scenes/lobby/styles/LobbyScene.styles.ts @@ -162,8 +162,8 @@ /** 非オーナー待機表示のスタイル */ export const LOBBY_WAITING_STYLE: CSSProperties = { - padding: "20px", - fontSize: "clamp(1.2rem, 3vw, 1.5rem)", + padding: "clamp(8px, 2dvh, 20px) 16px", + fontSize: "clamp(0.95rem, 2.5vw, 1.2rem)", backgroundColor: "#555", color: "#ccc", borderRadius: "8px",