Fake Player dreht seinen Kopf nicht mit

Dieses Thema im Forum "Programmierung" wurde erstellt von bsheep87, 14. August 2016.

  1. bsheep87
    Offline

    bsheep87

    Registriert seit:
    14. August 2016
    Beiträge:
    2
    hallo wie oben schon steht geht es um einen Fake Player in der 1.8 hat es alles super funktioniert aber seit ich auf 1.10 gegangen bin dreht sich nur der Körper der Kopf dreht sich nicht nun mal der code da ich nicht genau weiß wo der fehler ist schreibe ich euch einfach mal die ganze class ich hoffe ihr könnt mir helfen


    Code (Text):
    1. public class LookManager {
    2.    
    3.     private final FakePlayer player;
    4.    
    5.     public LookManager(final FakePlayer arg0) {
    6.         this.player = arg0;
    7.     }
    8.     public void searchTarget() {
    9.         double distance = 15;
    10.         for (final Player p : Bukkit.getOnlinePlayers()) {
    11.             if (p.getWorld().getName().equalsIgnoreCase(this.player.getBukkitEntity().getWorld().getName())) {
    12.                 distance = Math.min(distance, p.getLocation().distance(this.player.getBukkitEntity().getLocation()));
    13.             }
    14.         }
    15.         for (final Player p : Bukkit.getOnlinePlayers()) {
    16.             if (((CraftPlayer) p).getHandle() instanceof FakePlayer == false) {
    17.                 if (p.getWorld().getName().equalsIgnoreCase(this.player.getBukkitEntity().getWorld().getName())) {
    18.                     if (p.getLocation().distance(this.player.getBukkitEntity().getLocation()) <= distance+0.2) {
    19.                         this.faceEntity(this.player.getBukkitEntity(), p);
    20.                     }
    21.                 }
    22.             }
    23.         }
    24.     }
    25.     private void faceEntity(final Entity entity, final Entity at) {
    26.         if (entity.getWorld() != at.getWorld()) {
    27.             return;
    28.         }
    29.         this.faceLocation(entity, at.getLocation());
    30.     }
    31.     private void faceLocation(final Entity entity, final Location to) {
    32.         if (entity.getWorld() != to.getWorld()) {
    33.             return;
    34.         }
    35.         final Location fromLocation = entity.getLocation();
    36.        
    37.         final double xDiff = to.getX() - fromLocation.getX();
    38.         final double yDiff = to.getY() - fromLocation.getY();
    39.         final double zDiff = to.getZ() - fromLocation.getZ();
    40.        
    41.         final double distanceXZ = Math.sqrt(xDiff * xDiff + zDiff * zDiff);
    42.         final double distanceY = Math.sqrt(distanceXZ * distanceXZ + yDiff * yDiff);
    43.        
    44.         double yaw = Math.toDegrees(Math.acos(xDiff / distanceXZ));
    45.         final double pitch = Math.toDegrees(Math.acos(yDiff / distanceY)) - 90.0D;
    46.         if (zDiff < 0.0D) {
    47.             yaw += Math.abs(180.0D - yaw) * 2.0D;
    48.         }
    49.         this.look(entity, (float)yaw - 90.0F, (float)pitch);
    50.     }
    51.     private void look(final org.bukkit.entity.Entity entity, float yaw, final float pitch) {
    52.         final net.minecraft.server.v1_10_R1.Entity handle = ((CraftEntity) entity).getHandle();
    53.         if (handle == null) {
    54.             return;
    55.         }
    56.         yaw = this.clampYaw(yaw);
    57.         handle.yaw = yaw;
    58.         this.setHeadYaw(handle, yaw);
    59.         handle.pitch = pitch;
    60.     }
    61.     private void setHeadYaw(final net.minecraft.server.v1_10_R1.Entity en, float yaw) {
    62.         if (!(en instanceof EntityLiving)) {
    63.             return;
    64.         }
    65.         final EntityLiving handle = (EntityLiving)en;
    66.         yaw = this.clampYaw(yaw);
    67.         handle.aK = yaw;
    68.         if (!(handle instanceof EntityHuman)) {
    69.             handle.aI = yaw;
    70.         }
    71.         handle.aL = yaw;
    72.     }
    73.     private float clampYaw(float yaw) {
    74.         while (yaw < -180.0F) {
    75.             yaw += 360.0F;
    76.         }
    77.         while (yaw >= 180.0F) {
    78.             yaw -= 360.0F;
    79.         }
    80.         return yaw;
    81.     }
    82. }
    83.  
     
    #1