From 7356425dd4f0b09d984e794598c67cfaad351599 Mon Sep 17 00:00:00 2001 From: Andriy Cherniy Date: Sat, 15 Jun 2024 03:04:36 +0300 Subject: tilepane + thread for dwarf --- src/main/java/space/m0e/quga/oop/lab56maven/Main.java | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) (limited to 'src/main/java/space/m0e/quga/oop/lab56maven/Main.java') diff --git a/src/main/java/space/m0e/quga/oop/lab56maven/Main.java b/src/main/java/space/m0e/quga/oop/lab56maven/Main.java index b337de8..ae203eb 100644 --- a/src/main/java/space/m0e/quga/oop/lab56maven/Main.java +++ b/src/main/java/space/m0e/quga/oop/lab56maven/Main.java @@ -39,7 +39,7 @@ public class Main extends Application { Rectangle rect = new Rectangle(3000, 2000, Color.WHITE); root.getChildren().add(rect); - Fortress fortress = new Fortress("Eartha", 200, 200, new ArrayList<>(List.of(new Workstation("Torgrus"))), new ArrayList<>(List.of(new ThroneRoom("Halzorga")))); + Fortress fortress = new Fortress("Eartha", 150, 150, new ArrayList<>(List.of(new Workstation("Torgrus"))), new ArrayList<>(List.of(new ThroneRoom("Halzorga")))); fortresses.add(fortress); immigrants.add(new Immigrant("1", "0", 50, 0,0, Ability.MASONIST)); @@ -86,6 +86,23 @@ public class Main extends Application { }); } + case END -> { + immigrants.stream().filter(immigrant -> immigrant.isActive() && immigrant instanceof Dwarf).forEach(immigrant -> { + Dwarf dwarf = (Dwarf) immigrant; + if (dwarf.getFortress() != null) + Platform.runLater(() -> { + dwarf.setX(dwarf.getFortress().getX()-50); + dwarf.setY(dwarf.getFortress().getY()-50); + dwarf.setActive(false); + dwarf.free(); + }); + }); + } + + case M -> { + + } + case TAB -> { Alert alert = new Alert(Alert.AlertType.INFORMATION); alert.setTitle("Object list"); -- cgit v1.3-3-ga95d