public IActionResult Post([FromBody] CalcScoreRequest request) { request.Attach(); // 点数計算 var response = DiProvider.GetContainer().GetInstance <CalcScoreReceiver>().Receive(request); // 進行状況の更新 var room = request.Room; var player = room.GetPlayer(request.PlayerKey); ProgressHelper.Update(request.RoomKey, player.Wind); // 通知 this.NotifyRoomContext(request.RoomKey); return(Ok(response)); }
public IActionResult Post([FromBody] CalcScoreRequest request) { request.Attach(); // 最後の捨牌を追加 var room = request.Room; var player = room.GetPlayer(request.PlayerKey); room.Context.Hands[player.Wind.ToInt()].Add(room.GetLastDiscardTile()); // 点数計算 var response = DiProvider.GetContainer().GetInstance <CalcScoreReceiver>().Receive(request); // 進行状況の更新 ProgressHelper.Update(request.RoomKey, player.Wind); // 通知 this.NotifyRoomContext(request.RoomKey); return(Ok(response)); }