ferox icon indicating copy to clipboard operation
ferox copied to clipboard

NullPointerException when loading into a game.

Open majigg opened this issue 3 years ago • 1 comments

java.lang.NullPointerException: Ticking entity
	at java.util.Objects.requireNonNull(Objects.java:203)
	at net.minecraft.block.BlockLiquid.handler$modifyAcceleration$zzb000(BlockLiquid.java:636)
	at net.minecraft.block.BlockLiquid.modifyAcceleration(BlockLiquid.java)
	at net.minecraft.world.World.handleMaterialAcceleration(World.java:2445)
	at net.minecraft.entity.Entity.handleWaterMovement(Entity.java:1357)
	at net.minecraft.entity.Entity.onEntityUpdate(Entity.java:551)
	at net.minecraft.entity.EntityLivingBase.onEntityUpdate(EntityLivingBase.java:279)
	at net.minecraft.entity.EntityLiving.onEntityUpdate(EntityLiving.java:247)
	at net.minecraft.entity.passive.EntityWaterMob.onEntityUpdate(EntityWaterMob.java:66)
	at net.minecraft.entity.Entity.onUpdate(Entity.java:470)
	at net.minecraft.entity.EntityLivingBase.onUpdate(EntityLivingBase.java:2315)
	at net.minecraft.entity.EntityLiving.onUpdate(EntityLiving.java:346)
	at net.minecraft.world.World.updateEntityWithOptionalForce(World.java:2183)
	at net.minecraft.world.WorldServer.updateEntityWithOptionalForce(WorldServer.java:871)
	at net.minecraft.world.World.updateEntity(World.java:2142)
	at net.minecraft.world.World.updateEntities(World.java:1943)
	at net.minecraft.world.WorldServer.updateEntities(WorldServer.java:643)
	at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:842)
	at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:743)
	at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:192)
	at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:592)
	at java.lang.Thread.run(Thread.java:748)

The problematic code:

@Inject(method = "modifyAcceleration", at = @At("HEAD"), cancellable = true)
    public void modifyAcceleration(World world, BlockPos blockPos, Entity entity, Vec3d vec3d, CallbackInfoReturnable<Vec3d> callbackInfoReturnable) {
        if (ModuleManager.getModuleByName("Velocity").isEnabled() && Velocity.noPush.getValue() && Velocity.noPushLiquids.getValue()) {
            callbackInfoReturnable.setReturnValue(vec3d);
            callbackInfoReturnable.cancel();
        }
    }

I'm assuming this means the modules are null, as when this is commented out other mixins referencing modules will cause a crash. Any fix to this?

majigg avatar Dec 12 '21 15:12 majigg

:trollface:

olliem5 avatar Aug 09 '22 08:08 olliem5