Start using ForgeCapabilities.

This commit is contained in:
raoulvdberge
2022-12-10 15:44:02 +01:00
parent b8fa8d3d10
commit 25ca9eda14
26 changed files with 70 additions and 67 deletions

View File

@@ -15,6 +15,7 @@ import com.refinedmods.refinedstorage.util.StackUtils;
import net.minecraft.server.level.ServerPlayer; import net.minecraft.server.level.ServerPlayer;
import net.minecraft.world.Containers; import net.minecraft.world.Containers;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
import net.minecraftforge.common.capabilities.ForgeCapabilities;
import net.minecraftforge.fluids.FluidStack; import net.minecraftforge.fluids.FluidStack;
import net.minecraftforge.fluids.FluidType; import net.minecraftforge.fluids.FluidType;
import net.minecraftforge.fluids.capability.CapabilityFluidHandler; import net.minecraftforge.fluids.capability.CapabilityFluidHandler;
@@ -40,7 +41,7 @@ public class FluidGridHandler implements IFluidGridHandler {
return; return;
} }
NetworkUtils.extractBucketFromPlayerInventoryOrNetwork(player, network, bucket -> bucket.getCapability(CapabilityFluidHandler.FLUID_HANDLER_ITEM_CAPABILITY, null).ifPresent(fluidHandler -> { NetworkUtils.extractBucketFromPlayerInventoryOrNetwork(player, network, bucket -> bucket.getCapability(ForgeCapabilities.FLUID_HANDLER_ITEM, null).ifPresent(fluidHandler -> {
network.getFluidStorageTracker().changed(player, stack.copy()); network.getFluidStorageTracker().changed(player, stack.copy());
FluidStack extracted = network.extractFluid(stack, FluidType.BUCKET_VOLUME, Action.PERFORM); FluidStack extracted = network.extractFluid(stack, FluidType.BUCKET_VOLUME, Action.PERFORM);

View File

@@ -19,6 +19,7 @@ import com.refinedmods.refinedstorage.network.grid.GridCraftingStartResponseMess
import net.minecraft.core.Direction; import net.minecraft.core.Direction;
import net.minecraft.server.level.ServerPlayer; import net.minecraft.server.level.ServerPlayer;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
import net.minecraftforge.common.capabilities.ForgeCapabilities;
import net.minecraftforge.items.CapabilityItemHandler; import net.minecraftforge.items.CapabilityItemHandler;
import net.minecraftforge.items.IItemHandler; import net.minecraftforge.items.IItemHandler;
import net.minecraftforge.items.ItemHandlerHelper; import net.minecraftforge.items.ItemHandlerHelper;
@@ -174,7 +175,7 @@ public class ItemGridHandler implements IItemGridHandler {
if (!took.isEmpty()) { if (!took.isEmpty()) {
if ((flags & EXTRACT_SHIFT) == EXTRACT_SHIFT) { if ((flags & EXTRACT_SHIFT) == EXTRACT_SHIFT) {
Optional<IItemHandler> playerInventory = player.getCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY, Direction.UP).resolve(); Optional<IItemHandler> playerInventory = player.getCapability(ForgeCapabilities.ITEM_HANDLER, Direction.UP).resolve();
if (playerInventory.isPresent()) { if (playerInventory.isPresent()) {
if (preferredSlot != -1) { if (preferredSlot != -1) {
ItemStack remainder = playerInventory.get().insertItem(preferredSlot, took, true); ItemStack remainder = playerInventory.get().insertItem(preferredSlot, took, true);

View File

@@ -10,9 +10,9 @@ import com.refinedmods.refinedstorage.util.StackUtils;
import net.minecraft.server.level.ServerPlayer; import net.minecraft.server.level.ServerPlayer;
import net.minecraft.world.Containers; import net.minecraft.world.Containers;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
import net.minecraftforge.common.capabilities.ForgeCapabilities;
import net.minecraftforge.fluids.FluidStack; import net.minecraftforge.fluids.FluidStack;
import net.minecraftforge.fluids.FluidType; import net.minecraftforge.fluids.FluidType;
import net.minecraftforge.fluids.capability.CapabilityFluidHandler;
import net.minecraftforge.fluids.capability.IFluidHandler; import net.minecraftforge.fluids.capability.IFluidHandler;
import org.apache.commons.lang3.tuple.Pair; import org.apache.commons.lang3.tuple.Pair;
@@ -53,7 +53,7 @@ public class PortableFluidGridHandler implements IFluidGridHandler {
} }
if (!bucket.isEmpty()) { if (!bucket.isEmpty()) {
bucket.getCapability(CapabilityFluidHandler.FLUID_HANDLER_ITEM_CAPABILITY, null).ifPresent(fluidHandler -> { bucket.getCapability(ForgeCapabilities.FLUID_HANDLER_ITEM, null).ifPresent(fluidHandler -> {
portableGrid.getFluidStorageTracker().changed(player, stack.copy()); portableGrid.getFluidStorageTracker().changed(player, stack.copy());
fluidHandler.fill(portableGrid.getFluidStorage().extract(stack, FluidType.BUCKET_VOLUME, IComparer.COMPARE_NBT, Action.PERFORM), IFluidHandler.FluidAction.EXECUTE); fluidHandler.fill(portableGrid.getFluidStorage().extract(stack, FluidType.BUCKET_VOLUME, IComparer.COMPARE_NBT, Action.PERFORM), IFluidHandler.FluidAction.EXECUTE);

View File

@@ -10,6 +10,7 @@ import com.refinedmods.refinedstorage.blockentity.grid.portable.IPortableGrid;
import net.minecraft.core.Direction; import net.minecraft.core.Direction;
import net.minecraft.server.level.ServerPlayer; import net.minecraft.server.level.ServerPlayer;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
import net.minecraftforge.common.capabilities.ForgeCapabilities;
import net.minecraftforge.items.CapabilityItemHandler; import net.minecraftforge.items.CapabilityItemHandler;
import net.minecraftforge.items.IItemHandler; import net.minecraftforge.items.IItemHandler;
import net.minecraftforge.items.ItemHandlerHelper; import net.minecraftforge.items.ItemHandlerHelper;
@@ -93,7 +94,7 @@ public class PortableItemGridHandler implements IItemGridHandler {
if (!took.isEmpty()) { if (!took.isEmpty()) {
if ((flags & EXTRACT_SHIFT) == EXTRACT_SHIFT) { if ((flags & EXTRACT_SHIFT) == EXTRACT_SHIFT) {
IItemHandler playerInventory = player.getCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY, Direction.UP).orElse(null); IItemHandler playerInventory = player.getCapability(ForgeCapabilities.ITEM_HANDLER, Direction.UP).orElse(null);
if (playerInventory != null) { if (playerInventory != null) {
if (preferredSlot != -1) { if (preferredSlot != -1) {
ItemStack remainder = playerInventory.insertItem(preferredSlot, took, true); ItemStack remainder = playerInventory.insertItem(preferredSlot, took, true);

View File

@@ -15,6 +15,7 @@ import net.minecraft.network.chat.Component;
import net.minecraft.server.level.ServerPlayer; import net.minecraft.server.level.ServerPlayer;
import net.minecraft.world.entity.player.Player; import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
import net.minecraftforge.common.capabilities.ForgeCapabilities;
import net.minecraftforge.energy.CapabilityEnergy; import net.minecraftforge.energy.CapabilityEnergy;
import net.minecraftforge.energy.IEnergyStorage; import net.minecraftforge.energy.IEnergyStorage;
import net.minecraftforge.network.NetworkHooks; import net.minecraftforge.network.NetworkHooks;
@@ -39,7 +40,7 @@ public class WirelessCraftingMonitorNetworkItem implements INetworkItem {
@Override @Override
public boolean onOpen(INetwork network) { public boolean onOpen(INetwork network) {
IEnergyStorage energy = stack.getCapability(CapabilityEnergy.ENERGY, null).orElse(null); IEnergyStorage energy = stack.getCapability(ForgeCapabilities.ENERGY, null).orElse(null);
if (RS.SERVER_CONFIG.getWirelessCraftingMonitor().getUseEnergy() && if (RS.SERVER_CONFIG.getWirelessCraftingMonitor().getUseEnergy() &&
((WirelessCraftingMonitorItem) stack.getItem()).getType() != WirelessCraftingMonitorItem.Type.CREATIVE && ((WirelessCraftingMonitorItem) stack.getItem()).getType() != WirelessCraftingMonitorItem.Type.CREATIVE &&
@@ -73,7 +74,7 @@ public class WirelessCraftingMonitorNetworkItem implements INetworkItem {
@Override @Override
public void drainEnergy(int energy) { public void drainEnergy(int energy) {
if (RS.SERVER_CONFIG.getWirelessCraftingMonitor().getUseEnergy() && ((WirelessCraftingMonitorItem) stack.getItem()).getType() != WirelessCraftingMonitorItem.Type.CREATIVE) { if (RS.SERVER_CONFIG.getWirelessCraftingMonitor().getUseEnergy() && ((WirelessCraftingMonitorItem) stack.getItem()).getType() != WirelessCraftingMonitorItem.Type.CREATIVE) {
stack.getCapability(CapabilityEnergy.ENERGY).ifPresent(energyStorage -> { stack.getCapability(ForgeCapabilities.ENERGY).ifPresent(energyStorage -> {
energyStorage.extractEnergy(energy, false); energyStorage.extractEnergy(energy, false);
if (energyStorage.getEnergyStored() <= 0) { if (energyStorage.getEnergyStored() <= 0) {

View File

@@ -14,6 +14,7 @@ import net.minecraft.network.chat.Component;
import net.minecraft.server.level.ServerPlayer; import net.minecraft.server.level.ServerPlayer;
import net.minecraft.world.entity.player.Player; import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
import net.minecraftforge.common.capabilities.ForgeCapabilities;
import net.minecraftforge.energy.CapabilityEnergy; import net.minecraftforge.energy.CapabilityEnergy;
import net.minecraftforge.energy.IEnergyStorage; import net.minecraftforge.energy.IEnergyStorage;
@@ -37,7 +38,7 @@ public class WirelessFluidGridNetworkItem implements INetworkItem {
@Override @Override
public boolean onOpen(INetwork network) { public boolean onOpen(INetwork network) {
IEnergyStorage energy = stack.getCapability(CapabilityEnergy.ENERGY, null).orElse(null); IEnergyStorage energy = stack.getCapability(ForgeCapabilities.ENERGY, null).orElse(null);
if (RS.SERVER_CONFIG.getWirelessFluidGrid().getUseEnergy() && if (RS.SERVER_CONFIG.getWirelessFluidGrid().getUseEnergy() &&
((WirelessFluidGridItem) stack.getItem()).getType() != WirelessFluidGridItem.Type.CREATIVE && ((WirelessFluidGridItem) stack.getItem()).getType() != WirelessFluidGridItem.Type.CREATIVE &&
@@ -64,7 +65,7 @@ public class WirelessFluidGridNetworkItem implements INetworkItem {
@Override @Override
public void drainEnergy(int energy) { public void drainEnergy(int energy) {
if (RS.SERVER_CONFIG.getWirelessFluidGrid().getUseEnergy() && ((WirelessFluidGridItem) stack.getItem()).getType() != WirelessFluidGridItem.Type.CREATIVE) { if (RS.SERVER_CONFIG.getWirelessFluidGrid().getUseEnergy() && ((WirelessFluidGridItem) stack.getItem()).getType() != WirelessFluidGridItem.Type.CREATIVE) {
stack.getCapability(CapabilityEnergy.ENERGY).ifPresent(energyStorage -> { stack.getCapability(ForgeCapabilities.ENERGY).ifPresent(energyStorage -> {
energyStorage.extractEnergy(energy, false); energyStorage.extractEnergy(energy, false);
if (energyStorage.getEnergyStored() <= 0) { if (energyStorage.getEnergyStored() <= 0) {

View File

@@ -14,7 +14,7 @@ import net.minecraft.network.chat.Component;
import net.minecraft.server.level.ServerPlayer; import net.minecraft.server.level.ServerPlayer;
import net.minecraft.world.entity.player.Player; import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
import net.minecraftforge.energy.CapabilityEnergy; import net.minecraftforge.common.capabilities.ForgeCapabilities;
import net.minecraftforge.energy.IEnergyStorage; import net.minecraftforge.energy.IEnergyStorage;
public class WirelessGridNetworkItem implements INetworkItem { public class WirelessGridNetworkItem implements INetworkItem {
@@ -37,7 +37,7 @@ public class WirelessGridNetworkItem implements INetworkItem {
@Override @Override
public boolean onOpen(INetwork network) { public boolean onOpen(INetwork network) {
IEnergyStorage energy = stack.getCapability(CapabilityEnergy.ENERGY, null).orElse(null); IEnergyStorage energy = stack.getCapability(ForgeCapabilities.ENERGY, null).orElse(null);
if (RS.SERVER_CONFIG.getWirelessGrid().getUseEnergy() && if (RS.SERVER_CONFIG.getWirelessGrid().getUseEnergy() &&
((WirelessGridItem) stack.getItem()).getType() != WirelessGridItem.Type.CREATIVE && ((WirelessGridItem) stack.getItem()).getType() != WirelessGridItem.Type.CREATIVE &&
@@ -64,7 +64,7 @@ public class WirelessGridNetworkItem implements INetworkItem {
@Override @Override
public void drainEnergy(int energy) { public void drainEnergy(int energy) {
if (RS.SERVER_CONFIG.getWirelessGrid().getUseEnergy() && ((WirelessGridItem) stack.getItem()).getType() != WirelessGridItem.Type.CREATIVE) { if (RS.SERVER_CONFIG.getWirelessGrid().getUseEnergy() && ((WirelessGridItem) stack.getItem()).getType() != WirelessGridItem.Type.CREATIVE) {
stack.getCapability(CapabilityEnergy.ENERGY).ifPresent(energyStorage -> { stack.getCapability(ForgeCapabilities.ENERGY).ifPresent(energyStorage -> {
energyStorage.extractEnergy(energy, false); energyStorage.extractEnergy(energy, false);
if (energyStorage.getEnergyStored() <= 0) { if (energyStorage.getEnergyStored() <= 0) {

View File

@@ -24,9 +24,9 @@ import net.minecraft.world.InteractionResult;
import net.minecraft.world.entity.player.Player; import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
import net.minecraft.world.level.Level; import net.minecraft.world.level.Level;
import net.minecraftforge.fluids.FluidType; import net.minecraftforge.common.capabilities.ForgeCapabilities;
import net.minecraftforge.fluids.FluidStack; import net.minecraftforge.fluids.FluidStack;
import net.minecraftforge.fluids.capability.CapabilityFluidHandler; import net.minecraftforge.fluids.FluidType;
import net.minecraftforge.fluids.capability.IFluidHandler; import net.minecraftforge.fluids.capability.IFluidHandler;
import org.apache.commons.lang3.tuple.Pair; import org.apache.commons.lang3.tuple.Pair;
@@ -218,7 +218,7 @@ public class StorageMonitorNetworkNode extends NetworkNode implements IComparabl
boolean shift = player.isCrouching(); boolean shift = player.isCrouching();
if (shift) { if (shift) {
NetworkUtils.extractBucketFromPlayerInventoryOrNetwork(player, network, bucket -> bucket.getCapability(CapabilityFluidHandler.FLUID_HANDLER_ITEM_CAPABILITY, null).ifPresent(fluidHandler -> { NetworkUtils.extractBucketFromPlayerInventoryOrNetwork(player, network, bucket -> bucket.getCapability(ForgeCapabilities.FLUID_HANDLER_ITEM, null).ifPresent(fluidHandler -> {
network.getFluidStorageTracker().changed(player, stack.copy()); network.getFluidStorageTracker().changed(player, stack.copy());
fluidHandler.fill(network.extractFluid(stack, FluidType.BUCKET_VOLUME, Action.PERFORM), IFluidHandler.FluidAction.EXECUTE); fluidHandler.fill(network.extractFluid(stack, FluidType.BUCKET_VOLUME, Action.PERFORM), IFluidHandler.FluidAction.EXECUTE);

View File

@@ -32,7 +32,7 @@ import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.StateDefinition; import net.minecraft.world.level.block.state.StateDefinition;
import net.minecraft.world.level.block.state.properties.EnumProperty; import net.minecraft.world.level.block.state.properties.EnumProperty;
import net.minecraft.world.phys.BlockHitResult; import net.minecraft.world.phys.BlockHitResult;
import net.minecraftforge.energy.CapabilityEnergy; import net.minecraftforge.common.capabilities.ForgeCapabilities;
import net.minecraftforge.network.NetworkHooks; import net.minecraftforge.network.NetworkHooks;
import javax.annotation.Nullable; import javax.annotation.Nullable;
@@ -64,11 +64,11 @@ public class ControllerBlock extends BaseBlock implements EntityBlock {
super.setPlacedBy(level, pos, state, entity, stack); super.setPlacedBy(level, pos, state, entity, stack);
if (!level.isClientSide) { if (!level.isClientSide) {
stack.getCapability(CapabilityEnergy.ENERGY).ifPresent(energyFromStack -> { stack.getCapability(ForgeCapabilities.ENERGY).ifPresent(energyFromStack -> {
BlockEntity blockEntity = level.getBlockEntity(pos); BlockEntity blockEntity = level.getBlockEntity(pos);
if (blockEntity != null) { if (blockEntity != null) {
blockEntity.getCapability(CapabilityEnergy.ENERGY).ifPresent(energyFromBlockEntity -> energyFromBlockEntity.receiveEnergy(energyFromStack.getEnergyStored(), false)); blockEntity.getCapability(ForgeCapabilities.ENERGY).ifPresent(energyFromBlockEntity -> energyFromBlockEntity.receiveEnergy(energyFromStack.getEnergyStored(), false));
} }
}); });
} }

View File

@@ -22,8 +22,8 @@ import net.minecraft.server.level.ServerLevel;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.BlockState;
import net.minecraftforge.common.capabilities.Capability; import net.minecraftforge.common.capabilities.Capability;
import net.minecraftforge.common.capabilities.ForgeCapabilities;
import net.minecraftforge.common.util.LazyOptional; import net.minecraftforge.common.util.LazyOptional;
import net.minecraftforge.energy.CapabilityEnergy;
import net.minecraftforge.energy.IEnergyStorage; import net.minecraftforge.energy.IEnergyStorage;
import javax.annotation.Nonnull; import javax.annotation.Nonnull;
@@ -158,7 +158,7 @@ public class ControllerBlockEntity extends BaseBlockEntity implements INetworkNo
@Nonnull @Nonnull
@Override @Override
public <T> LazyOptional<T> getCapability(@Nonnull Capability<T> cap, @Nullable Direction direction) { public <T> LazyOptional<T> getCapability(@Nonnull Capability<T> cap, @Nullable Direction direction) {
if (cap == CapabilityEnergy.ENERGY) { if (cap == ForgeCapabilities.ENERGY) {
return energyProxyCap.cast(); return energyProxyCap.cast();
} }

View File

@@ -11,8 +11,8 @@ import net.minecraft.network.syncher.EntityDataSerializers;
import net.minecraft.world.level.Level; import net.minecraft.world.level.Level;
import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.BlockState;
import net.minecraftforge.common.capabilities.Capability; import net.minecraftforge.common.capabilities.Capability;
import net.minecraftforge.common.capabilities.ForgeCapabilities;
import net.minecraftforge.common.util.LazyOptional; import net.minecraftforge.common.util.LazyOptional;
import net.minecraftforge.items.CapabilityItemHandler;
import net.minecraftforge.items.IItemHandler; import net.minecraftforge.items.IItemHandler;
import javax.annotation.Nonnull; import javax.annotation.Nonnull;
@@ -43,7 +43,7 @@ public class CrafterBlockEntity extends NetworkNodeBlockEntity<CrafterNetworkNod
@Nonnull @Nonnull
@Override @Override
public <T> LazyOptional<T> getCapability(@Nonnull Capability<T> cap, @Nullable Direction direction) { public <T> LazyOptional<T> getCapability(@Nonnull Capability<T> cap, @Nullable Direction direction) {
if (cap == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY && direction != null && !direction.equals(this.getNode().getDirection())) { if (cap == ForgeCapabilities.ITEM_HANDLER && direction != null && !direction.equals(this.getNode().getDirection())) {
return patternsCapability.cast(); return patternsCapability.cast();
} }

View File

@@ -21,8 +21,8 @@ import net.minecraft.world.level.block.state.BlockState;
import net.minecraftforge.client.model.data.ModelData; import net.minecraftforge.client.model.data.ModelData;
import net.minecraftforge.client.model.data.ModelProperty; import net.minecraftforge.client.model.data.ModelProperty;
import net.minecraftforge.common.capabilities.Capability; import net.minecraftforge.common.capabilities.Capability;
import net.minecraftforge.common.capabilities.ForgeCapabilities;
import net.minecraftforge.common.util.LazyOptional; import net.minecraftforge.common.util.LazyOptional;
import net.minecraftforge.items.CapabilityItemHandler;
import net.minecraftforge.items.IItemHandler; import net.minecraftforge.items.IItemHandler;
import javax.annotation.Nonnull; import javax.annotation.Nonnull;
@@ -140,7 +140,7 @@ public class DiskDriveBlockEntity extends NetworkNodeBlockEntity<DiskDriveNetwor
@Nonnull @Nonnull
@Override @Override
public <T> LazyOptional<T> getCapability(@Nonnull Capability<T> cap, @Nullable Direction direction) { public <T> LazyOptional<T> getCapability(@Nonnull Capability<T> cap, @Nullable Direction direction) {
if (cap == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) { if (cap == ForgeCapabilities.ITEM_HANDLER) {
return diskCapability.cast(); return diskCapability.cast();
} }

View File

@@ -21,8 +21,8 @@ import net.minecraft.world.level.block.state.BlockState;
import net.minecraftforge.client.model.data.ModelData; import net.minecraftforge.client.model.data.ModelData;
import net.minecraftforge.client.model.data.ModelProperty; import net.minecraftforge.client.model.data.ModelProperty;
import net.minecraftforge.common.capabilities.Capability; import net.minecraftforge.common.capabilities.Capability;
import net.minecraftforge.common.capabilities.ForgeCapabilities;
import net.minecraftforge.common.util.LazyOptional; import net.minecraftforge.common.util.LazyOptional;
import net.minecraftforge.items.CapabilityItemHandler;
import net.minecraftforge.items.IItemHandler; import net.minecraftforge.items.IItemHandler;
import javax.annotation.Nonnull; import javax.annotation.Nonnull;
@@ -98,7 +98,7 @@ public class DiskManipulatorBlockEntity extends NetworkNodeBlockEntity<DiskManip
@Nonnull @Nonnull
@Override @Override
public <T> LazyOptional<T> getCapability(@Nonnull Capability<T> cap, @Nullable Direction direction) { public <T> LazyOptional<T> getCapability(@Nonnull Capability<T> cap, @Nullable Direction direction) {
if (cap == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) { if (cap == ForgeCapabilities.ITEM_HANDLER) {
return diskCapability.cast(); return diskCapability.cast();
} }

View File

@@ -10,11 +10,10 @@ import net.minecraft.core.Direction;
import net.minecraft.world.level.Level; import net.minecraft.world.level.Level;
import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.BlockState;
import net.minecraftforge.common.capabilities.Capability; import net.minecraftforge.common.capabilities.Capability;
import net.minecraftforge.common.capabilities.ForgeCapabilities;
import net.minecraftforge.common.util.LazyOptional; import net.minecraftforge.common.util.LazyOptional;
import net.minecraftforge.fluids.FluidStack; import net.minecraftforge.fluids.FluidStack;
import net.minecraftforge.fluids.capability.CapabilityFluidHandler;
import net.minecraftforge.fluids.capability.IFluidHandler; import net.minecraftforge.fluids.capability.IFluidHandler;
import net.minecraftforge.items.CapabilityItemHandler;
import net.minecraftforge.items.IItemHandler; import net.minecraftforge.items.IItemHandler;
import javax.annotation.Nonnull; import javax.annotation.Nonnull;
@@ -40,9 +39,9 @@ public class FluidInterfaceBlockEntity extends NetworkNodeBlockEntity<FluidInter
@Nonnull @Nonnull
@Override @Override
public <T> LazyOptional<T> getCapability(@Nonnull Capability<T> cap, @Nullable Direction direction) { public <T> LazyOptional<T> getCapability(@Nonnull Capability<T> cap, @Nullable Direction direction) {
if (cap == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) { if (cap == ForgeCapabilities.ITEM_HANDLER) {
return inCapability.cast(); return inCapability.cast();
} else if (cap == CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY) { } else if (cap == ForgeCapabilities.FLUID_HANDLER) {
return tankCapability.cast(); return tankCapability.cast();
} }

View File

@@ -10,6 +10,7 @@ import net.minecraft.core.Direction;
import net.minecraft.world.level.Level; import net.minecraft.world.level.Level;
import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.BlockState;
import net.minecraftforge.common.capabilities.Capability; import net.minecraftforge.common.capabilities.Capability;
import net.minecraftforge.common.capabilities.ForgeCapabilities;
import net.minecraftforge.common.util.LazyOptional; import net.minecraftforge.common.util.LazyOptional;
import net.minecraftforge.items.CapabilityItemHandler; import net.minecraftforge.items.CapabilityItemHandler;
import net.minecraftforge.items.IItemHandler; import net.minecraftforge.items.IItemHandler;
@@ -34,7 +35,7 @@ public class InterfaceBlockEntity extends NetworkNodeBlockEntity<InterfaceNetwor
@Nonnull @Nonnull
@Override @Override
public <T> LazyOptional<T> getCapability(@Nonnull Capability<T> cap, @Nullable Direction direction) { public <T> LazyOptional<T> getCapability(@Nonnull Capability<T> cap, @Nullable Direction direction) {
if (cap == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) { if (cap == ForgeCapabilities.ITEM_HANDLER) {
return itemsCapability.cast(); return itemsCapability.cast();
} }

View File

@@ -12,6 +12,7 @@ import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.level.Level; import net.minecraft.world.level.Level;
import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.BlockState;
import net.minecraftforge.common.capabilities.Capability; import net.minecraftforge.common.capabilities.Capability;
import net.minecraftforge.common.capabilities.ForgeCapabilities;
import net.minecraftforge.common.util.LazyOptional; import net.minecraftforge.common.util.LazyOptional;
import net.minecraftforge.items.CapabilityItemHandler; import net.minecraftforge.items.CapabilityItemHandler;
import net.minecraftforge.items.IItemHandler; import net.minecraftforge.items.IItemHandler;
@@ -51,7 +52,7 @@ public class NetworkTransmitterBlockEntity extends NetworkNodeBlockEntity<Networ
@Nonnull @Nonnull
@Override @Override
public <T> LazyOptional<T> getCapability(@Nonnull Capability<T> cap, @Nullable Direction direction) { public <T> LazyOptional<T> getCapability(@Nonnull Capability<T> cap, @Nullable Direction direction) {
if (cap == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) { if (cap == ForgeCapabilities.ITEM_HANDLER) {
return networkCardCapability.cast(); return networkCardCapability.cast();
} }

View File

@@ -19,6 +19,7 @@ import net.minecraft.world.level.Level;
import net.minecraft.world.level.block.entity.BlockEntityType; import net.minecraft.world.level.block.entity.BlockEntityType;
import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.BlockState;
import net.minecraftforge.common.capabilities.Capability; import net.minecraftforge.common.capabilities.Capability;
import net.minecraftforge.common.capabilities.ForgeCapabilities;
import net.minecraftforge.common.util.LazyOptional; import net.minecraftforge.common.util.LazyOptional;
import net.minecraftforge.items.CapabilityItemHandler; import net.minecraftforge.items.CapabilityItemHandler;
import net.minecraftforge.items.IItemHandler; import net.minecraftforge.items.IItemHandler;
@@ -131,7 +132,7 @@ public class GridBlockEntity extends NetworkNodeBlockEntity<GridNetworkNode> {
@Nonnull @Nonnull
@Override @Override
public <T> LazyOptional<T> getCapability(@Nonnull Capability<T> cap, @Nullable Direction direction) { public <T> LazyOptional<T> getCapability(@Nonnull Capability<T> cap, @Nullable Direction direction) {
if (cap == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY && type == GridType.PATTERN) { if (cap == ForgeCapabilities.ITEM_HANDLER && type == GridType.PATTERN) {
return diskCapability.cast(); return diskCapability.cast();
} }

View File

@@ -42,14 +42,13 @@ import com.refinedmods.refinedstorage.screen.grid.GridScreen;
import com.refinedmods.refinedstorage.util.StackUtils; import com.refinedmods.refinedstorage.util.StackUtils;
import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.CompoundTag;
import net.minecraft.network.chat.Component; import net.minecraft.network.chat.Component;
import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerLevel;
import net.minecraft.server.level.ServerPlayer; import net.minecraft.server.level.ServerPlayer;
import net.minecraft.world.entity.player.Player; import net.minecraft.world.entity.player.Player;
import net.minecraft.world.inventory.CraftingContainer; import net.minecraft.world.inventory.CraftingContainer;
import net.minecraft.world.inventory.ResultContainer; import net.minecraft.world.inventory.ResultContainer;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
import net.minecraftforge.energy.CapabilityEnergy; import net.minecraftforge.common.capabilities.ForgeCapabilities;
import net.minecraftforge.energy.IEnergyStorage; import net.minecraftforge.energy.IEnergyStorage;
import net.minecraftforge.items.IItemHandlerModifiable; import net.minecraftforge.items.IItemHandlerModifiable;
@@ -132,7 +131,9 @@ public class PortableGrid implements IGrid, IPortableGrid, IStorageDiskContainer
public void onOpen() { public void onOpen() {
drainEnergy(RS.SERVER_CONFIG.getPortableGrid().getOpenUsage()); drainEnergy(RS.SERVER_CONFIG.getPortableGrid().getOpenUsage());
} private final BaseItemHandler disk = new BaseItemHandler(1) }
private final BaseItemHandler disk = new BaseItemHandler(1)
.addValidator(new StorageDiskItemValidator()) .addValidator(new StorageDiskItemValidator())
.addListener(((handler, slot, reading) -> { .addListener(((handler, slot, reading) -> {
if (player != null && !player.level.isClientSide) { if (player != null && !player.level.isClientSide) {
@@ -189,7 +190,7 @@ public class PortableGrid implements IGrid, IPortableGrid, IStorageDiskContainer
@Override @Override
public void drainEnergy(int energy) { public void drainEnergy(int energy) {
if (RS.SERVER_CONFIG.getPortableGrid().getUseEnergy() && ((PortableGridBlockItem) stack.getItem()).getType() != PortableGridBlockItem.Type.CREATIVE) { if (RS.SERVER_CONFIG.getPortableGrid().getUseEnergy() && ((PortableGridBlockItem) stack.getItem()).getType() != PortableGridBlockItem.Type.CREATIVE) {
stack.getCapability(CapabilityEnergy.ENERGY, null) stack.getCapability(ForgeCapabilities.ENERGY, null)
.ifPresent(energyStorage -> energyStorage.extractEnergy(energy, false)); .ifPresent(energyStorage -> energyStorage.extractEnergy(energy, false));
} }
} }
@@ -197,7 +198,7 @@ public class PortableGrid implements IGrid, IPortableGrid, IStorageDiskContainer
@Override @Override
public int getEnergy() { public int getEnergy() {
if (RS.SERVER_CONFIG.getPortableGrid().getUseEnergy() && ((PortableGridBlockItem) stack.getItem()).getType() != PortableGridBlockItem.Type.CREATIVE) { if (RS.SERVER_CONFIG.getPortableGrid().getUseEnergy() && ((PortableGridBlockItem) stack.getItem()).getType() != PortableGridBlockItem.Type.CREATIVE) {
return stack.getCapability(CapabilityEnergy.ENERGY, null) return stack.getCapability(ForgeCapabilities.ENERGY, null)
.map(IEnergyStorage::getEnergyStored) .map(IEnergyStorage::getEnergyStored)
.orElse(RS.SERVER_CONFIG.getPortableGrid().getCapacity()); .orElse(RS.SERVER_CONFIG.getPortableGrid().getCapacity());
} }
@@ -449,7 +450,7 @@ public class PortableGrid implements IGrid, IPortableGrid, IStorageDiskContainer
public boolean isGridActive() { public boolean isGridActive() {
if (RS.SERVER_CONFIG.getPortableGrid().getUseEnergy() && if (RS.SERVER_CONFIG.getPortableGrid().getUseEnergy() &&
((PortableGridBlockItem) stack.getItem()).getType() != PortableGridBlockItem.Type.CREATIVE && ((PortableGridBlockItem) stack.getItem()).getType() != PortableGridBlockItem.Type.CREATIVE &&
stack.getCapability(CapabilityEnergy.ENERGY).orElse(null).getEnergyStored() <= RS.SERVER_CONFIG.getPortableGrid().getOpenUsage()) { stack.getCapability(ForgeCapabilities.ENERGY).orElse(null).getEnergyStored() <= RS.SERVER_CONFIG.getPortableGrid().getOpenUsage()) {
return false; return false;
} }
@@ -510,6 +511,4 @@ public class PortableGrid implements IGrid, IPortableGrid, IStorageDiskContainer
} }
} }

View File

@@ -65,8 +65,8 @@ import net.minecraft.world.inventory.ResultContainer;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.BlockState;
import net.minecraftforge.common.capabilities.Capability; import net.minecraftforge.common.capabilities.Capability;
import net.minecraftforge.common.capabilities.ForgeCapabilities;
import net.minecraftforge.common.util.LazyOptional; import net.minecraftforge.common.util.LazyOptional;
import net.minecraftforge.energy.CapabilityEnergy;
import net.minecraftforge.energy.EnergyStorage; import net.minecraftforge.energy.EnergyStorage;
import net.minecraftforge.energy.IEnergyStorage; import net.minecraftforge.energy.IEnergyStorage;
import net.minecraftforge.fluids.FluidStack; import net.minecraftforge.fluids.FluidStack;
@@ -244,7 +244,7 @@ public class PortableGridBlockEntity extends BaseBlockEntity implements IGrid, I
this.tabPage = WirelessGridItem.getTabPage(stack); this.tabPage = WirelessGridItem.getTabPage(stack);
this.size = WirelessGridItem.getSize(stack); this.size = WirelessGridItem.getSize(stack);
this.energyStorage = createEnergyStorage(stack.getCapability(CapabilityEnergy.ENERGY).map(IEnergyStorage::getEnergyStored).orElse(0)); this.energyStorage = createEnergyStorage(stack.getCapability(ForgeCapabilities.ENERGY).map(IEnergyStorage::getEnergyStored).orElse(0));
if (stack.hasTag()) { if (stack.hasTag()) {
for (int i = 0; i < 4; ++i) { for (int i = 0; i < 4; ++i) {
@@ -291,7 +291,7 @@ public class PortableGridBlockEntity extends BaseBlockEntity implements IGrid, I
stack.getTag().put(NBT_ENCHANTMENTS, enchants); stack.getTag().put(NBT_ENCHANTMENTS, enchants);
} }
stack.getCapability(CapabilityEnergy.ENERGY, null).ifPresent(itemEnergy -> itemEnergy.receiveEnergy(energyStorage.getEnergyStored(), false)); stack.getCapability(ForgeCapabilities.ENERGY, null).ifPresent(itemEnergy -> itemEnergy.receiveEnergy(energyStorage.getEnergyStored(), false));
for (int i = 0; i < 4; ++i) { for (int i = 0; i < 4; ++i) {
StackUtils.writeItems(filter, i, stack.getTag()); StackUtils.writeItems(filter, i, stack.getTag());
@@ -748,7 +748,7 @@ public class PortableGridBlockEntity extends BaseBlockEntity implements IGrid, I
@Nonnull @Nonnull
@Override @Override
public <T> LazyOptional<T> getCapability(@Nonnull Capability<T> cap, @Nullable Direction direction) { public <T> LazyOptional<T> getCapability(@Nonnull Capability<T> cap, @Nullable Direction direction) {
if (cap == CapabilityEnergy.ENERGY) { if (cap == ForgeCapabilities.ENERGY) {
return energyStorageCap.cast(); return energyStorageCap.cast();
} }

View File

@@ -4,14 +4,13 @@ import com.refinedmods.refinedstorage.item.capabilityprovider.EnergyCapabilityPr
import com.refinedmods.refinedstorage.render.Styles; import com.refinedmods.refinedstorage.render.Styles;
import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.CompoundTag;
import net.minecraft.network.chat.Component; import net.minecraft.network.chat.Component;
import net.minecraft.util.Mth; import net.minecraft.util.Mth;
import net.minecraft.world.item.Item; import net.minecraft.world.item.Item;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.TooltipFlag; import net.minecraft.world.item.TooltipFlag;
import net.minecraft.world.level.Level; import net.minecraft.world.level.Level;
import net.minecraftforge.common.capabilities.ForgeCapabilities;
import net.minecraftforge.common.capabilities.ICapabilityProvider; import net.minecraftforge.common.capabilities.ICapabilityProvider;
import net.minecraftforge.energy.CapabilityEnergy;
import net.minecraftforge.energy.IEnergyStorage; import net.minecraftforge.energy.IEnergyStorage;
import javax.annotation.Nullable; import javax.annotation.Nullable;
@@ -41,7 +40,7 @@ public abstract class EnergyItem extends Item {
@Override @Override
public int getBarWidth(ItemStack stack) { public int getBarWidth(ItemStack stack) {
IEnergyStorage energy = stack.getCapability(CapabilityEnergy.ENERGY).orElse(null); IEnergyStorage energy = stack.getCapability(ForgeCapabilities.ENERGY).orElse(null);
if (energy == null) { if (energy == null) {
return 0; return 0;
} }
@@ -51,7 +50,7 @@ public abstract class EnergyItem extends Item {
@Override @Override
public int getBarColor(ItemStack stack) { public int getBarColor(ItemStack stack) {
IEnergyStorage energy = stack.getCapability(CapabilityEnergy.ENERGY, null).orElse(null); IEnergyStorage energy = stack.getCapability(ForgeCapabilities.ENERGY, null).orElse(null);
if (energy == null) { if (energy == null) {
return super.getBarColor(stack); return super.getBarColor(stack);
} }
@@ -63,7 +62,7 @@ public abstract class EnergyItem extends Item {
super.appendHoverText(stack, level, tooltip, flag); super.appendHoverText(stack, level, tooltip, flag);
if (!creative) { if (!creative) {
stack.getCapability(CapabilityEnergy.ENERGY, null) stack.getCapability(ForgeCapabilities.ENERGY, null)
.ifPresent(energy -> tooltip.add(Component.translatable("misc.refinedstorage.energy_stored", energy.getEnergyStored(), energy.getMaxEnergyStored()).setStyle(Styles.GRAY))); .ifPresent(energy -> tooltip.add(Component.translatable("misc.refinedstorage.energy_stored", energy.getEnergyStored(), energy.getMaxEnergyStored()).setStyle(Styles.GRAY)));
} }
} }

View File

@@ -5,14 +5,13 @@ import com.refinedmods.refinedstorage.item.capabilityprovider.EnergyCapabilityPr
import com.refinedmods.refinedstorage.render.Styles; import com.refinedmods.refinedstorage.render.Styles;
import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.CompoundTag;
import net.minecraft.network.chat.Component; import net.minecraft.network.chat.Component;
import net.minecraft.util.Mth; import net.minecraft.util.Mth;
import net.minecraft.world.item.Item; import net.minecraft.world.item.Item;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.TooltipFlag; import net.minecraft.world.item.TooltipFlag;
import net.minecraft.world.level.Level; import net.minecraft.world.level.Level;
import net.minecraftforge.common.capabilities.ForgeCapabilities;
import net.minecraftforge.common.capabilities.ICapabilityProvider; import net.minecraftforge.common.capabilities.ICapabilityProvider;
import net.minecraftforge.energy.CapabilityEnergy;
import net.minecraftforge.energy.IEnergyStorage; import net.minecraftforge.energy.IEnergyStorage;
import javax.annotation.Nullable; import javax.annotation.Nullable;
@@ -42,7 +41,7 @@ public abstract class EnergyBlockItem extends BaseBlockItem {
@Override @Override
public int getBarWidth(ItemStack stack) { public int getBarWidth(ItemStack stack) {
IEnergyStorage energy = stack.getCapability(CapabilityEnergy.ENERGY).orElse(null); IEnergyStorage energy = stack.getCapability(ForgeCapabilities.ENERGY).orElse(null);
if (energy == null) { if (energy == null) {
return 0; return 0;
} }
@@ -52,7 +51,7 @@ public abstract class EnergyBlockItem extends BaseBlockItem {
@Override @Override
public int getBarColor(ItemStack stack) { public int getBarColor(ItemStack stack) {
IEnergyStorage energy = stack.getCapability(CapabilityEnergy.ENERGY, null).orElse(null); IEnergyStorage energy = stack.getCapability(ForgeCapabilities.ENERGY, null).orElse(null);
if (energy == null) { if (energy == null) {
return super.getBarColor(stack); return super.getBarColor(stack);
} }
@@ -64,7 +63,7 @@ public abstract class EnergyBlockItem extends BaseBlockItem {
super.appendHoverText(stack, level, tooltip, flag); super.appendHoverText(stack, level, tooltip, flag);
if (!creative) { if (!creative) {
stack.getCapability(CapabilityEnergy.ENERGY, null).ifPresent(energy -> tooltip.add(Component.translatable("misc.refinedstorage.energy_stored", energy.getEnergyStored(), energy.getMaxEnergyStored()).setStyle(Styles.GRAY))); stack.getCapability(ForgeCapabilities.ENERGY, null).ifPresent(energy -> tooltip.add(Component.translatable("misc.refinedstorage.energy_stored", energy.getEnergyStored(), energy.getMaxEnergyStored()).setStyle(Styles.GRAY)));
} }
} }
} }

View File

@@ -4,9 +4,9 @@ import com.refinedmods.refinedstorage.energy.ItemEnergyStorage;
import net.minecraft.core.Direction; import net.minecraft.core.Direction;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
import net.minecraftforge.common.capabilities.Capability; import net.minecraftforge.common.capabilities.Capability;
import net.minecraftforge.common.capabilities.ForgeCapabilities;
import net.minecraftforge.common.capabilities.ICapabilityProvider; import net.minecraftforge.common.capabilities.ICapabilityProvider;
import net.minecraftforge.common.util.LazyOptional; import net.minecraftforge.common.util.LazyOptional;
import net.minecraftforge.energy.CapabilityEnergy;
import net.minecraftforge.energy.IEnergyStorage; import net.minecraftforge.energy.IEnergyStorage;
import javax.annotation.Nonnull; import javax.annotation.Nonnull;
@@ -22,7 +22,7 @@ public class EnergyCapabilityProvider implements ICapabilityProvider {
@Nonnull @Nonnull
@Override @Override
public <T> LazyOptional<T> getCapability(@Nonnull Capability<T> cap, @Nullable Direction dire) { public <T> LazyOptional<T> getCapability(@Nonnull Capability<T> cap, @Nullable Direction dire) {
if (cap == CapabilityEnergy.ENERGY) { if (cap == ForgeCapabilities.ENERGY) {
return capability.cast(); return capability.cast();
} }

View File

@@ -6,7 +6,7 @@ import net.minecraft.client.multiplayer.ClientLevel;
import net.minecraft.client.renderer.item.ItemPropertyFunction; import net.minecraft.client.renderer.item.ItemPropertyFunction;
import net.minecraft.world.entity.LivingEntity; import net.minecraft.world.entity.LivingEntity;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
import net.minecraftforge.energy.CapabilityEnergy; import net.minecraftforge.common.capabilities.ForgeCapabilities;
import net.minecraftforge.energy.IEnergyStorage; import net.minecraftforge.energy.IEnergyStorage;
import javax.annotation.Nullable; import javax.annotation.Nullable;
@@ -14,7 +14,7 @@ import javax.annotation.Nullable;
public class ControllerItemPropertyGetter implements ItemPropertyFunction { public class ControllerItemPropertyGetter implements ItemPropertyFunction {
@Override @Override
public float call(ItemStack stack, @Nullable ClientLevel level, @Nullable LivingEntity entity, int p) { public float call(ItemStack stack, @Nullable ClientLevel level, @Nullable LivingEntity entity, int p) {
IEnergyStorage storage = stack.getCapability(CapabilityEnergy.ENERGY).orElse(null); IEnergyStorage storage = stack.getCapability(ForgeCapabilities.ENERGY).orElse(null);
if (storage != null) { if (storage != null) {
return Network.getEnergyType(storage.getEnergyStored(), storage.getMaxEnergyStored()).ordinal(); return Network.getEnergyType(storage.getEnergyStored(), storage.getMaxEnergyStored()).ordinal();
} }

View File

@@ -12,7 +12,7 @@ import net.minecraft.world.level.storage.loot.functions.LootItemConditionalFunct
import net.minecraft.world.level.storage.loot.functions.LootItemFunctionType; import net.minecraft.world.level.storage.loot.functions.LootItemFunctionType;
import net.minecraft.world.level.storage.loot.parameters.LootContextParams; import net.minecraft.world.level.storage.loot.parameters.LootContextParams;
import net.minecraft.world.level.storage.loot.predicates.LootItemCondition; import net.minecraft.world.level.storage.loot.predicates.LootItemCondition;
import net.minecraftforge.energy.CapabilityEnergy; import net.minecraftforge.common.capabilities.ForgeCapabilities;
public class ControllerLootFunction extends LootItemConditionalFunction { public class ControllerLootFunction extends LootItemConditionalFunction {
protected ControllerLootFunction(LootItemCondition[] conditions) { protected ControllerLootFunction(LootItemCondition[] conditions) {
@@ -30,7 +30,7 @@ public class ControllerLootFunction extends LootItemConditionalFunction {
if (blockEntity instanceof ControllerBlockEntity) { if (blockEntity instanceof ControllerBlockEntity) {
INetwork network = ((ControllerBlockEntity) blockEntity).getRemovedNetwork() == null ? ((ControllerBlockEntity) blockEntity).getNetwork() : ((ControllerBlockEntity) blockEntity).getRemovedNetwork(); INetwork network = ((ControllerBlockEntity) blockEntity).getRemovedNetwork() == null ? ((ControllerBlockEntity) blockEntity).getNetwork() : ((ControllerBlockEntity) blockEntity).getRemovedNetwork();
itemStack.getCapability(CapabilityEnergy.ENERGY).ifPresent(energy -> energy.receiveEnergy(network.getEnergyStorage().getEnergyStored(), false)); itemStack.getCapability(ForgeCapabilities.ENERGY).ifPresent(energy -> energy.receiveEnergy(network.getEnergyStorage().getEnergyStored(), false));
} }
return itemStack; return itemStack;

View File

@@ -17,11 +17,10 @@ import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.phys.HitResult; import net.minecraft.world.phys.HitResult;
import net.minecraft.world.phys.Vec3; import net.minecraft.world.phys.Vec3;
import net.minecraftforge.common.ForgeMod; import net.minecraftforge.common.ForgeMod;
import net.minecraftforge.common.capabilities.ForgeCapabilities;
import net.minecraftforge.common.util.FakePlayer; import net.minecraftforge.common.util.FakePlayer;
import net.minecraftforge.common.util.FakePlayerFactory; import net.minecraftforge.common.util.FakePlayerFactory;
import net.minecraftforge.fluids.capability.CapabilityFluidHandler;
import net.minecraftforge.fluids.capability.IFluidHandler; import net.minecraftforge.fluids.capability.IFluidHandler;
import net.minecraftforge.items.CapabilityItemHandler;
import net.minecraftforge.items.IItemHandler; import net.minecraftforge.items.IItemHandler;
import net.minecraftforge.items.wrapper.InvWrapper; import net.minecraftforge.items.wrapper.InvWrapper;
import net.minecraftforge.items.wrapper.SidedInvWrapper; import net.minecraftforge.items.wrapper.SidedInvWrapper;
@@ -47,7 +46,7 @@ public final class LevelUtils {
return null; return null;
} }
IItemHandler handler = blockEntity.getCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY, side).orElse(null); IItemHandler handler = blockEntity.getCapability(ForgeCapabilities.ITEM_HANDLER, side).orElse(null);
if (handler == null) { if (handler == null) {
if (side != null && blockEntity instanceof WorldlyContainer) { if (side != null && blockEntity instanceof WorldlyContainer) {
handler = new SidedInvWrapper((WorldlyContainer) blockEntity, side); handler = new SidedInvWrapper((WorldlyContainer) blockEntity, side);
@@ -61,7 +60,7 @@ public final class LevelUtils {
public static IFluidHandler getFluidHandler(@Nullable BlockEntity blockEntity, Direction side) { public static IFluidHandler getFluidHandler(@Nullable BlockEntity blockEntity, Direction side) {
if (blockEntity != null) { if (blockEntity != null) {
return blockEntity.getCapability(CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY, side).orElse(null); return blockEntity.getCapability(ForgeCapabilities.FLUID_HANDLER, side).orElse(null);
} }
return null; return null;

View File

@@ -18,9 +18,9 @@ import net.minecraft.world.Container;
import net.minecraft.world.item.Item; import net.minecraft.world.item.Item;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.Items; import net.minecraft.world.item.Items;
import net.minecraftforge.common.capabilities.ForgeCapabilities;
import net.minecraftforge.fluids.FluidStack; import net.minecraftforge.fluids.FluidStack;
import net.minecraftforge.fluids.FluidType; import net.minecraftforge.fluids.FluidType;
import net.minecraftforge.fluids.capability.CapabilityFluidHandler;
import net.minecraftforge.fluids.capability.IFluidHandler; import net.minecraftforge.fluids.capability.IFluidHandler;
import net.minecraftforge.fluids.capability.IFluidHandlerItem; import net.minecraftforge.fluids.capability.IFluidHandlerItem;
import net.minecraftforge.items.IItemHandler; import net.minecraftforge.items.IItemHandler;
@@ -296,7 +296,7 @@ public final class StackUtils {
stack = ItemHandlerHelper.copyStackWithSize(stack, 1); stack = ItemHandlerHelper.copyStackWithSize(stack, 1);
} }
IFluidHandlerItem handler = stack.getCapability(CapabilityFluidHandler.FLUID_HANDLER_ITEM_CAPABILITY, null).orElse(null); IFluidHandlerItem handler = stack.getCapability(ForgeCapabilities.FLUID_HANDLER_ITEM, null).orElse(null);
if (handler != null) { if (handler != null) {
FluidStack result = handler.drain(FluidType.BUCKET_VOLUME, simulate ? IFluidHandler.FluidAction.SIMULATE : IFluidHandler.FluidAction.EXECUTE); FluidStack result = handler.drain(FluidType.BUCKET_VOLUME, simulate ? IFluidHandler.FluidAction.SIMULATE : IFluidHandler.FluidAction.EXECUTE);