MechanicsMain icon indicating copy to clipboard operation
MechanicsMain copied to clipboard

NPE when an explosive detonates

Open galacticwarrior9 opened this issue 10 months ago • 1 comments

Current/Expected Behavior

An NPE is thrown when an explosive detonates with no nearby entities. As a result, all Mechanics under Explosion fail to execute.

Steps To Reproduce

  1. Spawn this weapon.
  2. Throw it.
  3. Observe the NPE in the logs and how none of the sounds play.

Log File

[13:05:02] [Server thread/WARN]: [WeaponMechanics] Task #29173131 for WeaponMechanics v3.3.3 generated an exception
java.lang.NullPointerException: Cannot invoke "org.bukkit.entity.LivingEntity.getLocation()" because "targetEntity" is null
	at me.deecaad.core.mechanics.CastData.setTargetEntity(CastData.java:102) ~[MechanicsCore-3.3.3.jar:?]
	at me.deecaad.core.mechanics.PlayerEffectMechanicList.use(PlayerEffectMechanicList.java:75) ~[MechanicsCore-3.3.3.jar:?]
	at me.deecaad.core.mechanics.Mechanics.use(Mechanics.java:86) ~[MechanicsCore-3.3.3.jar:?]
	at me.deecaad.weaponmechanics.weapon.explode.Explosion.explode(Explosion.java:339) ~[WeaponMechanics-3.3.3.jar:?]
	at me.deecaad.weaponmechanics.weapon.explode.Explosion$1.run(Explosion.java:194) ~[WeaponMechanics-3.3.3.jar:?]
	at org.bukkit.craftbukkit.v1_20_R3.scheduler.CraftTask.run(CraftTask.java:100) ~[?:git-UniverseSpigot-"c416784"]
	at org.bukkit.craftbukkit.v1_20_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:482) ~[?:git-UniverseSpigot-"c416784"]
	at net.minecraft.server.MinecraftServer.tickChildren(MinecraftServer.java:1656) ~[?:git-UniverseSpigot-"c416784"]
	at net.minecraft.server.dedicated.DedicatedServer.tickChildren(DedicatedServer.java:465) ~[?:git-UniverseSpigot-"c416784"]
	at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1539) ~[?:git-UniverseSpigot-"c416784"]
	at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1240) ~[?:git-UniverseSpigot-"c416784"]
	at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:317) ~[?:git-UniverseSpigot-"c416784"]
	at java.lang.Thread.run(Thread.java:840) ~[?:?]

Anything else?

Here is the resource pack used for the custom sounds.

galacticwarrior9 avatar Apr 19 '24 17:04 galacticwarrior9