From 4eb3a310a787cd0a660a56eabd1f754b2dd3049b Mon Sep 17 00:00:00 2001 From: D4rkr34lm Date: Fri, 13 Oct 2023 13:00:36 +0200 Subject: [PATCH] Add sorting of phases --- .../features/simulator2/data/SimulatorElement.java | 5 +++++ .../features/simulator2/gui/SimulatorRedstoneGui.java | 2 +- .../bausystem/features/simulator2/gui/SimulatorTNTGui.java | 5 +---- .../features/simulator2/gui/base/SimulatorScrollGui.java | 7 ++----- 4 files changed, 9 insertions(+), 10 deletions(-) diff --git a/BauSystem_Main/src/de/steamwar/bausystem/features/simulator2/data/SimulatorElement.java b/BauSystem_Main/src/de/steamwar/bausystem/features/simulator2/data/SimulatorElement.java index 1274f7c8..477c59e4 100644 --- a/BauSystem_Main/src/de/steamwar/bausystem/features/simulator2/data/SimulatorElement.java +++ b/BauSystem_Main/src/de/steamwar/bausystem/features/simulator2/data/SimulatorElement.java @@ -25,6 +25,7 @@ import org.bukkit.Material; import org.bukkit.util.Vector; import java.util.ArrayList; +import java.util.Comparator; import java.util.List; @Getter @@ -45,6 +46,10 @@ public abstract class SimulatorElement { return this; } + public void sort(){ + phases.sort(Comparator.comparingInt(SimulatorPhase::getTickOffset)); + } + public abstract String getName(); public int getBaseTick() { diff --git a/BauSystem_Main/src/de/steamwar/bausystem/features/simulator2/gui/SimulatorRedstoneGui.java b/BauSystem_Main/src/de/steamwar/bausystem/features/simulator2/gui/SimulatorRedstoneGui.java index 0f09eeab..77637112 100644 --- a/BauSystem_Main/src/de/steamwar/bausystem/features/simulator2/gui/SimulatorRedstoneGui.java +++ b/BauSystem_Main/src/de/steamwar/bausystem/features/simulator2/gui/SimulatorRedstoneGui.java @@ -55,7 +55,7 @@ public class SimulatorRedstoneGui extends SimulatorScrollGui { @Override public void headerAndFooter() { - // TODO Sort Data List + redstoneElement.sort(); // Back Arrow inventory.setItem(0, new SWItem(Material.ARROW, "§eBack", clickType -> { diff --git a/BauSystem_Main/src/de/steamwar/bausystem/features/simulator2/gui/SimulatorTNTGui.java b/BauSystem_Main/src/de/steamwar/bausystem/features/simulator2/gui/SimulatorTNTGui.java index 15451b16..1cf8f6a4 100644 --- a/BauSystem_Main/src/de/steamwar/bausystem/features/simulator2/gui/SimulatorTNTGui.java +++ b/BauSystem_Main/src/de/steamwar/bausystem/features/simulator2/gui/SimulatorTNTGui.java @@ -21,7 +21,6 @@ package de.steamwar.bausystem.features.simulator2.gui; import de.steamwar.bausystem.features.simulator2.SimulatorWatcher; import de.steamwar.bausystem.features.simulator2.data.Simulator; -import de.steamwar.bausystem.features.simulator2.data.redstone.RedstonePhase; import de.steamwar.bausystem.features.simulator2.data.tnt.TNTElement; import de.steamwar.bausystem.features.simulator2.data.tnt.TNTPhase; import de.steamwar.bausystem.features.simulator2.gui.base.SimulatorBaseGui; @@ -53,15 +52,13 @@ public class SimulatorTNTGui extends SimulatorScrollGui { @Override public void headerAndFooter() { - // TODO Back Jump + tntElement.sort(); // Back Arrow inventory.setItem(0, new SWItem(Material.ARROW, "§eBack", clickType -> { back.open(); })); - // TODO Sort Data List - // Material Chooser List lore = new ArrayList<>(); lore.add("§7Phase count§8:§e " + data.size()); diff --git a/BauSystem_Main/src/de/steamwar/bausystem/features/simulator2/gui/base/SimulatorScrollGui.java b/BauSystem_Main/src/de/steamwar/bausystem/features/simulator2/gui/base/SimulatorScrollGui.java index ab1bd0a7..d23d491b 100644 --- a/BauSystem_Main/src/de/steamwar/bausystem/features/simulator2/gui/base/SimulatorScrollGui.java +++ b/BauSystem_Main/src/de/steamwar/bausystem/features/simulator2/gui/base/SimulatorScrollGui.java @@ -19,18 +19,15 @@ package de.steamwar.bausystem.features.simulator2.gui.base; -import de.steamwar.bausystem.features.simulator2.SimulatorWatcher; + import de.steamwar.bausystem.features.simulator2.data.Simulator; -import de.steamwar.bausystem.features.simulator2.data.redstone.RedstonePhase; import de.steamwar.core.Core; import de.steamwar.inventory.SWItem; -import org.bukkit.Material; import org.bukkit.entity.Player; -import java.util.Arrays; import java.util.List; -public abstract class SimulatorScrollGui extends SimulatorBaseGui { // TODO: Last Column? +public abstract class SimulatorScrollGui extends SimulatorBaseGui { protected int scroll = 0; protected final List data;