本文整理汇总了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();
}
}
}
示例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();
}
}
}