diff --git a/src/main/java/us/mytheria/bloblib/entities/inventory/BlobButtonManager.java b/src/main/java/us/mytheria/bloblib/entities/inventory/BlobButtonManager.java index 4d2cb020..08181a33 100644 --- a/src/main/java/us/mytheria/bloblib/entities/inventory/BlobButtonManager.java +++ b/src/main/java/us/mytheria/bloblib/entities/inventory/BlobButtonManager.java @@ -45,6 +45,11 @@ public Set get(String key) { return getStringKeys().get(key); } + @Override + public Collection keys() { + return getStringKeys().keySet(); + } + @Override public ItemStack get(int key) { return getIntegerKeys().get(key); diff --git a/src/main/java/us/mytheria/bloblib/entities/inventory/BlobInventory.java b/src/main/java/us/mytheria/bloblib/entities/inventory/BlobInventory.java index e234e47c..365d46e4 100644 --- a/src/main/java/us/mytheria/bloblib/entities/inventory/BlobInventory.java +++ b/src/main/java/us/mytheria/bloblib/entities/inventory/BlobInventory.java @@ -99,7 +99,7 @@ public BlobInventory(File file) { public BlobInventory() { } - public void addDefaultButtons(String key) { + public void addDefaultButton(String key) { for (Integer i : getSlots(key)) { addDefaultButton(key, getButton(i)); break; @@ -108,6 +108,9 @@ public void addDefaultButtons(String key) { public void loadDefaultButtons() { setDefaultButtons(new HashMap<>()); + getKeys().forEach(key -> { + addDefaultButton(key); + }); } public void addDefaultButton(String name, ItemStack item) { diff --git a/src/main/java/us/mytheria/bloblib/entities/inventory/ButtonManagerMethods.java b/src/main/java/us/mytheria/bloblib/entities/inventory/ButtonManagerMethods.java index ac351a36..b75cd0c2 100644 --- a/src/main/java/us/mytheria/bloblib/entities/inventory/ButtonManagerMethods.java +++ b/src/main/java/us/mytheria/bloblib/entities/inventory/ButtonManagerMethods.java @@ -19,4 +19,6 @@ public interface ButtonManagerMethods { Collection buttons(); boolean add(ConfigurationSection section); + + Collection keys(); } diff --git a/src/main/java/us/mytheria/bloblib/entities/inventory/InventoryBuilder.java b/src/main/java/us/mytheria/bloblib/entities/inventory/InventoryBuilder.java index ee227538..633f37ca 100644 --- a/src/main/java/us/mytheria/bloblib/entities/inventory/InventoryBuilder.java +++ b/src/main/java/us/mytheria/bloblib/entities/inventory/InventoryBuilder.java @@ -2,6 +2,7 @@ import org.bukkit.inventory.ItemStack; +import java.util.Collection; import java.util.Set; public abstract class InventoryBuilder { @@ -40,4 +41,8 @@ public Set getSlots(String key) { public ItemStack getButton(int slot) { return buttonManager.get(slot); } + + public Collection getKeys() { + return buttonManager.keys(); + } } diff --git a/src/main/java/us/mytheria/bloblib/entities/inventory/VariableSelector.java b/src/main/java/us/mytheria/bloblib/entities/inventory/VariableSelector.java index e9e836fe..4c741f27 100644 --- a/src/main/java/us/mytheria/bloblib/entities/inventory/VariableSelector.java +++ b/src/main/java/us/mytheria/bloblib/entities/inventory/VariableSelector.java @@ -41,11 +41,6 @@ public VariableSelector(BlobInventory blobInventory, UUID builderId, loadPage(page, false); } - @Override - public void loadDefaultButtons() { - setDefaultButtons(new HashMap<>()); - } - public void loadPage(int page, boolean refill) { if (page < 1) return;