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


Java BlockFence类代码示例

本文整理汇总了Java中net.minecraft.block.BlockFence的典型用法代码示例。如果您正苦于以下问题:Java BlockFence类的具体用法?Java BlockFence怎么用?Java BlockFence使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


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

示例1: handleFalling

import net.minecraft.block.BlockFence; //导入依赖的package包/类
/**
 * process player falling based on movement packet
 */
public void handleFalling(double p_71122_1_, boolean p_71122_3_)
{
    int i = MathHelper.floor_double(this.posX);
    int j = MathHelper.floor_double(this.posY - 0.20000000298023224D);
    int k = MathHelper.floor_double(this.posZ);
    BlockPos blockpos = new BlockPos(i, j, k);
    Block block = this.worldObj.getBlockState(blockpos).getBlock();

    if (block.getMaterial() == Material.air)
    {
        Block block1 = this.worldObj.getBlockState(blockpos.down()).getBlock();

        if (block1 instanceof BlockFence || block1 instanceof BlockWall || block1 instanceof BlockFenceGate)
        {
            blockpos = blockpos.down();
            block = this.worldObj.getBlockState(blockpos).getBlock();
        }
    }

    super.updateFallState(p_71122_1_, p_71122_3_, block, blockpos);
}
 
开发者ID:Notoh,项目名称:DecompiledMinecraft,代码行数:25,代码来源:EntityPlayerMP.java

示例2: onItemUse

import net.minecraft.block.BlockFence; //导入依赖的package包/类
/**
 * Called when a Block is right-clicked with this Item
 */
public boolean onItemUse(ItemStack stack, EntityPlayer playerIn, World worldIn, BlockPos pos, EnumFacing side, float hitX, float hitY, float hitZ)
{
    Block block = worldIn.getBlockState(pos).getBlock();

    if (block instanceof BlockFence)
    {
        if (worldIn.isRemote)
        {
            return true;
        }
        else
        {
            attachToFence(playerIn, worldIn, pos);
            return true;
        }
    }
    else
    {
        return false;
    }
}
 
开发者ID:Notoh,项目名称:DecompiledMinecraft,代码行数:25,代码来源:ItemLead.java

示例3: handleFalling

import net.minecraft.block.BlockFence; //导入依赖的package包/类
/**
 * process player falling based on movement packet
 */
public void handleFalling(double y, boolean onGroundIn)
{
    int i = MathHelper.floor(this.posX);
    int j = MathHelper.floor(this.posY - 0.20000000298023224D);
    int k = MathHelper.floor(this.posZ);
    BlockPos blockpos = new BlockPos(i, j, k);
    IBlockState iblockstate = this.world.getBlockState(blockpos);

    if (iblockstate.getMaterial() == Material.AIR)
    {
        BlockPos blockpos1 = blockpos.down();
        IBlockState iblockstate1 = this.world.getBlockState(blockpos1);
        Block block = iblockstate1.getBlock();

        if (block instanceof BlockFence || block instanceof BlockWall || block instanceof BlockFenceGate)
        {
            blockpos = blockpos1;
            iblockstate = iblockstate1;
        }
    }

    super.updateFallState(y, onGroundIn, iblockstate, blockpos);
}
 
开发者ID:NSExceptional,项目名称:Zombe-Modpack,代码行数:27,代码来源:EntityPlayerMP.java

示例4: onItemUse

import net.minecraft.block.BlockFence; //导入依赖的package包/类
/**
 * Called when a Block is right-clicked with this Item
 */
public EnumActionResult onItemUse(EntityPlayer stack, World playerIn, BlockPos worldIn, EnumHand pos, EnumFacing hand, float facing, float hitX, float hitY)
{
    Block block = playerIn.getBlockState(worldIn).getBlock();

    if (!(block instanceof BlockFence))
    {
        return EnumActionResult.PASS;
    }
    else
    {
        if (!playerIn.isRemote)
        {
            attachToFence(stack, playerIn, worldIn);
        }

        return EnumActionResult.SUCCESS;
    }
}
 
开发者ID:sudofox,项目名称:Backmemed,代码行数:22,代码来源:ItemLead.java

