From 66f5ce7a2ccfd08f5667da2bb29afe415cf934ef Mon Sep 17 00:00:00 2001 From: Fernando Pettinelli Date: Tue, 19 Jan 2021 21:48:49 -0300 Subject: [PATCH 1/2] Fixed roulette, added configurable roulette length multiplier. --- .../ultimatekits/gui/AnimatedKitGui.java | 22 ++++--------------- .../com/songoda/ultimatekits/kit/Kit.java | 2 +- .../ultimatekits/settings/Settings.java | 3 +++ 3 files changed, 8 insertions(+), 19 deletions(-) diff --git a/src/main/java/com/songoda/ultimatekits/gui/AnimatedKitGui.java b/src/main/java/com/songoda/ultimatekits/gui/AnimatedKitGui.java index 903844b..e026ca9 100644 --- a/src/main/java/com/songoda/ultimatekits/gui/AnimatedKitGui.java +++ b/src/main/java/com/songoda/ultimatekits/gui/AnimatedKitGui.java @@ -72,7 +72,7 @@ public class AnimatedKitGui extends Gui { int updatesPerSlow = 6; if (++updateTick >= updatesPerSlow) { updateTick = 0; - int ticksPerUpdateSlow = 10; + int ticksPerUpdateSlow = Settings.ROULETTE_LENGTH_MULTIPLIER.getInt(); if (++ticksPerUpdate >= ticksPerUpdateSlow) { finish = true; } @@ -92,17 +92,17 @@ public class AnimatedKitGui extends Gui { items.removeLast(); Iterator itemIter = items.iterator(); for (int i = 9; i < 18; i++) { - setItem(0, i, itemIter.next().getItemForDisplay()); + setItem(0, i, itemIter.next().getItem()); } } // should we try to wrap it up? if (finish) { ItemStack item = getItem(13); - KitItem kitItem = items.stream().filter(i -> isSimilar(item, i)).findFirst().orElse(null); + KitItem kitItem = items.stream().filter(i -> i.getItem().isSimilar(item)).findFirst().orElse(null); if (item == null) { done = true; // idk. - } else if (isSimilar(give, kitItem)) { + } else if (item.isSimilar(give)) { if (!done) { done = true; if (!Settings.AUTO_EQUIP_ARMOR_ROULETTE.getBoolean() || !ArmorType.equip(player, give)) { @@ -129,20 +129,6 @@ public class AnimatedKitGui extends Gui { } - private boolean isSimilar(ItemStack item, KitItem kitItem) { - if (kitItem == null) return false; - switch (kitItem.getType()) { - case COMMAND: - case ECONOMY: - System.out.println("1 " + item.getItemMeta().getLore()); - System.out.println("2 " + kitItem.getItemForDisplay().getItemMeta().getLore()); - System.out.println(item.getItemMeta().getLore().get(0).equals(kitItem.getItemForDisplay().getItemMeta().getLore())); - return item.getItemMeta().getLore().get(0).equals(kitItem.getItemForDisplay().getItemMeta().getLore()); - default: - return item.isSimilar(kitItem.getItemForDisplay()); - } - } - private void finish() { Bukkit.getScheduler().cancelTask(task); exit(); diff --git a/src/main/java/com/songoda/ultimatekits/kit/Kit.java b/src/main/java/com/songoda/ultimatekits/kit/Kit.java index a3478ee..c2fb9ac 100644 --- a/src/main/java/com/songoda/ultimatekits/kit/Kit.java +++ b/src/main/java/com/songoda/ultimatekits/kit/Kit.java @@ -327,7 +327,7 @@ public class Kit { if (kitAnimation != KitAnimation.NONE) { // TODO: this is a very bad way to solve this problem. // Giving the player kit rewards really should be done outside of the Kit class. - plugin.getGuiManager().showGUI(player, new AnimatedKitGui(plugin, player, this, item.getItemForDisplay())); + plugin.getGuiManager().showGUI(player, new AnimatedKitGui(plugin, player, this, item.getItem())); return true; } else { ItemStack parseStack = item.getContent().process(player); diff --git a/src/main/java/com/songoda/ultimatekits/settings/Settings.java b/src/main/java/com/songoda/ultimatekits/settings/Settings.java index 876671d..43671c0 100644 --- a/src/main/java/com/songoda/ultimatekits/settings/Settings.java +++ b/src/main/java/com/songoda/ultimatekits/settings/Settings.java @@ -24,6 +24,9 @@ public class Settings { public static final ConfigSetting STARTER_KIT = new ConfigSetting(config, "Main.Starter Kit", "none"); public static final ConfigSetting KEY_MATERIAL = new ConfigSetting(config, "Main.Key Material", "TRIPWIRE_HOOK", "What type of material should be used for kit keys?"); + public static final ConfigSetting ROULETTE_LENGTH_MULTIPLIER = new ConfigSetting(config, "Main.Roulette Length Multiplier", 10, + "This affects the roulette animation length.", + "Lower value is a lower length, and vice-versa."); public static final ConfigSetting ECONOMY_PLUGIN = new ConfigSetting(config, "Main.Economy", EconomyManager.getEconomy() == null ? "Vault" : EconomyManager.getEconomy().getName(), "Which economy plugin should be used?", From 42e11e8f7e0726e04ac1854197ae013473b6a367 Mon Sep 17 00:00:00 2001 From: Fernando Pettinelli Date: Tue, 19 Jan 2021 21:57:08 -0300 Subject: [PATCH 2/2] Version 2.6.13 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index da357d2..b8a9c77 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ com.songoda UltimateKits 4.0.0 - 2.6.12b + 2.6.13 clean install UltimateKits-${project.version}