chocolf / MoneyFromMobs

A Spigot plugin that makes mobs drop money with customizable visuals and a looting enchantment multiplier
MIT License
9 stars 13 forks source link

[BUG] Class: me.chocolf.moneyfrommobs.manager.DropsManager #17

Closed Futodama closed 2 years ago

Futodama commented 2 years ago

Class: me.chocolf.moneyfrommobs.manager.DropsManager Issue: returns "null" on String.equals() Line: WorldGuardListener.java:46

chocolf commented 2 years ago

Hi, can you post the full error and do you know what you did to get this error?

Futodama commented 2 years ago

[22:28:08] [Server thread/ERROR]: Could not pass event AttemptToDropMoneyEvent to MoneyFromMobs v4.6 java.lang.NullPointerException: Cannot invoke "String.equals(Object)" because the return value of "me.chocolf.moneyfrommobs.manager.DropsManager.getSpawnReason(org.bukkit.entity.Entity)" is null at me.chocolf.moneyfrommobs.listener.WorldGuardListener.onAttemptToDropMoney(WorldGuardListener.java:46) ~[MoneyFromMobs.jar:?] at com.destroystokyo.paper.event.executor.asm.generated.GeneratedEventExecutor1103.execute(Unknown Source) ~[?:?] at org.bukkit.plugin.EventExecutor.lambda$create$1(EventExecutor.java:75) ~[paper-api-1.18.2-R0.1-SNAPSHOT.jar:?] at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:76) ~[paper-api-1.18.2-R0.1-SNAPSHOT.jar:git-Paper-375] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[paper-api-1.18.2-R0.1-SNAPSHOT.jar:?] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:669) ~[paper-api-1.18.2-R0.1-SNAPSHOT.jar:?] at me.chocolf.moneyfrommobs.listener.DeathListeners.onEntityDeath(DeathListeners.java:65) ~[MoneyFromMobs.jar:?] at com.destroystokyo.paper.event.executor.asm.generated.GeneratedEventExecutor1098.execute(Unknown Source) ~[?:?] at org.bukkit.plugin.EventExecutor.lambda$create$1(EventExecutor.java:75) ~[paper-api-1.18.2-R0.1-SNAPSHOT.jar:?] at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:76) ~[paper-api-1.18.2-R0.1-SNAPSHOT.jar:git-Paper-375] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[paper-api-1.18.2-R0.1-SNAPSHOT.jar:?] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:669) ~[paper-api-1.18.2-R0.1-SNAPSHOT.jar:?] at org.bukkit.craftbukkit.v1_18_R2.event.CraftEventFactory.callPlayerDeathEvent(CraftEventFactory.java:904) ~[paper-1.18.2.jar:git-Paper-375] at net.minecraft.server.level.ServerPlayer.die(ServerPlayer.java:867) ~[?:?] at net.minecraft.world.entity.LivingEntity.hurt(LivingEntity.java:1452) ~[?:?] at net.minecraft.world.entity.player.Player.hurt(Player.java:938) ~[?:?] at net.minecraft.server.level.ServerPlayer.hurt(ServerPlayer.java:1032) ~[?:?] at net.minecraft.world.entity.player.Player.attack(Player.java:1278) ~[?:?] at net.minecraft.server.level.ServerPlayer.attack(ServerPlayer.java:2040) ~[?:?] at net.minecraft.server.network.ServerGamePacketListenerImpl$5.a(ServerGamePacketListenerImpl.java:2541) ~[?:?] at net.minecraft.network.protocol.game.ServerboundInteractPacket$1.dispatch(ServerboundInteractPacket.java:24) ~[?:?] at net.minecraft.network.protocol.game.ServerboundInteractPacket.dispatch(ServerboundInteractPacket.java:80) ~[?:?] at net.minecraft.server.network.ServerGamePacketListenerImpl.handleInteract(ServerGamePacketListenerImpl.java:2468) ~[?:?] at net.minecraft.network.protocol.game.ServerboundInteractPacket.handle(ServerboundInteractPacket.java:67) ~[?:?] at net.minecraft.network.protocol.game.ServerboundInteractPacket.handle(ServerboundInteractPacket.java:12) ~[?:?] at net.minecraft.network.protocol.PacketUtils.lambda$ensureRunningOnSameThread$1(PacketUtils.java:51) ~[?:?] at net.minecraft.server.TickTask.run(TickTask.java:18) ~[paper-1.18.2.jar:git-Paper-375] at net.minecraft.util.thread.BlockableEventLoop.doRunTask(BlockableEventLoop.java:153) ~[?:?] at net.minecraft.util.thread.ReentrantBlockableEventLoop.doRunTask(ReentrantBlockableEventLoop.java:24) ~[?:?] at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:1400) ~[paper-1.18.2.jar:git-Paper-375] at net.minecraft.server.MinecraftServer.d(MinecraftServer.java:188) ~[paper-1.18.2.jar:git-Paper-375] at net.minecraft.util.thread.BlockableEventLoop.pollTask(BlockableEventLoop.java:126) ~[?:?] at net.minecraft.server.MinecraftServer.pollTaskInternal(MinecraftServer.java:1377) ~[paper-1.18.2.jar:git-Paper-375] at net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:1370) ~[paper-1.18.2.jar:git-Paper-375] at net.minecraft.util.thread.BlockableEventLoop.managedBlock(BlockableEventLoop.java:136) ~[?:?] at net.minecraft.server.MinecraftServer.waitUntilNextTick(MinecraftServer.java:1348) ~[paper-1.18.2.jar:git-Paper-375] at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1230) ~[paper-1.18.2.jar:git-Paper-375] at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:316) ~[paper-1.18.2.jar:git-Paper-375] at java.lang.Thread.run(Thread.java:833) ~[?:?]

chocolf commented 2 years ago

It's happening because the mob that you killed didn't have how it was spawned saved for some reason. For example, if a mob comes from a spawner it would normally have "Spawner" as the spawn reason but for some reason the spawn reason is null.

Is this a one time error you saw or do you get it a lot? Do you have a mob stacker plugin? Switching to RoseStacker will fix this error if you do

Futodama commented 2 years ago

It happens in random places in the world. At the moment, it is recorded by a random killed mob in the world.

It's happening because the mob that you killed didn't have how it was spawned saved for some reason. For example, if a mob comes from a spawner it would normally have "Spawner" as the spawn reason but for some reason the spawn reason is null.

I don't have such a plugin.

Is this a one time error you saw or do you get it a lot? Do you have a mob stacker plugin? Switching to RoseStacker will fix this error if you do

Futodama commented 2 years ago

There is a plugin that can spawn monsters and mobs. It's called "Realistic Seasons"

chocolf commented 2 years ago

Ah ok! I have attached a new version that should fix the error but can't test it because I don't own Realistic Seasons. Please let me know if you still have this problem after updating. Sorry for the wait. https://drive.google.com/file/d/1JmyyPnsfiLJgHDCAU1DdwP4OmxgD0r59/view?usp=sharing

Futodama commented 2 years ago

I'll test it. I'll write the results tomorrow.

Futodama commented 2 years ago

For all the time, no errors have fallen into the console.

chocolf commented 2 years ago

Alright, that's good. Thanks for letting me know and thanks for reporting the bug :)