示例5: handleFalling

import net.minecraft.block.BlockFence; //导入依赖的package包/类
/**
 * process player falling based on movement packet
 */
public void handleFalling(double y, boolean onGroundIn)
{
    int i = MathHelper.floor_double(this.posX);
    int j = MathHelper.floor_double(this.posY - 0.20000000298023224D);
    int k = MathHelper.floor_double(this.posZ);
    BlockPos blockpos = new BlockPos(i, j, k);
    IBlockState iblockstate = this.worldObj.getBlockState(blockpos);

    if (iblockstate.getBlock().isAir(iblockstate, this.worldObj, blockpos))
    {
        BlockPos blockpos1 = blockpos.down();
        IBlockState iblockstate1 = this.worldObj.getBlockState(blockpos1);
        Block block = iblockstate1.getBlock();

        if (block instanceof BlockFence || block instanceof BlockWall || block instanceof BlockFenceGate)
        {
            blockpos = blockpos1;
            iblockstate = iblockstate1;
        }
    }

    super.updateFallState(y, onGroundIn, iblockstate, blockpos);
}
 
开发者ID:F1r3w477,项目名称:CustomWorldGen,代码行数:27,代码来源:EntityPlayerMP.java

示例6: onItemUse

import net.minecraft.block.BlockFence; //导入依赖的package包/类
/**
 * Called when a Block is right-clicked with this Item
 */
public EnumActionResult onItemUse(ItemStack stack, EntityPlayer playerIn, World worldIn, BlockPos pos, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ)
{
    Block block = worldIn.getBlockState(pos).getBlock();

    if (!(block instanceof BlockFence))
    {
        return EnumActionResult.PASS;
    }
    else
    {
        if (!worldIn.isRemote)
        {
            attachToFence(playerIn, worldIn, pos);
        }

        return EnumActionResult.SUCCESS;
    }
}
 
开发者ID:F1r3w477,项目名称:CustomWorldGen,代码行数:22,代码来源:ItemLead.java

示例7: canConnectTo

import net.minecraft.block.BlockFence; //导入依赖的package包/类
protected boolean canConnectTo(IBlockAccess blockAccess, int x, int y, int z) {
	Block block = blockAccess.getBlock(x, y, z);
	if (block == null) {
		return false;
	} else if (block.getMaterial().isOpaque()
			&& block.renderAsNormalBlock()) {
		// We'll connect against full 1x1x1 blocks.
		return true;
	} else if (block instanceof FenceBlock || block instanceof BlockFence
			|| block instanceof BlockPane || block instanceof BlockWall) {
		// Of course we connect to our own.
		// And to vanilla fences, iron bars, glass panes and walls.
		return true;
	}
	return false;
}
 
开发者ID:tyrope,项目名称:fencing,代码行数:17,代码来源:FenceBlock.java

示例8: onNeighborBlockChange

import net.minecraft.block.BlockFence; //导入依赖的package包/类
/**
 * Lets the block know when one of its neighbor changes. Doesn't know which neighbor changed (coordinates passed are
 * their own) Args: x, y, z, neighbor blockID
 */
public void onNeighborBlockChange(World world, int x, int y, int z, int neighbor)
{
    boolean flag = false;

    if (!world.doesBlockHaveSolidTopSurface(x, y - 1, z) && !BlockFence.isIdAFence(world.getBlockId(x, y - 1, z)))
    {
        flag = true;
    }

    if (flag)
    {
        this.dropBlockAsItem(world, x, y, z, world.getBlockMetadata(x, y, z), 0);
        world.setBlockToAir(x, y, z);
    }
}
 
开发者ID:TheAwesomeGem,项目名称:MineFantasy,代码行数:20,代码来源:BlockFoodPrep.java

示例9: onNeighborBlockChange

import net.minecraft.block.BlockFence; //导入依赖的package包/类
/**
 * Lets the block know when one of its neighbor changes. Doesn't know which neighbor changed (coordinates passed are
 * their own) Args: x, y, z, neighbor Block
 */
