本文整理了Java中net.minecraft.item.ItemStack.hasCapability()
方法的一些代码示例,展示了ItemStack.hasCapability()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ItemStack.hasCapability()
方法的具体详情如下:
包路径:net.minecraft.item.ItemStack
类名称:ItemStack
方法名:hasCapability
暂无
代码示例来源:origin: Vazkii/Botania
@Nonnull
@Override
public ItemStack insertItem(int slot, @Nonnull ItemStack toInsert, boolean simulate) {
if(!toInsert.isEmpty()) {
boolean isBauble = toInsert.hasCapability(BaublesCapabilities.CAPABILITY_ITEM_BAUBLE, null);
if(toInsert.getItem() instanceof IManaItem || isBauble)
return super.insertItem(slot, toInsert, simulate);
}
return toInsert;
}
};
代码示例来源:origin: AppliedEnergistics/Applied-Energistics-2
@Override
public boolean canClick( final EntityPlayer player )
{
final ItemStack mouseStack = player.inventory.getItemStack();
return mouseStack.isEmpty() || mouseStack.hasCapability( CapabilityFluidHandler.FLUID_HANDLER_ITEM_CAPABILITY, null );
}
代码示例来源:origin: AppliedEnergistics/Applied-Energistics-2
if( trigger.hasCapability( entry.getKey(), face ) )
代码示例来源:origin: Vazkii/Botania
private boolean isValidWaterContainer(ItemStack stack) {
if(stack.isEmpty() || stack.getCount() != 1)
return false;
if(stack.hasCapability(CapabilityFluidHandler.FLUID_HANDLER_ITEM_CAPABILITY, null)) {
IFluidHandler handler = stack.getCapability(CapabilityFluidHandler.FLUID_HANDLER_ITEM_CAPABILITY, null);
FluidStack simulate = handler.drain(new FluidStack(FluidRegistry.WATER, Fluid.BUCKET_VOLUME), false);
if(simulate != null && simulate.getFluid() == FluidRegistry.WATER && simulate.amount == Fluid.BUCKET_VOLUME)
return true;
}
return false;
}
代码示例来源:origin: Ellpeck/ActuallyAdditions
@Override
public IAcceptor getAcceptor() {
return (slot, stack, automation) -> !automation || (slot == 0 && (stack.hasCapability(CapabilityEnergy.ENERGY, null)));
}
代码示例来源:origin: SquidDev-CC/plethora
private static boolean isValid(@Nonnull ItemStack stack) {
if (stack.isEmpty()) return false;
return stack.hasCapability(Constants.PERIPHERAL_CAPABILITY, null)
|| stack.hasCapability(Constants.PERIPHERAL_HANDLER_CAPABILITY, null);
}
代码示例来源:origin: GregTechCE/GregTech
@Override
public boolean showDurabilityBar(ItemStack stack) {
//don't show durability if item is not electric and it's damage is zero
return stack.hasCapability(GregtechCapabilities.CAPABILITY_ELECTRIC_ITEM, null) ||
getInternalDamage(stack) != 0;
}
代码示例来源:origin: MatterOverdrive/MatterOverdrive-Legacy-Edition
public static IEnergyStorage getStorage(ItemStack stack) {
if (stack.hasCapability(CapabilityEnergy.ENERGY, null))
return stack.getCapability(CapabilityEnergy.ENERGY, null);
return EmptyEnergyStorage.INSTANCE;
}
代码示例来源:origin: Ellpeck/ActuallyAdditions
public int extractEnergy(ItemStack stack, int maxExtract, boolean simulate){
if(stack.hasCapability(CapabilityEnergy.ENERGY, null)){
IEnergyStorage storage = stack.getCapability(CapabilityEnergy.ENERGY, null);
if(storage != null){
return storage.extractEnergy(maxExtract, simulate);
}
}
return 0;
}
代码示例来源:origin: Vazkii/Psi
private ICADData getCADData(ItemStack stack) {
if (stack.hasCapability(CapabilityCAD.CAPABILITY, null)) {
ICADData data = stack.getCapability(CapabilityCAD.CAPABILITY, null);
if (data != null)
return data;
}
return new CADData();
}
代码示例来源:origin: CyclopsMC/IntegratedDynamics
public IVariableFacade getVariableFacade(ItemStack itemStack) {
return itemStack.hasCapability(VariableFacadeHolderConfig.CAPABILITY, null)
? itemStack.getCapability(VariableFacadeHolderConfig.CAPABILITY, null).getVariableFacade()
: VariableFacadeHandlerRegistry.DUMMY_FACADE;
}
代码示例来源:origin: SleepyTrousers/EnderCore
public static @Nullable IFluidHandlerItem getFluidHandlerCapability(@Nonnull ItemStack stack) {
if (stack.hasCapability(getFluidItemCapability(), null)) {
return stack.getCapability(getFluidItemCapability(), null);
}
return null;
}
代码示例来源:origin: Ellpeck/ActuallyAdditions
public int getEnergyStored(ItemStack stack){
if(stack.hasCapability(CapabilityEnergy.ENERGY, null)){
IEnergyStorage storage = stack.getCapability(CapabilityEnergy.ENERGY, null);
if(storage != null){
return storage.getEnergyStored();
}
}
return 0;
}
代码示例来源:origin: SleepyTrousers/EnderIO
public static boolean isValidUpgrade(@Nonnull ItemStack stack) {
if (Prep.isInvalid(stack)) {
return false;
}
final ICapacitorData capData = getNBTCapacitorDataFromItemStack(stack);
if (capData != null) {
return true;
}
return stack.hasCapability(CapabilityCapacitorData.getCapNN(), null);
}
代码示例来源:origin: SleepyTrousers/EnderIO
public static int getBurnTime(@Nonnull ItemStack item, @Nonnull ICapacitorKey maxUsage, @Nonnull ICapacitorData data) {
float base = (getBurnTimeGeneric(item) / (maxUsage.get(data) / maxUsage.getDefaultFloat())) * getBurnEfficiency(data);
if (item.hasCapability(CapabilityFluidHandler.FLUID_HANDLER_ITEM_CAPABILITY, null)) {
// Lava and other fluid buckets are nerfed, prefer combustion engine for those
base /= 5;
}
// The vanilla burn time results in 24,000FE for a piece of coal at 15FE/t output.
// So we hardcode 15 as a baseline to keep that density consistent
return Math.round(base /= maxUsage.getDefaultFloat() / 15);
}
代码示例来源:origin: Vazkii/Botania
boolean hasFluidCapability = stack.hasCapability(CapabilityFluidHandler.FLUID_HANDLER_ITEM_CAPABILITY, null);
代码示例来源:origin: CyclopsMC/IntegratedDynamics
@Override
public void onUpdate(ItemStack itemStack, World world, Entity entity, int itemSlot, boolean par5) {
if (isActivated(itemStack) && itemStack.hasCapability(CapabilityEnergy.ENERGY, null)) {
autofill(itemStack.getCapability(CapabilityEnergy.ENERGY, null), world, entity);
}
super.onUpdate(itemStack, world, entity, itemSlot, par5);
}
代码示例来源:origin: GregTechCE/GregTech
@Override
public double getDurabilityForDisplay(ItemStack stack) {
//if itemstack has electric charge ability, show electric charge percentage
if(stack.hasCapability(GregtechCapabilities.CAPABILITY_ELECTRIC_ITEM, null)) {
IElectricItem electricItem = stack.getCapability(GregtechCapabilities.CAPABILITY_ELECTRIC_ITEM, null);
//noinspection ConstantConditions
return 1.0 - (electricItem.getCharge() / (electricItem.getMaxCharge() * 1.0));
}
//otherwise, show actual durability percentage
return getInternalDamage(stack) / (getMaxInternalDamage(stack) * 1.0);
}
代码示例来源:origin: Azanor/Baubles
@Override
public ItemStack onTake(EntityPlayer playerIn, ItemStack stack) {
if (!getHasStack() && !((IBaublesItemHandler)getItemHandler()).isEventBlocked() &&
stack.hasCapability(BaublesCapabilities.CAPABILITY_ITEM_BAUBLE, null)) {
stack.getCapability(BaublesCapabilities.CAPABILITY_ITEM_BAUBLE, null).onUnequipped(stack, playerIn);
}
super.onTake(playerIn, stack);
return stack;
}
代码示例来源:origin: McJtyMods/RFToolsControl
private FluidStack stackToFluid(ItemStack stack) {
if (stack.hasCapability(CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY, null)) {
IFluidHandler handler = stack.getCapability(CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY, null);
if (handler.getTankProperties() != null && handler.getTankProperties().length > 0) {
if (handler.getTankProperties()[0] != null) {
return handler.getTankProperties()[0].getContents();
}
}
}
return null;
}
内容来源于网络,如有侵权,请联系作者删除!