本文整理了Java中net.minecraft.util.EnumFacing.getFacingFromVector()
方法的一些代码示例,展示了EnumFacing.getFacingFromVector()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。EnumFacing.getFacingFromVector()
方法的具体详情如下:
包路径:net.minecraft.util.EnumFacing
类名称:EnumFacing
方法名:getFacingFromVector
暂无
代码示例来源:origin: AppliedEnergistics/Applied-Energistics-2
/**
* Re-calculates the Orientation of this quad,
* optionally the normal vector.
*
* @param setNormal If the normal vector should be updated.
*/
public void calculateOrientation( boolean setNormal )
{
this.v1.set( this.vertices[3].vec );
this.t.set( this.vertices[1].vec );
this.v1.sub( this.t );
this.v2.set( this.vertices[2].vec );
this.t.set( this.vertices[0].vec );
this.v2.sub( this.t );
this.normal.cross( this.v2, this.v1 );
this.normal.normalize();
if( this.format.hasNormal && setNormal)
{
for( Vertex vertex : this.vertices )
{
vertex.normal[0] = this.normal.x;
vertex.normal[1] = this.normal.y;
vertex.normal[2] = this.normal.z;
vertex.normal[3] = 0;
}
}
this.orientation = EnumFacing.getFacingFromVector( this.normal.x, this.normal.y, this.normal.z );
}
代码示例来源:origin: ldtteam/minecolonies
/**
* Check if a certain vector matches two directions.
*
* @param directionX the direction x.
* @param directionZ the direction z.
* @param vector the vector.
* @return true if so.
*/
private static boolean isInDirection(final EnumFacing directionX, final EnumFacing directionZ, final BlockPos vector)
{
return EnumFacing.getFacingFromVector(vector.getX(), 0, 0) == directionX && EnumFacing.getFacingFromVector(0, 0, vector.getZ()) == directionZ;
}
代码示例来源:origin: thraaawn/CompactMachines
public static EnumFacing getFacingFromEntity(BlockPos clickedBlock, EntityLivingBase entity) {
return EnumFacing.getFacingFromVector(
(float) (entity.posX - clickedBlock.getX()),
0.0f,
(float) (entity.posZ - clickedBlock.getZ())).getOpposite();
}
代码示例来源:origin: SleepyTrousers/EnderCore
public static void addBakedQuads(@Nonnull List<BakedQuad> quads, @Nonnull Collection<Vertex> vertices, @Nonnull TextureAtlasSprite tex,
@Nullable Vector4f color) {
Iterator<Vertex> it = vertices.iterator();
while (it.hasNext()) {
EnumFacing face = EnumFacing.DOWN;
UnpackedBakedQuad.Builder builder = new UnpackedBakedQuad.Builder(Attributes.DEFAULT_BAKED_FORMAT);
for (int i = 0; i < 4; i++) {
Vertex v = it.next();
if (i == 0) {
face = EnumFacing.getFacingFromVector(v.nx(), v.ny(), v.nz());
builder.setQuadOrientation(face);
builder.setTexture(tex);
}
v.color = color;
putVertexData(builder, v, face.getDirectionVec(), tex);
}
quads.add(builder.build());
}
}
代码示例来源:origin: McJtyMods/ModTutorials
public static EnumFacing getFacingFromEntity(BlockPos clickedBlock, EntityLivingBase entity) {
return EnumFacing.getFacingFromVector((float) (entity.posX - clickedBlock.getX()), (float) (entity.posY - clickedBlock.getY()), (float) (entity.posZ - clickedBlock.getZ()));
}
代码示例来源:origin: McJtyMods/ModTutorials
public static EnumFacing getFacingFromEntity(BlockPos clickedBlock, EntityLivingBase entity) {
return EnumFacing.getFacingFromVector((float) (entity.posX - clickedBlock.getX()), (float) (entity.posY - clickedBlock.getY()), (float) (entity.posZ - clickedBlock.getZ()));
}
代码示例来源:origin: ldtteam/minecolonies
/**
* Checks if the destination has been reached.
* Meaning that the avoid distance has been reached.
*
* @param n Node to test.
* @return true if so.
*/
@Override
protected boolean isAtDestination(@NotNull final Node n)
{
final BlockPos vector = n.pos.subtract(avoid);
final double nodeResult = getNodeResultScore(n);
final int avoidSq = (avoidDistance * avoidDistance);
return nodeResult >= avoidSq && (EnumFacing.getFacingFromVector(vector.getX(), 0, vector.getZ()).equals(direction) || nodeResult > avoidSq * avoidDistance);
}
代码示例来源:origin: iLexiconn/LLibrary
private static EnumFacing transform(EnumFacing facing, Vec3i vec3i, Vec3i vec3i1, Vec3i vec3i2) {
BlockPos vec = transform(facing.getDirectionVec(), vec3i, vec3i1, vec3i2);
return EnumFacing.getFacingFromVector(vec.getX(), vec.getY(), vec.getZ());
}
代码示例来源:origin: Vazkii/Psi
@Override
public Object execute(SpellContext context) throws SpellRuntimeException {
Entity e = this.getParamValue(context, target);
if(e == null)
throw new SpellRuntimeException(SpellRuntimeException.NULL_TARGET);
Vec3d look = e.getLook(1F);
EnumFacing facing = EnumFacing.getFacingFromVector((float) look.x, (float) look.y, (float) look.z);
return new Vector3(facing.getFrontOffsetX(), facing.getFrontOffsetY(), facing.getFrontOffsetZ());
}
代码示例来源:origin: Lunatrius/Schematica
final EnumFacing facing = EnumFacing.getFacingFromVector(viewVector.x, viewVector.y, viewVector.z).getOpposite();
visibleSides.remove(facing);
代码示例来源:origin: ldtteam/minecolonies
final EnumFacing facingX = EnumFacing.getFacingFromVector(relativePos.getX(), 0, 0);
final EnumFacing facingZ = EnumFacing.getFacingFromVector(0, 0, relativePos.getZ());
desc = relativePos.getX() + " " + facingX + " " + relativePos.getZ() + " " + facingZ;
代码示例来源:origin: WayofTime/BloodMagic
public static boolean canEntitySeeBlock(World world, Entity entity, BlockPos pos) {
Vec3d relativePosition = new Vec3d(entity.posX - pos.getX() - 0.5, entity.posY + (double) entity.getEyeHeight() - pos.getY() - 0.5, entity.posZ - pos.getZ() - 0.5);
EnumFacing dir = EnumFacing.getFacingFromVector((float) relativePosition.x, (float) relativePosition.y, (float) relativePosition.z);
RayTraceResult result = world.rayTraceBlocks(new Vec3d(entity.posX, entity.posY + (double) entity.getEyeHeight(), entity.posZ), new Vec3d(pos.getX() + 0.5 + dir.getFrontOffsetX() * 0.4, pos.getY() + 0.5 + dir.getFrontOffsetY() * 0.4, pos.getZ() + 0.5 + dir.getFrontOffsetZ() * 0.4), false, true, true);
return result == null || pos.equals(result.getBlockPos());
}
代码示例来源:origin: Vazkii/Quark
@SubscribeEvent
@SideOnly(Side.CLIENT)
public void onKeyInput(KeyInputEvent event) {
Minecraft mc = Minecraft.getMinecraft();
boolean down = ModKeybinds.lockKey.isKeyDown();
if(mc.inGameHasFocus && down) {
LockProfile newProfile;
RayTraceResult result = mc.objectMouseOver;
if(result != null && result.typeOfHit == Type.BLOCK) {
int half = (int) ((result.hitVec.y - (int) result.hitVec.y) * 2);
if(result.sideHit.getAxis() == Axis.Y)
half = -1;
newProfile = new LockProfile(result.sideHit.getOpposite(), half);
} else {
Vec3d look = mc.player.getLookVec();
newProfile = new LockProfile(EnumFacing.getFacingFromVector((float) look.x, (float) look.y, (float) look.z), -1);
}
if(clientProfile != null && clientProfile.equals(newProfile))
clientProfile = null;
else clientProfile = newProfile;
NetworkHandler.INSTANCE.sendToServer(new MessageSetLockProfile(clientProfile));
}
}
代码示例来源:origin: TeamWizardry/Wizardry
RayTraceResult.Type.BLOCK,
lookVec,
EnumFacing.getFacingFromVector((float) lookVec.x, (float) lookVec.y, (float) lookVec.z),
new BlockPos(lookVec));
代码示例来源:origin: TeamWizardry/Wizardry
(adjPos.z + subPos.z) / 2.0);
Vec3d sub = subPos.subtract(adjPos);
EnumFacing adjSubFacing = EnumFacing.getFacingFromVector((float) sub.x, (float) sub.y, (float) sub.z);
Vec3d cross = new Vec3d(adjSubFacing.getDirectionVec()).crossProduct(new Vec3d(facing.getDirectionVec())).normalize().scale(0.5);
代码示例来源:origin: iLexiconn/LLibrary
normal.normalize();
UnpackedBakedQuad.Builder quadBuilder = new UnpackedBakedQuad.Builder(format);
EnumFacing quadFacing = EnumFacing.getFacingFromVector(normal.x, normal.y, normal.z);
quadBuilder.setQuadOrientation(quadFacing);
quadBuilder.setTexture(sprite);
代码示例来源:origin: JurassiCraftTeam/JurassiCraft2
normal.normalize();
UnpackedBakedQuad.Builder quadBuilder = new UnpackedBakedQuad.Builder(format);
EnumFacing quadFacing = EnumFacing.getFacingFromVector(normal.x, normal.y, normal.z);
quadBuilder.setQuadOrientation(quadFacing);
quadBuilder.setTexture(sprite);
代码示例来源:origin: TeamWizardry/Wizardry
spellData.processBlock(getPosition(), EnumFacing.getFacingFromVector((float) look.x, (float) look.y, (float) look.z), getPositionVector());
goBoom(spellRing, spellData);
return;
代码示例来源:origin: ldtteam/minecolonies
final EnumFacing facing = EnumFacing.getFacingFromVector(vector.getX(), vector.getY(), vector.getZ()).getOpposite();
内容来源于网络,如有侵权,请联系作者删除!