diff --git a/src/main/java/ru/dbotthepony/mc/otm/screen/MatterPanelScreen.java b/src/main/java/ru/dbotthepony/mc/otm/screen/MatterPanelScreen.java index d21a3870c..13395d769 100644 --- a/src/main/java/ru/dbotthepony/mc/otm/screen/MatterPanelScreen.java +++ b/src/main/java/ru/dbotthepony/mc/otm/screen/MatterPanelScreen.java @@ -214,7 +214,7 @@ public class MatterPanelScreen extends MatteryScreen { } private void openTask(MatterTask task) { - var task_frame = new FramePanel(this, null, 0, 0, MODAL_WIDTH, MODAL_HEIGHT, new TranslatableComponent("otm.container.matter_panel.task")) { + var task_frame = new FramePanel(this, null, 0, 0, 170, 40, new TranslatableComponent("otm.container.matter_panel.task")) { @Override public void tick() { super.tick(); @@ -225,19 +225,7 @@ public class MatterPanelScreen extends MatteryScreen { } }; - var row_1 = new EditablePanel(this, task_frame); - var row_2 = new EditablePanel(this, task_frame); - - row_1.setHeight(18); - row_2.setHeight(20); - - row_1.setDocking(Dock.TOP); - row_2.setDocking(Dock.TOP); - - row_1.setDockMargin(0, 2, 0, 0); - row_2.setDockMargin(0, 2, 0, 0); - - var slot = new AbstractSlotPanel(this, row_1, 0, 0) { + var slot = new AbstractSlotPanel(this, task_frame, 0, 0) { @Nonnull @Override protected ItemStack getItemStack() { @@ -266,12 +254,12 @@ public class MatterPanelScreen extends MatteryScreen { slot.setDocking(Dock.LEFT); - var button = new ButtonPanel(this, row_2, 0, 0, 40, 20, new TranslatableComponent("otm.container.matter_panel.close")); + var button = new ButtonPanel(this, task_frame, 0, 0, 40, 20, new TranslatableComponent("otm.container.matter_panel.close")); button.setDocking(Dock.RIGHT); button.setDockMargin(2, 0, 0, 0); button.bindOnPress(task_frame::remove); - button = new ButtonPanel(this, row_2, 0, 0, 80, 20, new TranslatableComponent("otm.container.matter_panel.cancel_task")); + button = new ButtonPanel(this, task_frame, 0, 0, 80, 20, new TranslatableComponent("otm.container.matter_panel.cancel_task")); button.setDocking(Dock.RIGHT); button.setDockMargin(2, 0, 0, 0); button.bindOnPress(() -> { @@ -284,7 +272,17 @@ public class MatterPanelScreen extends MatteryScreen { } private void openPattern(PatternState state) { - var pattern_frame = new FramePanel(this, null, 0, 0, MODAL_WIDTH, MODAL_HEIGHT, new TranslatableComponent("otm.container.matter_panel.label")); + var pattern_frame = new FramePanel(this, null, 0, 0, MODAL_WIDTH, MODAL_HEIGHT, new TranslatableComponent("otm.container.matter_panel.label")){ + @Override + public void tick() { + super.tick(); + + if (!menu.patterns.contains(state)) { + remove(); + } + } + }; + var row_1 = new EditablePanel(this, pattern_frame); var row_2 = new EditablePanel(this, pattern_frame); var row_3 = new EditablePanel(this, pattern_frame); diff --git a/src/main/java/ru/dbotthepony/mc/otm/screen/panels/ButtonPanel.java b/src/main/java/ru/dbotthepony/mc/otm/screen/panels/ButtonPanel.java index aedf582b8..ba87a2827 100644 --- a/src/main/java/ru/dbotthepony/mc/otm/screen/panels/ButtonPanel.java +++ b/src/main/java/ru/dbotthepony/mc/otm/screen/panels/ButtonPanel.java @@ -12,7 +12,7 @@ public class ButtonPanel extends MinecraftWidgetPanel