Posted April 11, 20169 yr I have some problems with the entity rotations. When I set the rotationYaw and Pitch parameters the entity only rotates after a time or after the entity has been hit or "touched". Is there a way to accelerate this process?
April 11, 20169 yr Where are you setting it? Client or server? Are you calling setter method or changing field? 1.7.10 is no longer supported by forge, you are on your own.
April 11, 20169 yr Author I am setting it directly in the entity (So client I guess). I used the faceEntity method and changed it to faceBlock. After the execution of the code the rotation variables are correctly set ( Fishinghook is thrown in the correct direction). But as said the entity will still face the previous direction until an event occurs. public void faceBlock(ChunkCoordinates block) { double xDifference = block.posX - this.posX; double zDifference = block.posZ - this.posZ; double yDifference = block.posY - (this.posY + (double) this.getEyeHeight() - 0.5); double squareDifference = Math.sqrt(xDifference * xDifference + zDifference * zDifference); double intendedRotationYaw = (Math.atan2(zDifference, xDifference) * 180.0D / Math.PI) - 90.0; double intendedRotationPitch = (-(Math.atan2(yDifference, squareDifference) * 180.0D / Math.PI)); this.rotationPitch = (float) this.updateRotation(this.rotationPitch, intendedRotationPitch, 30); this.rotationYaw = (float) this.updateRotation(this.rotationYaw, intendedRotationYaw, 30); } private double updateRotation(double currentRotation, double intendedRotation, double maxIncrement) { double wrappedAngle = MathHelper.wrapAngleTo180_double(intendedRotation - currentRotation); if (wrappedAngle > maxIncrement) { wrappedAngle = maxIncrement; } if (wrappedAngle < -maxIncrement) { wrappedAngle = -maxIncrement; } return currentRotation + wrappedAngle; }
April 11, 20169 yr Author Adding: this.setPositionAndUpdate(posX, posY, posZ); Still doesn't affect that the entity turns into his correct rotation.
April 11, 20169 yr Author Moving like actual let them walk or also: this.setPositionAndUpdate(posX+InsignificantAmount, posY, posZ);
April 11, 20169 yr Author Setting these "motion" variables didn't resolve anything. Using "moveEntity" with + 0.001 did despawn the entity.
April 11, 20169 yr I am setting it directly in the entity (So client I guess). A does not imply B here. What calls this method? Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable. If you think this is the case, JUST REPORT ME. Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice. Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked. DO NOT PM ME WITH PROBLEMS. No help will be given.
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.