public void onNeighborBlockChange(World world, int x, int y, int z, Block p_149695_5_)
{
    boolean flag = false;

    if (!World.doesBlockHaveSolidTopSurface(world, x, y - 1, z) && !BlockFence.func_149825_a(world.getBlock(x, y - 1, z)))
    {
        flag = true;
    }

    if (flag)
    {
        this.dropBlockAsItem(world, x, y, z, world.getBlockMetadata(x, y, z), 0);
        world.setBlockToAir(x, y, z);
    }
}
 
开发者ID:static7s,项目名称:RTM,代码行数:20,代码来源:BlockPressureBlockWIP.java

示例10: onItemUse

import net.minecraft.block.BlockFence; //导入依赖的package包/类
@Override
public boolean onItemUse(ItemStack stack, EntityPlayer player, World world, BlockPos pos, EnumFacing side, float hitX, float hitY, float hitZ) {
	if (world.isRemote) {
		return true;
	} else {
		IBlockState state = world.getBlockState(pos);
		pos = pos.offset(side);
		double dy = 0.0D;
		if (side == EnumFacing.UP && state.getBlock() instanceof BlockFence) {
			dy = 0.5D;
		}
		Entity entity = spawnCreature(world, stack.getItemDamage(), pos.getX() + 0.5D, pos.getY() + dy, pos.getZ() + 0.5D);
		if (entity != null) {
			if (entity instanceof EntityLivingBase && stack.hasDisplayName()) {
				entity.setCustomNameTag(stack.getDisplayName());
			}

			if (!player.capabilities.isCreativeMode) {
				--stack.stackSize;
			}
		}
		return true;
	}
}
 
开发者ID:coolAlias,项目名称:ZeldaSwordSkills,代码行数:25,代码来源:ItemCustomEgg.java

示例11: canConnectTo

import net.minecraft.block.BlockFence; //导入依赖的package包/类
@Override
public boolean canConnectTo(@Nonnull IBlockAccess worldIn, @Nonnull BlockPos pos) {
  if (super.canConnectTo(worldIn, pos)) {
    return true;
  }
  final IBlockState blockState2 = worldIn.getBlockState(pos);
  final Block block = blockState2.getBlock();
  if (block instanceof BlockPaintedFence) {
    return true;
  }
  if (block instanceof IPaintable.IBlockPaintableBlock) {
    final IBlockState paintSource = ((IPaintable.IBlockPaintableBlock) block).getPaintSource(blockState2, worldIn, pos);
    return paintSource != null && paintSource.getBlock() instanceof BlockFence && paintSource.getMaterial() == blockMaterial;
  }
  return false;
}
 
开发者ID:SleepyTrousers,项目名称:EnderIO,代码行数:17,代码来源:BlockPaintedFence.java

示例12: mapRender

import net.minecraft.block.BlockFence; //导入依赖的package包/类
@SideOnly(Side.CLIENT)
private List<IBakedModel> mapRender(IBlockState state, @Nullable IBlockState paint) {
  List<IBakedModel> result = new ArrayList<IBakedModel>();

  result.add(PaintRegistry.getModel(IBakedModel.class, "fence_post", paint, null));

  if (state.getValue(BlockFence.NORTH)) {
    result.add(PaintRegistry.getModel(IBakedModel.class, "fence_side", paint, new UVLock(null)));
  }
  if (state.getValue(BlockFence.EAST)) {
    result.add(PaintRegistry.getModel(IBakedModel.class, "fence_side", paint, new UVLock(ModelRotation.X0_Y90)));
  }
  if (state.getValue(BlockFence.SOUTH)) {
    result.add(PaintRegistry.getModel(IBakedModel.class, "fence_side", paint, new UVLock(ModelRotation.X0_Y180)));
  }
  if (state.getValue(BlockFence.WEST)) {
    result.add(PaintRegistry.getModel(IBakedModel.class, "fence_side", paint, new UVLock(ModelRotation.X0_Y270)));
  }

  return result;
}
 
开发者ID:SleepyTrousers,项目名称:EnderIO,代码行数:22,代码来源:BlockPaintedFence.java

示例13: canBeConnectedTo

