Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public static boolean NavigateEntityTo(EntityLivingAI entity, BlockPos pos)
- {
- PathNavigate nav = entity.getNavigator();
- pos = entity.getEntityWorld().getTopSolidOrLiquidBlock(pos);
- boolean flag = nav.tryMoveToXYZ(pos.getX(), pos.getY(), pos.getZ(), entity.getMovementSpeed());
- if (!flag)
- {
- Vec3d entityVec = new Vec3d(entity.posX, entity.posY, entity.posZ);
- Vec3d destVec = new Vec3d(pos.getX(), pos.getY(), pos.getZ());
- Vec3d entityMovementDirection = destVec.subtract(entityVec).normalize().scale(10);
- BlockPos newPos = entity.getEntityWorld().getTopSolidOrLiquidBlock(new BlockPos(entityMovementDirection.add(entity.getPositionVector())));
- LookAt(entity, newPos);
- return nav.tryMoveToXYZ(newPos.getX(), newPos.getY(), newPos.getZ(), entity.getMovementSpeed());
- }
- else
- {
- LookAt(entity, pos);
- return true;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement