From 61ae9b5a5e7cd9fd82b77e9159814b0066874c2d Mon Sep 17 00:00:00 2001 From: Janis Date: Wed, 7 Jan 2026 22:02:13 +0100 Subject: [PATCH] feat: Implement PlayDogCard functionality in user session and update Vue component --- knockoutwhistfrontend | 2 +- knockoutwhistweb/app/model/sessions/UserSession.scala | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/knockoutwhistfrontend b/knockoutwhistfrontend index 02869ff..8cf8ee0 160000 --- a/knockoutwhistfrontend +++ b/knockoutwhistfrontend @@ -1 +1 @@ -Subproject commit 02869fff8b448cde73369679c9b38bc99fb771ff +Subproject commit 8cf8ee0f76d6c25f024a65372855398f7cef49db diff --git a/knockoutwhistweb/app/model/sessions/UserSession.scala b/knockoutwhistweb/app/model/sessions/UserSession.scala index aa04bc5..5379cb8 100644 --- a/knockoutwhistweb/app/model/sessions/UserSession.scala +++ b/knockoutwhistweb/app/model/sessions/UserSession.scala @@ -54,6 +54,16 @@ class UserSession(val user: User, val host: Boolean, val gameLobby: GameLobby) e case None => println("Card Index not found or is not a number." + data) } + case "PlayDogCard" => + val maybeCardIndex: Option[Int] = (data \ "cardindex").asOpt[Int] + maybeCardIndex match { + case Some(index) => + val session = gameLobby.getUserSession(user.id) + gameLobby.playDogCard(session, index) + case None => + val session = gameLobby.getUserSession(user.id) + gameLobby.playDogCard(session, -1) + } case "PickTrumpsuit" => val maybeSuitIndex: Option[Int] = (data \ "suitIndex").asOpt[Int] maybeSuitIndex match {