summaryrefslogtreecommitdiff
path: root/server/game.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'server/game.cpp')
-rw-r--r--server/game.cpp13
1 files changed, 12 insertions, 1 deletions
diff --git a/server/game.cpp b/server/game.cpp
index c8950ce..565468b 100644
--- a/server/game.cpp
+++ b/server/game.cpp
@@ -200,7 +200,18 @@ void Game::handle_action_draw(Action action) {
round_update_draw();
} break;
- case Action::Kan:
+ case Action::Kan: {
+ if(action.target_type == Action::Index) {
+ players[current_player].make_kan(action.target_offset - 2);
+ dora.push_back(wall.take_one());
+ } else {
+ players[current_player].make_kan_extend(action.target_offset);
+ kan_dora_pending = true;
+ }
+ players[current_player].draw(wall.take_one());
+ round_update_draw();
+ } break;
+
case Action::Draw:
// Not implemented yet.