aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMyles <mylesandmore9@gmail.com>2022-12-07 21:49:09 -0600
committerMyles <mylesandmore9@gmail.com>2022-12-07 21:49:09 -0600
commit777f510256896bbf7cd73b6da7109b875ef6218e (patch)
tree62d43083f8b9639aca7b6c82b11ca6005daee297
parentc7d259a122ebd8300d84914032e247a5cc4a7f01 (diff)
downloadTumble-777f510256896bbf7cd73b6da7109b875ef6218e.tar.gz
Tumble-777f510256896bbf7cd73b6da7109b875ef6218e.tar.bz2
Tumble-777f510256896bbf7cd73b6da7109b875ef6218e.zip
fix this random stacktrace I got
I think it happens if the snowball despawns before hitting something? here's the stacktrace for future reference: [21:46:02 ERROR]: Could not pass event ProjectileHitEvent to tumble v0.0.1-SNAPSHOT java.lang.NullPointerException: Cannot invoke "org.bukkit.block.Block.getWorld()" because the return value of "org.bukkit.event.entity.ProjectileHitEvent.getHitBlock()" is null at com.MylesAndMore.tumble.EventListener.ProjectileHitEvent(EventListener.java:97) ~[tumble-0.0.1-SNAPSHOT.jar:?] at com.destroystokyo.paper.event.executor.asm.generated.GeneratedEventExecutor22.execute(Unknown Source) ~[?:?] at org.bukkit.plugin.EventExecutor.lambda$create$1(EventExecutor.java:75) ~[paper-api-1.19.2-R0.1-SNAPSHOT.jar:?] at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:80) ~[paper-api-1.19.2-R0.1-SNAPSHOT.jar:git-Paper-235] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[paper-api-1.19.2-R0.1-SNAPSHOT.jar:?] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:670) ~[paper-api-1.19.2-R0.1-SNAPSHOT.jar:?] at org.bukkit.craftbukkit.v1_19_R1.event.CraftEventFactory.callProjectileHitEvent(CraftEventFactory.java:1423) ~[paper-1.19.2.jar:git-Paper-235] at net.minecraft.world.entity.projectile.Projectile.preOnHit(Projectile.java:169) ~[?:?] at net.minecraft.world.entity.projectile.ThrowableProjectile.tick(ThrowableProjectile.java:79) ~[?:?] at net.minecraft.server.level.ServerLevel.tickNonPassenger(ServerLevel.java:1192) ~[?:?] at net.minecraft.world.level.Level.guardEntityTick(Level.java:897) ~[?:?] at net.minecraft.server.level.ServerLevel.lambda$tick$6(ServerLevel.java:730) ~[?:?] at net.minecraft.world.level.entity.EntityTickList.forEach(EntityTickList.java:42) ~[paper-1.19.2.jar:git-Paper-235] at net.minecraft.server.level.ServerLevel.tick(ServerLevel.java:710) ~[?:?] at net.minecraft.server.MinecraftServer.tickChildren(MinecraftServer.java:1535) ~[paper-1.19.2.jar:git-Paper-235] at net.minecraft.server.dedicated.DedicatedServer.tickChildren(DedicatedServer.java:446) ~[paper-1.19.2.jar:git-Paper-235] at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1397) ~[paper-1.19.2.jar:git-Paper-235] at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1173) ~[paper-1.19.2.jar:git-Paper-235] at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:305) ~[paper-1.19.2.jar:git-Paper-235] at java.lang.Thread.run(Thread.java:833) ~[?:?]
-rw-r--r--src/main/java/com/MylesAndMore/tumble/EventListener.java3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/main/java/com/MylesAndMore/tumble/EventListener.java b/src/main/java/com/MylesAndMore/tumble/EventListener.java
index 00dbe07..a0f5061 100644
--- a/src/main/java/com/MylesAndMore/tumble/EventListener.java
+++ b/src/main/java/com/MylesAndMore/tumble/EventListener.java
@@ -107,6 +107,9 @@ public class EventListener implements Listener{
}
}
}
+ else if (event.getHitBlock().getWorld() == null) {
+ event.setCancelled(true);
+ }
}
}