import net.minecraft.block.BlockFence; //导入依赖的package包/类
@Override
public boolean canBeConnectedTo(IBlockAccess world, BlockPos pos, EnumFacing facing) {
	Block connector = world.getBlockState(pos.offset(facing)).getBlock();

	if (connector instanceof BlockFence) {
		if (this != Blocks.NETHER_BRICK_FENCE && connector == Blocks.NETHER_BRICK_FENCE) {
			return false;
		} else if (this == Blocks.NETHER_BRICK_FENCE && connector != Blocks.NETHER_BRICK_FENCE) {
			return false;
		}
		return true;
	}
	return false;
}
 
开发者ID:Um-Mitternacht,项目名称:Bewitchment,代码行数:15,代码来源:BlockScornedBrickFence.java

示例14: getPathNodeTypeRaw

import net.minecraft.block.BlockFence; //导入依赖的package包/类
private PathNodeType getPathNodeTypeRaw(IBlockAccess p_189553_1_, int p_189553_2_, int p_189553_3_, int p_189553_4_)
{
    BlockPos blockpos = new BlockPos(p_189553_2_, p_189553_3_, p_189553_4_);
    IBlockState iblockstate = p_189553_1_.getBlockState(blockpos);
    Block block = iblockstate.getBlock();
    Material material = iblockstate.getMaterial();
    return material == Material.AIR ? PathNodeType.OPEN : (block != Blocks.TRAPDOOR && block != Blocks.IRON_TRAPDOOR && block != Blocks.WATERLILY ? (block == Blocks.FIRE ? PathNodeType.DAMAGE_FIRE : (block == Blocks.CACTUS ? PathNodeType.DAMAGE_CACTUS : (block instanceof BlockDoor && material == Material.WOOD && !((Boolean)iblockstate.getValue(BlockDoor.OPEN)).booleanValue() ? PathNodeType.DOOR_WOOD_CLOSED : (block instanceof BlockDoor && material == Material.IRON && !((Boolean)iblockstate.getValue(BlockDoor.OPEN)).booleanValue() ? PathNodeType.DOOR_IRON_CLOSED : (block instanceof BlockDoor && ((Boolean)iblockstate.getValue(BlockDoor.OPEN)).booleanValue() ? PathNodeType.DOOR_OPEN : (block instanceof BlockRailBase ? PathNodeType.RAIL : (!(block instanceof BlockFence) && !(block instanceof BlockWall) && (!(block instanceof BlockFenceGate) || ((Boolean)iblockstate.getValue(BlockFenceGate.OPEN)).booleanValue()) ? (material == Material.WATER ? PathNodeType.WATER : (material == Material.LAVA ? PathNodeType.LAVA : (block.isPassable(p_189553_1_, blockpos) ? PathNodeType.OPEN : PathNodeType.BLOCKED))) : PathNodeType.FENCE))))))) : PathNodeType.TRAPDOOR);
}
 
开发者ID:sudofox,项目名称:Backmemed,代码行数:9,代码来源:WalkNodeProcessor.java

示例15: onUpdate

import net.minecraft.block.BlockFence; //导入依赖的package包/类
@Override
public void onUpdate()
{
    super.onUpdate();

    if ((this.ticksExisted - 1) % 20 == 0 && this.worldObj.isRemote)
    {
        this.flagData = ClientUtil.updateFlagData(this.getOwner(), Minecraft.getMinecraft().thePlayer.getDistanceToEntity(this) < 50.0D);
    }

    Vector3 vec = new Vector3(this.posX, this.posY, this.posZ);
    vec = vec.translate(new Vector3(0, -1, 0));
    final Block blockAt = vec.getBlock(this.worldObj);

    if (blockAt != null)
    {
        if (blockAt instanceof BlockFence)
        {

        }
        else if (blockAt.isAir(this.worldObj, vec.intX(), vec.intY(), vec.intZ()))
        {
            this.motionY -= 0.02F;
        }
    }

    this.moveEntity(this.motionX, this.motionY, this.motionZ);
}
 
开发者ID:4Space,项目名称:4Space-5,代码行数:29,代码来源:EntityFlag.java


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