Java 类net.minecraft.network.play.server.SPacketEntity 实例源码

项目:Zombe-Modpack    文件:NetHandlerPlayClient.java   
/**
 * Updates the specified entity's position by the specified relative moment and absolute rotation. Note that
 * subclassing of the packet allows for the specification of a subset of this data (e.g. only rel. position, abs.
 * rotation or both).
 */
public void handleEntityMovement(SPacketEntity packetIn)
{
    PacketThreadUtil.checkThreadAndEnqueue(packetIn, this, this.gameController);
    Entity entity = packetIn.getEntity(this.clientWorldController);

    if (entity != null)
    {
        entity.serverPosX += (long)packetIn.getX();
        entity.serverPosY += (long)packetIn.getY();
        entity.serverPosZ += (long)packetIn.getZ();
        double d0 = (double)entity.serverPosX / 4096.0D;
        double d1 = (double)entity.serverPosY / 4096.0D;
        double d2 = (double)entity.serverPosZ / 4096.0D;

        if (!entity.canPassengerSteer())
        {
            float f = packetIn.isRotating() ? (float)(packetIn.getYaw() * 360) / 256.0F : entity.rotationYaw;
            float f1 = packetIn.isRotating() ? (float)(packetIn.getPitch() * 360) / 256.0F : entity.rotationPitch;
            entity.setPositionAndRotationDirect(d0, d1, d2, f, f1, 3, false);
            entity.onGround = packetIn.getOnGround();
        }
    }
}
项目:Backmemed    文件:NetHandlerPlayClient.java   
/**
 * Updates the specified entity's position by the specified relative moment and absolute rotation. Note that
 * subclassing of the packet allows for the specification of a subset of this data (e.g. only rel. position, abs.
 * rotation or both).
 */
public void handleEntityMovement(SPacketEntity packetIn)
{
    PacketThreadUtil.checkThreadAndEnqueue(packetIn, this, this.gameController);
    Entity entity = packetIn.getEntity(this.clientWorldController);

    if (entity != null)
    {
        entity.serverPosX += (long)packetIn.getX();
        entity.serverPosY += (long)packetIn.getY();
        entity.serverPosZ += (long)packetIn.getZ();
        double d0 = (double)entity.serverPosX / 4096.0D;
        double d1 = (double)entity.serverPosY / 4096.0D;
        double d2 = (double)entity.serverPosZ / 4096.0D;

        if (!entity.canPassengerSteer())
        {
            float f = packetIn.isRotating() ? (float)(packetIn.getYaw() * 360) / 256.0F : entity.rotationYaw;
            float f1 = packetIn.isRotating() ? (float)(packetIn.getPitch() * 360) / 256.0F : entity.rotationPitch;
            entity.setPositionAndRotationDirect(d0, d1, d2, f, f1, 3, false);
            entity.onGround = packetIn.getOnGround();
        }
    }
}
项目:CustomWorldGen    文件:NetHandlerPlayClient.java   
/**
 * Updates the specified entity's position by the specified relative moment and absolute rotation. Note that
 * subclassing of the packet allows for the specification of a subset of this data (e.g. only rel. position, abs.
 * rotation or both).
 */
public void handleEntityMovement(SPacketEntity packetIn)
{
    PacketThreadUtil.checkThreadAndEnqueue(packetIn, this, this.gameController);
    Entity entity = packetIn.getEntity(this.clientWorldController);

    if (entity != null)
    {
        entity.serverPosX += (long)packetIn.getX();
        entity.serverPosY += (long)packetIn.getY();
        entity.serverPosZ += (long)packetIn.getZ();
        double d0 = (double)entity.serverPosX / 4096.0D;
        double d1 = (double)entity.serverPosY / 4096.0D;
        double d2 = (double)entity.serverPosZ / 4096.0D;

        if (!entity.canPassengerSteer())
        {
            float f = packetIn.isRotating() ? (float)(packetIn.getYaw() * 360) / 256.0F : entity.rotationYaw;
            float f1 = packetIn.isRotating() ? (float)(packetIn.getPitch() * 360) / 256.0F : entity.rotationPitch;
            entity.setPositionAndRotationDirect(d0, d1, d2, f, f1, 3, false);
            entity.onGround = packetIn.getOnGround();
        }
    }
}
项目:ExpandedRailsMod    文件:NetHandlerPlayClient.java   
/**
 * Updates the specified entity's position by the specified relative moment and absolute rotation. Note that
 * subclassing of the packet allows for the specification of a subset of this data (e.g. only rel. position, abs.
 * rotation or both).
 */
