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


Java AxisAlignedBB.offset方法代码示例

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


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

示例1: isNotColliding

import net.minecraft.util.math.AxisAlignedBB; //导入方法依赖的package包/类
/**
 * Checks if entity bounding box is not colliding with terrain
 */
private boolean isNotColliding(double x, double y, double z, double doubleIn)
{
    double d0 = (x - this.parentEntity.posX) / doubleIn;
    double d1 = (y - this.parentEntity.posY) / doubleIn;
    double d2 = (z - this.parentEntity.posZ) / doubleIn;
    AxisAlignedBB axisalignedbb = this.parentEntity.getEntityBoundingBox();

    for (int i = 1; (double)i < doubleIn; ++i)
    {
        axisalignedbb = axisalignedbb.offset(d0, d1, d2);

        if (!this.parentEntity.worldObj.getCollisionBoxes(this.parentEntity, axisalignedbb).isEmpty())
        {
            return false;
        }
    }

    return true;
}
 
开发者ID:Herobone,项目名称:HeroUtils,代码行数:23,代码来源:FlyMoveHelper.java

示例2: updateFlyHeight

import net.minecraft.util.math.AxisAlignedBB; //导入方法依赖的package包/类
private void updateFlyHeight()
{
	double h = 1;
	AxisAlignedBB box = WMinecraft.getPlayer().getEntityBoundingBox()
		.expand(0.0625, 0.0625, 0.0625);
	for(flyHeight = 0; flyHeight < WMinecraft.getPlayer().posY; flyHeight +=
		h)
	{
		AxisAlignedBB nextBox = box.offset(0, -flyHeight, 0);
		
		if(WMinecraft.getWorld().checkBlockCollision(nextBox))
		{
			if(h < 0.0625)
				break;
			
			flyHeight -= h;
			h /= 2;
		}
	}
}
 
开发者ID:Wurst-Imperium,项目名称:Wurst-MC-1.12,代码行数:21,代码来源:FlightMod.java

示例3: isNotColliding

import net.minecraft.util.math.AxisAlignedBB; //导入方法依赖的package包/类
private boolean isNotColliding(double x, double y, double z, double p_179926_7_)
{
    double d0 = (x - this.parentEntity.posX) / p_179926_7_;
    double d1 = (y - this.parentEntity.posY) / p_179926_7_;
    double d2 = (z - this.parentEntity.posZ) / p_179926_7_;
    AxisAlignedBB axisalignedbb = this.parentEntity.getEntityBoundingBox();

    for (int i = 1; (double)i < p_179926_7_; ++i)
    {
        axisalignedbb = axisalignedbb.offset(d0, d1, d2);

        if (!this.parentEntity.world.getCollisionBoxes(this.parentEntity, axisalignedbb).isEmpty())
        {
            return false;
        }
    }

    return true;
}
 
开发者ID:sudofox,项目名称:Backmemed,代码行数:20,代码来源:EntityGhast.java

示例4: getOffsetBoundingBox

import net.minecraft.util.math.AxisAlignedBB; //导入方法依赖的package包/类
public static AxisAlignedBB getOffsetBoundingBox(AxisAlignedBB p_getOffsetBoundingBox_0_, Block.EnumOffsetType p_getOffsetBoundingBox_1_, BlockPos p_getOffsetBoundingBox_2_)
{
    int i = p_getOffsetBoundingBox_2_.getX();
    int j = p_getOffsetBoundingBox_2_.getZ();
    long k = (long)(i * 3129871) ^ (long)j * 116129781L;
    k = k * k * 42317861L + k * 11L;
    double d0 = ((double)((float)(k >> 16 & 15L) / 15.0F) - 0.5D) * 0.5D;
    double d1 = ((double)((float)(k >> 24 & 15L) / 15.0F) - 0.5D) * 0.5D;
    double d2 = 0.0D;

    if (p_getOffsetBoundingBox_1_ == Block.EnumOffsetType.XYZ)
    {
        d2 = ((double)((float)(k >> 20 & 15L) / 15.0F) - 1.0D) * 0.2D;
    }

    return p_getOffsetBoundingBox_0_.offset(d0, d2, d1);
}
 
开发者ID:sudofox,项目名称:Backmemed,代码行数:18,代码来源:BlockModelUtils.java

示例5: getHead

