• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Java BlockRedstoneOre类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

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



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

示例1: shouldMineBlock

import net.minecraft.block.BlockRedstoneOre; //导入依赖的package包/类
private boolean shouldMineBlock(Block block, int x, int y, int z) {
    if (block instanceof BlockOre || block instanceof BlockRedstoneOre) {
        InventoryBasic minerInventory = this.miner.inventory;
        if (InventoryUtils.hasRoomInInventory(minerInventory)) {
            return true;
        }
        else {
            World world = this.miner.worldObj;
            ArrayList<ItemStack> items = block.getDrops(world, x, y, z, world.getBlockMetadata(x, y, z), 0);
            for (ItemStack item : items) {
                if (InventoryUtils.canFitItem(item, minerInventory)) {
                    return true;
                }
            }
        }
    }
    return false;
}
 
开发者ID:civilframe,项目名称:TameHumans,代码行数:19,代码来源:EntityAIMineOre.java


示例2: breaking

import net.minecraft.block.BlockRedstoneOre; //导入依赖的package包/类
private void breaking(ItemStack stack, BlockPos pos, EntityPlayerMP playermp) {

		World world = playermp.worldObj;
		IBlockState state = world.getBlockState(pos);
		Block block = state.getBlock();

		if (!world.isRemote) {
			if (!world.isAirBlock(pos)) {
				block.onBlockHarvested(world, pos, state, playermp);
				if (block.removedByPlayer(world, pos, playermp, true)) {
					block.onBlockDestroyedByPlayer(world, pos, state);
					if (!playermp.capabilities.isCreativeMode) {
						block.harvestBlock(world, playermp, pos, state, world.getTileEntity(pos));
						block.dropXpOnBlockBreak(world, pos, block.getExpDrop(world, pos, 0));
						stack.damageItem(1, playermp);
					}
				}
				playermp.playerNetServerHandler.sendPacket(new S23PacketBlockChange(world, pos));
			}
		}

		if (block instanceof BlockRedstoneOre || block instanceof BlockOre || blocks.contains(block)) {
			if (playermp.worldObj.getBlockState(pos.up()).getBlock() instanceof BlockRedstoneOre || playermp.worldObj.getBlockState(pos.up()).getBlock() instanceof BlockOre || blocks.contains(playermp.worldObj.getBlockState(pos.up()).getBlock())) {
				this.breaking(stack, pos.up(), playermp);
			}
			if (playermp.worldObj.getBlockState(pos.down()).getBlock() instanceof BlockRedstoneOre || playermp.worldObj.getBlockState(pos.down()).getBlock() instanceof BlockOre || blocks.contains(playermp.worldObj.getBlockState(pos.down()).getBlock())) {
				this.breaking(stack, pos.down(), playermp);
			}
			if (playermp.worldObj.getBlockState(pos.north()).getBlock() instanceof BlockRedstoneOre || playermp.worldObj.getBlockState(pos.north()).getBlock() instanceof BlockOre || blocks.contains(playermp.worldObj.getBlockState(pos.north()).getBlock())) {
				this.breaking(stack, pos.north(), playermp);
			}
			if (playermp.worldObj.getBlockState(pos.south()).getBlock() instanceof BlockRedstoneOre || playermp.worldObj.getBlockState(pos.south()).getBlock() instanceof BlockOre || blocks.contains(playermp.worldObj.getBlockState(pos.south()).getBlock())) {
				this.breaking(stack, pos.south(), playermp);
			}
			if (playermp.worldObj.getBlockState(pos.west()).getBlock() instanceof BlockRedstoneOre || playermp.worldObj.getBlockState(pos.west()).getBlock() instanceof BlockOre || blocks.contains(playermp.worldObj.getBlockState(pos.west()).getBlock())) {
				this.breaking(stack, pos.west(), playermp);
			}
			if (playermp.worldObj.getBlockState(pos.east()).getBlock() instanceof BlockRedstoneOre || playermp.worldObj.getBlockState(pos.east()).getBlock() instanceof BlockOre || blocks.contains(playermp.worldObj.getBlockState(pos.east()).getBlock())) {
				this.breaking(stack, pos.east(), playermp);
			}
		}
	}
 
开发者ID:HyCraftHD,项目名称:TeambattleMod,代码行数:43,代码来源:ItemTeambattlePickAxe.java


示例3: placeBlock

import net.minecraft.block.BlockRedstoneOre; //导入依赖的package包/类
private void placeBlock(ItemStack stack, EntityPlayer player, World world, BlockPos pos, EnumFacing side) {
    if (!checkUsage(stack, player, 1.0f)) {
        return;
    }

    NBTTagCompound tagCompound = stack.getTagCompound();
    if (tagCompound == null) {
        Tools.error(player, "First select a block by sneaking");
        return;
    }
    int id = tagCompound.getInteger("block");
    Block block = (Block) Block.blockRegistry.getObjectById(id);
    int meta = tagCompound.getInteger("meta");
    float hardness = tagCompound.getFloat("hardness");

    IBlockState oldState = world.getBlockState(pos);
    Block oldblock = oldState.getBlock();
    int oldmeta = oldblock.getMetaFromState(oldState);
    float blockHardness = oldblock.getBlockHardness(world, pos);

    if (block == oldblock && meta == oldmeta) {
        // The same, nothing happens.
        return;
    }

    if (blockHardness < -0.1f) {
        Tools.error(player, "This block cannot be swapped!");
        return;
    }

    if (Math.abs(hardness-blockHardness) >= hardnessDistance) {
        Tools.error(player, "The hardness of this blocks differs too much to swap!");
        return;
    }

    ProtectedBlocks protectedBlocks = ProtectedBlocks.getProtectedBlocks(world);
    if (protectedBlocks.isProtected(world, pos)) {
        Tools.error(player, "This block is protected. You cannot replace it!");
        return;
    }

    Set<BlockPos> coordinates = findSuitableBlocks(stack, world, side, pos, oldblock, oldmeta);
    boolean notenough = false;
    for (BlockPos coordinate : coordinates) {
        if (!checkUsage(stack, player, 1.0f)) {
            return;
        }
        if (Tools.consumeInventoryItem(Item.getItemFromBlock(block), meta, player.inventory, player)) {
            if (!player.capabilities.isCreativeMode) {
                ItemStack itemStack = null;
                if (oldblock instanceof BlockRedstoneOre) {
                    itemStack = new ItemStack(Blocks.redstone_ore);
                } else {
                    Item item = oldblock.getItem(world, pos);
                    if (item != null) {
                        itemStack = new ItemStack(item, 1, oldblock.getDamageValue(world, pos));
                    }
                }
                if (itemStack != null) {
                    Tools.giveItem(world, player, pos, itemStack);
                }
            }
            Tools.playSound(world, block.stepSound.getBreakSound(), coordinate.getX(), coordinate.getY(), coordinate.getZ(), 1.0f, 1.0f);
            world.setBlockState(coordinate, block.getStateFromMeta(meta), 2);
            player.openContainer.detectAndSendChanges();
            registerUsage(stack, player, 1.0f);
        } else {
            notenough = true;
        }
    }
    if (notenough) {
        Tools.error(player, "You don't have the right block");
    }
}
 
开发者ID:romelo333,项目名称:notenoughwands1.8.8,代码行数:75,代码来源:SwappingWand.java



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


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java ManagementClient类代码示例发布时间:2022-05-23
下一篇:
Java HTTP2Cipher类代码示例发布时间:2022-05-23
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap