mirror of
https://github.com/PaperMC/Paper.git
synced 2025-01-23 16:56:31 +01:00
Added Entity#setRotation.
Unlike Entity#teleport this can also be used while the entity is inside a vehicle. By: blablubbabc <lukas@wirsindwir.de>
This commit is contained in:
parent
e86efb4b0b
commit
423392f6f7
2 changed files with 48 additions and 0 deletions
|
@ -633,4 +633,39 @@ public class Location implements Cloneable, ConfigurationSerializable {
|
||||||
|
|
||||||
return new Location(world, NumberConversions.toDouble(args.get("x")), NumberConversions.toDouble(args.get("y")), NumberConversions.toDouble(args.get("z")), NumberConversions.toFloat(args.get("yaw")), NumberConversions.toFloat(args.get("pitch")));
|
return new Location(world, NumberConversions.toDouble(args.get("x")), NumberConversions.toDouble(args.get("y")), NumberConversions.toDouble(args.get("z")), NumberConversions.toFloat(args.get("yaw")), NumberConversions.toFloat(args.get("pitch")));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Normalizes the given yaw angle to a value between <code>+/-180</code>
|
||||||
|
* degrees.
|
||||||
|
*
|
||||||
|
* @param yaw the yaw in degrees
|
||||||
|
* @return the normalized yaw in degrees
|
||||||
|
* @see Location#getYaw()
|
||||||
|
*/
|
||||||
|
public static float normalizeYaw(float yaw) {
|
||||||
|
yaw %= 360.0f;
|
||||||
|
if (yaw >= 180.0f) {
|
||||||
|
yaw -= 360.0f;
|
||||||
|
} else if (yaw < -180.0f) {
|
||||||
|
yaw += 360.0f;
|
||||||
|
}
|
||||||
|
return yaw;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Normalizes the given pitch angle to a value between <code>+/-90</code>
|
||||||
|
* degrees.
|
||||||
|
*
|
||||||
|
* @param pitch the pitch in degrees
|
||||||
|
* @return the normalized pitch in degrees
|
||||||
|
* @see Location#getPitch()
|
||||||
|
*/
|
||||||
|
public static float normalizePitch(float pitch) {
|
||||||
|
if (pitch > 90.0f) {
|
||||||
|
pitch = 90.0f;
|
||||||
|
} else if (pitch < -90.0f) {
|
||||||
|
pitch = -90.0f;
|
||||||
|
}
|
||||||
|
return pitch;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -105,6 +105,19 @@ public interface Entity extends Metadatable, CommandSender, Nameable {
|
||||||
@NotNull
|
@NotNull
|
||||||
public World getWorld();
|
public World getWorld();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets the entity's rotation.
|
||||||
|
* <p>
|
||||||
|
* Note that if the entity is affected by AI, it may override this rotation.
|
||||||
|
*
|
||||||
|
* @param yaw the yaw
|
||||||
|
* @param pitch the pitch
|
||||||
|
* @throws UnsupportedOperationException if used for players
|
||||||
|
* @deprecated draft API
|
||||||
|
*/
|
||||||
|
@Deprecated
|
||||||
|
public void setRotation(float yaw, float pitch);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Teleports this entity to the given location. If this entity is riding a
|
* Teleports this entity to the given location. If this entity is riding a
|
||||||
* vehicle, it will be dismounted prior to teleportation.
|
* vehicle, it will be dismounted prior to teleportation.
|
||||||
|
|
Loading…
Add table
Reference in a new issue