import net.minecraft.util.math.AxisAlignedBB; //导入方法依赖的package包/类
public static AxisAlignedBB getHead(EntityLivingBase target){
	double ymax = target.posY + target.getEyeHeight();
	AxisAlignedBB head = new AxisAlignedBB(target.posX - 0.25, ymax - 0.16, target.posZ - 0.25, target.posX + 0.25, ymax + 0.25, target.posZ + 0.25);
	//if (target instanceof EntityCreeper || target instanceof EntityEnderman || target instanceof EntityIronGolem)
	//	head=head.offset(0, -0.2, 0);
	if (target.width >= 0.63) {
		float offsetX = -MathHelper.sin(target.renderYawOffset * 0.017453292F) * Math.max(0f,target.width*0.6f-0.32f);
       // float f1 = -MathHelper.sin((rotationPitchIn + pitchOffset) * 0.017453292F);
        float offsetZ = MathHelper.cos(target.renderYawOffset * 0.017453292F) * Math.max(0f,target.width*0.6f-0.32f);
		/*double offsetX = MathHelper.cos(target.renderYawOffset / 180.0F * (float) Math.PI) * target.width / 2;
		double offsetZ = -(double) (MathHelper.sin(target.renderYawOffset / 180.0F * (float) Math.PI) * target.width / 2);// cos*/
		// double offsetX2=- (double)(MathHelper.sin(living.rotationYaw
		// / 180.0F * (float)Math.PI) * var5.width/2);
		// double offsetZ2=(double)(MathHelper.cos(living.rotationYaw /
		// 180.0F * (float)Math.PI) * var5.width/2);//cos
		// System.out.println("Offsets: "+offsetX+" "+offsetZ+"
		// "+offsetX2+" "+offsetZ2);
		head=head.offset(offsetX, 0, offsetZ);
	}
	return head;
}
 
开发者ID:rafradek,项目名称:Mods,代码行数:22,代码来源:TF2Util.java

示例6: isNotColliding

import net.minecraft.util.math.AxisAlignedBB; //导入方法依赖的package包/类
/**
 * Checks if entity bounding box is not colliding with terrain
 */
private boolean isNotColliding(double x, double y, double z, double p_179926_7_) {
	double d0 = (x - this.parentEntity.posX) / p_179926_7_;
	double d1 = (y - this.parentEntity.posY) / p_179926_7_;
	double d2 = (z - this.parentEntity.posZ) / p_179926_7_;
	AxisAlignedBB axisalignedbb = this.parentEntity.getEntityBoundingBox();

	for (int i = 1; i < p_179926_7_; ++i) {
		axisalignedbb = axisalignedbb.offset(d0, d1, d2);

		if (!this.parentEntity.world.getCollisionBoxes(this.parentEntity, axisalignedbb).isEmpty())
			return false;
	}

	return true;
}
 
开发者ID:rafradek,项目名称:Mods,代码行数:19,代码来源:EntityMerasmus.java

示例7: isNotColliding

import net.minecraft.util.math.AxisAlignedBB; //导入方法依赖的package包/类
/**
 * Checks if entity bounding box is not colliding with terrain
 */
private boolean isNotColliding(double x, double y, double z, double p_179926_7_)
{
    double d0 = (x - this.parentEntity.posX) / p_179926_7_;
    double d1 = (y - this.parentEntity.posY) / p_179926_7_;
    double d2 = (z - this.parentEntity.posZ) / p_179926_7_;
    AxisAlignedBB axisalignedbb = this.parentEntity.getEntityBoundingBox();

    for (int i = 1; (double)i < p_179926_7_; ++i)
    {
        axisalignedbb = axisalignedbb.offset(d0, d1, d2);

        if (!this.parentEntity.worldObj.getCollisionBoxes(this.parentEntity, axisalignedbb).isEmpty())
        {
            return false;
        }
    }

    return true;
}
 
开发者ID:F1r3w477,项目名称:CustomWorldGen,代码行数:23,代码来源:EntityGhast.java

示例8: getSelectedBoundingBox

import net.minecraft.util.math.AxisAlignedBB; //导入方法依赖的package包/类
@Nullable
@Override
public AxisAlignedBB getSelectedBoundingBox(IBlockState state, World worldIn, BlockPos pos)
{
    AxisAlignedBB bounds = getContent().selectionBounds.get(getSubtype(state)).orElse(null);
    if (bounds == DEFAULT_AABB_MARKER)
        return super.getSelectedBoundingBox(state, worldIn, pos);
    else
        return bounds != null ? bounds.offset(pos) : null;
}
 
开发者ID:cubex2,项目名称:customstuff4,代码行数:11,代码来源:BlockMixin.java

示例9: addCollisionBoxToList

import net.minecraft.util.math.AxisAlignedBB; //导入方法依赖的package包/类
protected static void addCollisionBoxToList(BlockPos pos, AxisAlignedBB entityBox, List<AxisAlignedBB> collidingBoxes, @Nullable AxisAlignedBB blockBox)
{
    if (blockBox != NULL_AABB)
    {
        AxisAlignedBB axisalignedbb = blockBox.offset(pos);

        if (entityBox.intersectsWith(axisalignedbb))
        {
            collidingBoxes.add(axisalignedbb);
        }
    }
}
 
开发者ID:sudofox,项目名称:Backmemed,代码行数:13,代码来源:Block.java

示例10: func_190607_a

import net.minecraft.util.math.AxisAlignedBB; //导入方法依赖的package包/类
private AxisAlignedBB func_190607_a(AxisAlignedBB p_190607_1_)
{
    double d0 = (double)this.getExtendedProgress(this.progress);
    return p_190607_1_.offset((double)this.pos.getX() + d0 * (double)this.pistonFacing.getFrontOffsetX(), (double)this.pos.getY() + d0 * (double)this.pistonFacing.getFrontOffsetY(), (double)this.pos.getZ() + d0 * (double)this.pistonFacing.getFrontOffsetZ());
}
 
开发者ID:sudofox,项目名称:Backmemed,代码行数:6,代码来源:TileEntityPiston.java


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