commit c246fb01873fdccd5116e8122e9740be70ce5313 Author: morpheus Date: Mon Nov 3 23:08:12 2025 -0300 Primeira versão do plugin diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..13566b8 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,8 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Editor-based HTTP Client requests +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/.idea/compiler.xml b/.idea/compiler.xml new file mode 100644 index 0000000..ccf9ebd --- /dev/null +++ b/.idea/compiler.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/dictionaries/project.xml b/.idea/dictionaries/project.xml new file mode 100644 index 0000000..7a83351 --- /dev/null +++ b/.idea/dictionaries/project.xml @@ -0,0 +1,7 @@ + + + + inventario + + + \ No newline at end of file diff --git a/.idea/encodings.xml b/.idea/encodings.xml new file mode 100644 index 0000000..aa00ffa --- /dev/null +++ b/.idea/encodings.xml @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/.idea/jarRepositories.xml b/.idea/jarRepositories.xml new file mode 100644 index 0000000..3711ca3 --- /dev/null +++ b/.idea/jarRepositories.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..1c4a4f6 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..5e13a26 --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..94a25f7 --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/backpack-infinita.iml b/backpack-infinita.iml new file mode 100644 index 0000000..bbeeb3e --- /dev/null +++ b/backpack-infinita.iml @@ -0,0 +1,14 @@ + + + + + + + PAPER + ADVENTURE + + 1 + + + + \ No newline at end of file diff --git a/dependency-reduced-pom.xml b/dependency-reduced-pom.xml new file mode 100644 index 0000000..ce4ed68 --- /dev/null +++ b/dependency-reduced-pom.xml @@ -0,0 +1,57 @@ + + + 4.0.0 + shop.morpheusnox + backpack-infinita + backpack-infinita + 1.1 + + clean package + + + true + src/main/resources + + + + + maven-compiler-plugin + 3.13.0 + + ${java.version} + ${java.version} + + + + maven-shade-plugin + 3.5.3 + + + package + + shade + + + + + + + + + purpur + https://repo.purpurmc.org/snapshots + + + + + org.purpurmc.purpur + purpur-api + 1.21.10-R0.1-SNAPSHOT + provided + + + + 21 + UTF-8 + + diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..e4ae509 --- /dev/null +++ b/pom.xml @@ -0,0 +1,73 @@ + + + 4.0.0 + + shop.morpheusnox + backpack-infinita + 1.1 + jar + + backpack-infinita + + + 21 + UTF-8 + + + + clean package + + + org.apache.maven.plugins + maven-compiler-plugin + 3.13.0 + + ${java.version} + ${java.version} + + + + org.apache.maven.plugins + maven-shade-plugin + 3.5.3 + + + package + + shade + + + + + + + + src/main/resources + true + + + + + + + purpur + https://repo.purpurmc.org/snapshots + + + + + + org.purpurmc.purpur + purpur-api + 1.21.10-R0.1-SNAPSHOT + provided + + + org.xerial + sqlite-jdbc + 3.44.1.0 + + + diff --git a/src/main/java/shop/morpheusnox/backpackInfinita/Backpack.java b/src/main/java/shop/morpheusnox/backpackInfinita/Backpack.java new file mode 100644 index 0000000..ed4babb --- /dev/null +++ b/src/main/java/shop/morpheusnox/backpackInfinita/Backpack.java @@ -0,0 +1,187 @@ +package shop.morpheusnox.backpackInfinita; + +import org.bukkit.Bukkit; +import org.bukkit.Material; +import org.bukkit.entity.Player; +import org.bukkit.inventory.Inventory; +import org.bukkit.inventory.ItemStack; +import org.bukkit.inventory.meta.ItemMeta; +import org.bukkit.util.io.BukkitObjectInputStream; +import org.bukkit.util.io.BukkitObjectOutputStream; +import org.yaml.snakeyaml.external.biz.base64Coder.Base64Coder; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Iterator; +import java.util.List; + +public class Backpack { + + private final Player player; + private final Inventory inventoryView; + private final List internalContents; + private int currentPage; + public static final int ITEMS_PER_PAGE = 45; // 54 slots no total - 9 para navegação + + public Backpack(Player player) { + this.player = player; + this.inventoryView = Bukkit.createInventory(null, 54, "Mochila"); + this.internalContents = new ArrayList<>(); + this.currentPage = 0; + } + + public Inventory getInventoryView() { + return inventoryView; + } + + public List getInternalContents() { + return internalContents; + } + + public int getCurrentPage() { + return currentPage; + } + + public void setCurrentPage(int currentPage) { + this.currentPage = currentPage; + } + + public int getTotalPages() { + return (int) Math.ceil((double) internalContents.size() / ITEMS_PER_PAGE); + } + + public void open() { + inventoryView.clear(); + + int startIndex = currentPage * ITEMS_PER_PAGE; + int endIndex = Math.min(startIndex + ITEMS_PER_PAGE, internalContents.size()); + + for (int i = startIndex; i < endIndex; i++) { + ItemStack item = internalContents.get(i); + ItemStack displayItem = item.clone(); + if (displayItem.getAmount() > displayItem.getMaxStackSize()) { + // Adiciona lore para mostrar a quantidade real + List lore = displayItem.hasItemMeta() && displayItem.getItemMeta().hasLore() ? displayItem.getItemMeta().getLore() : new ArrayList<>(); + lore.add("§7Quantidade: §a" + item.getAmount()); + ItemMeta meta = displayItem.getItemMeta(); + meta.setLore(lore); + displayItem.setItemMeta(meta); + displayItem.setAmount(displayItem.getMaxStackSize()); // Exibe o tamanho máximo da pilha na GUI + } + inventoryView.addItem(displayItem); + } + + // Adiciona botões de navegação + addNavigationButtons(); + + player.openInventory(inventoryView); + } + + private void addNavigationButtons() { + // Botão Página Anterior + ItemStack prevPage = new ItemStack(Material.ARROW); + ItemMeta prevMeta = prevPage.getItemMeta(); + prevMeta.setDisplayName("§aPágina Anterior"); + prevPage.setItemMeta(prevMeta); + inventoryView.setItem(45, prevPage); + + // Informação da Página Atual + ItemStack pageInfo = new ItemStack(Material.PAPER); + ItemMeta infoMeta = pageInfo.getItemMeta(); + infoMeta.setDisplayName("§ePágina " + (currentPage + 1) + "/" + (getTotalPages() == 0 ? 1 : getTotalPages())); + pageInfo.setItemMeta(infoMeta); + inventoryView.setItem(49, pageInfo); + + // Botão Próxima Página + ItemStack nextPage = new ItemStack(Material.ARROW); + ItemMeta nextMeta = nextPage.getItemMeta(); + nextMeta.setDisplayName("§aPróxima Página"); + nextPage.setItemMeta(nextMeta); + inventoryView.setItem(53, nextPage); + } + + public void nextPage() { + if (currentPage < getTotalPages() - 1) { + currentPage++; + open(); + } + } + + public void previousPage() { + if (currentPage > 0) { + currentPage--; + open(); + } + } + + public void addItem(ItemStack item) { + for (ItemStack existingItem : internalContents) { + if (existingItem.isSimilar(item)) { + existingItem.setAmount(existingItem.getAmount() + item.getAmount()); + return; + } + } + internalContents.add(item.clone()); // Adiciona um clone para evitar modificar o itemstack original + } + + public void removeItem(ItemStack itemToRemove) { + Iterator iterator = internalContents.iterator(); + while (iterator.hasNext()) { + ItemStack existingItem = iterator.next(); + if (existingItem.isSimilar(itemToRemove)) { + if (existingItem.getAmount() <= itemToRemove.getAmount()) { + iterator.remove(); + } else { + existingItem.setAmount(existingItem.getAmount() - itemToRemove.getAmount()); + } + return; + } + } + } + + public String toBase64() { + try { + ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); + BukkitObjectOutputStream dataOutput = new BukkitObjectOutputStream(outputStream); + dataOutput.writeInt(internalContents.size()); + for (ItemStack item : internalContents) { + // Armazena a quantidade original + int originalAmount = item.getAmount(); + // Define a quantidade como 1 para serialização para evitar IllegalStateException + item.setAmount(1); + dataOutput.writeObject(item); + // Escreve a quantidade original separadamente + dataOutput.writeInt(originalAmount); + // Restaura a quantidade original (opcional, mas boa prática) + item.setAmount(originalAmount); + } + dataOutput.close(); + return Base64Coder.encodeLines(outputStream.toByteArray()); + } catch (Exception e) { + throw new IllegalStateException("Não foi possível salvar os itens da mochila.", e); + } + } + + public void fromBase64(String data) throws IOException { + if (data == null || data.isEmpty()) { + return; + } + try { + ByteArrayInputStream inputStream = new ByteArrayInputStream(Base64Coder.decodeLines(data)); + BukkitObjectInputStream dataInput = new BukkitObjectInputStream(inputStream); + int size = dataInput.readInt(); + for (int i = 0; i < size; i++) { + ItemStack item = (ItemStack) dataInput.readObject(); + int trueAmount = dataInput.readInt(); + item.setAmount(trueAmount); + internalContents.add(item); + } + dataInput.close(); + } catch (ClassNotFoundException e) { + throw new IOException("Não foi possível decodificar o tipo da classe.", e); + } + } +} diff --git a/src/main/java/shop/morpheusnox/backpackInfinita/BackpackCommand.java b/src/main/java/shop/morpheusnox/backpackInfinita/BackpackCommand.java new file mode 100644 index 0000000..f6bce4a --- /dev/null +++ b/src/main/java/shop/morpheusnox/backpackInfinita/BackpackCommand.java @@ -0,0 +1,34 @@ +package shop.morpheusnox.backpackInfinita; + +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +import java.io.IOException; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; + +public class BackpackCommand implements CommandExecutor { + + private final BackpackInfinita plugin; + + public BackpackCommand(BackpackInfinita plugin) { + this.plugin = plugin; + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + if (!(sender instanceof Player)) { + sender.sendMessage("Este comando só pode ser usado por jogadores."); + return true; + } + + Player player = (Player) sender; + Backpack backpack = plugin.getPlayerBackpack(player); + backpack.open(); + + return true; + } +} diff --git a/src/main/java/shop/morpheusnox/backpackInfinita/BackpackInfinita.java b/src/main/java/shop/morpheusnox/backpackInfinita/BackpackInfinita.java new file mode 100644 index 0000000..298ae40 --- /dev/null +++ b/src/main/java/shop/morpheusnox/backpackInfinita/BackpackInfinita.java @@ -0,0 +1,75 @@ +package shop.morpheusnox.backpackInfinita; + +import org.bukkit.entity.Player; +import org.bukkit.plugin.java.JavaPlugin; + +import java.io.IOException; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.util.HashMap; +import java.util.Map; +import java.util.UUID; + +public final class BackpackInfinita extends JavaPlugin { + + private Database database; + private Map playerBackpacks; + + @Override + public void onEnable() { + // Lógica de inicialização do plugin + this.database = new Database(this.getDataFolder()); + this.playerBackpacks = new HashMap<>(); + + this.getCommand("backpack").setExecutor(new BackpackCommand(this)); + this.getServer().getPluginManager().registerEvents(new BackpackListener(this), this); + } + + @Override + public void onDisable() { + // Lógica de desligamento do plugin + // Salva todas as mochilas em cache no banco de dados + for (Map.Entry entry : playerBackpacks.entrySet()) { + savePlayerBackpack(entry.getKey(), entry.getValue()); + } + } + + public Database getDatabase() { + return database; + } + + public Backpack getPlayerBackpack(Player player) { + UUID playerUUID = player.getUniqueId(); + if (playerBackpacks.containsKey(playerUUID)) { + return playerBackpacks.get(playerUUID); + } + + Backpack backpack = new Backpack(player); + try (PreparedStatement statement = getDatabase().getConnection().prepareStatement("SELECT items FROM backpacks WHERE uuid = ?")) { + statement.setString(1, playerUUID.toString()); + ResultSet resultSet = statement.executeQuery(); + if (resultSet.next()) { + backpack.fromBase64(resultSet.getString("items")); + } + } catch (SQLException | IOException e) { + e.printStackTrace(); + } + playerBackpacks.put(playerUUID, backpack); + return backpack; + } + + public void savePlayerBackpack(UUID playerUUID, Backpack backpack) { + try (PreparedStatement statement = getDatabase().getConnection().prepareStatement("REPLACE INTO backpacks (uuid, items) VALUES (?, ?)")) { + statement.setString(1, playerUUID.toString()); + statement.setString(2, backpack.toBase64()); + statement.executeUpdate(); + } catch (SQLException e) { + e.printStackTrace(); + } + } + + public void removePlayerBackpack(UUID playerUUID) { + playerBackpacks.remove(playerUUID); + } +} diff --git a/src/main/java/shop/morpheusnox/backpackInfinita/BackpackListener.java b/src/main/java/shop/morpheusnox/backpackInfinita/BackpackListener.java new file mode 100644 index 0000000..7b87805 --- /dev/null +++ b/src/main/java/shop/morpheusnox/backpackInfinita/BackpackListener.java @@ -0,0 +1,134 @@ +package shop.morpheusnox.backpackInfinita; + +import org.bukkit.Material; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.inventory.InventoryCloseEvent; +import org.bukkit.event.inventory.InventoryClickEvent; +import org.bukkit.event.player.PlayerQuitEvent; +import org.bukkit.inventory.ItemStack; +import org.bukkit.inventory.meta.ItemMeta; + +import java.io.IOException; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.Iterator; +import java.util.List; + +public class BackpackListener implements Listener { + + private final BackpackInfinita plugin; + + public BackpackListener(BackpackInfinita plugin) { + this.plugin = plugin; + } + + @EventHandler + public void onInventoryClick(InventoryClickEvent event) { + if (!event.getView().getTitle().equals("Mochila")) { + return; + } + + if (event.getCurrentItem() == null || event.getCurrentItem().getType().isAir()) { + return; + } + + Player player = (Player) event.getWhoClicked(); + Backpack backpack = plugin.getPlayerBackpack(player); + + event.setCancelled(true); + ItemStack clickedItem = event.getCurrentItem().clone(); + + // Lida com cliques nos botões de navegação + if (event.getClickedInventory() == event.getView().getTopInventory()) { + if (event.getSlot() == 45) { // Botão Página Anterior + backpack.previousPage(); + plugin.savePlayerBackpack(player.getUniqueId(), backpack); + backpack.open(); + return; + } else if (event.getSlot() == 53) { // Botão Próxima Página + backpack.nextPage(); + plugin.savePlayerBackpack(player.getUniqueId(), backpack); + backpack.open(); + return; + } else if (event.getSlot() == 49) { // Botão Informação da Página + return; // Não interativo + } + } + + // Lógica de transferência de itens + if (event.getClickedInventory() == event.getView().getTopInventory()) { + // Clicado na mochila (movendo para o inventário do jogador) + int internalIndex = backpack.getCurrentPage() * Backpack.ITEMS_PER_PAGE + event.getSlot(); + if (internalIndex >= backpack.getInternalContents().size()) { + return; // Clicou em um slot vazio na página atual + } + + ItemStack trueItem = backpack.getInternalContents().get(internalIndex).clone(); + + ItemStack itemToTransfer = trueItem.clone(); + // Remove o lore antes de transferir para o inventário do jogador + ItemMeta meta = itemToTransfer.getItemMeta(); + if (meta != null) { + if (meta.hasLore()) { + List lore = meta.getLore(); + lore.removeIf(line -> line.startsWith("§7Quantidade:")); + meta.setLore(lore); + } + if (meta.hasDisplayName()) { + meta.setDisplayName(null); + } + itemToTransfer.setItemMeta(meta); + } + + int amountToTransfer = itemToTransfer.getMaxStackSize(); + if (event.isShiftClick()) { + amountToTransfer = trueItem.getAmount(); + } + + itemToTransfer.setAmount(amountToTransfer); + + // Tenta adicionar ao inventário do jogador + int remaining = player.getInventory().addItem(itemToTransfer).values().stream() + .mapToInt(ItemStack::getAmount).sum(); + + if (remaining < amountToTransfer) { + // Alguns itens foram transferidos + ItemStack removedFromBackpack = trueItem.clone(); + removedFromBackpack.setAmount(amountToTransfer - remaining); + backpack.removeItem(removedFromBackpack); + } + + } else { + // Clicado no inventário do jogador (movendo para a mochila) + backpack.addItem(clickedItem); + event.getWhoClicked().getInventory().removeItem(clickedItem); + } + + // Atualiza a GUI da mochila + backpack.open(); + plugin.savePlayerBackpack(player.getUniqueId(), backpack); + } + + @EventHandler + public void onInventoryClose(InventoryCloseEvent event) { + if (!event.getView().getTitle().equals("Mochila")) { + return; + } + + Player player = (Player) event.getPlayer(); + Backpack backpack = plugin.getPlayerBackpack(player); + plugin.savePlayerBackpack(player.getUniqueId(), backpack); + } + + @EventHandler + public void onPlayerQuit(PlayerQuitEvent event) { + Player player = event.getPlayer(); + Backpack backpack = plugin.getPlayerBackpack(player); + plugin.savePlayerBackpack(player.getUniqueId(), backpack); + plugin.removePlayerBackpack(player.getUniqueId()); + } +} \ No newline at end of file diff --git a/src/main/java/shop/morpheusnox/backpackInfinita/Database.java b/src/main/java/shop/morpheusnox/backpackInfinita/Database.java new file mode 100644 index 0000000..ba82ccc --- /dev/null +++ b/src/main/java/shop/morpheusnox/backpackInfinita/Database.java @@ -0,0 +1,41 @@ +package shop.morpheusnox.backpackInfinita; + +import java.io.File; +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; + +public class Database { + + private Connection connection; + + public Database(File dataFolder) { + if (!dataFolder.exists()) { + dataFolder.mkdirs(); + } + + try { + Class.forName("org.sqlite.JDBC"); + connection = DriverManager.getConnection("jdbc:sqlite:" + new File(dataFolder, "backpack.db").getAbsolutePath()); + createTables(); + } catch (SQLException | ClassNotFoundException e) { + e.printStackTrace(); + } + } + + private void createTables() { + try (Statement statement = connection.createStatement()) { + statement.execute("CREATE TABLE IF NOT EXISTS backpacks (" + + "uuid TEXT PRIMARY KEY," + + "items TEXT" + + ");"); + } catch (SQLException e) { + e.printStackTrace(); + } + } + + public Connection getConnection() { + return connection; + } +} diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml new file mode 100644 index 0000000..195fb4b --- /dev/null +++ b/src/main/resources/plugin.yml @@ -0,0 +1,9 @@ +name: backpack-infinita +version: '1.1' +main: shop.morpheusnox.backpackInfinita.BackpackInfinita +api-version: '1.21' +commands: + backpack: + description: Mochila infinita pra você que fica sempre sem espaço no inventario. + usage: /backpack + aliases: [bp] diff --git a/target/backpack-infinita-1.1.jar b/target/backpack-infinita-1.1.jar new file mode 100644 index 0000000..623937e Binary files /dev/null and b/target/backpack-infinita-1.1.jar differ diff --git a/target/classes/plugin.yml b/target/classes/plugin.yml new file mode 100644 index 0000000..195fb4b --- /dev/null +++ b/target/classes/plugin.yml @@ -0,0 +1,9 @@ +name: backpack-infinita +version: '1.1' +main: shop.morpheusnox.backpackInfinita.BackpackInfinita +api-version: '1.21' +commands: + backpack: + description: Mochila infinita pra você que fica sempre sem espaço no inventario. + usage: /backpack + aliases: [bp] diff --git a/target/classes/shop/morpheusnox/backpackInfinita/Backpack.class b/target/classes/shop/morpheusnox/backpackInfinita/Backpack.class new file mode 100644 index 0000000..8e42a90 Binary files /dev/null and b/target/classes/shop/morpheusnox/backpackInfinita/Backpack.class differ diff --git a/target/classes/shop/morpheusnox/backpackInfinita/BackpackCommand.class b/target/classes/shop/morpheusnox/backpackInfinita/BackpackCommand.class new file mode 100644 index 0000000..c263102 Binary files /dev/null and b/target/classes/shop/morpheusnox/backpackInfinita/BackpackCommand.class differ diff --git a/target/classes/shop/morpheusnox/backpackInfinita/BackpackInfinita.class b/target/classes/shop/morpheusnox/backpackInfinita/BackpackInfinita.class new file mode 100644 index 0000000..dcf6c8f Binary files /dev/null and b/target/classes/shop/morpheusnox/backpackInfinita/BackpackInfinita.class differ diff --git a/target/classes/shop/morpheusnox/backpackInfinita/BackpackListener.class b/target/classes/shop/morpheusnox/backpackInfinita/BackpackListener.class new file mode 100644 index 0000000..b586081 Binary files /dev/null and b/target/classes/shop/morpheusnox/backpackInfinita/BackpackListener.class differ diff --git a/target/classes/shop/morpheusnox/backpackInfinita/Database.class b/target/classes/shop/morpheusnox/backpackInfinita/Database.class new file mode 100644 index 0000000..68473c2 Binary files /dev/null and b/target/classes/shop/morpheusnox/backpackInfinita/Database.class differ diff --git a/target/maven-archiver/pom.properties b/target/maven-archiver/pom.properties new file mode 100644 index 0000000..9f4359c --- /dev/null +++ b/target/maven-archiver/pom.properties @@ -0,0 +1,3 @@ +artifactId=backpack-infinita +groupId=shop.morpheusnox +version=1.1 diff --git a/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst b/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst new file mode 100644 index 0000000..522ecd3 --- /dev/null +++ b/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst @@ -0,0 +1,5 @@ +shop/morpheusnox/backpackInfinita/Database.class +shop/morpheusnox/backpackInfinita/BackpackListener.class +shop/morpheusnox/backpackInfinita/Backpack.class +shop/morpheusnox/backpackInfinita/BackpackCommand.class +shop/morpheusnox/backpackInfinita/BackpackInfinita.class diff --git a/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst b/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst new file mode 100644 index 0000000..b3d45cc --- /dev/null +++ b/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst @@ -0,0 +1,5 @@ +/home/morpheus/Downloads/backpack Infinita/src/main/java/shop/morpheusnox/backpackInfinita/Backpack.java +/home/morpheus/Downloads/backpack Infinita/src/main/java/shop/morpheusnox/backpackInfinita/BackpackCommand.java +/home/morpheus/Downloads/backpack Infinita/src/main/java/shop/morpheusnox/backpackInfinita/BackpackInfinita.java +/home/morpheus/Downloads/backpack Infinita/src/main/java/shop/morpheusnox/backpackInfinita/BackpackListener.java +/home/morpheus/Downloads/backpack Infinita/src/main/java/shop/morpheusnox/backpackInfinita/Database.java diff --git a/target/original-backpack-infinita-1.1.jar b/target/original-backpack-infinita-1.1.jar new file mode 100644 index 0000000..1ca6367 Binary files /dev/null and b/target/original-backpack-infinita-1.1.jar differ