当前位置: 首页>>代码示例>>Java>>正文


Java Entity.setPositionAndRotationDirect方法代码示例

本文整理汇总了Java中net.minecraft.entity.Entity.setPositionAndRotationDirect方法的典型用法代码示例。如果您正苦于以下问题:Java Entity.setPositionAndRotationDirect方法的具体用法?Java Entity.setPositionAndRotationDirect怎么用?Java Entity.setPositionAndRotationDirect使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在net.minecraft.entity.Entity的用法示例。


在下文中一共展示了Entity.setPositionAndRotationDirect方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: handleEntityMovement

import net.minecraft.entity.Entity; //导入方法依赖的package包/类
/**
 * 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();
        }
    }
}
 
开发者ID:NSExceptional,项目名称:Zombe-Modpack,代码行数:29,代码来源:NetHandlerPlayClient.java

示例2: handleEntityTeleport

import net.minecraft.entity.Entity; //导入方法依赖的package包/类
/**
 * Updates an entity's position and rotation as specified by the packet
 */
public void handleEntityTeleport(SPacketEntityTeleport packetIn)
{
    PacketThreadUtil.checkThreadAndEnqueue(packetIn, this, this.gameController);
    Entity entity = this.clientWorldController.getEntityByID(packetIn.getEntityId());

    if (entity != null)
    {
        double d0 = packetIn.getX();
        double d1 = packetIn.getY();
        double d2 = packetIn.getZ();
        EntityTracker.updateServerPosition(entity, d0, d1, d2);

        if (!entity.canPassengerSteer())
        {
            float f = (float)(packetIn.getYaw() * 360) / 256.0F;
            float f1 = (float)(packetIn.getPitch() * 360) / 256.0F;

            if (Math.abs(entity.posX - d0) < 0.03125D && Math.abs(entity.posY - d1) < 0.015625D && Math.abs(entity.posZ - d2) < 0.03125D)
            {
                entity.setPositionAndRotationDirect(entity.posX, entity.posY, entity.posZ, f, f1, 0, true);
            }
            else
            {
                entity.setPositionAndRotationDirect(d0, d1, d2, f, f1, 3, true);
            }

            entity.onGround = packetIn.getOnGround();
        }
    }
}
 
开发者ID:NSExceptional,项目名称:Zombe-Modpack,代码行数:34,代码来源:NetHandlerPlayClient.java


注:本文中的net.minecraft.entity.Entity.setPositionAndRotationDirect方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。