From b99bb9de6e424a30b71d177e72f309801569ace0 Mon Sep 17 00:00:00 2001 From: AleandroPagani Date: Fri, 22 May 2026 17:46:25 +0200 Subject: [PATCH] Add error notification --- .../it/polimi/ingsw/gc14/View/GUI/GUI.java | 5 ++- .../gc14/View/GUI/MainFXMLController.java | 35 ++++++++----------- 2 files changed, 19 insertions(+), 21 deletions(-) diff --git a/src/main/java/it/polimi/ingsw/gc14/View/GUI/GUI.java b/src/main/java/it/polimi/ingsw/gc14/View/GUI/GUI.java index 1b21d43..a5ea34d 100644 --- a/src/main/java/it/polimi/ingsw/gc14/View/GUI/GUI.java +++ b/src/main/java/it/polimi/ingsw/gc14/View/GUI/GUI.java @@ -129,7 +129,10 @@ public class GUI extends Application implements IView { @Override public void showError(String message) { - + Platform.runLater(() -> { + controllerMain.isError = true; + controllerMain.render(); + }); } } \ No newline at end of file diff --git a/src/main/java/it/polimi/ingsw/gc14/View/GUI/MainFXMLController.java b/src/main/java/it/polimi/ingsw/gc14/View/GUI/MainFXMLController.java index 4d2ae1b..976299a 100644 --- a/src/main/java/it/polimi/ingsw/gc14/View/GUI/MainFXMLController.java +++ b/src/main/java/it/polimi/ingsw/gc14/View/GUI/MainFXMLController.java @@ -8,6 +8,7 @@ import it.polimi.ingsw.gc14.Model.Orders.OrderPlayer; import it.polimi.ingsw.gc14.Network.EventType; import it.polimi.ingsw.gc14.Network.NetworkEvent; import javafx.animation.ScaleTransition; +import javafx.animation.TranslateTransition; import javafx.application.Platform; import javafx.beans.value.ChangeListener; import javafx.beans.value.ObservableValue; @@ -56,6 +57,8 @@ public class MainFXMLController { private ClientController controller; + public boolean isError; + // ==== IMAGE CACHE ==== private static final Map imageCache = new HashMap<>(); @@ -83,6 +86,7 @@ public class MainFXMLController { }); renderBackground(); + isError=false; } @@ -95,26 +99,6 @@ public class MainFXMLController { renderSidePanel(); } - public void render(NetworkEvent event) { - if (mainHBox.getWidth() == 0 || mainHBox.getHeight() == 0) { - Platform.runLater(() -> render(event)); - return; - } - if (event.getEventType() == EventType.SLOT_CHOICE) { - renderBoard(); - renderSidePanel(); - } else { - renderUpper(); - renderBoard(); - renderLower(); - renderSidePanel(); - if (Objects.equals(event.getUsername(), controller.myUsername) - || event.getEventType() == EventType.NEXT_ROUND) { - renderMyHand(); - } - } - } - // ==== EFFECTS ==== private void addClip(ImageView img) { @@ -311,6 +295,17 @@ public class MainFXMLController { usernameLabel.getStyleClass().add("label-medium"); if (player.getUserName().equals(controller.myUsername)) { usernameLabel.setStyle("-fx-text-fill: #9d0208"); + + if(isError) { + TranslateTransition tt = new TranslateTransition(Duration.millis(50), card); + tt.setFromX(0); + tt.setByX(10); + tt.setCycleCount(6); + tt.setAutoReverse(true); + tt.play(); + + isError=false; + } } headerRow.getChildren().addAll(totem, usernameLabel);