Class EmptyBodyRotationController
java.lang.Object
com.ticxo.modelengine.api.nms.impl.EmptyBodyRotationController
- All Implemented Interfaces:
BodyRotationController
,DataIO
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfloat
float
float
float
int
int
float
float
float
float
boolean
boolean
boolean
void
setBodyClampUneven
(boolean flag) void
setHeadClampUneven
(boolean flag) void
setMaxBodyAngle
(float angle) If body clamp is even, set the max body angle for both sides.
Otherwise, only set the angle on the positive side.void
setMaxHeadAngle
(float angle) If head clamp is even, set the max head angle for both sides.
Otherwise, only set the angle on the positive side.void
setMinBodyAngle
(float angle) If body clamp is uneven, set the angle on the negative side.
Otherwise, this method has no effect.void
setMinHeadAngle
(float angle) If head clamp is uneven, set the angle on the negative side.
Otherwise, this method has no effect.void
setPlayerMode
(boolean flag) Toggle player rotation mode.
If true, the body would act like the player's body rotation.
Otherwise, the body would auto rotate to match the head's rotation after a certain period of time.void
setRotationDelay
(int delay) Set the wait time before the body auto rotates to match the head's rotation.
For example, if delay = 60, the entity would rotate its head, stop, and wait 3 seconds before rotating its body.void
setRotationDuration
(int duration) Set the time it takes to auto rotates back to the head's rotation.
For example, if duration = 60, the entity would rotate its head, stop, wait 0.5 second, and takes 3 seconds to match body rotation to the head rotation.void
setStableAngle
(float angle) Set the stable angle before correcting back to the clamped angle.
For example, if the clamp = 50, and the stable angle = 15, the body can be 65 degrees away from the head before snapping back to 50 degrees away.
This causes the "sudden jerk" effect on all entity body rotation.void
setXHeadRot
(float rot) void
setYBodyRot
(float rot) void
setYHeadRot
(float rot) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com.ticxo.modelengine.api.nms.entity.wrapper.BodyRotationController
load, save, tick
-
Constructor Details
-
EmptyBodyRotationController
public EmptyBodyRotationController()
-
-
Method Details
-
getYHeadRot
public float getYHeadRot()- Specified by:
getYHeadRot
in interfaceBodyRotationController
-
setYHeadRot
public void setYHeadRot(float rot) - Specified by:
setYHeadRot
in interfaceBodyRotationController
-
getXHeadRot
public float getXHeadRot()- Specified by:
getXHeadRot
in interfaceBodyRotationController
-
setXHeadRot
public void setXHeadRot(float rot) - Specified by:
setXHeadRot
in interfaceBodyRotationController
-
getYBodyRot
public float getYBodyRot()- Specified by:
getYBodyRot
in interfaceBodyRotationController
-
setYBodyRot
public void setYBodyRot(float rot) - Specified by:
setYBodyRot
in interfaceBodyRotationController
-
isHeadClampUneven
public boolean isHeadClampUneven()- Specified by:
isHeadClampUneven
in interfaceBodyRotationController
-
setHeadClampUneven
public void setHeadClampUneven(boolean flag) - Specified by:
setHeadClampUneven
in interfaceBodyRotationController
-
isBodyClampUneven
public boolean isBodyClampUneven()- Specified by:
isBodyClampUneven
in interfaceBodyRotationController
-
setBodyClampUneven
public void setBodyClampUneven(boolean flag) - Specified by:
setBodyClampUneven
in interfaceBodyRotationController
-
getMaxHeadAngle
public float getMaxHeadAngle()- Specified by:
getMaxHeadAngle
in interfaceBodyRotationController
-
setMaxHeadAngle
public void setMaxHeadAngle(float angle) Description copied from interface:BodyRotationController
If head clamp is even, set the max head angle for both sides.
Otherwise, only set the angle on the positive side.- Specified by:
setMaxHeadAngle
in interfaceBodyRotationController
- Parameters:
angle
- angle in degrees
-
getMaxBodyAngle
public float getMaxBodyAngle()- Specified by:
getMaxBodyAngle
in interfaceBodyRotationController
-
setMaxBodyAngle
public void setMaxBodyAngle(float angle) Description copied from interface:BodyRotationController
If body clamp is even, set the max body angle for both sides.
Otherwise, only set the angle on the positive side.- Specified by:
setMaxBodyAngle
in interfaceBodyRotationController
- Parameters:
angle
- angle in degrees
-
getMinHeadAngle
public float getMinHeadAngle()- Specified by:
getMinHeadAngle
in interfaceBodyRotationController
-
setMinHeadAngle
public void setMinHeadAngle(float angle) Description copied from interface:BodyRotationController
If head clamp is uneven, set the angle on the negative side.
Otherwise, this method has no effect.- Specified by:
setMinHeadAngle
in interfaceBodyRotationController
- Parameters:
angle
- angle in degrees
-
getMinBodyAngle
public float getMinBodyAngle()- Specified by:
getMinBodyAngle
in interfaceBodyRotationController
-
setMinBodyAngle
public void setMinBodyAngle(float angle) Description copied from interface:BodyRotationController
If body clamp is uneven, set the angle on the negative side.
Otherwise, this method has no effect.- Specified by:
setMinBodyAngle
in interfaceBodyRotationController
- Parameters:
angle
- angle in degrees
-
getStableAngle
public float getStableAngle()- Specified by:
getStableAngle
in interfaceBodyRotationController
-
setStableAngle
public void setStableAngle(float angle) Description copied from interface:BodyRotationController
Set the stable angle before correcting back to the clamped angle.
For example, if the clamp = 50, and the stable angle = 15, the body can be 65 degrees away from the head before snapping back to 50 degrees away.
This causes the "sudden jerk" effect on all entity body rotation.- Specified by:
setStableAngle
in interfaceBodyRotationController
- Parameters:
angle
- angle in degrees
-
isPlayerMode
public boolean isPlayerMode()- Specified by:
isPlayerMode
in interfaceBodyRotationController
-
setPlayerMode
public void setPlayerMode(boolean flag) Description copied from interface:BodyRotationController
Toggle player rotation mode.
If true, the body would act like the player's body rotation.
Otherwise, the body would auto rotate to match the head's rotation after a certain period of time.- Specified by:
setPlayerMode
in interfaceBodyRotationController
-
getRotationDelay
public int getRotationDelay()- Specified by:
getRotationDelay
in interfaceBodyRotationController
-
setRotationDelay
public void setRotationDelay(int delay) Description copied from interface:BodyRotationController
Set the wait time before the body auto rotates to match the head's rotation.
For example, if delay = 60, the entity would rotate its head, stop, and wait 3 seconds before rotating its body.- Specified by:
setRotationDelay
in interfaceBodyRotationController
- Parameters:
delay
- delay in ticks
-
getRotationDuration
public int getRotationDuration()- Specified by:
getRotationDuration
in interfaceBodyRotationController
-
setRotationDuration
public void setRotationDuration(int duration) Description copied from interface:BodyRotationController
Set the time it takes to auto rotates back to the head's rotation.
For example, if duration = 60, the entity would rotate its head, stop, wait 0.5 second, and takes 3 seconds to match body rotation to the head rotation.- Specified by:
setRotationDuration
in interfaceBodyRotationController
- Parameters:
duration
- duration in ticks.
-