public void handleEntityMovement(SPacketEntity packetIn)
{
    PacketThreadUtil.checkThreadAndEnqueue(packetIn, this, this.gameController);
    Entity entity = packetIn.getEntity(this.clientWorldController);

    if (entity != null)
    {
        entity.serverPosX += (long)packetIn.getX();
        entity.serverPosY += (long)packetIn.getY();
        entity.serverPosZ += (long)packetIn.getZ();
        double d0 = (double)entity.serverPosX / 4096.0D;
        double d1 = (double)entity.serverPosY / 4096.0D;
        double d2 = (double)entity.serverPosZ / 4096.0D;

        if (!entity.canPassengerSteer())
        {
            float f = packetIn.isRotating() ? (float)(packetIn.getYaw() * 360) / 256.0F : entity.rotationYaw;
            float f1 = packetIn.isRotating() ? (float)(packetIn.getPitch() * 360) / 256.0F : entity.rotationPitch;
            entity.setPositionAndRotationDirect(d0, d1, d2, f, f1, 3, false);
            entity.onGround = packetIn.getOnGround();
        }
    }
}
项目:Alchemy    文件:IFollower.java   
@SideOnly(Side.CLIENT)
@Hook("net.minecraft.network.play.server.SPacketEntity#func_149065_a")
public static Hook.Result getEntity(SPacketEntity packet, World world) {
    EntityPlayer player = Minecraft.getMinecraft().player;
    if (player != null) {
        IFollower follower = (IFollower) IFollower.follower.get(player);
        if (follower != null && follower.getProjectionState() && world.getEntityByID(packet.entityId) == follower)
            return Hook.Result.NULL;
    }
    return Hook.Result.VOID;
}
项目:Kingdom-Keys-Re-Coded    文件:TeleporterOrgPortal.java   
public void teleport(EntityPlayer player, BlockPos pos, int dimension) {
    EntityPlayerMP playerMP = (EntityPlayerMP) player;
    playerMP.setPositionAndUpdate(pos.getX()+0.5, pos.getY(), pos.getZ()+0.5);
    playerMP.motionX = playerMP.motionY = playerMP.motionZ = 0;
    playerMP.setPositionAndUpdate(pos.getX()+0.5, pos.getY(), pos.getZ()+0.5);
    if (player.world.provider.getDimension() != dimension)
        playerMP.mcServer.getPlayerList().transferPlayerToDimension(playerMP, dimension, this);
    playerMP.setPositionAndUpdate(pos.getX()+0.5, pos.getY(), pos.getZ()+0.5);
    playerMP.connection.sendPacket(new SPacketEntityTeleport(playerMP));
    playerMP.connection.sendPacket(new SPacketEntity(playerMP.getEntityId()));
}
项目:Backmemed    文件:INetHandlerPlayClient.java   
/**
 * Updates the specified entity's position by the specified relative moment and absolute rotation. Note that
 * subclassing of the packet allows for the specification of a subset of this data (e.g. only rel. position, abs.
 * rotation or both).
 */
void handleEntityMovement(SPacketEntity packetIn);
项目:CustomWorldGen    文件:INetHandlerPlayClient.java   
/**
 * Updates the specified entity's position by the specified relative moment and absolute rotation. Note that
 * subclassing of the packet allows for the specification of a subset of this data (e.g. only rel. position, abs.
 * rotation or both).
 */
void handleEntityMovement(SPacketEntity packetIn);