feat(ui): Implement countless feature using the SJWP #89

Merged
Janis merged 11 commits from feat/implement-events into main 2025-11-27 08:53:38 +01:00
Owner
No description provided.
Janis added 5 commits 2025-11-27 08:03:25 +01:00
Started implementing functionality to Websocket.
Fixed startGame to be correctly implemented
Started implementing functionality to the Websocket
lq64 added 1 commit 2025-11-27 08:21:50 +01:00
Removed debug messages, reformatted method
Janis reviewed 2025-11-27 08:27:22 +01:00
@@ -3,3 +3,3 @@
import de.knockoutwhist.cards.{Hand, Suit}
import de.knockoutwhist.control.GameLogic
import de.knockoutwhist.control.GameState.{Lobby, MainMenu}
import de.knockoutwhist.control.GameState.{InGame, Lobby, MainMenu}
Author
Owner

Remove unused import

Remove unused import
Janis marked this conversation as resolved
@@ -59,6 +59,9 @@ class GameLobby private(
if (event.oldState == MainMenu && event.newState == Lobby) {
return
}
if (event.oldState == Lobby && event.newState == InGame) {
Author
Owner

Nope

Nope
lq64 marked this conversation as resolved
@@ -38,3 +40,3 @@
}
def handleWebResponse(eventType: String, data: JsObject): Unit = {
def handleWebResponse(eventType: String, data: JsObject, user: User, gameLobby: GameLobby): Unit = {
Author
Owner

Parameters are too much.

Parameters are too much.
Janis marked this conversation as resolved
@@ -44,3 +46,4 @@
case "Ping" =>
// No action needed for Ping
()
case "Start Game" =>
Author
Owner

Get debug statements

Get debug statements
lq64 marked this conversation as resolved
@@ -96,7 +99,8 @@ class UserWebsocketActor(
transmitTextToClient(jsonObj.toString())
}
def transmitEventToClient(event: SimpleEvent): Unit = {
Author
Owner

Nope

Nope
lq64 marked this conversation as resolved
@@ -1,6 +1,9 @@
package model.sessions
import de.knockoutwhist.utils.events.SimpleEvent
import logic.PodManager
Author
Owner

Fix imports

Fix imports
lq64 marked this conversation as resolved
@@ -75,3 +78,3 @@
val data = (json \ "data").asOpt[JsObject].getOrElse(Json.obj())
val result = Try {
session.handleWebResponse(event, data)
session.handleWebResponse(event, data, session.user, session.gameLobby)
Author
Owner

Ne

Ne
lq64 marked this conversation as resolved
@@ -1,5 +1,7 @@
package model.users
import play.api.libs.json.{Format, Json}
Author
Owner

Ne

Ne
lq64 marked this conversation as resolved
@@ -41,0 +142,4 @@
});
tricktable.html(newHtml);
}
function newTrickEvent() {
Author
Owner

playable cards reset

playable cards reset
Janis marked this conversation as resolved
@@ -5,3 +40,4 @@
function handleSkipDogLife(button) {
// TODO needs implementation
}
function startGame() {
Author
Owner

Debug entfernen

Debug entfernen
Janis marked this conversation as resolved
@@ -32,3 +32,3 @@
entry.resolve(data === undefined ? {} : data);
} else {
entry.reject(new Error(msg.error || "Server returned error"));
entry.reject(new Error(msg.error || "Server returned error"));
Author
Owner

Ne

Ne
Janis marked this conversation as resolved
lq64 added 1 commit 2025-11-27 08:27:45 +01:00
Removed debug messages, reformatted methods
lq64 added 1 commit 2025-11-27 08:28:22 +01:00
Removed print
Janis reviewed 2025-11-27 08:28:46 +01:00
@@ -2,9 +2,11 @@ package model.sessions
import de.knockoutwhist.events.player.{RequestCardEvent, RequestTieChoiceEvent, RequestTrumpSuitEvent}
import de.knockoutwhist.utils.events.SimpleEvent
import logic.PodManager
Author
Owner

Excessive imports

Excessive imports
Janis marked this conversation as resolved
lq64 added 1 commit 2025-11-27 08:43:26 +01:00
Fixed imports, removed playedCards at trickstart
lq64 added 1 commit 2025-11-27 08:48:23 +01:00
Removed whitespace
Janis changed title from feat(ui): Websocket to feat(ui): Implement countless feature using the SWP 2025-11-27 08:48:40 +01:00
Janis changed title from feat(ui): Implement countless feature using the SWP to feat(ui): Implement countless feature using the SJWP 2025-11-27 08:48:45 +01:00
Janis added 1 commit 2025-11-27 08:53:32 +01:00
Janis merged commit 1f96290371 into main 2025-11-27 08:53:38 +01:00
Janis deleted branch feat/implement-events 2025-11-27 08:53:38 +01:00
Sign in to join this conversation.
No Reviewers
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: KnockOutWhist/KnockOutWhist-Web#89
No description provided.