Spigot Multitool Plus [1.13-1.14] 1.4.0

Switches tools based on block youre hitting, stores all tools in one inventory slot

  1. is the item in the deluxe menu an item you created? I'm really not sure why that happens... Maybe your deluxe menu config triggers that command? Sorry I don't know much about it.
     
  2. Code (Text):
    Could not pass event PlayerInteractEvent to Multitool v1.3.18
    java.lang.NullPointerException: null
    at me.darkolythe.multitool.MultitoolToolDetect.isItem(MultitoolToolDetect.java:273) ~[?:?]
    at me.darkolythe.multitool.MultitoolToolDetect.setItem(MultitoolToolDetect.java:239) ~[?:?]
    at me.darkolythe.multitool.MultitoolToolDetect.onInteract(MultitoolToolDetect.java:154) ~[?:?]
    at com.destroystokyo.paper.event.executor.asm.generated.GeneratedEventExecutor86.execute(Unknown Source) ~[?:?]
    at org.bukkit.plugin.EventExecutor.lambda$create$1(EventExecutor.java:69) ~[patched_1.14.4.jar:git-Paper-159]
    at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:80) ~[patched_1.14.4.jar:git-Paper-159]
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[patched_1.14.4.jar:git-Paper-159]
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:545) ~[patched_1.14.4.jar:git-Paper-159]
    at org.bukkit.craftbukkit.v1_14_R1.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:445) ~[patched_1.14.4.jar:git-Paper-159]
    at org.bukkit.craftbukkit.v1_14_R1.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:412) ~[patched_1.14.4.jar:git-Paper-159]
    at net.minecraft.server.v1_14_R1.PlayerInteractManager.a(PlayerInteractManager.java:136) ~[patched_1.14.4.jar:git-Paper-159]
    at net.minecraft.server.v1_14_R1.PlayerConnection.a(PlayerConnection.java:1307) ~[patched_1.14.4.jar:git-Paper-159]
    at net.minecraft.server.v1_14_R1.PacketPlayInBlockDig.a(SourceFile:40) ~[patched_1.14.4.jar:git-Paper-159]
    at net.minecraft.server.v1_14_R1.PacketPlayInBlockDig.a(SourceFile:10) ~[patched_1.14.4.jar:git-Paper-159]
    at net.minecraft.server.v1_14_R1.PlayerConnectionUtils.lambda$ensureMainThread$0(PlayerConnectionUtils.java:23) ~[patched_1.14.4.jar:git-Paper-159]
    at net.minecraft.server.v1_14_R1.TickTask.run(SourceFile:18) ~[patched_1.14.4.jar:git-Paper-159]
    at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.executeTask(IAsyncTaskHandler.java:136) ~[patched_1.14.4.jar:git-Paper-159]
    at net.minecraft.server.v1_14_R1.IAsyncTaskHandlerReentrant.executeTask(SourceFile:23) ~[patched_1.14.4.jar:git-Paper-159]
    at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.executeNext(IAsyncTaskHandler.java:109) ~[patched_1.14.4.jar:git-Paper-159]
    at net.minecraft.server.v1_14_R1.MinecraftServer.aX(MinecraftServer.java:1012) ~[patched_1.14.4.jar:git-Paper-159]
    at net.minecraft.server.v1_14_R1.MinecraftServer.executeNext(MinecraftServer.java:1005) ~[patched_1.14.4.jar:git-Paper-159]
    at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.awaitTasks(IAsyncTaskHandler.java:119) ~[patched_1.14.4.jar:git-Paper-159]
    at net.minecraft.server.v1_14_R1.MinecraftServer.sleepForTick(MinecraftServer.java:989) ~[patched_1.14.4.jar:git-Paper-159]
    at net.minecraft.server.v1_14_R1.MinecraftServer.run(MinecraftServer.java:922) ~[patched_1.14.4.jar:git-Paper-159]
    at java.lang.Thread.run(Thread.java:748) [?:1.8.0_212]
     
    • Useful Useful x 1
  3. omg
     
  4. well dang... I'll have that fixed in 10 minutes, but I would never have thought to do that. Thanks for showing me!
     
    • Like Like x 1
    • Like Like x 1
  5. Multi Tool don't detect dropper:pickaxe and glowstone:pickaxe.
     
  6. Glowstone isnt mined by a pickaxe, so that wont be added. As for dropper, it has been added and is in the latest update :)
     
    • Like Like x 1
  7. have you tried changing the config.yml to cause multitool items to drop on death?
    As for invunload... Im not sure if there's much I can do about that.
     
    • Like Like x 1
  8. I have set it to false, now it's dropping the tool into the chest. The chest is closed to other players hopper are also blocked. Unfortunately, it will not drop into the chest if it's set to false. I have to take the risk. Too bad, I do not want to do without multitool. Maybe the other plugin developer will do something and will soon support multitool.

    https://hub.spigotmc.org/javadocs/spigot/index.html?org/bukkit/block/Chest.html
    https://github.com/JEFF-Media-GbR/Spigot-ChestSort
    I think I have a solution. Could not you just look for multitools when opening a chest or hopper and delete them if one is found?

    Will be added at some time enchantments such as silk touch for glass, etc?

    Code:
    Code (Text):
        @EventHandler
        public void onPlayerDeath(final PlayerDeathEvent event) {
            if (this.main.dropondeath && this.main.toolinv.containsKey(event.getEntity().getUniqueId()) && !event.getKeepInventory()) {
                for (final ItemStack i : this.main.toolinv.get(event.getEntity().getUniqueId()).getContents()) {
                    if (i.getType() != Material.FEATHER && i.getType() != Material.GRAY_STAINED_GLASS_PANE) {
                        event.getEntity().getWorld().dropItemNaturally(event.getEntity().getLocation(), i);
                    }
                }
                this.main.toolinv.remove(event.getEntity().getUniqueId());
                this.main.getToolInv(event.getEntity());
            } //Drop the toolitemlist normal.
            final List<ItemStack> drops = (List<ItemStack>)event.getDrops();
            for (final ItemStack j : drops) {
                final ItemMeta dropmeta = j.getItemMeta();
                if (dropmeta != null && this.main.isTool(j)) {
                    j.setType(Material.AIR);
                    if (this.main.dropondeath) {
                        continue;
                    }
                    event.getEntity().sendMessage(this.main.prefix + ChatColor.RED + "You died, so your Multitool was put away!");
                }
            }/Remove the multitool
        }
     
    Another plugin seems to be blocking something.
    The error must lie with me sorry
    Last Edit i find it:
    https://www.spigotmc.org/resources/1-9-1-13-drop2inventory.62214/
    and https://www.spigotmc.org/resources/1-8-1-14-chestsort-api.59773/
    Update:
    That was not the solution to the problem.
    I really have no idea and want more. Can you see what it can be?
    All Plugins:
    https://timings.aikar.co/?id=c6cd346d9200476a8c5fc5bd05109290
     
    #73 lolbob, Sep 6, 2019
    Last edited: Sep 7, 2019
  9. Ive messaged the devs, and am waiting for a response from them for implementing support for multitool. There's nothing I can do until they add support.
    Also, may I ask where you acquired the code? It looks similar to mine, without me checking my code to verify.
    As for checking each inventory when its opened for the multitool... Thats more resource intensive than I'd like it to be. So I probably wont do that.
    And for chestsort, what part of that plugin interferes with multitool?
    None of this is in my hands unfortunately.
     
    #74 DarkMonolith, Sep 7, 2019
    Last edited: Sep 7, 2019
  10. I thank you.
    Yes, understand that such a query draws too much performance.
    I have added chestsort as a template, chestsort work fine with multitool.
    Yes the code was from your plugin(http://www.javadecompilers.com), I wanted to see why it did not work. (I hope it does not bother you.)
    ButI could not find a mistake either.
    The death event is sometimes not called.(proirity) that's not because of her plugin.
    Thanks for your support.
    I'll just try to replace this Plugin with keepinventory and remove invunload.

    TestServer + Plugins:
    Server.zip
    Video

    Should I delete the code from my comment?
     
    #75 lolbob, Sep 8, 2019
    Last edited: Sep 8, 2019
  11. I'll try my best to fix the issues you have, but I'll need a little more explanation on what exactly is the problem.
    No, you dont have to delete the code, it's not a worry.
    So. Which plugin is causing an error, and what exactly is the error?
    invunload inloads the multitool, which I have contacted the dev about, so I'm just waiting on a reply.
    If youre still using deathchest, Im guessing it unloads the tool into the deathchest too?
     
    • Agree Agree x 1
  12. fixed! :)
    thanks for reporting it
     
    • Like Like x 1