/**
* handleGameDisconnect
* ゲーム切断ユースケースを呼び出してプレイヤー離脱を配信する
*/
import { Server } from "socket.io";
import type { DisconnectPlayerPort } from "@server/domains/game/application/ports/gameUseCasePorts";
import { disconnectUseCase } from "@server/domains/game/application/useCases/disconnectUseCase";
import { createGameDisconnectOutputAdapter } from "./createGameOutputAdapter";
/** 切断したプレイヤーをゲーム管理から除外し通知する */
export const handleGameDisconnect = (
io: Server,
gameManager: DisconnectPlayerPort,
roomId: string | undefined,
playerId: string
) => {
const gameDisconnectOutputAdapter = createGameDisconnectOutputAdapter(io);
disconnectUseCase({
gameManager,
roomId,
playerId,
output: gameDisconnectOutputAdapter,
});
};