WS DTO assign rework
This commit is contained in:
@ -18,12 +18,14 @@ from hopper.api.dto import (
|
||||
from hopper.engine import GameEngine
|
||||
from hopper.enums import Direction, PlayerMoveResult
|
||||
from hopper.errors import Collision, PositionOutOfBounds
|
||||
from hopper.ws_client import send_game_state
|
||||
|
||||
router = APIRouter()
|
||||
|
||||
|
||||
@router.get("/ping", response_model=PingResponse)
|
||||
async def ping() -> PingResponse:
|
||||
await send_game_state()
|
||||
return PingResponse(
|
||||
message="Pong!",
|
||||
)
|
||||
@ -34,9 +36,9 @@ async def get_game_info(
|
||||
engine: GameEngine = Depends(get_game_engine),
|
||||
) -> GameInfoDto:
|
||||
return GameInfoDto(
|
||||
board=BoardDto.from_model(engine.board),
|
||||
board=engine.board,
|
||||
destination=DestinationDto(
|
||||
position=PositionDto.from_model(engine.board.destination.position)
|
||||
position=engine.board.destination.position,
|
||||
),
|
||||
)
|
||||
|
||||
@ -49,10 +51,10 @@ async def start_game(
|
||||
new_player = engine.start_game(player_name=body.player_name)
|
||||
|
||||
return StartGameResponseDto(
|
||||
board=BoardDto.from_model(engine.board),
|
||||
player=PlayerDto.from_model(new_player),
|
||||
board=engine.board,
|
||||
player=new_player,
|
||||
destination=DestinationDto(
|
||||
position=PositionDto.from_model(engine.board.destination.position)
|
||||
position=engine.board.destination.position,
|
||||
),
|
||||
)
|
||||
|
||||
@ -76,7 +78,7 @@ async def get_player_info(
|
||||
status_code=status.HTTP_404_NOT_FOUND,
|
||||
detail="Player kicked out due to inactivity",
|
||||
)
|
||||
return PlayerInfoResponseDto(player=PlayerDto.from_model(player))
|
||||
return PlayerInfoResponseDto(player=player)
|
||||
|
||||
|
||||
@router.post(
|
||||
@ -129,4 +131,4 @@ async def move_player(
|
||||
if move_result == PlayerMoveResult.DESTINATION_REACHED:
|
||||
response.status_code = status.HTTP_200_OK
|
||||
|
||||
return MovePlayerResponseDto(player=PlayerDto.from_model(player))
|
||||
return MovePlayerResponseDto(player=player)
|
||||
|
||||
Reference in New Issue
Block a user