Преглед на файлове

Added rendering inventory

Ondřej Schlaichert преди 8 месеца
родител
ревизия
dddf522320
променени са 2 файла, в които са добавени 28 реда и са изтрити 3 реда
  1. 12 3
      src/main/java/eu/oschl/gui/GameController.java
  2. 16 0
      src/main/resources/eu/oschl/gui/css/style.css

+ 12 - 3
src/main/java/eu/oschl/gui/GameController.java

@@ -137,17 +137,26 @@ public class GameController implements Observer {
 
         for (var item : Session.getGame().getInventory().getItems()) {
             var label = item.getName();
-            var buttonData = new ButtonData("inspectitem", item.getName());
+            var buttonData = new ButtonData("useitem", item.getName());
 
             var button = createActionButton(label, buttonData);
+            button.getStyleClass().add("inventory-item");
 
-            button.getStyleClass().add("inventory-item-button");
+            newItems.add(button);
+        }
+
+        if (Session.getGame().getInventory().getWeapon().isPresent()) {
+            var weapon = Session.getGame().getInventory().getWeapon().get();
+
+            var button = createActionButton(weapon.getName(), new ButtonData(""));
+            button.getStyleClass().add("inventory-item");
+            button.getStyleClass().add("weapon");
+            button.setDisable(true);
 
             newItems.add(button);
         }
 
         inventoryContainer.getChildren().addAll(newItems);
-
     }
 
     private Button createActionButton(String label, ButtonData buttonData) {

+ 16 - 0
src/main/resources/eu/oschl/gui/css/style.css

@@ -135,4 +135,20 @@
 	/* Pressed state: Slight visual feedback */
 	-fx-background-color: rgba(224, 224, 224, 0.1); /* Very subtle dark overlay */
 	-fx-border-color: #e0e0e0;
+}
+
+.weapon,
+.button.weapon:disabled,
+.weapon:disabled,
+.button.weapon:disabled .text {
+	-fx-text-fill: #ff5555 !important;
+	-fx-fill: #ff5555 !important;
+	-fx-opacity: 1 !important;
+}
+
+.button:hover { -fx-cursor: hand; }
+
+.button:disabled,
+.button:disabled:hover {
+	-fx-cursor: default;
 }