Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package org.broken.cheststorage.util;
- import me.jet315.jetshoppers.JetsHoppersPlugin;
- import me.jet315.jetshoppers.api.JetsHopper;
- import me.jet315.jetshoppers.utils.XMaterialObject;
- import org.broken.cheststorage.Settings.ChatMessages;
- import org.broken.cheststorage.Settings.LoadSettingsContainers;
- import org.broken.cheststorage.cache.ContainerRegistry;
- import org.broken.cheststorage.tempCache.TempStoreContainerRegistry;
- import org.bukkit.Location;
- import org.bukkit.Material;
- import org.bukkit.conversations.ConversationAbandonedEvent;
- import org.bukkit.conversations.ConversationContext;
- import org.bukkit.conversations.Prompt;
- import org.bukkit.entity.Player;
- import org.bukkit.inventory.ItemStack;
- import org.jetbrains.annotations.NotNull;
- import org.jetbrains.annotations.Nullable;
- import org.mineacademy.fo.conversation.SimpleConversation;
- import org.mineacademy.fo.conversation.SimplePrompt;
- import java.math.BigInteger;
- import java.util.ArrayList;
- import java.util.List;
- import java.util.Map;
- public class ImportdataFromJetshopperUtility extends SimpleConversation {
- private final TempStoreContainerRegistry tempStoreContainerRegistry = TempStoreContainerRegistry.getInstance();
- public ImportdataFromJetshopperUtility(String containerFiles) {
- containerFile = containerFiles;
- level = "";
- }
- static private String containerFile = "";
- static private String containerFileManual = "";
- static private String newLevel = "";
- static private String level = "";
- @Override
- protected Prompt getFirstPrompt() {
- if (!(containerFile == null) || (containerFile != null && !containerFile.equals(""))) {
- return new startimportDataJetsHoppers();
- }
- return new startimportDataManualInputOfFileNames();
- }
- @Override
- protected void onConversationEnd(ConversationAbandonedEvent event, boolean canceledFromInactivity) {
- super.onConversationEnd(event, canceledFromInactivity);
- }
- private class startimportDataManualInputOfFileNames extends SimplePrompt {
- @Override
- protected String getPrompt(ConversationContext conversationContext) {
- return "&aType in the filename you want to use, you has this ones in the folder&6 " + LoadSettingsContainers.getInstance().getFoldersNameInCache() + ". &aand when you whant to change folder write new";
- }
- @Override
- protected @Nullable Prompt acceptValidatedInput(@NotNull ConversationContext conversationContext, @NotNull String s) {
- if (s.equals("exit") || s.equals("quit"))
- return null;
- conversationContext.getAllSessionData().remove("Asked_startimportDataJetsHoppers");
- containerFileManual = s;
- level = "";
- return new startimportDataJetsHoppers();
- }
- }
- private class startimportDataJetsHoppers extends SimplePrompt {
- @Override
- protected String getPrompt(ConversationContext conversationContext) {
- Player player = (Player) conversationContext.getForWhom();
- ChatMessages.START_IMPORT_JETSHOPPER.sendMessage(player);
- conversationContext.getAllSessionData().remove("Asked_startimportDataManualInputOfFileNames");
- for (Map.Entry<Location, JetsHopper> entitys : JetsHoppersPlugin.getInstance().getJetsHopperManager().getRegisteredHoppers().entrySet()) {
- JetsHopper jetsHopper = entitys.getValue();
- if (!jetsHopper.getLevel().equals(level)) {
- level = jetsHopper.getLevel();
- return ChatMessages.TYPE_THE_NEW_LEVEL_YOU_WANTS.languageMessages(jetsHopper.getLevel());
- }
- }
- return null;
- }
- @Override
- protected @Nullable Prompt acceptValidatedInput(@NotNull ConversationContext conversationContext, @NotNull String s) {
- Player player = (Player) conversationContext.getForWhom();
- if (!s.equals("new")) {
- for (Map.Entry<Location, JetsHopper> entitys : JetsHoppersPlugin.getInstance().getJetsHopperManager().getRegisteredHoppers().entrySet()) {
- JetsHopper jetsHopper = entitys.getValue();
- if (jetsHopper.getLevel().equals(level)) {
- tempStoreContainerRegistry.addTempFiles(entitys.getKey(), new TempStoreContainerRegistry.TempStoreChestData(entitys.getValue().getOwner(), s,
- ContainerRegistry.TypeOfContainer.LINKEDCONTAINER, containerFile != null && !containerFile.equals("") ? containerFile : containerFileManual, 0,
- jetsHopper.whitelistedItems() != null && !jetsHopper.whitelistedItems().isEmpty(), transformItemsToItemstack(jetsHopper.whitelistedItems() != null && !jetsHopper.whitelistedItems().isEmpty() ? jetsHopper.whitelistedItems() : jetsHopper.blacklistedItems()), new ItemStack[]{ItemUtily.createItemStack()}, new ArrayList<>(), BigInteger.ZERO));
- }
- }
- ChatMessages.HAS_IMPORTED_ONE_LEVEL_TYPE.sendMessage(player, level, s);
- }
- if (s.equals("quit") || s.equals("exit"))
- return null;
- if (!s.equals("new") && (containerFile == null || containerFile.equals(""))) {
- return new startimportDataJetsHoppers();
- } else {
- return getFirstPrompt();
- }
- }
- }
- private ItemStack[] transformItemsToItemstack(ArrayList<XMaterialObject> items) {
- List<ItemStack> itemStackList = new ArrayList<>();
- for (XMaterialObject item : items) {
- Material material = Material.valueOf(item.getxMaterial().toString());
- itemStackList.add(new ItemStack(material));
- }
- return itemStackList.toArray(new ItemStack[0]);
- }
- public String getContainerFile() {
- return containerFile;
- }
- public String getNewLevel() {
- return newLevel;
- }
- public void setContainerFile(String containerFiles) {
- containerFile = containerFiles;
- }
- public void setNewLevel(String newLevels) {
- newLevel = newLevels;
- }
- }
Add Comment
Please, Sign In to add comment