API compiles

This commit is contained in:
Sebastian Hartte
2020-06-27 18:09:44 +02:00
parent ba71a82288
commit 80fbb58d4f
572 changed files with 2995 additions and 3037 deletions
@@ -23,7 +23,7 @@ import javax.annotation.Nullable;
import net.minecraft.block.Material;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.block.entity.BlockEntity;
import net.minecraft.util.ActionResult;
import net.minecraft.util.Hand;
import net.minecraft.util.math.BlockPos;
@@ -49,7 +49,7 @@ public class FluidInterfaceBlock extends AEBaseTileBlock<FluidInterfaceTileEntit
return ActionResult.PASS;
}
final TileEntity tg = this.getTileEntity(w, pos);
final BlockEntity tg = this.getTileEntity(w, pos);
if (tg != null) {
if (Platform.isServer()) {
ContainerOpener.openContainer(FluidInterfaceContainer.TYPE, p,
@@ -2,7 +2,7 @@
package appeng.fluids.client.gui;
import net.minecraft.entity.player.PlayerInventory;
import net.minecraft.util.text.ITextComponent;
import net.minecraft.text.Text;
import appeng.client.gui.implementations.UpgradeableScreen;
import appeng.client.gui.widgets.TabButton;
@@ -17,7 +17,7 @@ import appeng.fluids.util.IAEFluidTank;
public class FluidFormationPlaneScreen extends UpgradeableScreen<FluidFormationPlaneContainer> {
public FluidFormationPlaneScreen(FluidFormationPlaneContainer container, PlayerInventory playerInventory,
ITextComponent title) {
Text title) {
super(container, playerInventory, title);
this.ySize = 251;
}
@@ -19,7 +19,7 @@
package appeng.fluids.client.gui;
import net.minecraft.entity.player.PlayerInventory;
import net.minecraft.util.text.ITextComponent;
import net.minecraft.text.Text;
import appeng.client.gui.implementations.UpgradeableScreen;
import appeng.core.localization.GuiText;
@@ -36,7 +36,7 @@ import appeng.fluids.util.IAEFluidTank;
*/
public class FluidIOScreen extends UpgradeableScreen<FluidIOContainer> {
public FluidIOScreen(FluidIOContainer container, PlayerInventory playerInventory, ITextComponent title) {
public FluidIOScreen(FluidIOContainer container, PlayerInventory playerInventory, Text title) {
super(container, playerInventory, title);
}
@@ -19,7 +19,7 @@
package appeng.fluids.client.gui;
import net.minecraft.entity.player.PlayerInventory;
import net.minecraft.util.text.ITextComponent;
import net.minecraft.text.Text;
import net.minecraftforge.fml.client.gui.GuiUtils;
import appeng.client.gui.implementations.UpgradeableScreen;
@@ -36,7 +36,7 @@ import appeng.fluids.util.IAEFluidTank;
public class FluidInterfaceScreen extends UpgradeableScreen<FluidInterfaceContainer> {
public FluidInterfaceScreen(FluidInterfaceContainer container, PlayerInventory playerInventory,
ITextComponent title) {
Text title) {
super(container, playerInventory, title);
this.ySize = 231;
}
@@ -4,7 +4,7 @@ package appeng.fluids.client.gui;
import net.minecraft.client.gui.widget.button.Button;
import net.minecraft.client.util.InputMappings;
import net.minecraft.entity.player.PlayerInventory;
import net.minecraft.util.text.ITextComponent;
import net.minecraft.text.Text;
import appeng.api.config.RedstoneMode;
import appeng.api.config.Settings;
@@ -22,7 +22,7 @@ public class FluidLevelEmitterScreen extends UpgradeableScreen<FluidLevelEmitter
private NumberBox level;
public FluidLevelEmitterScreen(FluidLevelEmitterContainer container, PlayerInventory playerInventory,
ITextComponent title) {
Text title) {
super(container, playerInventory, title);
}
@@ -19,7 +19,7 @@
package appeng.fluids.client.gui;
import net.minecraft.entity.player.PlayerInventory;
import net.minecraft.util.text.ITextComponent;
import net.minecraft.text.Text;
import appeng.api.config.AccessRestriction;
import appeng.api.config.ActionItems;
@@ -51,7 +51,7 @@ public class FluidStorageBusScreen extends UpgradeableScreen<FluidStorageBusCont
private SettingToggleButton<StorageFilter> storageFilter;
public FluidStorageBusScreen(FluidStorageBusContainer container, PlayerInventory playerInventory,
ITextComponent title) {
Text title) {
super(container, playerInventory, title);
this.ySize = 251;
}
@@ -30,7 +30,7 @@ import net.minecraft.client.util.InputMappings;
import net.minecraft.entity.player.PlayerInventory;
import net.minecraft.inventory.container.ClickType;
import net.minecraft.inventory.container.Slot;
import net.minecraft.util.text.ITextComponent;
import net.minecraft.text.Text;
import net.minecraftforge.fml.client.gui.GuiUtils;
import appeng.api.config.Settings;
@@ -81,7 +81,7 @@ public class FluidTerminalScreen extends AEBaseMEScreen<FluidTerminalContainer>
private SettingToggleButton<SortDir> sortDirBox;
public FluidTerminalScreen(FluidTerminalContainer container, PlayerInventory playerInventory,
ITextComponent title) {
Text title) {
super(container, playerInventory, title);
this.xSize = 185;
this.ySize = 222;
@@ -13,7 +13,7 @@ import net.minecraft.fluid.Fluid;
import net.minecraft.item.ItemStack;
import net.minecraftforge.common.util.LazyOptional;
import net.minecraftforge.fluids.FluidAttributes;
import net.minecraftforge.fluids.FluidStack;
import alexiil.mc.lib.attributes.fluid.volume.FluidVolume;
import net.minecraftforge.fluids.FluidUtil;
import net.minecraftforge.fluids.capability.CapabilityFluidHandler;
@@ -68,7 +68,7 @@ public class FluidSlotWidget extends CustomSlotWidget {
if (clickStack.isEmpty() || mouseButton == 1) {
this.setFluidStack(null);
} else if (mouseButton == 0) {
final LazyOptional<FluidStack> fluidOpt = FluidUtil.getFluidContained(clickStack);
final LazyOptional<FluidVolume> fluidOpt = FluidUtil.getFluidContained(clickStack);
fluidOpt.ifPresent(fluid -> {
this.setFluidStack(AEFluidStack.fromFluidStack(fluid));
});
@@ -20,13 +20,13 @@ package appeng.fluids.client.gui.widgets;
import com.mojang.blaze3d.systems.RenderSystem;
import net.fabricmc.api.EnvType;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.widget.Widget;
import net.minecraft.client.renderer.texture.AtlasTexture;
import net.minecraft.client.renderer.texture.TextureAtlasSprite;
import net.minecraft.fluid.Fluid;
import net.minecraftforge.api.distmarker.Dist;
import net.minecraftforge.api.distmarker.OnlyIn;
import net.fabricmc.api.Environment;
import net.minecraftforge.fluids.FluidAttributes;
import appeng.api.storage.data.IAEFluidStack;
@@ -34,7 +34,7 @@ import appeng.api.util.AEColor;
import appeng.client.gui.widgets.ITooltip;
import appeng.fluids.util.IAEFluidTank;
@OnlyIn(Dist.CLIENT)
@Environment(EnvType.CLIENT)
public class FluidTankWidget extends Widget implements ITooltip {
private final IAEFluidTank tank;
private final int slot;
@@ -4,12 +4,12 @@ package appeng.fluids.container;
import java.util.Collections;
import java.util.Map;
import alexiil.mc.lib.attributes.fluid.volume.FluidVolume;
import net.minecraft.entity.player.PlayerInventory;
import net.minecraft.inventory.container.ContainerType;
import net.minecraft.inventory.container.IContainerListener;
import net.minecraft.item.ItemStack;
import net.minecraftforge.common.util.LazyOptional;
import net.minecraftforge.fluids.FluidStack;
import net.minecraftforge.fluids.FluidUtil;
import appeng.api.config.Upgrades;
@@ -39,7 +39,7 @@ public abstract class FluidConfigurableContainer extends UpgradeableContainer im
@Override
protected ItemStack transferStackToContainer(ItemStack input) {
LazyOptional<FluidStack> fsOpt = FluidUtil.getFluidContained(input);
LazyOptional<FluidVolume> fsOpt = FluidUtil.getFluidContained(input);
if (fsOpt.isPresent()) {
final IAEFluidTank t = this.getFluidConfigInventory();
final IAEFluidStack stack = AEFluidStack.fromFluidStack(fsOpt.orElse(null));
@@ -1,11 +1,11 @@
package appeng.fluids.container;
import alexiil.mc.lib.attributes.item.ItemTransferable;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.entity.player.PlayerInventory;
import net.minecraft.inventory.container.ContainerType;
import net.minecraft.network.PacketBuffer;
import net.minecraftforge.items.IItemHandler;
import net.minecraft.network.PacketByteBuf;
import appeng.api.config.SecurityPermissions;
import appeng.api.config.Upgrades;
@@ -23,7 +23,7 @@ public class FluidFormationPlaneContainer extends FluidConfigurableContainer {
private static final ContainerHelper<FluidFormationPlaneContainer, FluidFormationPlanePart> helper = new ContainerHelper<>(
FluidFormationPlaneContainer::new, FluidFormationPlanePart.class, SecurityPermissions.BUILD);
public static FluidFormationPlaneContainer fromNetwork(int windowId, PlayerInventory inv, PacketBuffer buf) {
public static FluidFormationPlaneContainer fromNetwork(int windowId, PlayerInventory inv, PacketByteBuf buf) {
return helper.fromNetwork(windowId, inv, buf);
}
@@ -50,7 +50,7 @@ public class FluidFormationPlaneContainer extends FluidConfigurableContainer {
@Override
protected void setupConfig() {
final IItemHandler upgrades = this.getUpgradeable().getInventoryByName("upgrades");
final ItemTransferable upgrades = this.getUpgradeable().getInventoryByName("upgrades");
this.addSlot((new RestrictedInputSlot(RestrictedInputSlot.PlacableItemType.UPGRADES, upgrades, 0, 187, 8,
this.getPlayerInventory())).setNotDraggable());
this.addSlot((new RestrictedInputSlot(RestrictedInputSlot.PlacableItemType.UPGRADES, upgrades, 1, 187, 8 + 18,
@@ -21,7 +21,7 @@ package appeng.fluids.container;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.entity.player.PlayerInventory;
import net.minecraft.inventory.container.ContainerType;
import net.minecraft.network.PacketBuffer;
import net.minecraft.network.PacketByteBuf;
import appeng.api.config.SecurityPermissions;
import appeng.container.ContainerLocator;
@@ -41,7 +41,7 @@ public class FluidIOContainer extends FluidConfigurableContainer {
private static final ContainerHelper<FluidIOContainer, SharedFluidBusPart> helper = new ContainerHelper<>(
FluidIOContainer::new, SharedFluidBusPart.class, SecurityPermissions.BUILD);
public static FluidIOContainer fromNetwork(int windowId, PlayerInventory inv, PacketBuffer buf) {
public static FluidIOContainer fromNetwork(int windowId, PlayerInventory inv, PacketByteBuf buf) {
return helper.fromNetwork(windowId, inv, buf);
}
@@ -25,7 +25,7 @@ import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.entity.player.PlayerInventory;
import net.minecraft.inventory.container.ContainerType;
import net.minecraft.inventory.container.IContainerListener;
import net.minecraft.network.PacketBuffer;
import net.minecraft.network.PacketByteBuf;
import appeng.api.config.SecurityPermissions;
import appeng.api.storage.data.IAEFluidStack;
@@ -45,7 +45,7 @@ public class FluidInterfaceContainer extends FluidConfigurableContainer {
private static final ContainerHelper<FluidInterfaceContainer, IFluidInterfaceHost> helper = new ContainerHelper<>(
FluidInterfaceContainer::new, IFluidInterfaceHost.class, SecurityPermissions.BUILD);
public static FluidInterfaceContainer fromNetwork(int windowId, PlayerInventory inv, PacketBuffer buf) {
public static FluidInterfaceContainer fromNetwork(int windowId, PlayerInventory inv, PacketByteBuf buf) {
return helper.fromNetwork(windowId, inv, buf);
}
@@ -4,9 +4,9 @@ import net.minecraft.client.gui.widget.TextFieldWidget;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.entity.player.PlayerInventory;
import net.minecraft.inventory.container.ContainerType;
import net.minecraft.network.PacketBuffer;
import net.minecraftforge.api.distmarker.Dist;
import net.minecraftforge.api.distmarker.OnlyIn;
import net.minecraft.network.PacketByteBuf;
import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
import appeng.api.config.RedstoneMode;
import appeng.api.config.SecurityPermissions;
@@ -24,7 +24,7 @@ public class FluidLevelEmitterContainer extends FluidConfigurableContainer {
private static final ContainerHelper<FluidLevelEmitterContainer, FluidLevelEmitterPart> helper = new ContainerHelper<>(
FluidLevelEmitterContainer::new, FluidLevelEmitterPart.class, SecurityPermissions.BUILD);
public static FluidLevelEmitterContainer fromNetwork(int windowId, PlayerInventory inv, PacketBuffer buf) {
public static FluidLevelEmitterContainer fromNetwork(int windowId, PlayerInventory inv, PacketByteBuf buf) {
return helper.fromNetwork(windowId, inv, buf);
}
@@ -34,7 +34,7 @@ public class FluidLevelEmitterContainer extends FluidConfigurableContainer {
private final FluidLevelEmitterPart lvlEmitter;
@OnlyIn(Dist.CLIENT)
@Environment(EnvType.CLIENT)
private TextFieldWidget textField;
@GuiSync(3)
public long EmitterValue = -1;
@@ -44,7 +44,7 @@ public class FluidLevelEmitterContainer extends FluidConfigurableContainer {
this.lvlEmitter = te;
}
@OnlyIn(Dist.CLIENT)
@Environment(EnvType.CLIENT)
public void setTextField(final TextFieldWidget level) {
this.textField = level;
this.textField.setText(String.valueOf(this.EmitterValue));
@@ -23,8 +23,8 @@ import java.util.Iterator;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.entity.player.PlayerInventory;
import net.minecraft.inventory.container.ContainerType;
import net.minecraft.network.PacketBuffer;
import net.minecraftforge.items.IItemHandler;
import net.minecraft.network.PacketByteBuf;
import alexiil.mc.lib.attributes.item.ItemTransferable;
import appeng.api.AEApi;
import appeng.api.config.AccessRestriction;
@@ -58,7 +58,7 @@ public class FluidStorageBusContainer extends FluidConfigurableContainer {
private static final ContainerHelper<FluidStorageBusContainer, FluidStorageBusPart> helper = new ContainerHelper<>(
FluidStorageBusContainer::new, FluidStorageBusPart.class);
public static FluidStorageBusContainer fromNetwork(int windowId, PlayerInventory inv, PacketBuffer buf) {
public static FluidStorageBusContainer fromNetwork(int windowId, PlayerInventory inv, PacketByteBuf buf) {
return helper.fromNetwork(windowId, inv, buf);
}
@@ -86,7 +86,7 @@ public class FluidStorageBusContainer extends FluidConfigurableContainer {
@Override
protected void setupConfig() {
final IItemHandler upgrades = this.getUpgradeable().getInventoryByName("upgrades");
final ItemTransferable upgrades = this.getUpgradeable().getInventoryByName("upgrades");
this.addSlot((new RestrictedInputSlot(RestrictedInputSlot.PlacableItemType.UPGRADES, upgrades, 0, 187, 8,
this.getPlayerInventory())).setNotDraggable());
this.addSlot((new RestrictedInputSlot(RestrictedInputSlot.PlacableItemType.UPGRADES, upgrades, 1, 187, 8 + 18,
@@ -23,15 +23,15 @@ import java.nio.BufferOverflowException;
import javax.annotation.Nonnull;
import alexiil.mc.lib.attributes.fluid.volume.FluidVolume;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.entity.player.PlayerInventory;
import net.minecraft.entity.player.ServerPlayerEntity;
import net.minecraft.inventory.container.ContainerType;
import net.minecraft.inventory.container.IContainerListener;
import net.minecraft.item.ItemStack;
import net.minecraft.network.PacketBuffer;
import net.minecraft.network.PacketByteBuf;
import net.minecraftforge.common.util.LazyOptional;
import net.minecraftforge.fluids.FluidStack;
import net.minecraftforge.fluids.FluidUtil;
import net.minecraftforge.fluids.capability.IFluidHandler.FluidAction;
import net.minecraftforge.fluids.capability.IFluidHandlerItem;
@@ -90,7 +90,7 @@ public class FluidTerminalContainer extends AEBaseContainer
private static final ContainerHelper<FluidTerminalContainer, ITerminalHost> helper = new ContainerHelper<>(
FluidTerminalContainer::new, ITerminalHost.class, SecurityPermissions.BUILD);
public static FluidTerminalContainer fromNetwork(int windowId, PlayerInventory inv, PacketBuffer buf) {
public static FluidTerminalContainer fromNetwork(int windowId, PlayerInventory inv, PacketByteBuf buf) {
return helper.fromNetwork(windowId, inv, buf);
}
@@ -365,7 +365,7 @@ public class FluidTerminalContainer extends AEBaseContainer
this.updateHeld(player);
} else if (action == InventoryAction.EMPTY_ITEM) {
// See how much we can drain from the item
final FluidStack extract = fh.drain(Integer.MAX_VALUE, FluidAction.SIMULATE);
final FluidVolume extract = fh.drain(Integer.MAX_VALUE, FluidAction.SIMULATE);
if (extract.isEmpty() || extract.getAmount() < 1) {
return;
}
@@ -376,7 +376,7 @@ public class FluidTerminalContainer extends AEBaseContainer
if (notStorable != null && notStorable.getStackSize() > 0) {
final int toStore = (int) (extract.getAmount() - notStorable.getStackSize());
final FluidStack storable = fh.drain(toStore, FluidAction.SIMULATE);
final FluidVolume storable = fh.drain(toStore, FluidAction.SIMULATE);
if (storable.isEmpty() || storable.getAmount() == 0) {
return;
@@ -386,7 +386,7 @@ public class FluidTerminalContainer extends AEBaseContainer
}
// Actually drain
final FluidStack drained = fh.drain(extract, FluidAction.EXECUTE);
final FluidVolume drained = fh.drain(extract, FluidAction.EXECUTE);
extract.setAmount(drained.getAmount());
final IAEFluidStack notInserted = Platform.poweredInsert(this.getPowerSource(), this.monitor,
@@ -20,15 +20,15 @@ package appeng.fluids.helper;
import java.util.Optional;
import alexiil.mc.lib.attributes.item.ItemTransferable;
import net.minecraft.nbt.CompoundTag;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.block.entity.BlockEntity;
import net.minecraft.util.math.Direction;
import net.minecraftforge.common.capabilities.Capability;
import net.minecraftforge.common.util.LazyOptional;
import net.minecraftforge.fluids.FluidAttributes;
import net.minecraftforge.fluids.FluidStack;
import alexiil.mc.lib.attributes.fluid.volume.FluidVolume;
import net.minecraftforge.fluids.capability.CapabilityFluidHandler;
import net.minecraftforge.items.IItemHandler;
import appeng.api.AEApi;
import appeng.api.config.Actionable;
@@ -176,7 +176,7 @@ public class DualityFluidInterface
}
}
final TileEntity te = this.iHost.getTileEntity();
final BlockEntity te = this.iHost.getTileEntity();
if (te != null && te.getWorld() != null) {
Platform.notifyBlocksOfNeighbors(te.getWorld(), te.getPos());
}
@@ -334,7 +334,7 @@ public class DualityFluidInterface
toStore.setStackSize(-toStore.getStackSize());
// make sure strange things didn't happen...
final FluidStack canExtract = this.tanks.drain(slot, toStore.getFluidStack(), false);
final FluidVolume canExtract = this.tanks.drain(slot, toStore.getFluidStack(), false);
if (canExtract.isEmpty() || canExtract.getAmount() != toStore.getStackSize()) {
changed = true;
} else {
@@ -344,7 +344,7 @@ public class DualityFluidInterface
if (toStore.getStackSize() > 0) {
// extract items!
changed = true;
final FluidStack removed = this.tanks.drain(slot, toStore.getFluidStack(), true);
final FluidVolume removed = this.tanks.drain(slot, toStore.getFluidStack(), true);
if (removed.isEmpty() || toStore.getStackSize() != removed.getAmount()) {
throw new IllegalStateException("bad attempt at managing tanks. ( drain )");
}
@@ -491,7 +491,7 @@ public class DualityFluidInterface
}
@Override
public IItemHandler getInventoryByName(String name) {
public ItemTransferable getInventoryByName(String name) {
return null;
}
@@ -501,8 +501,8 @@ public class DualityFluidInterface
}
@Override
public TileEntity getTile() {
return (TileEntity) (this.iHost instanceof TileEntity ? this.iHost : null);
public BlockEntity getTile() {
return (BlockEntity) (this.iHost instanceof BlockEntity ? this.iHost : null);
}
@Override
@@ -20,10 +20,10 @@ package appeng.fluids.helper;
import javax.annotation.Nonnull;
import alexiil.mc.lib.attributes.fluid.volume.FluidVolume;
import net.minecraft.item.ItemStack;
import net.minecraftforge.common.util.LazyOptional;
import net.minecraftforge.fluids.FluidAttributes;
import net.minecraftforge.fluids.FluidStack;
import net.minecraftforge.fluids.FluidUtil;
import appeng.api.AEApi;
@@ -46,12 +46,12 @@ public class FluidCellConfig extends CellConfig {
if (stack.isEmpty() || stack.getItem() instanceof FluidDummyItem) {
super.insertItem(slot, stack, simulate);
}
LazyOptional<FluidStack> fluidOpt = FluidUtil.getFluidContained(stack);
LazyOptional<FluidVolume> fluidOpt = FluidUtil.getFluidContained(stack);
if (!fluidOpt.isPresent()
|| !AEApi.instance().definitions().items().dummyFluidItem().maybeStack(1).isPresent()) {
return stack;
}
FluidStack fluid = fluidOpt.orElse(null);
FluidVolume fluid = fluidOpt.orElse(null);
fluid.setAmount(FluidAttributes.BUCKET_VOLUME);
ItemStack is = AEApi.instance().definitions().items().dummyFluidItem().maybeStack(1).get();
@@ -65,12 +65,12 @@ public class FluidCellConfig extends CellConfig {
if (stack.isEmpty() || stack.getItem() instanceof FluidDummyItem) {
super.setStackInSlot(slot, stack);
}
LazyOptional<FluidStack> fluidOpt = FluidUtil.getFluidContained(stack);
LazyOptional<FluidVolume> fluidOpt = FluidUtil.getFluidContained(stack);
if (!fluidOpt.isPresent()
|| !AEApi.instance().definitions().items().dummyFluidItem().maybeStack(1).isPresent()) {
return;
}
FluidStack fluid = fluidOpt.orElse(null);
FluidVolume fluid = fluidOpt.orElse(null);
fluid.setAmount(FluidAttributes.BUCKET_VOLUME);
ItemStack is = AEApi.instance().definitions().items().dummyFluidItem().maybeStack(1).get();
@@ -84,12 +84,12 @@ public class FluidCellConfig extends CellConfig {
if (stack.isEmpty() || stack.getItem() instanceof FluidDummyItem) {
super.isItemValid(slot, stack);
}
LazyOptional<FluidStack> fluidOpt = FluidUtil.getFluidContained(stack);
LazyOptional<FluidVolume> fluidOpt = FluidUtil.getFluidContained(stack);
if (!fluidOpt.isPresent()
|| !AEApi.instance().definitions().items().dummyFluidItem().maybeStack(1).isPresent()) {
return false;
}
FluidStack fluid = fluidOpt.orElse(null);
FluidVolume fluid = fluidOpt.orElse(null);
fluid.setAmount(FluidAttributes.BUCKET_VOLUME);
ItemStack is = AEApi.instance().definitions().items().dummyFluidItem().maybeStack(1).get();
@@ -20,7 +20,7 @@ package appeng.fluids.helper;
import java.util.EnumSet;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.block.entity.BlockEntity;
import net.minecraft.util.math.Direction;
import appeng.api.implementations.IUpgradeableHost;
@@ -32,7 +32,7 @@ public interface IFluidInterfaceHost extends IActionHost, IGridProxyable, IUpgra
EnumSet<Direction> getTargets();
TileEntity getTileEntity();
BlockEntity getTileEntity();
void saveChanges();
}
@@ -20,7 +20,7 @@ package appeng.fluids.items;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.item.ItemStack;
import net.minecraftforge.items.IItemHandler;
import alexiil.mc.lib.attributes.item.ItemTransferable;
import appeng.api.AEApi;
import appeng.api.storage.IStorageChannel;
@@ -88,7 +88,7 @@ public final class BasicFluidStorageCell extends AbstractStorageCell<IAEFluidSta
}
@Override
public IItemHandler getConfigInventory(final ItemStack is) {
public ItemTransferable getConfigInventory(final ItemStack is) {
return new FluidCellConfig(is);
}
@@ -18,13 +18,13 @@
package appeng.fluids.items;
import alexiil.mc.lib.attributes.fluid.volume.FluidVolume;
import net.minecraft.fluid.Fluids;
import net.minecraft.item.ItemGroup;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.CompoundTag;
import net.minecraft.util.NonNullList;
import net.minecraftforge.fluids.FluidAttributes;
import net.minecraftforge.fluids.FluidStack;
import appeng.items.AEBaseItem;
@@ -43,22 +43,22 @@ public class FluidDummyItem extends AEBaseItem {
@Override
public String getTranslationKey(ItemStack stack) {
FluidStack fluidStack = this.getFluidStack(stack);
FluidVolume fluidStack = this.getFluidStack(stack);
if (fluidStack.isEmpty()) {
fluidStack = new FluidStack(Fluids.WATER, FluidAttributes.BUCKET_VOLUME);
fluidStack = new FluidVolume(Fluids.WATER, FluidAttributes.BUCKET_VOLUME);
}
return fluidStack.getTranslationKey();
}
public FluidStack getFluidStack(ItemStack is) {
public FluidVolume getFluidStack(ItemStack is) {
if (is.hasTag()) {
CompoundTag tag = is.getTag();
return FluidStack.loadFluidStackFromNBT(tag);
return FluidVolume.loadFluidStackFromNBT(tag);
}
return FluidStack.EMPTY;
return FluidVolume.EMPTY;
}
public void setFluidStack(ItemStack is, FluidStack fs) {
public void setFluidStack(ItemStack is, FluidVolume fs) {
if (fs.isEmpty()) {
is.setTag(null);
} else {
@@ -5,23 +5,23 @@ import java.util.List;
import javax.annotation.Nonnull;
import alexiil.mc.lib.attributes.fluid.volume.FluidVolume;
import net.minecraft.block.BlockState;
import net.minecraft.block.IBucketPickupHandler;
import net.minecraft.block.entity.BlockEntity;
import net.minecraft.fluid.Fluid;
import net.minecraft.fluid.Fluids;
import net.minecraft.fluid.IFluidState;
import net.minecraft.item.ItemStack;
import net.minecraft.tags.FluidTags;
import net.minecraft.tags.Tag;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.Identifier;
import net.minecraft.util.math.Direction;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.BlockView;
import net.minecraft.world.World;
import net.minecraftforge.client.model.data.IModelData;
import net.minecraftforge.fluids.FluidAttributes;
import net.minecraftforge.fluids.FluidStack;
import appeng.api.AEApi;
import appeng.api.config.Actionable;
@@ -60,7 +60,7 @@ import appeng.util.Platform;
public class FluidAnnihilationPlanePart extends BasicStatePart implements IGridTickable {
public static final ResourceLocation TAG_BLACKLIST = new ResourceLocation(AppEng.MOD_ID,
public static final Identifier TAG_BLACKLIST = new Identifier(AppEng.MOD_ID,
"blacklisted/fluid_annihilation_plane");
private static final PlaneModels MODELS = new PlaneModels("part/fluid_annihilation_plane",
@@ -86,7 +86,7 @@ public class FluidAnnihilationPlanePart extends BasicStatePart implements IGridT
final IPartHost host = this.getHost();
if (host != null) {
final TileEntity te = host.getTile();
final BlockEntity te = host.getTile();
final BlockPos pos = te.getPos();
@@ -152,7 +152,7 @@ public class FluidAnnihilationPlanePart extends BasicStatePart implements IGridT
final IPartHost host = this.getHost();
if (host != null) {
final TileEntity te = host.getTile();
final BlockEntity te = host.getTile();
final BlockPos pos = te.getPos();
@@ -190,7 +190,7 @@ public class FluidAnnihilationPlanePart extends BasicStatePart implements IGridT
return 1;
}
private boolean isAnnihilationPlane(final TileEntity blockTileEntity, final AEPartLocation side) {
private boolean isAnnihilationPlane(final BlockEntity blockTileEntity, final AEPartLocation side) {
if (blockTileEntity instanceof IPartHost) {
final IPart p = ((IPartHost) blockTileEntity).getPart(side);
return p != null && p.getClass() == this.getClass();
@@ -225,7 +225,7 @@ public class FluidAnnihilationPlanePart extends BasicStatePart implements IGridT
return TickRateModulation.SLEEP;
}
final TileEntity te = this.getTile();
final BlockEntity te = this.getTile();
final World w = te.getWorld();
final BlockPos pos = te.getPos().offset(this.getSide().getFacing());
@@ -241,14 +241,14 @@ public class FluidAnnihilationPlanePart extends BasicStatePart implements IGridT
if (fluid != Fluids.EMPTY && fluidState.isSource()) {
// Attempt to store the fluid in the network
final IAEFluidStack blockFluid = AEFluidStack
.fromFluidStack(new FluidStack(fluidState.getFluid(), FluidAttributes.BUCKET_VOLUME));
.fromFluidStack(new FluidVolume(fluidState.getFluid(), FluidAttributes.BUCKET_VOLUME));
if (this.storeFluid(blockFluid, false)) {
// If that would succeed, actually slurp up the liquid as if we were using a
// bucket
// This _MIGHT_ change the liquid, and if it does, and we dont have enough
// space, tough luck. you loose the source block.
fluid = ((IBucketPickupHandler) blockstate.getBlock()).pickupFluid(w, pos, blockstate);
this.storeFluid(AEFluidStack.fromFluidStack(new FluidStack(fluid, FluidAttributes.BUCKET_VOLUME)),
this.storeFluid(AEFluidStack.fromFluidStack(new FluidVolume(fluid, FluidAttributes.BUCKET_VOLUME)),
true);
AppEng.proxy.sendToAllNearExcept(null, pos.getX(), pos.getY(), pos.getZ(), 64, w,
@@ -21,8 +21,8 @@ package appeng.fluids.parts;
import javax.annotation.Nonnull;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ResourceLocation;
import net.minecraft.block.entity.BlockEntity;
import net.minecraft.util.Identifier;
import net.minecraftforge.common.util.LazyOptional;
import net.minecraftforge.fluids.capability.CapabilityFluidHandler;
import net.minecraftforge.fluids.capability.IFluidHandler;
@@ -55,16 +55,16 @@ import appeng.parts.PartModel;
* @since rv6 30/04/2018
*/
public class FluidExportBusPart extends SharedFluidBusPart {
public static final ResourceLocation MODEL_BASE = new ResourceLocation(AppEng.MOD_ID, "part/fluid_export_bus_base");
public static final Identifier MODEL_BASE = new Identifier(AppEng.MOD_ID, "part/fluid_export_bus_base");
@PartModels
public static final IPartModel MODELS_OFF = new PartModel(MODEL_BASE,
new ResourceLocation(AppEng.MOD_ID, "part/fluid_export_bus_off"));
new Identifier(AppEng.MOD_ID, "part/fluid_export_bus_off"));
@PartModels
public static final IPartModel MODELS_ON = new PartModel(MODEL_BASE,
new ResourceLocation(AppEng.MOD_ID, "part/fluid_export_bus_on"));
new Identifier(AppEng.MOD_ID, "part/fluid_export_bus_on"));
@PartModels
public static final IPartModel MODELS_HAS_CHANNEL = new PartModel(MODEL_BASE,
new ResourceLocation(AppEng.MOD_ID, "part/fluid_export_bus_has_channel"));
new Identifier(AppEng.MOD_ID, "part/fluid_export_bus_has_channel"));
private final IActionSource source;
@@ -99,7 +99,7 @@ public class FluidExportBusPart extends SharedFluidBusPart {
return TickRateModulation.IDLE;
}
final TileEntity te = this.getConnectedTE();
final BlockEntity te = this.getConnectedTE();
LazyOptional<IFluidHandler> fhOpt = LazyOptional.empty();
if (te != null) {
fhOpt = te.getCapability(CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY,
@@ -7,22 +7,22 @@ import java.util.List;
import javax.annotation.Nonnull;
import alexiil.mc.lib.attributes.fluid.volume.FluidVolume;
import net.minecraft.block.BlockState;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.inventory.container.ContainerType;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.CompoundTag;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.block.entity.BlockEntity;
import net.minecraft.util.Hand;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.Vec3d;
import net.minecraft.world.World;
import net.minecraft.world.server.ServerWorld;
import net.minecraft.server.world.ServerWorld;
import net.minecraftforge.client.model.data.IModelData;
import net.minecraftforge.common.util.FakePlayer;
import net.minecraftforge.common.util.FakePlayerFactory;
import net.minecraftforge.fluids.FluidAttributes;
import net.minecraftforge.fluids.FluidStack;
import net.minecraftforge.fluids.FluidUtil;
import net.minecraftforge.fluids.capability.IFluidHandler;
import net.minecraftforge.fluids.capability.templates.FluidTank;
@@ -110,7 +110,7 @@ public class FluidFormationPlanePart extends AbstractFormationPlanePart<IAEFluid
return input;
}
final TileEntity te = this.getHost().getTile();
final BlockEntity te = this.getHost().getTile();
final World w = te.getWorld();
final AEPartLocation side = this.getSide();
final BlockPos pos = te.getPos().offset(side.getFacing());
@@ -118,7 +118,7 @@ public class FluidFormationPlanePart extends AbstractFormationPlanePart<IAEFluid
if (this.canReplace(w, state, pos)) {
if (type == Actionable.MODULATE) {
final FluidStack fs = input.getFluidStack();
final FluidVolume fs = input.getFluidStack();
fs.setAmount(FluidAttributes.BUCKET_VOLUME);
final FluidTank tank = new FluidTank(FluidAttributes.BUCKET_VOLUME);
@@ -25,7 +25,7 @@ import java.util.Iterator;
import java.util.List;
import java.util.Map;
import net.minecraftforge.fluids.FluidStack;
import alexiil.mc.lib.attributes.fluid.volume.FluidVolume;
import net.minecraftforge.fluids.capability.IFluidHandler;
import appeng.api.AEApi;
@@ -67,7 +67,7 @@ public class FluidHandlerAdapter implements IMEInventory<IAEFluidStack>, IBaseMo
@Override
public IAEFluidStack injectItems(IAEFluidStack input, Actionable type, IActionSource src) {
FluidStack fluidStack = input.getFluidStack();
FluidVolume fluidStack = input.getFluidStack();
// Insert
int wasFillled = this.fluidHandler.fill(fluidStack, type.getFluidAction());
@@ -92,10 +92,10 @@ public class FluidHandlerAdapter implements IMEInventory<IAEFluidStack>, IBaseMo
@Override
public IAEFluidStack extractItems(IAEFluidStack request, Actionable mode, IActionSource src) {
FluidStack requestedFluidStack = request.getFluidStack();
FluidVolume requestedFluidStack = request.getFluidStack();
// Drain the fluid from the tank
FluidStack gathered = this.fluidHandler.drain(requestedFluidStack, mode.getFluidAction());
FluidVolume gathered = this.fluidHandler.drain(requestedFluidStack, mode.getFluidAction());
if (gathered.isEmpty()) {
// If nothing was pulled from the tank, return null
return null;
@@ -181,7 +181,7 @@ public class FluidHandlerAdapter implements IMEInventory<IAEFluidStack>, IBaseMo
for (int slot = 0; slot < slots; slot++) {
// Save the old stuff
final IAEFluidStack oldAEFS = this.cachedAeStacks[slot];
final FluidStack newFS = fluidHandler.getFluidInTank(slot);
final FluidVolume newFS = fluidHandler.getFluidInTank(slot);
this.handlePossibleSlotChanges(slot, oldAEFS, newFS, changes);
}
@@ -208,7 +208,7 @@ public class FluidHandlerAdapter implements IMEInventory<IAEFluidStack>, IBaseMo
return out;
}
private void handlePossibleSlotChanges(int slot, IAEFluidStack oldAeFS, FluidStack newFS,
private void handlePossibleSlotChanges(int slot, IAEFluidStack oldAeFS, FluidVolume newFS,
List<IAEFluidStack> changes) {
if (oldAeFS != null && oldAeFS.getFluidStack().isFluidEqual(newFS)) {
this.handleStackSizeChanged(slot, oldAeFS, newFS, changes);
@@ -217,7 +217,7 @@ public class FluidHandlerAdapter implements IMEInventory<IAEFluidStack>, IBaseMo
}
}
private void handleStackSizeChanged(int slot, IAEFluidStack oldAeFS, FluidStack newFS,
private void handleStackSizeChanged(int slot, IAEFluidStack oldAeFS, FluidVolume newFS,
List<IAEFluidStack> changes) {
// Still the same fluid, but amount might have changed
final long diff = newFS.getAmount() - oldAeFS.getStackSize();
@@ -234,7 +234,7 @@ public class FluidHandlerAdapter implements IMEInventory<IAEFluidStack>, IBaseMo
}
}
private void handleFluidChanged(int slot, IAEFluidStack oldAeFS, FluidStack newFS,
private void handleFluidChanged(int slot, IAEFluidStack oldAeFS, FluidVolume newFS,
List<IAEFluidStack> changes) {
// Completely different fluid
this.cachedAeStacks[slot] = AEFluidStack.fromFluidStack(newFS);
@@ -20,11 +20,11 @@ package appeng.fluids.parts;
import javax.annotation.Nonnull;
import alexiil.mc.lib.attributes.fluid.volume.FluidVolume;
import net.minecraft.block.entity.BlockEntity;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.Identifier;
import net.minecraftforge.common.util.LazyOptional;
import net.minecraftforge.fluids.FluidStack;
import net.minecraftforge.fluids.capability.CapabilityFluidHandler;
import net.minecraftforge.fluids.capability.IFluidHandler;
import net.minecraftforge.fluids.capability.IFluidHandler.FluidAction;
@@ -56,16 +56,16 @@ import appeng.parts.PartModel;
* @since rv6 30/04/2018
*/
public class FluidImportBusPart extends SharedFluidBusPart {
public static final ResourceLocation MODEL_BASE = new ResourceLocation(AppEng.MOD_ID, "part/fluid_import_bus_base");
public static final Identifier MODEL_BASE = new Identifier(AppEng.MOD_ID, "part/fluid_import_bus_base");
@PartModels
public static final IPartModel MODELS_OFF = new PartModel(MODEL_BASE,
new ResourceLocation(AppEng.MOD_ID, "part/fluid_import_bus_off"));
new Identifier(AppEng.MOD_ID, "part/fluid_import_bus_off"));
@PartModels
public static final IPartModel MODELS_ON = new PartModel(MODEL_BASE,
new ResourceLocation(AppEng.MOD_ID, "part/fluid_import_bus_on"));
new Identifier(AppEng.MOD_ID, "part/fluid_import_bus_on"));
@PartModels
public static final IPartModel MODELS_HAS_CHANNEL = new PartModel(MODEL_BASE,
new ResourceLocation(AppEng.MOD_ID, "part/fluid_import_bus_has_channel"));
new Identifier(AppEng.MOD_ID, "part/fluid_import_bus_has_channel"));
private final IActionSource source;
@@ -95,7 +95,7 @@ public class FluidImportBusPart extends SharedFluidBusPart {
return TickRateModulation.IDLE;
}
final TileEntity te = this.getConnectedTE();
final BlockEntity te = this.getConnectedTE();
LazyOptional<IFluidHandler> fhOpt = LazyOptional.empty();
if (te != null) {
te.getCapability(CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY, this.getSide().getFacing().getOpposite());
@@ -106,7 +106,7 @@ public class FluidImportBusPart extends SharedFluidBusPart {
final IMEMonitor<IAEFluidStack> inv = this.getProxy().getStorage().getInventory(this.getChannel());
if (fh != null) {
final FluidStack fluidStack = fh.drain(this.calculateAmountToSend(), FluidAction.SIMULATE);
final FluidVolume fluidStack = fh.drain(this.calculateAmountToSend(), FluidAction.SIMULATE);
if (this.filterEnabled() && !this.isInFilter(fluidStack)) {
return TickRateModulation.SLOWER;
@@ -142,7 +142,7 @@ public class FluidImportBusPart extends SharedFluidBusPart {
return this.getProxy().isActive();
}
private boolean isInFilter(FluidStack fluid) {
private boolean isInFilter(FluidVolume fluid) {
for (int i = 0; i < this.getConfig().getSlots(); i++) {
final IAEFluidStack stack = this.getConfig().getFluidInSlot(i);
if (stack != null && stack.equals(fluid)) {
@@ -24,14 +24,14 @@ import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.inventory.container.ContainerType;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.CompoundTag;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.block.entity.BlockEntity;
import net.minecraft.util.math.Direction;
import net.minecraft.util.Hand;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.Identifier;
import net.minecraft.util.math.Vec3d;
import net.minecraftforge.common.capabilities.Capability;
import net.minecraftforge.common.util.LazyOptional;
import net.minecraftforge.items.IItemHandler;
import alexiil.mc.lib.attributes.item.ItemTransferable;
import appeng.api.AEApi;
import appeng.api.config.Upgrades;
@@ -65,19 +65,19 @@ import appeng.util.Platform;
public class FluidInterfacePart extends BasicStatePart
implements IGridTickable, IStorageMonitorable, IFluidInterfaceHost, IPriorityHost {
public static final ResourceLocation MODEL_BASE = new ResourceLocation(AppEng.MOD_ID, "part/fluid_interface_base");
public static final Identifier MODEL_BASE = new Identifier(AppEng.MOD_ID, "part/fluid_interface_base");
@PartModels
public static final PartModel MODELS_OFF = new PartModel(MODEL_BASE,
new ResourceLocation(AppEng.MOD_ID, "part/fluid_interface_off"));
new Identifier(AppEng.MOD_ID, "part/fluid_interface_off"));
@PartModels
public static final PartModel MODELS_ON = new PartModel(MODEL_BASE,
new ResourceLocation(AppEng.MOD_ID, "part/fluid_interface_on"));
new Identifier(AppEng.MOD_ID, "part/fluid_interface_on"));
@PartModels
public static final PartModel MODELS_HAS_CHANNEL = new PartModel(MODEL_BASE,
new ResourceLocation(AppEng.MOD_ID, "part/fluid_interface_has_channel"));
new Identifier(AppEng.MOD_ID, "part/fluid_interface_has_channel"));
private final DualityFluidInterface duality = new DualityFluidInterface(this.getProxy(), this);
@@ -159,7 +159,7 @@ public class FluidInterfacePart extends BasicStatePart
}
@Override
public TileEntity getTileEntity() {
public BlockEntity getTileEntity() {
return super.getHost().getTile();
}
@@ -200,7 +200,7 @@ public class FluidInterfacePart extends BasicStatePart
}
@Override
public IItemHandler getInventoryByName(String name) {
public ItemTransferable getInventoryByName(String name) {
return this.duality.getInventoryByName(name);
}
@@ -3,13 +3,13 @@ package appeng.fluids.parts;
import java.util.Random;
import net.minecraft.block.entity.BlockEntity;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.CompoundTag;
import net.minecraft.particles.RedstoneParticleData;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.Hand;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.Identifier;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.Vec3d;
import net.minecraft.world.World;
@@ -53,19 +53,19 @@ import appeng.util.Platform;
public class FluidLevelEmitterPart extends UpgradeablePart
implements IStackWatcherHost, IConfigManagerHost, IAEFluidInventory, IMEMonitorHandlerReceiver<IAEFluidStack> {
@PartModels
public static final ResourceLocation MODEL_BASE_OFF = new ResourceLocation(AppEng.MOD_ID,
public static final Identifier MODEL_BASE_OFF = new Identifier(AppEng.MOD_ID,
"part/level_emitter_base_off");
@PartModels
public static final ResourceLocation MODEL_BASE_ON = new ResourceLocation(AppEng.MOD_ID,
public static final Identifier MODEL_BASE_ON = new Identifier(AppEng.MOD_ID,
"part/level_emitter_base_on");
@PartModels
public static final ResourceLocation MODEL_STATUS_OFF = new ResourceLocation(AppEng.MOD_ID,
public static final Identifier MODEL_STATUS_OFF = new Identifier(AppEng.MOD_ID,
"part/level_emitter_status_off");
@PartModels
public static final ResourceLocation MODEL_STATUS_ON = new ResourceLocation(AppEng.MOD_ID,
public static final Identifier MODEL_STATUS_ON = new Identifier(AppEng.MOD_ID,
"part/level_emitter_status_on");
@PartModels
public static final ResourceLocation MODEL_STATUS_HAS_CHANNEL = new ResourceLocation(AppEng.MOD_ID,
public static final Identifier MODEL_STATUS_HAS_CHANNEL = new Identifier(AppEng.MOD_ID,
"part/level_emitter_status_has_channel");
public static final PartModel MODEL_OFF_OFF = new PartModel(MODEL_BASE_OFF, MODEL_STATUS_OFF);
@@ -181,7 +181,7 @@ public class FluidLevelEmitterPart extends UpgradeablePart
final boolean isOn = this.isLevelEmitterOn();
if (this.prevState != isOn) {
this.getHost().markForUpdate();
final TileEntity te = this.getHost().getTile();
final BlockEntity te = this.getHost().getTile();
this.prevState = isOn;
Platform.notifyBlocksOfNeighbors(te.getWorld(), te.getPos());
Platform.notifyBlocksOfNeighbors(te.getWorld(), te.getPos().offset(this.getSide().getFacing()));
@@ -24,14 +24,14 @@ import java.util.Objects;
import javax.annotation.Nonnull;
import net.minecraft.block.entity.BlockEntity;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.inventory.container.ContainerType;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.CompoundTag;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.Identifier;
import net.minecraft.util.math.Direction;
import net.minecraft.util.Hand;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.math.Vec3d;
import net.minecraftforge.common.util.LazyOptional;
import net.minecraftforge.fluids.capability.CapabilityFluidHandler;
@@ -91,17 +91,17 @@ import appeng.util.prioritylist.PrecisePriorityList;
*/
public class FluidStorageBusPart extends SharedStorageBusPart
implements IMEMonitorHandlerReceiver<IAEFluidStack>, IAEFluidInventory {
public static final ResourceLocation MODEL_BASE = new ResourceLocation(AppEng.MOD_ID,
public static final Identifier MODEL_BASE = new Identifier(AppEng.MOD_ID,
"part/fluid_storage_bus_base");
@PartModels
public static final IPartModel MODELS_OFF = new PartModel(MODEL_BASE,
new ResourceLocation(AppEng.MOD_ID, "part/fluid_storage_bus_off"));
new Identifier(AppEng.MOD_ID, "part/fluid_storage_bus_off"));
@PartModels
public static final IPartModel MODELS_ON = new PartModel(MODEL_BASE,
new ResourceLocation(AppEng.MOD_ID, "part/fluid_storage_bus_on"));
new Identifier(AppEng.MOD_ID, "part/fluid_storage_bus_on"));
@PartModels
public static final IPartModel MODELS_HAS_CHANNEL = new PartModel(MODEL_BASE,
new ResourceLocation(AppEng.MOD_ID, "part/fluid_storage_bus_has_channel"));
new Identifier(AppEng.MOD_ID, "part/fluid_storage_bus_has_channel"));
private final IActionSource source;
private final AEFluidInventory config = new AEFluidInventory(this, 63);
@@ -119,7 +119,7 @@ public class FluidStorageBusPart extends SharedStorageBusPart
this.source = new MachineSource(this);
}
private IMEInventory<IAEFluidStack> getInventoryWrapper(TileEntity target) {
private IMEInventory<IAEFluidStack> getInventoryWrapper(BlockEntity target) {
Direction targetSide = this.getSide().getFacing().getOpposite();
// Prioritize a handler to directly link to another ME network
IStorageMonitorableAccessor accessor = target
@@ -265,8 +265,8 @@ public class FluidStorageBusPart extends SharedStorageBusPart
final boolean wasSleeping = this.monitor == null;
this.cached = true;
final TileEntity self = this.getHost().getTile();
final TileEntity target = self.getWorld().getTileEntity(self.getPos().offset(this.getSide().getFacing()));
final BlockEntity self = this.getHost().getTile();
final BlockEntity target = self.getWorld().getTileEntity(self.getPos().offset(this.getSide().getFacing()));
final int newHandlerHash = this.createHandlerHash(target);
if (newHandlerHash != 0 && newHandlerHash == this.handlerHash) {
@@ -342,7 +342,7 @@ public class FluidStorageBusPart extends SharedStorageBusPart
return this.handler;
}
private void checkInterfaceVsStorageBus(final TileEntity target, final AEPartLocation side) {
private void checkInterfaceVsStorageBus(final BlockEntity target, final AEPartLocation side) {
IInterfaceHost achievement = null;
if (target instanceof IInterfaceHost) {
@@ -377,7 +377,7 @@ public class FluidStorageBusPart extends SharedStorageBusPart
return super.getCellArray(channel);
}
private int createHandlerHash(TileEntity target) {
private int createHandlerHash(BlockEntity target) {
if (target == null) {
return 0;
}
@@ -21,7 +21,7 @@ package appeng.fluids.parts;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.inventory.container.ContainerType;
import net.minecraft.item.ItemStack;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.Identifier;
import appeng.api.parts.IPartModel;
import appeng.core.AppEng;
@@ -38,9 +38,9 @@ import appeng.parts.reporting.AbstractTerminalPart;
public class FluidTerminalPart extends AbstractTerminalPart {
@PartModels
public static final ResourceLocation MODEL_OFF = new ResourceLocation(AppEng.MOD_ID, "part/fluid_terminal_off");
public static final Identifier MODEL_OFF = new Identifier(AppEng.MOD_ID, "part/fluid_terminal_off");
@PartModels
public static final ResourceLocation MODEL_ON = new ResourceLocation(AppEng.MOD_ID, "part/fluid_terminal_on");
public static final Identifier MODEL_ON = new Identifier(AppEng.MOD_ID, "part/fluid_terminal_on");
public static final IPartModel MODELS_OFF = new PartModel(MODEL_BASE, MODEL_OFF, MODEL_STATUS_OFF);
public static final IPartModel MODELS_ON = new PartModel(MODEL_BASE, MODEL_ON, MODEL_STATUS_ON);
@@ -18,10 +18,10 @@
package appeng.fluids.parts;
import net.minecraft.block.entity.BlockEntity;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.CompoundTag;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.Hand;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.ChunkPos;
@@ -105,12 +105,12 @@ public abstract class SharedFluidBusPart extends UpgradeablePart implements IGri
bch.addBox(4, 4, 14, 12, 12, 16);
}
protected TileEntity getConnectedTE() {
TileEntity self = this.getHost().getTile();
protected BlockEntity getConnectedTE() {
BlockEntity self = this.getHost().getTile();
return this.getTileEntity(self, self.getPos().offset(this.getSide().getFacing()));
}
private TileEntity getTileEntity(final TileEntity self, final BlockPos pos) {
private BlockEntity getTileEntity(final BlockEntity self, final BlockPos pos) {
final World w = self.getWorld();
if (w.getChunkProvider().isChunkLoaded(new ChunkPos(pos))) {
@@ -18,9 +18,9 @@
package appeng.fluids.registries;
import net.minecraft.block.entity.BlockEntity;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import appeng.api.AEApi;
import appeng.api.implementations.tiles.IChestOrDrive;
@@ -45,6 +45,6 @@ public class BasicFluidCellGuiHandler implements ICellGuiHandler {
public void openChestGui(final PlayerEntity player, final IChestOrDrive chest, final ICellHandler cellHandler,
final IMEInventoryHandler inv, final ItemStack is, final IStorageChannel chan) {
ContainerOpener.openContainer(FluidTerminalContainer.TYPE, player,
ContainerLocator.forTileEntitySide((TileEntity) chest, chest.getUp()));
ContainerLocator.forTileEntitySide((BlockEntity) chest, chest.getUp()));
}
}
@@ -22,15 +22,15 @@ import java.util.EnumSet;
import javax.annotation.Nullable;
import alexiil.mc.lib.attributes.item.ItemTransferable;
import net.minecraft.inventory.container.ContainerType;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.CompoundTag;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.tileentity.TileEntityType;
import net.minecraft.block.entity.BlockEntity;
import net.minecraft.block.entity.BlockEntityType;
import net.minecraft.util.math.Direction;
import net.minecraftforge.common.capabilities.Capability;
import net.minecraftforge.common.util.LazyOptional;
import net.minecraftforge.items.IItemHandler;
import appeng.api.AEApi;
import appeng.api.config.Upgrades;
@@ -55,7 +55,7 @@ public class FluidInterfaceTileEntity extends AENetworkTileEntity
implements IGridTickable, IFluidInterfaceHost, IPriorityHost {
private final DualityFluidInterface duality = new DualityFluidInterface(this.getProxy(), this);
public FluidInterfaceTileEntity(TileEntityType<?> tileEntityTypeIn) {
public FluidInterfaceTileEntity(BlockEntityType<?> tileEntityTypeIn) {
super(tileEntityTypeIn);
}
@@ -85,7 +85,7 @@ public class FluidInterfaceTileEntity extends AENetworkTileEntity
}
@Override
public TileEntity getTileEntity() {
public BlockEntity getTileEntity() {
return this;
}
@@ -152,7 +152,7 @@ public class FluidInterfaceTileEntity extends AENetworkTileEntity
}
@Override
public IItemHandler getInventoryByName(String name) {
public ItemTransferable getInventoryByName(String name) {
return this.duality.getInventoryByName(name);
}
@@ -5,8 +5,8 @@ import java.util.Objects;
import javax.annotation.Nonnull;
import alexiil.mc.lib.attributes.fluid.volume.FluidVolume;
import net.minecraft.nbt.CompoundTag;
import net.minecraftforge.fluids.FluidStack;
import appeng.api.storage.data.IAEFluidStack;
import appeng.core.AELog;
@@ -74,11 +74,11 @@ public class AEFluidInventory implements IAEFluidTank {
@Nonnull
@Override
public FluidStack getFluidInTank(int tank) {
public FluidVolume getFluidInTank(int tank) {
if (tank < 0 || tank >= fluids.length) {
return FluidStack.EMPTY;
return FluidVolume.EMPTY;
}
return fluids[tank] == null ? FluidStack.EMPTY : fluids[tank].getFluidStack();
return fluids[tank] == null ? FluidVolume.EMPTY : fluids[tank].getFluidStack();
}
@Override
@@ -87,11 +87,11 @@ public class AEFluidInventory implements IAEFluidTank {
}
@Override
public boolean isFluidValid(int tank, @Nonnull FluidStack stack) {
return stack != FluidStack.EMPTY;
public boolean isFluidValid(int tank, @Nonnull FluidVolume stack) {
return stack != FluidVolume.EMPTY;
}
public int fill(final int slot, final FluidStack resource, final boolean doFill) {
public int fill(final int slot, final FluidVolume resource, final boolean doFill) {
if (resource.isEmpty() || resource.getAmount() <= 0) {
return 0;
}
@@ -123,7 +123,7 @@ public class AEFluidInventory implements IAEFluidTank {
}
@Override
public int fill(FluidStack resource, FluidAction action) {
public int fill(FluidVolume resource, FluidAction action) {
if (resource.isEmpty() || resource.getAmount() <= 0) {
return 0;
}
@@ -160,16 +160,16 @@ public class AEFluidInventory implements IAEFluidTank {
}
@Override
public FluidStack drain(final FluidStack fluid, final FluidAction action) {
public FluidVolume drain(final FluidVolume fluid, final FluidAction action) {
if (fluid.isEmpty() || fluid.getAmount() <= 0) {
return FluidStack.EMPTY;
return FluidVolume.EMPTY;
}
final FluidStack resource = fluid.copy();
final FluidVolume resource = fluid.copy();
FluidStack totalDrained = FluidStack.EMPTY;
FluidVolume totalDrained = FluidVolume.EMPTY;
for (int slot = 0; slot < this.getSlots(); ++slot) {
FluidStack drain = this.drain(slot, resource, action == FluidAction.EXECUTE);
FluidVolume drain = this.drain(slot, resource, action == FluidAction.EXECUTE);
if (drain != null) {
if (totalDrained.isEmpty()) {
totalDrained = drain;
@@ -187,12 +187,12 @@ public class AEFluidInventory implements IAEFluidTank {
}
@Override
public FluidStack drain(final int maxDrain, final FluidAction action) {
public FluidVolume drain(final int maxDrain, final FluidAction action) {
if (maxDrain == 0) {
return FluidStack.EMPTY;
return FluidVolume.EMPTY;
}
FluidStack totalDrained = FluidStack.EMPTY;
FluidVolume totalDrained = FluidVolume.EMPTY;
int toDrain = maxDrain;
for (int slot = 0; slot < this.getSlots(); ++slot) {
@@ -202,9 +202,9 @@ public class AEFluidInventory implements IAEFluidTank {
toDrain -= totalDrained.getAmount();
}
} else {
FluidStack copy = totalDrained.copy();
FluidVolume copy = totalDrained.copy();
copy.setAmount(toDrain);
FluidStack drain = this.drain(slot, copy, action == FluidAction.EXECUTE);
FluidVolume drain = this.drain(slot, copy, action == FluidAction.EXECUTE);
if (drain != null) {
totalDrained.setAmount(totalDrained.getAmount() + drain.getAmount());
toDrain -= drain.getAmount();
@@ -218,7 +218,7 @@ public class AEFluidInventory implements IAEFluidTank {
return totalDrained;
}
private int indexOfFluid(FluidStack resource) {
private int indexOfFluid(FluidVolume resource) {
for (int slot = 0; slot < fluids.length; slot++) {
if (fluids[slot] != null && fluids[slot].getFluidStack().isFluidEqual(resource)) {
return slot;
@@ -236,7 +236,7 @@ public class AEFluidInventory implements IAEFluidTank {
return -1;
}
public FluidStack drain(final int slot, final FluidStack resource, final boolean doDrain) {
public FluidVolume drain(final int slot, final FluidVolume resource, final boolean doDrain) {
final IAEFluidStack fluid = this.fluids[slot];
if (resource.isEmpty() || fluid == null || !fluid.getFluidStack().equals(resource)) {
return null;
@@ -244,7 +244,7 @@ public class AEFluidInventory implements IAEFluidTank {
return this.drain(slot, resource.getAmount(), doDrain);
}
public FluidStack drain(final int slot, final int maxDrain, boolean doDrain) {
public FluidVolume drain(final int slot, final int maxDrain, boolean doDrain) {
final IAEFluidStack fluid = this.fluids[slot];
if (fluid == null || maxDrain <= 0) {
return null;
@@ -255,7 +255,7 @@ public class AEFluidInventory implements IAEFluidTank {
drained = (int) fluid.getStackSize();
}
FluidStack stack = new FluidStack(fluid.getFluid(), drained);
FluidVolume stack = new FluidVolume(fluid.getFluid(), drained);
if (doDrain) {
fluid.setStackSize(fluid.getStackSize() - drained);
if (fluid.getStackSize() <= 0) {
@@ -21,17 +21,16 @@ package appeng.fluids.util;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
import alexiil.mc.lib.attributes.fluid.volume.FluidVolume;
import com.google.common.base.Preconditions;
import net.minecraft.fluid.EmptyFluid;
import net.minecraft.fluid.Fluid;
import net.minecraft.fluid.Fluids;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.CompoundTag;
import net.minecraft.network.PacketBuffer;
import net.minecraft.util.ResourceLocation;
import net.minecraft.network.PacketByteBuf;
import net.minecraft.util.Identifier;
import net.minecraftforge.common.util.Constants;
import net.minecraftforge.fluids.FluidStack;
import net.minecraftforge.registries.ForgeRegistries;
import appeng.api.AEApi;
@@ -77,7 +76,7 @@ public final class AEFluidStack extends AEStack<IAEFluidStack> implements IAEFlu
this.tagCompound = tag;
}
public static AEFluidStack fromFluidStack(final FluidStack input) {
public static AEFluidStack fromFluidStack(final FluidVolume input) {
if (input.isEmpty()) {
return null;
}
@@ -96,7 +95,7 @@ public final class AEFluidStack extends AEStack<IAEFluidStack> implements IAEFlu
}
public static IAEFluidStack fromNBT(final CompoundTag data) {
ResourceLocation fluidId = new ResourceLocation(data.getString(NBT_FLUID_ID));
Identifier fluidId = new Identifier(data.getString(NBT_FLUID_ID));
Fluid fluid = ForgeRegistries.FLUIDS.getValue(fluidId);
if (fluid == null || fluid == Fluids.EMPTY) {
return null;
@@ -196,8 +195,8 @@ public final class AEFluidStack extends AEStack<IAEFluidStack> implements IAEFlu
if (other instanceof AEFluidStack) {
final AEFluidStack is = (AEFluidStack) other;
return is.fluid == this.fluid && Platform.itemComparisons().isNbtTagEqual(this.tagCompound, is.tagCompound);
} else if (other instanceof FluidStack) {
final FluidStack is = (FluidStack) other;
} else if (other instanceof FluidVolume) {
final FluidVolume is = (FluidVolume) other;
return is.getFluid() == this.fluid
&& Platform.itemComparisons().isNbtTagEqual(this.tagCompound, is.getTag());
}
@@ -215,9 +214,9 @@ public final class AEFluidStack extends AEStack<IAEFluidStack> implements IAEFlu
}
@Override
public FluidStack getFluidStack() {
public FluidVolume getFluidStack() {
final int amount = (int) Math.min(Integer.MAX_VALUE, this.getStackSize());
final FluidStack is = new FluidStack(this.fluid, amount, this.tagCompound);
final FluidVolume is = new FluidVolume(this.fluid, amount, this.tagCompound);
return is;
}
@@ -238,9 +237,9 @@ public final class AEFluidStack extends AEStack<IAEFluidStack> implements IAEFlu
return ItemStack.EMPTY;
}
public static IAEFluidStack fromPacket(final PacketBuffer buffer) {
public static IAEFluidStack fromPacket(final PacketByteBuf buffer) {
final boolean isCraftable = buffer.readBoolean();
final FluidStack fluidStack = buffer.readFluidStack();
final FluidVolume fluidStack = buffer.readFluidStack();
final long stackSize = buffer.readVarLong();
final long countRequestable = buffer.readVarLong();
@@ -257,7 +256,7 @@ public final class AEFluidStack extends AEStack<IAEFluidStack> implements IAEFlu
}
@Override
public void writeToPacket(final PacketBuffer buffer) {
public void writeToPacket(final PacketByteBuf buffer) {
buffer.writeBoolean(this.isCraftable());
buffer.writeFluidStack(this.getFluidStack());
buffer.writeVarLong(this.getStackSize());