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


Java EntityMinecartContainer类代码示例

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


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

示例1: onTravelToDimension

import net.minecraft.entity.item.EntityMinecartContainer; //导入依赖的package包/类
public static boolean onTravelToDimension(Entity entity, int dimension)
{
    EntityTravelToDimensionEvent event = new EntityTravelToDimensionEvent(entity, dimension);
    MinecraftForge.EVENT_BUS.post(event);
    if (event.isCanceled())
    {
        // Revert variable back to true as it would have been set to false
        if (entity instanceof EntityMinecartContainer)
        {
           ((EntityMinecartContainer) entity).dropContentsWhenDead = true;
        }
    }
    return !event.isCanceled();
}
 
开发者ID:F1r3w477,项目名称:CustomWorldGen,代码行数:15,代码来源:ForgeHooks.java

示例2: execute

import net.minecraft.entity.item.EntityMinecartContainer; //导入依赖的package包/类
@Override
public String execute(CommandSender sender, String[] params) throws CommandException {
	EntityPlayerMP player = getSenderAsEntity(sender.getMinecraftISender(), EntityPlayerMP.class);
	Entity entity = EntityUtils.traceEntity(player, 128D);
	
	if (params.length == 0 && entity instanceof AbstractChestHorse) {
		((AbstractChestHorse) entity).openGUI(player);
	}
	else if (params.length == 0 && entity instanceof EntityVillager) {
		player.displayVillagerTradeGui((EntityVillager) entity);
	}
	else if (params.length == 0 && entity instanceof EntityMinecartContainer) {
		player.displayGui((EntityMinecartContainer) entity);
	}
	else {
		if (params.length == 0 || params.length > 2) {
			BlockPos trace; 
			
			try {trace = params.length > 2 ? getCoordFromParams(sender.getMinecraftISender(), params, 0) : EntityUtils.traceBlock(player, 128D);}
			catch (NumberFormatException nfe) {throw new CommandException("command.open.NAN", sender);}
			
			if (trace == null)
				throw new CommandException("command.open.noBlock", sender);
			
			TileEntity te = sender.getWorld().getTileEntity(trace);
			Block block = WorldUtils.getBlock(sender.getWorld(), trace);
			
			if (te instanceof IInteractionObject)
				player.displayGui((IInteractionObject) te);
			else if (te instanceof IInventory)
				player.displayGUIChest((IInventory) te);
			else if (block == Blocks.ANVIL)
				player.displayGui(new BlockAnvil.Anvil(sender.getWorld(), trace));
			else if (block == Blocks.CRAFTING_TABLE)
				player.displayGui(new BlockWorkbench.InterfaceCraftingTable(sender.getWorld(), trace));
			else 
				throw new CommandException("command.open.invalidBlock", sender);
		}
		else if (params.length > 0) {
			if (params[0].equalsIgnoreCase("enderchest"))
				player.displayGUIChest(player.getInventoryEnderChest());
			else if (params[0].equalsIgnoreCase("enchantment_table") || (params.length > 1 && params[0].equalsIgnoreCase("enchantment") && params[1].equalsIgnoreCase("table"))) {
				final World w = sender.getWorld();
				
				player.displayGui(new IInteractionObject() {
					@Override public boolean hasCustomName() {return false;}
					@Override public String getName() {return "container.enchant";}
					@Override public ITextComponent getDisplayName() {return new TextComponentTranslation(this.getName());}
					@Override public String getGuiID() {return "minecraft:enchanting_table";}
					@Override public Container createContainer(InventoryPlayer playerInventory, EntityPlayer playerIn) {
						return new ContainerEnchantment(playerInventory, w, BlockPos.ORIGIN);
					}
				});
				this.allowedInteractions.put(player, player.openContainer);
			}
			else if (params[0].equalsIgnoreCase("anvil")) {
				player.displayGui(new BlockAnvil.Anvil(sender.getWorld(), BlockPos.ORIGIN)); 
				this.allowedInteractions.put(player, player.openContainer);
			}
			else if (params[0].equalsIgnoreCase("workbench") || params[0].equalsIgnoreCase("crafting_table") || (params.length > 1 && params[0].equalsIgnoreCase("crafting") && params[1].equalsIgnoreCase("table")) ) {
				player.displayGui(new BlockWorkbench.InterfaceCraftingTable(sender.getWorld(), BlockPos.ORIGIN));
				this.allowedInteractions.put(player, player.openContainer);
			}
			else if (params[0].equalsIgnoreCase("furnace") || params[0].equalsIgnoreCase("brewing_stand") || (params.length > 1 && params[0].equalsIgnoreCase("brewing") && params[1].equalsIgnoreCase("stand")))
				throw new CommandException("command.open.cantOpenTEs", sender);
			else
				throw new CommandException("command.open.invalidContainer", sender, params[0]);
		}
		else throw new CommandException("command.generic.invalidUsage", sender, this.getCommandName());
	}
	
	return null;
}
 
开发者ID:MrNobody98,项目名称:morecommands,代码行数:74,代码来源:CommandOpen.java


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