Skip to content

Commit

Permalink
body_yaw entity tag
Browse files Browse the repository at this point in the history
  • Loading branch information
mcmonkey4eva committed Feb 22, 2018
1 parent a203906 commit c6fe30a
Show file tree
Hide file tree
Showing 9 changed files with 46 additions and 2 deletions.
Expand Up @@ -75,6 +75,8 @@ void follow(final Entity target, final Entity follower, final double speed, fina
*/
void rotate(Entity entity, float yaw, float pitch);

float getBaseYaw(Entity entity);

// Taken from C2 NMS class for less dependency on C2
void look(Entity entity, float yaw, float pitch);

Expand Down
12 changes: 12 additions & 0 deletions plugin/src/main/java/net/aufdemrand/denizen/objects/dEntity.java
Expand Up @@ -1861,6 +1861,18 @@ else if (mtr.angle == BlockFace.EAST) {
.getAttribute(attribute.fulfill(1));
}

// <--[tag]
// @attribute <e@entity.body_yaw>
// @returns Element(Decimal)
// @group location
// @description
// Returns the entity's body yaw (separate from head yaw).
// -->
if (attribute.startsWith("body_yaw")) {
return new Element(NMSHandler.getInstance().getEntityHelper().getBaseYaw(entity))
.getAttribute(attribute.fulfill(1));
}

// <--[tag]
// @attribute <e@entity.velocity>
// @returns dLocation
Expand Down
Expand Up @@ -3,7 +3,7 @@
import net.aufdemrand.denizen.nms.NMSHandler;
import net.aufdemrand.denizen.nms.NMSVersion;
import net.aufdemrand.denizen.objects.dEntity;
import net.aufdemrand.denizen.utilities.ParrotHelper;
import net.aufdemrand.denizen.utilities.entity.ParrotHelper;
import net.aufdemrand.denizen.utilities.entity.RabbitType;
import net.aufdemrand.denizencore.objects.Element;
import net.aufdemrand.denizencore.objects.Mechanism;
Expand Down
@@ -1,4 +1,4 @@
package net.aufdemrand.denizen.utilities;
package net.aufdemrand.denizen.utilities.entity;

import net.aufdemrand.denizen.objects.dEntity;
import net.aufdemrand.denizencore.objects.Mechanism;
Expand Down
Expand Up @@ -387,6 +387,12 @@ else if (entity instanceof LivingEntity) {
}
}

@Override
public float getBaseYaw(Entity entity) {
net.minecraft.server.v1_10_R1.Entity handle = ((CraftEntity) entity).getHandle();
return ((EntityLiving) handle).aP;
}

@Override
public void look(Entity entity, float yaw, float pitch) {
net.minecraft.server.v1_10_R1.Entity handle = ((CraftEntity) entity).getHandle();
Expand Down
Expand Up @@ -386,6 +386,12 @@ else if (entity instanceof LivingEntity) {
}
}

@Override
public float getBaseYaw(Entity entity) {
net.minecraft.server.v1_11_R1.Entity handle = ((CraftEntity) entity).getHandle();
return ((EntityLiving) handle).aO;
}

@Override
public void look(Entity entity, float yaw, float pitch) {
net.minecraft.server.v1_11_R1.Entity handle = ((CraftEntity) entity).getHandle();
Expand Down
Expand Up @@ -386,6 +386,12 @@ else if (entity instanceof LivingEntity) {
}
}

@Override
public float getBaseYaw(Entity entity) {
net.minecraft.server.v1_12_R1.Entity handle = ((CraftEntity) entity).getHandle();
return ((EntityLiving) handle).aO;
}

@Override
public void look(Entity entity, float yaw, float pitch) {
net.minecraft.server.v1_12_R1.Entity handle = ((CraftEntity) entity).getHandle();
Expand Down
Expand Up @@ -387,6 +387,12 @@ else if (entity instanceof LivingEntity) {
}
}

@Override
public float getBaseYaw(Entity entity) {
net.minecraft.server.v1_8_R3.Entity handle = ((CraftEntity) entity).getHandle();
return ((EntityLiving) handle).aK;
}

@Override
public void look(Entity entity, float yaw, float pitch) {
net.minecraft.server.v1_8_R3.Entity handle = ((CraftEntity) entity).getHandle();
Expand Down
Expand Up @@ -387,6 +387,12 @@ else if (entity instanceof LivingEntity) {
}
}

@Override
public float getBaseYaw(Entity entity) {
net.minecraft.server.v1_9_R2.Entity handle = ((CraftEntity) entity).getHandle();
return ((EntityLiving) handle).aO;
}

@Override
public void look(Entity entity, float yaw, float pitch) {
net.minecraft.server.v1_9_R2.Entity handle = ((CraftEntity) entity).getHandle();
Expand Down

0 comments on commit c6fe30a

Please sign in to comment.