public double getNearestDistance(String name, Vec3d pos) { List<WorldPosition2D> positions = this.positions.get(name); double lastDistance = -1; double tempDist; if (positions != null) { for (WorldPosition2D worldPosition2D : positions) { tempDist = new Vec3d(worldPosition2D.x, pos.y, worldPosition2D.z).distanceTo(pos); if (lastDistance < 0 || tempDist < lastDistance) { lastDistance = tempDist; } } } return lastDistance; }
@Override public String modifyObjective(QuestStack questStack, EntityPlayer entityPlayer, String objective, int objectiveIndex) { objective = replaceBlockNameInText(objective); BlockPos pos = MOQuestHelper.getPosition(questStack); if (pos != null) { double distance = new Vec3d(Math.floor(entityPlayer.posX), Math.floor(entityPlayer.posY), Math.floor(entityPlayer.posZ)).distanceTo(new Vec3d(pos)); objective = objective.replace("$distance", Integer.toString((int) Math.max(distance - radius, 0)) + " blocks"); } else { objective = objective.replace("$distance", "0 blocks"); } return objective; }
final Vec3d vec3 = mc.getRenderViewEntity().getPositionEyes( f ); if( mop != null && mop.hitVec.distanceTo( vec3 ) < d0 )
@Override protected Vec3d getWanderPosition() { Vec3d vec3d = null; for(int i = 0; i < 100; i++) { Vec3d vec = RandomPositionGenerator.getLandPos(this.entity, 32, 7); if(vec == null) { continue; } else if(vec3d == null || this.entity.getPositionVector().distanceTo(vec) < this.entity.getPositionVector().distanceTo(vec3d)) { vec3d = vec; } } return vec3d == null ? super.getWanderPosition() : vec3d; }
@Redirect(method = "getMouseOver", at = @At(value = "INVOKE", target = "Lnet/minecraft/util/math/Vec3d;distanceTo(Lnet/minecraft/util/math/Vec3d;)D", ordinal = 0)) public double betterMouseOver(Vec3d vec, Vec3d in) { PhysicsWrapperEntity wrapper = ValkyrienWarfareMod.physicsManager.getObjectManagingPos(mc.world, mc.objectMouseOver.getBlockPos()); if (wrapper == null) { return vec.distanceTo(in); } else { return this.mc.objectMouseOver.hitVec.distanceTo(RotationMatrices.applyTransform(wrapper.wrapping.coordTransform.wToLTransform, in)); } } }
@Override public void travel(float strafe, float vertical, float forward) { float prevRot = this.rotationPitch; if(this.getAnimation() == EntityAnimation.GLIDING.get() && glidingPos != null) { this.rotationPitch = (float) -Math.toDegrees(Math.asin((this.glidingPos.y - this.posY) / glidingPos.distanceTo(this.getPositionVector()))); } super.travel(strafe, vertical, forward); this.rotationPitch = prevRot; }
boolean intersectsAnomaly(Vec3d origin, Vec3d dir, Vec3d anomaly, double radius) { if (origin.distanceTo(anomaly) <= radius) { return true; } else { Vec3d intersectDir = origin.subtract(anomaly); double c = intersectDir.lengthVector(); double v = intersectDir.dotProduct(dir); double d = radius * radius - (c * c - v * v); return d >= 0; } }
private static double getLineDistance( final Vec3d v, final Vec3d w, final EntityPlayer player, final float partialTicks ) { final Vec3d p = player.getPositionEyes( partialTicks ); final double segmentLength = v.squareDistanceTo( w ); if ( segmentLength == 0.0 ) { return p.distanceTo( v ); } final double t = Math.max( 0, Math.min( 1, p.subtract( v ).dotProduct( w.subtract( v ) ) / segmentLength ) ); final Vec3d projection = v.add( w.subtract( v ).scale( t ) ); return p.distanceTo( projection ); }
public Lightning(World worldIn, Vec3d start, Vec3d destination, float randomness, float speed) { super(worldIn, start.x, start.y, start.z); this.destination = new Vector3d(destination.x, destination.y, destination.z); this.length = (float) destination.distanceTo(new Vec3d(posX, posY, posZ)); this.particleMaxAge = 10 + (int) (this.rand.nextFloat() * 10); this.randomness = randomness; this.speed = speed; setBoundingBox(new AxisAlignedBB(start.x, start.y, start.z, destination.x, destination.y, destination.z)); this.renderDistanceWeight = Minecraft.getMinecraft().gameSettings.renderDistanceChunks / 6f; }
private static double getDistanceToCollidedEntity(Entity entity, Vec3d startVector, Vec3d endVector) { float borderSize = entity.getCollisionBorderSize(); AxisAlignedBB entBB = entity.getEntityBoundingBox().grow((double) borderSize, (double) borderSize, (double) borderSize); RayTraceResult rayTraceResult = entBB.calculateIntercept(startVector, endVector); return rayTraceResult != null ? startVector.distanceTo(rayTraceResult.hitVec) : Double.MAX_VALUE; }
public int distanceToLY(Galaxy galaxy, GalacticPosition position) { Star fromStar = galaxy.getStar(this); Star toStar = galaxy.getStar(position); if (fromStar != null && toStar != null && fromStar != toStar) { return (int) (fromStar.getPosition().distanceTo(toStar.getPosition()) * Galaxy.GALAXY_SIZE_TO_LY); } return 0; }
@Override public void update() { EntityPlayerSP mp = FMLClientHandler.instance().getClient().player; double distance = new Vec3d(xPosF, yPosF, zPosF).distanceTo(mp.getPositionVector()); volume = 1 - (float) (distance / range); } }
private static RayTraceResult getPlayerLookTargetClient(EntityPlayer player, Entity excludedEntity) { Vec3d playerEyesPos = RayTracer.getCorrectedHeadVec(player); Vec3d lookVector = player.getLook(0); Vec3d endVector = playerEyesPos.addVector(lookVector.x * MAX_RANGE, lookVector.y * MAX_RANGE, lookVector.z * MAX_RANGE); RayTraceResult blockHit = player.world.rayTraceBlocks(playerEyesPos, endVector); Optional<Tuple<Double, Entity>> closestEntityFound = getClosestCollidedEntity(excludedEntity, playerEyesPos, lookVector, endVector); if (closestEntityFound.isPresent() && (blockHit == null || closestEntityFound.get().getFirst() < blockHit.hitVec.distanceTo(playerEyesPos))) { Entity hitEntity = closestEntityFound.get().getSecond(); blockHit = new RayTraceResult(hitEntity, new Vec3d(hitEntity.posX, hitEntity.posY + hitEntity.height * 0.65d, hitEntity.posZ)); } return blockHit; }
@SideOnly(Side.CLIENT) @SubscribeEvent public void renderShadowAndFire(EntityRenderShadowAndFireEvent event) { EntityPlayer player = Minecraft.getMinecraft().player; if (player.isPotionActive(this)) { boolean walked = new Vec3d(player.posX, player.posY, player.posZ).distanceTo(new Vec3d(player.prevPosX, player.prevPosY, player.prevPosZ)) > 0.1; if (walked) event.override = true; } if (event.entity instanceof EntityLivingBase && ((EntityLivingBase) event.entity).isPotionActive(this)) { boolean walked = new Vec3d(event.entity.posX, event.entity.posY, event.entity.posZ).distanceTo(new Vec3d(event.entity.prevPosX, event.entity.prevPosY, event.entity.prevPosZ)) > 0.1; if (!walked) event.override = true; } }
@Override public Vec3d getLookVec() { if (this.getAnimation() == EntityAnimation.GLIDING.get() && glidingPos != null) { double distance = glidingPos.distanceTo(this.getPositionVector()); return new Vec3d((glidingPos.x - this.posX) / distance, (this.glidingPos.y - this.posY) / distance, (this.glidingPos.z - this.posZ) / distance); } return super.getLookVec(); }
double d1 = vec3.distanceTo(RayTraceResult1.hitVec);
@SuppressWarnings("squid:S3655") private boolean isInRange() { //noinspection ConstantConditions VehicleBase vehicle = npc.getVehicle().get(); //noinspection ConstantConditions ITarget target = npc.getTarget().get(); return vehicle.getEffectiveRange((float) (target.getY() - vehicle.posY)) >= vehicle.getMissileOffset().add(vehicle.getPositionVector()) .distanceTo(new Vec3d(target.getX(), target.getY(), target.getZ())); }
@SideOnly(Side.CLIENT) @SubscribeEvent public void renderItem(RenderSpecificHandEvent event) { Minecraft mc = Minecraft.getMinecraft(); EntityPlayer player = mc.player; if (player.isPotionActive(this)) { boolean iWalked = new Vec3d(player.posX, player.posY, player.posZ).distanceTo(new Vec3d(player.prevPosX, player.prevPosY, player.prevPosZ)) > 0.15; if (!iWalked) event.setCanceled(true); } }
/** * {@inheritDoc} */ @Override @SideOnly(Side.CLIENT) public void renderSpell(ModuleInstanceShape instance, @Nonnull SpellData spell, @Nonnull SpellRing spellRing) { IShapeOverrides overrides = spellRing.getOverrideHandler().getConsumerInterface(IShapeOverrides.class); if( overrides.onRenderCone(spell, spellRing) ) return; Vec3d target = spell.getTarget(); if (target == null) return; Vec3d origin = spell.getOriginHand(); if (origin == null) return; ParticleBuilder lines = new ParticleBuilder(10); lines.setRender(new ResourceLocation(Wizardry.MODID, Constants.MISC.SPARKLE_BLURRED)); lines.setScaleFunction(new InterpScale(0.5f, 0)); lines.setColorFunction(new InterpColorHSV(spellRing.getPrimaryColor(), spellRing.getSecondaryColor())); ParticleSpawner.spawn(lines, spell.world, new InterpLine(origin, target), (int) target.distanceTo(origin) * 4, 0, (aFloat, particleBuilder) -> { lines.setAlphaFunction(new InterpFloatInOut(0.3f, 0.3f)); lines.setLifetime(RandUtil.nextInt(10, 20)); }); }
protected void createWheelParticles(CarWheel wheel, boolean runBetween) { Vec3d pos; Vec3d opposite; if (runBetween) { Vec3d vec = wheel.getCurrentWheelPos(); Vec3d oldVec = wheel.getCurrentWheelPos(); Vec3d vec1 = wheel.getOppositeWheel().getCurrentWheelPos(); Vec3d oldVec1 = wheel.getOppositeWheel().getCurrentWheelPos(); pos = new Vec3d((vec.x + oldVec.x) / 2D, (vec.y + oldVec.y) / 2D, (vec.z + oldVec.z) / 2D); opposite = new Vec3d((vec1.x + oldVec1.x) / 2D, (vec1.y + oldVec1.y) / 2D, (vec1.z + oldVec1.z) / 2D); } else { pos = wheel.getCurrentWheelPos(); opposite = wheel.getOppositeWheel().getCurrentWheelPos(); } if (wheel.getCurrentWheelPos().distanceTo(wheel.getPrevCurrentWheelPos()) >= 0.05D) { this.wheelDataList[wheel.getID()].add(new WheelParticleData(pos, opposite, world.getTotalWorldTime()) .setShouldRender(shouldTyresRender())); } }