Fix rankup gui

This commit is contained in:
okx-code
2021-11-07 15:04:59 +00:00
parent 154e618cf2
commit 1e5e09d7c1
3 changed files with 20 additions and 17 deletions
+15 -1
View File
@@ -52,7 +52,8 @@ public class Gui implements InventoryHolder {
return null; return null;
} }
ItemStack[] items = new ItemStack[config.getInt("rows", 1) * 9]; Integer rows = Gui.getInt(config, "rows");
ItemStack[] items = new ItemStack[(rows == null ? 1 : rows) * 9];
ItemStack fill = getItem(plugin, plugin.getSection(oldRank, basePath + ".fill"), player, ItemStack fill = getItem(plugin, plugin.getSection(oldRank, basePath + ".fill"), player,
oldRank, rank); oldRank, rank);
@@ -167,6 +168,19 @@ public class Gui implements InventoryHolder {
} }
} }
public static Integer getInt(ConfigurationSection section, String key) {
String string = section.getString(key);
if (string == null) {
return null;
} else {
try {
return Integer.parseInt(string);
} catch (IllegalArgumentException ex) {
return null;
}
}
}
public void open(Player player) { public void open(Player player) {
player.openInventory(inventory); player.openInventory(inventory);
} }
@@ -35,9 +35,9 @@ public class RanksGui {
ConfigurationSection basePath = plugin.getMessages().getConfigurationSection("rankup.ranksgui"); ConfigurationSection basePath = plugin.getMessages().getConfigurationSection("rankup.ranksgui");
String title = get(ConfigurationSection::getString, "title", playerPath, basePath, "Ranks"); String title = get(ConfigurationSection::getString, "title", playerPath, basePath, "Ranks");
int rows = get(this::getInt, "rows", playerPath, basePath, 3); int rows = get(Gui::getInt, "rows", playerPath, basePath, 3);
int offset = get(this::getInt, "offset", playerPath, basePath, 10); int offset = get(Gui::getInt, "offset", playerPath, basePath, 10);
int width = get(this::getInt, "width", playerPath, basePath, 7); int width = get(Gui::getInt, "width", playerPath, basePath, 7);
inventory = Bukkit.createInventory(null, rows * 9, Colour.translate(title)); inventory = Bukkit.createInventory(null, rows * 9, Colour.translate(title));
@@ -87,18 +87,6 @@ public class RanksGui {
player.openInventory(inventory); player.openInventory(inventory);
} }
private Integer getInt(ConfigurationSection section, String key) {
String string = section.getString(key);
if (string == null) {
return null;
} else {
try {
return Integer.parseInt(string);
} catch (IllegalArgumentException ex) {
return null;
}
}
}
private <T> T get(BiFunction<ConfigurationSection, String, T> fun, String path, ConfigurationSection primary, ConfigurationSection secondary, T def) { private <T> T get(BiFunction<ConfigurationSection, String, T> fun, String path, ConfigurationSection primary, ConfigurationSection secondary, T def) {
T get = null; T get = null;
+2 -1
View File
@@ -10,6 +10,7 @@ import java.nio.file.Files;
import java.nio.file.Path; import java.nio.file.Path;
import java.nio.file.SimpleFileVisitor; import java.nio.file.SimpleFileVisitor;
import java.nio.file.attribute.BasicFileAttributes; import java.nio.file.attribute.BasicFileAttributes;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.BeforeEach;
import sh.okx.rankup.providers.TestEconomyProvider; import sh.okx.rankup.providers.TestEconomyProvider;
import sh.okx.rankup.hook.GroupProvider; import sh.okx.rankup.hook.GroupProvider;
@@ -76,7 +77,7 @@ public abstract class RankupTest {
} }
} }
@BeforeEach @AfterEach
public void tearDown() { public void tearDown() {
MockBukkit.unmock(); MockBukkit.unmock();
System.clearProperty("RANKUP_TEST"); System.clearProperty("RANKUP_TEST");