Interface IItemHandlerCapProvider

All Known Subinterfaces:
IAmazonChief, IAmazonEntity, IAmazonSpearman, IArcherAmazon, IArcherBarbarianEntity, IArcherMummyEntity, IArcherNorsemenEntity, IArcherPirateEntity, IBarbarianEntity, IBuilding, IBuildingContainer, IBuildingDeliveryman, IBuildingWorker, ICaptainPirateEntity, IChiefBarbarianEntity, IEgyptianEntity, IGuardBuilding, IMeleeBarbarianEntity, IMeleeMummyEntity, IMeleeNorsemenEntity, IMeleePirateEntity, IMysticalSite, INorsemenChiefEntity, INorsemenEntity, IPharaoEntity, IPirateEntity, ITownHall, IWareHouse
All Known Implementing Classes:
AbstractBuilding, AbstractBuildingContainer, AbstractBuildingGuards, AbstractBuildingStructureBuilder, AbstractEntityCitizen, AbstractSchematicProvider, AbstractTileEntityColonyBuilding, AbstractTileEntityGrave, AbstractTileEntityRack, AbstractTileEntityWareHouse, BuildingAlchemist, BuildingArchery, BuildingBaker, BuildingBarracks, BuildingBarracksTower, BuildingBeekeeper, BuildingBlacksmith, BuildingBuilder, BuildingChickenHerder, BuildingCombatAcademy, BuildingComposter, BuildingConcreteMixer, BuildingCook, BuildingCowboy, BuildingCrusher, BuildingDeliveryman, BuildingDyer, BuildingEnchanter, BuildingFarmer, BuildingFisherman, BuildingFletcher, BuildingFlorist, BuildingGateHouse, BuildingGlassblower, BuildingGraveyard, BuildingGuardTower, BuildingHospital, BuildingKitchen, BuildingLibrary, BuildingLumberjack, BuildingMechanic, BuildingMiner, BuildingMysticalSite, BuildingNetherWorker, BuildingPlantation, BuildingRabbitHutch, BuildingSawmill, BuildingSchool, BuildingShepherd, BuildingSifter, BuildingSmeltery, BuildingStable, BuildingStonemason, BuildingStoneSmeltery, BuildingSwineHerder, BuildingTownHall, BuildingUniversity, BuildingWareHouse, DefaultBuildingInstance, EntityAmazonChief, EntityAmazonChiefRaider, EntityAmazonSpearman, EntityAmazonSpearmanRaider, EntityArcherAmazon, EntityArcherAmazonRaider, EntityArcherBarbarian, EntityArcherBarbarianRaider, EntityArcherMummy, EntityArcherMummyRaider, EntityArcherPirate, EntityArcherPirateRaider, EntityBarbarian, EntityBarbarianRaider, EntityCaptainPirate, EntityCaptainPirateRaider, EntityChiefBarbarian, EntityChiefBarbarianRaider, EntityCitizen, EntityDrownedArcherPirate, EntityDrownedArcherPirateRaider, EntityDrownedCaptainPirate, EntityDrownedCaptainPirateRaider, EntityDrownedPirate, EntityDrownedPirateRaider, EntityMummy, EntityMummyRaider, EntityNorsemenArcher, EntityNorsemenArcherRaider, EntityNorsemenChief, EntityNorsemenChiefRaider, EntityPharao, EntityPharaoRaider, EntityPirate, EntityPirateRaider, EntityShieldmaiden, EntityShieldmaidenRaider, PostBox, Stash, TileEntityColonyBuilding, TileEntityEnchanter, TileEntityGrave, TileEntityRack, TileEntityStash, TileEntityWareHouse, VisitorCitizen
Functional Interface:
This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

@FunctionalInterface public interface IItemHandlerCapProvider
Our class for to join IItemHandler providers, so we can have type independent code.
  • Method Summary

    Modifier and Type
    Method
    Description
    default @Nullable net.neoforged.neoforge.items.IItemHandler
     
    default @Nullable net.neoforged.neoforge.items.IItemHandler
    For EntityCap register only
    @Nullable net.neoforged.neoforge.items.IItemHandler
    getItemHandlerCap(net.minecraft.core.Direction direction)
     
    wrap(net.minecraft.world.entity.Entity entity, boolean sided)
     
    wrap(net.minecraft.world.item.ItemStack itemStack)
     
    wrap(net.minecraft.world.level.block.entity.BlockEntity blockEntity)
     
  • Method Details

    • getItemHandlerCap

      @Nullable default @Nullable net.neoforged.neoforge.items.IItemHandler getItemHandlerCap(Void nothing)
      For EntityCap register only
    • getItemHandlerCap

      @Nullable default @Nullable net.neoforged.neoforge.items.IItemHandler getItemHandlerCap()
      Returns:
      direction-unaware itemHandler
    • getItemHandlerCap

      @Nullable @Nullable net.neoforged.neoforge.items.IItemHandler getItemHandlerCap(net.minecraft.core.Direction direction)
      Returns:
      direction-aware itemHandler
    • wrap

      static IItemHandlerCapProvider wrap(net.minecraft.world.level.block.entity.BlockEntity blockEntity)
    • wrap

      static IItemHandlerCapProvider wrap(net.minecraft.world.entity.Entity entity, boolean sided)
      Parameters:
      sided - if true then will use Direction aware capability, roughly should be true for machine-entities and false for mobs
    • wrap

      static IItemHandlerCapProvider wrap(net.minecraft.world.item.ItemStack itemStack)