From 39cbfde76f07fd31213c220915230a72e9f30a9f Mon Sep 17 00:00:00 2001 From: aro Date: Tue, 8 Nov 2022 14:44:12 +0100 Subject: [PATCH] refator: streamline anvilmanager --- .../artelnatif/nicko/anvil/AnvilManager.java | 50 +++++++------------ .../gui/items/main/ChangeNameAndSkinItem.java | 2 +- 2 files changed, 19 insertions(+), 33 deletions(-) diff --git a/nicko-core/src/main/java/net/artelnatif/nicko/anvil/AnvilManager.java b/nicko-core/src/main/java/net/artelnatif/nicko/anvil/AnvilManager.java index 9a6141a..7bed31e 100644 --- a/nicko-core/src/main/java/net/artelnatif/nicko/anvil/AnvilManager.java +++ b/nicko-core/src/main/java/net/artelnatif/nicko/anvil/AnvilManager.java @@ -2,7 +2,6 @@ package net.artelnatif.nicko.anvil; import net.artelnatif.nicko.NickoBukkit; import net.artelnatif.nicko.disguise.AppearanceManager; -import net.artelnatif.nicko.disguise.NickoProfile; import net.artelnatif.nicko.disguise.UpdateResult; import net.artelnatif.nicko.i18n.I18N; import net.artelnatif.nicko.i18n.I18NDict; @@ -15,45 +14,37 @@ import org.bukkit.inventory.meta.ItemMeta; public class AnvilManager { private final Player player; - private final NickoProfile profile; private final AppearanceManager appearanceManager; public AnvilManager(Player player) { this.player = player; this.appearanceManager = AppearanceManager.get(player); - this.profile = appearanceManager.getProfile(); } - public void openNameAndSkinAnvil() { - final AnvilGUI.Builder skin = getSkinAnvil(); - final AnvilGUI.Builder name = new AnvilGUI.Builder() - .plugin(NickoBukkit.getInstance()) - .itemLeft(getLeftItem()) - .onComplete((anvilPlayer, response) -> { - if (MojangUtils.isUsernameInvalid(response)) { - return AnvilGUI.Response.text("Invalid username!"); - } else { - profile.setName(response); - skin.open(player); - return AnvilGUI.Response.close(); - } - }) - .text("New name..."); + public void openNameThenSkinAnvil() { + openNameAnvil(); + openSkinAnvil(); + } - name.open(player); + public void openSkinAnvil() { + getSkinAnvil().open(player); } public void openNameAnvil() { - new AnvilGUI.Builder() + getNameAnvil().open(player); + } + + public AnvilGUI.Builder getNameAnvil() { + return new AnvilGUI.Builder() .plugin(NickoBukkit.getInstance()) - .itemLeft(getLeftItem()) + .itemLeft(getLeftItem(false)) .onComplete((anvilPlayer, response) -> { if (MojangUtils.isUsernameInvalid(response)) { return AnvilGUI.Response.text("Invalid username!"); } else { appearanceManager.setName(response); final UpdateResult updateResult = appearanceManager.updatePlayer(false); - if(updateResult.isError()) { + if (updateResult.isError()) { player.sendMessage(I18N.translate(player, I18NDict.Event.DISGUISE_SUCCESS)); } else { player.sendMessage(I18N.translate(player, I18NDict.Event.DISGUISE_FAIL)); @@ -61,25 +52,20 @@ public class AnvilManager { return AnvilGUI.Response.close(); } }) - .text("New name...") - .open(player); - } - - public void openSkinAnvil() { - getSkinAnvil().open(player); + .text("New name..."); } private AnvilGUI.Builder getSkinAnvil() { return new AnvilGUI.Builder() .plugin(NickoBukkit.getInstance()) - .itemLeft(getLeftItem()) + .itemLeft(getLeftItem(true)) .onComplete((anvilPlayer, response) -> { if (MojangUtils.isUsernameInvalid(response)) { return AnvilGUI.Response.text("Invalid username!"); } else { appearanceManager.setSkin(response); final UpdateResult updateResult = appearanceManager.updatePlayer(true); - if(!updateResult.isError()) { + if (!updateResult.isError()) { player.sendMessage(I18N.translate(player, I18NDict.Event.DISGUISE_SUCCESS)); } else { player.sendMessage(I18N.translate(player, I18NDict.Event.DISGUISE_FAIL)); @@ -90,10 +76,10 @@ public class AnvilManager { .text("New skin..."); } - private ItemStack getLeftItem() { + private ItemStack getLeftItem(boolean skin) { final ItemStack item = new ItemStack(Material.PAPER); final ItemMeta meta = item.getItemMeta(); - meta.setDisplayName("§0ID"); + meta.setDisplayName("§0New " + (skin ? "skin" : "name") + "..."); item.setItemMeta(meta); return item; } diff --git a/nicko-core/src/main/java/net/artelnatif/nicko/gui/items/main/ChangeNameAndSkinItem.java b/nicko-core/src/main/java/net/artelnatif/nicko/gui/items/main/ChangeNameAndSkinItem.java index a87e364..833531a 100644 --- a/nicko-core/src/main/java/net/artelnatif/nicko/gui/items/main/ChangeNameAndSkinItem.java +++ b/nicko-core/src/main/java/net/artelnatif/nicko/gui/items/main/ChangeNameAndSkinItem.java @@ -24,7 +24,7 @@ public class ChangeNameAndSkinItem extends BaseItem { if (clickType.isLeftClick() || clickType.isRightClick()) { event.getView().close(); final AnvilManager manager = new AnvilManager(player); - manager.openNameAndSkinAnvil(); + manager.openNameThenSkinAnvil(); } } }