Fixed crash when ticking a projectile with no loaded owner

This commit is contained in:
Sollace 2021-12-27 02:14:48 +02:00
parent f402403964
commit baa3700748

View file

@ -48,7 +48,6 @@ import net.minecraft.world.World;
* Can also carry a spell if needed. * Can also carry a spell if needed.
*/ */
public class MagicProjectileEntity extends ThrownItemEntity implements Caster<LivingEntity> { public class MagicProjectileEntity extends ThrownItemEntity implements Caster<LivingEntity> {
private static final TrackedData<Float> DAMAGE = DataTracker.registerData(MagicProjectileEntity.class, TrackedDataHandlerRegistry.FLOAT); private static final TrackedData<Float> DAMAGE = DataTracker.registerData(MagicProjectileEntity.class, TrackedDataHandlerRegistry.FLOAT);
private static final TrackedData<Float> GRAVITY = DataTracker.registerData(MagicProjectileEntity.class, TrackedDataHandlerRegistry.FLOAT); private static final TrackedData<Float> GRAVITY = DataTracker.registerData(MagicProjectileEntity.class, TrackedDataHandlerRegistry.FLOAT);
private static final TrackedData<Boolean> HYDROPHOBIC = DataTracker.registerData(MagicProjectileEntity.class, TrackedDataHandlerRegistry.BOOLEAN); private static final TrackedData<Boolean> HYDROPHOBIC = DataTracker.registerData(MagicProjectileEntity.class, TrackedDataHandlerRegistry.BOOLEAN);
@ -155,8 +154,8 @@ public class MagicProjectileEntity extends ThrownItemEntity implements Caster<Li
super.tick(); super.tick();
if (age % 1000 == 0) { if (getOwner() == null) {
setNoGravity(false); return;
} }
getSpellSlot().get(true).filter(spell -> spell.tick(this, Situation.PROJECTILE)); getSpellSlot().get(true).filter(spell -> spell.tick(this, Situation.PROJECTILE));