Add click on SimulatorMaterialGui to change material

This commit is contained in:
2025-03-13 16:53:37 +01:00
parent 30cb09c127
commit 34e4cd7060
2 changed files with 16 additions and 0 deletions
@@ -53,6 +53,16 @@ public class SimulatorMaterialGui extends SimulatorPageGui<Material> {
this.back = back; this.back = back;
} }
@Override
public boolean shouldOpen() {
if (player.getItemOnCursor().getType().isAir()) {
return true;
}
change.accept(player.getItemOnCursor().getType());
SimulatorWatcher.update(simulator);
return false;
}
@Override @Override
public String baseTitle() { public String baseTitle() {
return "Material"; return "Material";
@@ -46,6 +46,8 @@ public abstract class SimulatorBaseGui {
} }
public final void open() { public final void open() {
if (!shouldOpen()) return;
String newTitle = title(); String newTitle = title();
String originalTitle = player.getOpenInventory().getTitle(); String originalTitle = player.getOpenInventory().getTitle();
@@ -86,6 +88,10 @@ public abstract class SimulatorBaseGui {
inventory.open(); inventory.open();
} }
public boolean shouldOpen() {
return true;
}
private void setup() { private void setup() {
for (int i = 0; i < 9; i++) { for (int i = 0; i < 9; i++) {
inventory.setItem(i, new SWItem(Material.GRAY_STAINED_GLASS_PANE, "§8", clickType -> { inventory.setItem(i, new SWItem(Material.GRAY_STAINED_GLASS_PANE, "§8", clickType -> {