diff --git a/build.gradle b/build.gradle index 5237a43..0f41883 100644 --- a/build.gradle +++ b/build.gradle @@ -18,7 +18,7 @@ apply plugin: 'net.minecraftforge.gradle' apply plugin: 'eclipse' apply plugin: 'maven-publish' -version = '1.16.5-0.1.27-T' + System.currentTimeMillis() +version = '1.16.5-0.1.28-T' + System.currentTimeMillis() group = 'com.yourname.modid' // http://maven.apache.org/guides/mini/guide-naming-conventions.html archivesBaseName = 'MasterfulMachinery' @@ -155,7 +155,7 @@ dependencies { compileOnly fg.deobf("mezz.jei:jei-${mc_version}:${jei_version}:api") // at runtime, use the full JEI jar runtimeOnly fg.deobf("mezz.jei:jei-${mc_version}:${jei_version}") - compileOnly fg.deobf('me.desht.pneumaticcraft:pneumaticcraft-repressurized:1.16.5-2.12.2-186'); + implementation fg.deobf('me.desht.pneumaticcraft:pneumaticcraft-repressurized:1.16.5-2.12.2-186'); // You may put jars on which you depend on in ./libs or you may define them like so.. // compile "some.group:artifact:version:classifier" // compile "some.group:artifact:version" diff --git a/src/main/java/com/ticticboooom/mods/mm/block/MachinePortBlock.java b/src/main/java/com/ticticboooom/mods/mm/block/MachinePortBlock.java index 51dd1d0..3a1d44f 100644 --- a/src/main/java/com/ticticboooom/mods/mm/block/MachinePortBlock.java +++ b/src/main/java/com/ticticboooom/mods/mm/block/MachinePortBlock.java @@ -14,9 +14,11 @@ import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntityType; import net.minecraft.util.ActionResultType; import net.minecraft.util.Hand; +import net.minecraft.util.ResourceLocation; import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.BlockRayTraceResult; import net.minecraft.world.IBlockReader; +import net.minecraft.world.IWorldReader; import net.minecraft.world.World; import net.minecraftforge.fml.RegistryObject; import net.minecraftforge.fml.network.NetworkHooks; @@ -32,13 +34,16 @@ public class MachinePortBlock extends Block { private String controllerId; @Getter private String textureOverride; + @Getter + private ResourceLocation overlay; - public MachinePortBlock(RegistryObject> type, String name, String controllerId, String textureOverride) { + public MachinePortBlock(RegistryObject> type, String name, String controllerId, String textureOverride, ResourceLocation overlay) { super(AbstractBlock.Properties.of(Material.METAL)); this.type = type; this.langName = name; this.controllerId = controllerId; this.textureOverride = textureOverride; + this.overlay = overlay; } @Override @@ -75,4 +80,14 @@ public class MachinePortBlock extends Block { } super.onRemove(state, world, pos, state1, p_196243_5_); } + + + @Override + public void neighborChanged(BlockState p_220069_1_, World world, BlockPos pos, Block p_220069_4_, BlockPos changedPos, boolean p_220069_6_) { + super.neighborChanged(p_220069_1_, world, pos, p_220069_4_, changedPos, p_220069_6_); + TileEntity tile = world.getBlockEntity(pos); + if (tile instanceof MachinePortBlockEntity){ + ((MachinePortBlockEntity) tile).getStorage().neighborChanged(); + } + } } diff --git a/src/main/java/com/ticticboooom/mods/mm/block/tile/MachinePortBlockEntity.java b/src/main/java/com/ticticboooom/mods/mm/block/tile/MachinePortBlockEntity.java index 6299410..ee78824 100644 --- a/src/main/java/com/ticticboooom/mods/mm/block/tile/MachinePortBlockEntity.java +++ b/src/main/java/com/ticticboooom/mods/mm/block/tile/MachinePortBlockEntity.java @@ -71,6 +71,8 @@ public class MachinePortBlockEntity extends UpdatableTile implements ITickableTi @Override public void tick() { + this.getStorage().tick(this); update(); } + } diff --git a/src/main/java/com/ticticboooom/mods/mm/datagen/gen/MMBlockStateProvider.java b/src/main/java/com/ticticboooom/mods/mm/datagen/gen/MMBlockStateProvider.java index f9deaa9..8a3fd7b 100644 --- a/src/main/java/com/ticticboooom/mods/mm/datagen/gen/MMBlockStateProvider.java +++ b/src/main/java/com/ticticboooom/mods/mm/datagen/gen/MMBlockStateProvider.java @@ -42,11 +42,11 @@ public class MMBlockStateProvider extends BlockStateProvider { } for (RegistryObject port : MMLoader.IPORT_BLOCKS) { - dynamicBlock(port.getId(), port.get().getTextureOverride() != null ? RLUtils.toRL(port.get().getTextureOverride()) : BASE_TEXTURE, IPORT_TEXTURE); + dynamicBlock(port.getId(), port.get().getTextureOverride() != null ? RLUtils.toRL(port.get().getTextureOverride()) : BASE_TEXTURE, port.get().getOverlay()); simpleBlock(port.get(), new ModelFile.UncheckedModelFile(new ResourceLocation(MM.ID, "block/" + port.getId().getPath()))); } for (RegistryObject port : MMLoader.OPORT_BLOCKS) { - dynamicBlock(port.getId(), port.get().getTextureOverride() != null ? RLUtils.toRL(port.get().getTextureOverride()) : BASE_TEXTURE, OPORT_TEXTURE); + dynamicBlock(port.getId(), port.get().getTextureOverride() != null ? RLUtils.toRL(port.get().getTextureOverride()) : BASE_TEXTURE, port.get().getOverlay()); simpleBlock(port.get(), new ModelFile.UncheckedModelFile(new ResourceLocation(MM.ID, "block/" + port.getId().getPath()))); } diff --git a/src/main/java/com/ticticboooom/mods/mm/ports/parser/EnergyPortParser.java b/src/main/java/com/ticticboooom/mods/mm/ports/parser/EnergyPortParser.java index 1f4b999..50095f4 100644 --- a/src/main/java/com/ticticboooom/mods/mm/ports/parser/EnergyPortParser.java +++ b/src/main/java/com/ticticboooom/mods/mm/ports/parser/EnergyPortParser.java @@ -5,6 +5,7 @@ import com.google.gson.JsonObject; import com.mojang.datafixers.util.Pair; import com.mojang.serialization.DataResult; import com.mojang.serialization.JsonOps; +import com.ticticboooom.mods.mm.MM; import com.ticticboooom.mods.mm.ports.state.EnergyPortState; import com.ticticboooom.mods.mm.ports.state.PortState; import com.ticticboooom.mods.mm.ports.storage.EnergyPortStorage; @@ -12,6 +13,7 @@ import com.ticticboooom.mods.mm.ports.storage.PortStorage; import lombok.SneakyThrows; import mezz.jei.api.ingredients.IIngredients; import net.minecraft.network.PacketBuffer; +import net.minecraft.util.ResourceLocation; import java.util.List; import java.util.function.Supplier; @@ -38,6 +40,16 @@ public class EnergyPortParser implements IPortFactory { public void setIngredients(IIngredients ingredients, List stacks, boolean input) { } + @Override + public ResourceLocation getInputOverlay() { + return new ResourceLocation(MM.ID, "block/base_ports/energy_input_cutout"); + } + + @Override + public ResourceLocation getOutputOverlay() { + return new ResourceLocation(MM.ID, "block/base_ports/energy_output_cutout"); + } + @Override public PortState createState(JsonObject obj) { DataResult> apply = JsonOps.INSTANCE.withDecoder(EnergyPortState.CODEC).apply(obj); diff --git a/src/main/java/com/ticticboooom/mods/mm/ports/parser/FluidPortParser.java b/src/main/java/com/ticticboooom/mods/mm/ports/parser/FluidPortParser.java index 490c84b..a992379 100644 --- a/src/main/java/com/ticticboooom/mods/mm/ports/parser/FluidPortParser.java +++ b/src/main/java/com/ticticboooom/mods/mm/ports/parser/FluidPortParser.java @@ -5,6 +5,7 @@ import com.google.gson.JsonObject; import com.mojang.datafixers.util.Pair; import com.mojang.serialization.DataResult; import com.mojang.serialization.JsonOps; +import com.ticticboooom.mods.mm.MM; import com.ticticboooom.mods.mm.ports.state.FluidPortState; import com.ticticboooom.mods.mm.ports.state.PortState; import com.ticticboooom.mods.mm.ports.storage.FluidPortStorage; @@ -13,6 +14,7 @@ import lombok.SneakyThrows; import mezz.jei.api.constants.VanillaTypes; import mezz.jei.api.ingredients.IIngredients; import net.minecraft.network.PacketBuffer; +import net.minecraft.util.ResourceLocation; import net.minecraftforge.fluids.FluidStack; import java.util.List; @@ -53,4 +55,14 @@ public class FluidPortParser implements IPortFactory { public PortState createState(PacketBuffer buf) { return buf.readWithCodec(FluidPortState.CODEC); } + + @Override + public ResourceLocation getInputOverlay() { + return new ResourceLocation(MM.ID, "block/base_ports/fluid_input_cutout"); + } + + @Override + public ResourceLocation getOutputOverlay() { + return new ResourceLocation(MM.ID, "block/base_ports/fluid_output_cutout"); + } } diff --git a/src/main/java/com/ticticboooom/mods/mm/ports/parser/IPortFactory.java b/src/main/java/com/ticticboooom/mods/mm/ports/parser/IPortFactory.java index 09d409c..f01ca02 100644 --- a/src/main/java/com/ticticboooom/mods/mm/ports/parser/IPortFactory.java +++ b/src/main/java/com/ticticboooom/mods/mm/ports/parser/IPortFactory.java @@ -6,6 +6,7 @@ import com.ticticboooom.mods.mm.ports.storage.PortStorage; import mezz.jei.api.ingredients.IIngredientType; import mezz.jei.api.ingredients.IIngredients; import net.minecraft.network.PacketBuffer; +import net.minecraft.util.ResourceLocation; import java.util.HashMap; import java.util.List; @@ -17,4 +18,6 @@ public interface IPortFactory { Supplier createStorage(JsonObject obj); void write(PacketBuffer buf, PortState state); void setIngredients(IIngredients ingredients, List stacks, boolean input); + ResourceLocation getInputOverlay(); + ResourceLocation getOutputOverlay(); } diff --git a/src/main/java/com/ticticboooom/mods/mm/ports/parser/ItemPortParser.java b/src/main/java/com/ticticboooom/mods/mm/ports/parser/ItemPortParser.java index a953a7d..55681c7 100644 --- a/src/main/java/com/ticticboooom/mods/mm/ports/parser/ItemPortParser.java +++ b/src/main/java/com/ticticboooom/mods/mm/ports/parser/ItemPortParser.java @@ -5,6 +5,7 @@ import com.google.gson.JsonObject; import com.mojang.datafixers.util.Pair; import com.mojang.serialization.DataResult; import com.mojang.serialization.JsonOps; +import com.ticticboooom.mods.mm.MM; import com.ticticboooom.mods.mm.ports.state.PortState; import com.ticticboooom.mods.mm.ports.state.ItemPortState; import com.ticticboooom.mods.mm.ports.storage.PortStorage; @@ -14,6 +15,7 @@ import mezz.jei.api.constants.VanillaTypes; import mezz.jei.api.ingredients.IIngredients; import net.minecraft.item.ItemStack; import net.minecraft.network.PacketBuffer; +import net.minecraft.util.ResourceLocation; import net.minecraftforge.fluids.FluidStack; import java.util.List; @@ -56,4 +58,13 @@ public class ItemPortParser implements IPortFactory { public PortState createState(PacketBuffer buf) { return buf.readWithCodec(ItemPortState.CODEC); } + @Override + public ResourceLocation getInputOverlay() { + return new ResourceLocation(MM.ID, "block/base_ports/item_input_cutout"); + } + + @Override + public ResourceLocation getOutputOverlay() { + return new ResourceLocation(MM.ID, "block/base_ports/item_output_cutout"); + } } diff --git a/src/main/java/com/ticticboooom/mods/mm/ports/parser/MekGasPortParser.java b/src/main/java/com/ticticboooom/mods/mm/ports/parser/MekGasPortParser.java index 360e130..3b4a7ad 100644 --- a/src/main/java/com/ticticboooom/mods/mm/ports/parser/MekGasPortParser.java +++ b/src/main/java/com/ticticboooom/mods/mm/ports/parser/MekGasPortParser.java @@ -5,6 +5,7 @@ import com.google.gson.JsonObject; import com.mojang.datafixers.util.Pair; import com.mojang.serialization.DataResult; import com.mojang.serialization.JsonOps; +import com.ticticboooom.mods.mm.MM; import com.ticticboooom.mods.mm.ports.state.PortState; import com.ticticboooom.mods.mm.ports.state.MekGasPortState; import com.ticticboooom.mods.mm.ports.storage.PortStorage; @@ -16,6 +17,7 @@ import mezz.jei.api.constants.VanillaTypes; import mezz.jei.api.ingredients.IIngredients; import net.minecraft.item.ItemStack; import net.minecraft.network.PacketBuffer; +import net.minecraft.util.ResourceLocation; import java.util.List; import java.util.function.Supplier; @@ -56,4 +58,14 @@ public class MekGasPortParser implements IPortFactory { public void write(PacketBuffer buf, PortState state) { buf.writeWithCodec(MekGasPortState.CODEC, (MekGasPortState)state); } + + @Override + public ResourceLocation getInputOverlay() { + return new ResourceLocation(MM.ID, "block/compat_ports/mekanism_gas_cutout"); + } + + @Override + public ResourceLocation getOutputOverlay() { + return new ResourceLocation(MM.ID, "block/compat_ports/mekanism_gas_cutout"); + } } diff --git a/src/main/java/com/ticticboooom/mods/mm/ports/parser/MekSlurryPortParser.java b/src/main/java/com/ticticboooom/mods/mm/ports/parser/MekSlurryPortParser.java index 08af54b..57b2670 100644 --- a/src/main/java/com/ticticboooom/mods/mm/ports/parser/MekSlurryPortParser.java +++ b/src/main/java/com/ticticboooom/mods/mm/ports/parser/MekSlurryPortParser.java @@ -5,6 +5,7 @@ import com.google.gson.JsonObject; import com.mojang.datafixers.util.Pair; import com.mojang.serialization.DataResult; import com.mojang.serialization.JsonOps; +import com.ticticboooom.mods.mm.MM; import com.ticticboooom.mods.mm.ports.state.PortState; import com.ticticboooom.mods.mm.ports.state.MekSlurryPortState; import com.ticticboooom.mods.mm.ports.storage.PortStorage; @@ -16,6 +17,7 @@ import mezz.jei.api.constants.VanillaTypes; import mezz.jei.api.ingredients.IIngredients; import net.minecraft.item.ItemStack; import net.minecraft.network.PacketBuffer; +import net.minecraft.util.ResourceLocation; import java.util.List; import java.util.function.Supplier; @@ -56,4 +58,14 @@ public class MekSlurryPortParser implements IPortFactory { public void write(PacketBuffer buf, PortState state) { buf.writeWithCodec(MekSlurryPortState.CODEC, (MekSlurryPortState)state); } + + @Override + public ResourceLocation getInputOverlay() { + return new ResourceLocation(MM.ID, "block/compat_ports/mekanism_slurry_cutout"); + } + + @Override + public ResourceLocation getOutputOverlay() { + return new ResourceLocation(MM.ID, "block/compat_ports/mekanism_slurry_cutout"); + } } diff --git a/src/main/java/com/ticticboooom/mods/mm/ports/parser/PneumaticPortParser.java b/src/main/java/com/ticticboooom/mods/mm/ports/parser/PneumaticPortParser.java index 009ccfa..4a850fa 100644 --- a/src/main/java/com/ticticboooom/mods/mm/ports/parser/PneumaticPortParser.java +++ b/src/main/java/com/ticticboooom/mods/mm/ports/parser/PneumaticPortParser.java @@ -5,6 +5,7 @@ import com.google.gson.JsonObject; import com.mojang.datafixers.util.Pair; import com.mojang.serialization.DataResult; import com.mojang.serialization.JsonOps; +import com.ticticboooom.mods.mm.MM; import com.ticticboooom.mods.mm.client.jei.category.MMJeiPlugin; import com.ticticboooom.mods.mm.client.jei.ingredients.model.PressureStack; import com.ticticboooom.mods.mm.ports.state.FluidPortState; @@ -17,6 +18,7 @@ import lombok.SneakyThrows; import mezz.jei.api.constants.VanillaTypes; import mezz.jei.api.ingredients.IIngredients; import net.minecraft.network.PacketBuffer; +import net.minecraft.util.ResourceLocation; import net.minecraftforge.fluids.FluidStack; import java.util.List; @@ -46,6 +48,16 @@ public class PneumaticPortParser implements IPortFactory{ } } + @Override + public ResourceLocation getInputOverlay() { + return new ResourceLocation(MM.ID, "block/compat_ports/pncr_pressure_cutout"); + } + + @Override + public ResourceLocation getOutputOverlay() { + return new ResourceLocation(MM.ID, "block/compat_ports/pncr_pressure_cutout"); + } + @Override public PortState createState(JsonObject obj) { DataResult> apply = JsonOps.INSTANCE.withDecoder(PneumaticPortState.CODEC).apply(obj); diff --git a/src/main/java/com/ticticboooom/mods/mm/ports/state/PneumaticPortState.java b/src/main/java/com/ticticboooom/mods/mm/ports/state/PneumaticPortState.java index aa0cb66..f0bdc50 100644 --- a/src/main/java/com/ticticboooom/mods/mm/ports/state/PneumaticPortState.java +++ b/src/main/java/com/ticticboooom/mods/mm/ports/state/PneumaticPortState.java @@ -22,7 +22,7 @@ import java.util.List; public class PneumaticPortState extends PortState { public static final Codec CODEC = RecordCodecBuilder.create(x -> x.group( - Codec.FLOAT.fieldOf("pressure").forGetter(z -> z.pressure) + Codec.FLOAT.fieldOf("air").forGetter(z -> z.pressure) ).apply(x, PneumaticPortState::new)); private float pressure; @@ -33,29 +33,19 @@ public class PneumaticPortState extends PortState { @Override public void processRequirement(List storage) { - float current = pressure; for (PortStorage portStorage : storage) { if (portStorage instanceof PneumaticPortStorage){ PneumaticPortStorage pnc = (PneumaticPortStorage) portStorage; - float prePressure = pnc.getInv().getPressure(); - pnc.getInv().setPressure(pnc.getInv().getPressure() - current); - current -= prePressure; - if (current <= 0){ - return; - } + pnc.getInv().addAir(-(int) pressure); } } } @Override public boolean validateRequirement(List storage) { - float current = pressure; for (PortStorage portStorage : storage) { if (portStorage instanceof PneumaticPortStorage){ - PneumaticPortStorage pnc = (PneumaticPortStorage) portStorage; - float prePressure = pnc.getInv().getPressure(); - current -= prePressure; - if (current <= 0){ + if (((PneumaticPortStorage) portStorage).getInv().getAir() >= this.pressure){ return true; } } @@ -65,42 +55,19 @@ public class PneumaticPortState extends PortState { @Override public void processResult(List storage) { - float current = pressure; for (PortStorage portStorage : storage) { if (portStorage instanceof PneumaticPortStorage){ PneumaticPortStorage pnc = (PneumaticPortStorage) portStorage; - float prePressure = pnc.getInv().getPressure(); - if (pnc.getInv().getPressure() - current > pnc.getInv().getDangerPressure()){ - pnc.getInv().setPressure(pnc.getInv().getDangerPressure()); - current -= pnc.getInv().getDangerPressure() - prePressure; - } else { - pnc.getInv().setPressure(prePressure + current); - current -= prePressure; - } - if (current <= 0){ - return; - } + pnc.getInv().addAir((int)pressure); } } } @Override public boolean validateResult(List storage) { - float current = pressure; for (PortStorage portStorage : storage) { if (portStorage instanceof PneumaticPortStorage){ - PneumaticPortStorage pnc = (PneumaticPortStorage) portStorage; - float prePressure = pnc.getInv().getPressure(); - if (pnc.getInv().getPressure() - current > pnc.getInv().getDangerPressure()){ - pnc.getInv().setPressure(pnc.getInv().getDangerPressure()); - current -= pnc.getInv().getDangerPressure() - prePressure; - } else { - pnc.getInv().setPressure(prePressure + current); - current -= prePressure; - } - if (current <= 0){ - return true; - } + return true; } } return false; @@ -108,7 +75,7 @@ public class PneumaticPortState extends PortState { @Override public ResourceLocation getName() { - return new ResourceLocation(MM.ID, "pressure"); + return new ResourceLocation(MM.ID, "pncr_pressure"); } @Override diff --git a/src/main/java/com/ticticboooom/mods/mm/ports/storage/PneumaticPortStorage.java b/src/main/java/com/ticticboooom/mods/mm/ports/storage/PneumaticPortStorage.java index e974292..7af52b6 100644 --- a/src/main/java/com/ticticboooom/mods/mm/ports/storage/PneumaticPortStorage.java +++ b/src/main/java/com/ticticboooom/mods/mm/ports/storage/PneumaticPortStorage.java @@ -3,15 +3,28 @@ package com.ticticboooom.mods.mm.ports.storage; import com.mojang.blaze3d.matrix.MatrixStack; import com.mojang.serialization.Codec; import com.mojang.serialization.codecs.RecordCodecBuilder; +import com.ticticboooom.mods.mm.MM; import com.ticticboooom.mods.mm.block.tile.MachinePortBlockEntity; import lombok.Getter; import me.desht.pneumaticcraft.api.PNCCapabilities; +import me.desht.pneumaticcraft.api.tileentity.IAirHandlerMachine; import me.desht.pneumaticcraft.common.capabilities.MachineAirHandler; +import me.desht.pneumaticcraft.common.util.DirectionUtil; +import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.AbstractGui; import net.minecraft.client.gui.screen.Screen; import net.minecraft.nbt.CompoundNBT; +import net.minecraft.util.Direction; +import net.minecraft.util.ResourceLocation; import net.minecraftforge.common.capabilities.Capability; import net.minecraftforge.common.util.LazyOptional; +import java.text.NumberFormat; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + public class PneumaticPortStorage extends PortStorage { public static final Codec CODEC = RecordCodecBuilder.create(x -> x.group( @@ -26,6 +39,7 @@ public class PneumaticPortStorage extends PortStorage { private float danger; private float critical; private int volume; + private final Map> airHandlerMap = new HashMap<>(); public PneumaticPortStorage(float danger, float critical, int volume) { this.danger = danger; @@ -33,6 +47,7 @@ public class PneumaticPortStorage extends PortStorage { this.volume = volume; inv = new MachineAirHandler(danger, critical, volume); invLO = LazyOptional.of(() -> inv); + neighborChanged(); } @Override @@ -47,23 +62,37 @@ public class PneumaticPortStorage extends PortStorage { @Override public CompoundNBT save(CompoundNBT nbt) { - CompoundNBT compound = new CompoundNBT(); - nbt.putFloat("pressure", inv.getPressure()); - return compound; + nbt.putInt("air", inv.getAir()); + return nbt; } @Override public void load(CompoundNBT nbt) { - inv.setPressure(nbt.getFloat("pressure")); + inv.addAir(-inv.getAir()); + inv.addAir(nbt.getInt("air")); } @Override public void render(MatrixStack stack, int mouseX, int mouseY, int left, int top, Screen screen) { - + Minecraft.getInstance().textureManager.bind(new ResourceLocation(MM.ID, "textures/gui/port_gui.png")); + screen.blit(stack, left, top, 0, 0, 175, 256); + int barOffsetX = 175 - 30; + int barOffsetY = 20; + screen.blit(stack, left + barOffsetX, top + barOffsetY, 175, 18, 18, 108); + AbstractGui.drawString(stack, Minecraft.getInstance().font, NumberFormat.getInstance().format(inv.getPressure()) + "P", left + 30, top + 60, 0xfefefe); } @Override public void tick(MachinePortBlockEntity tile) { this.inv.tick(tile); } + + @Override + public void neighborChanged() { + airHandlerMap.clear(); + for (Direction side : DirectionUtil.VALUES) { + getLO().ifPresent(handler -> airHandlerMap.computeIfAbsent((IAirHandlerMachine) handler, k -> new ArrayList<>()).add(side)); + } + airHandlerMap.forEach(IAirHandlerMachine::setConnectedFaces); + } } diff --git a/src/main/java/com/ticticboooom/mods/mm/ports/storage/PortStorage.java b/src/main/java/com/ticticboooom/mods/mm/ports/storage/PortStorage.java index 17c6bf0..fda2386 100644 --- a/src/main/java/com/ticticboooom/mods/mm/ports/storage/PortStorage.java +++ b/src/main/java/com/ticticboooom/mods/mm/ports/storage/PortStorage.java @@ -35,4 +35,8 @@ public abstract class PortStorage { public void tick(MachinePortBlockEntity tile) { } + + public void neighborChanged() { + + } } diff --git a/src/main/java/com/ticticboooom/mods/mm/registration/MMLoader.java b/src/main/java/com/ticticboooom/mods/mm/registration/MMLoader.java index 092b8a9..7bf1483 100644 --- a/src/main/java/com/ticticboooom/mods/mm/registration/MMLoader.java +++ b/src/main/java/com/ticticboooom/mods/mm/registration/MMLoader.java @@ -97,7 +97,7 @@ public class MMLoader { Registerable> block = new Registerable<>(); Registerable>> cont = new Registerable<>(); cont.set(MMSetup.CONTAINER_REG.register(controllerId + "_" + id + "_port_" + resourceLocation.getPath() + "_input", () -> IForgeContainerType.create((i, o, u) -> new PortBlockContainer(cont.get().get(), i, o, u)))); - block.set(MMSetup.BLOCKS_REG.register(controllerId + "_" + id + "_port_" + resourceLocation.getPath() + "_input", () -> new MachinePortBlock(tile.get(), name, controllerId, portTextureOverrideFinal))); + block.set(MMSetup.BLOCKS_REG.register(controllerId + "_" + id + "_port_" + resourceLocation.getPath() + "_input", () -> new MachinePortBlock(tile.get(), name, controllerId, portTextureOverrideFinal, value.getParser().getInputOverlay()))); tile.set(MMSetup.TILES_REG.register(controllerId + "_" + id + "_port_" + resourceLocation.getPath() + "_input", () -> TileEntityType.Builder.of(() -> new MachinePortBlockEntity(tile.get().get(),cont.get().get(), data.get(), true), block.get().get()).build(null))); MMSetup.ITEMS_REG.register(controllerId + "_" + id + "_port_" + resourceLocation.getPath() + "_input", () -> new BlockItem(block.get().get(), new Item.Properties().tab(MASTERFUL_ITEM_GROUP))); PORT_CONTAINERS.add(cont.get()); @@ -109,7 +109,7 @@ public class MMLoader { Registerable> block = new Registerable<>(); Registerable>> cont = new Registerable<>(); cont.set(MMSetup.CONTAINER_REG.register(controllerId + "_" + id + "_port_" + resourceLocation.getPath() + "_output", () -> IForgeContainerType.create((i, o, u) -> new PortBlockContainer(cont.get().get(), i, o, u)))); - block.set(MMSetup.BLOCKS_REG.register(controllerId + "_" + id + "_port_" + resourceLocation.getPath() + "_output", () -> new MachinePortBlock(tile.get(), name, controllerId, portTextureOverrideFinal))); + block.set(MMSetup.BLOCKS_REG.register(controllerId + "_" + id + "_port_" + resourceLocation.getPath() + "_output", () -> new MachinePortBlock(tile.get(), name, controllerId, portTextureOverrideFinal, value.getParser().getOutputOverlay()))); tile.set(MMSetup.TILES_REG.register(controllerId + "_" + id + "_port_" + resourceLocation.getPath() + "_output", () -> TileEntityType.Builder.of(() -> new MachinePortBlockEntity(tile.get().get(), cont.get().get(), data.get(), false), block.get().get()).build(null))); MMSetup.ITEMS_REG.register(controllerId + "_" + id + "_port_" + resourceLocation.getPath() + "_output", () -> new BlockItem(block.get().get(), new Item.Properties().tab(MASTERFUL_ITEM_GROUP))); PORT_CONTAINERS.add(cont.get()); diff --git a/src/main/java/com/ticticboooom/mods/mm/registration/MMPorts.java b/src/main/java/com/ticticboooom/mods/mm/registration/MMPorts.java index 8b75f50..d48659f 100644 --- a/src/main/java/com/ticticboooom/mods/mm/registration/MMPorts.java +++ b/src/main/java/com/ticticboooom/mods/mm/registration/MMPorts.java @@ -17,5 +17,6 @@ public class MMPorts { PORTS.put(new ResourceLocation(MM.ID, "energy"),new MasterfulPortType(new ResourceLocation(MM.ID, "energy"), new EnergyPortParser())); PORTS.put(new ResourceLocation(MM.ID, "mekanism_gas"),new MasterfulPortType(new ResourceLocation(MM.ID, "mekanism_gas"), new MekGasPortParser())); PORTS.put(new ResourceLocation(MM.ID, "mekanism_slurry"),new MasterfulPortType(new ResourceLocation(MM.ID, "mekanism_slurry"), new MekSlurryPortParser())); + PORTS.put(new ResourceLocation(MM.ID, "pncr_pressure"),new MasterfulPortType(new ResourceLocation(MM.ID, "pncr_pressure"), new PneumaticPortParser())); } }