fixed and tested mekanism chemical ports

This commit is contained in:
ticticboooom
2021-07-04 20:32:57 +01:00
parent 110c544a47
commit 3f7593dd17
28 changed files with 101 additions and 86 deletions

View File

@@ -21,7 +21,7 @@ apply plugin: 'eclipse'
apply plugin: 'maven-publish'
apply plugin: 'org.spongepowered.mixin'
version = '1.16.5-0.1.48-B' + getVersionNumber()
version = '1.16.5-0.1.50-B' + getVersionNumber()
group = 'com.ticticboooom.mods.mm' // http://maven.apache.org/guides/mini/guide-naming-conventions.html
archivesBaseName = 'MasterfulMachinery'
java.toolchain.languageVersion = JavaLanguageVersion.of(8) // Mojang ships Java 8 to end users, so your mod should target Java 8.
@@ -179,7 +179,6 @@ dependencies {
compileOnly 'com.google.code.gson:gson:2.8.7'
implementation 'org.spongepowered:mixin:0.8-SNAPSHOT'
annotationProcessor 'org.spongepowered:mixin:0.8.2:processor'
shade 'com.github.marschall:memoryfilesystem:2.1.0'
implementation fg.deobf("mekanism:Mekanism:${mekanism_version}")// core
runtimeOnly fg.deobf("mekanism:Mekanism:${mekanism_version}:additions")// Mekanism: Additions

View File

@@ -7,13 +7,12 @@ import com.ticticboooom.mods.mm.block.ControllerBlock;
import com.ticticboooom.mods.mm.block.MachinePortBlock;
import com.ticticboooom.mods.mm.block.container.ControllerBlockContainer;
import com.ticticboooom.mods.mm.block.container.PortBlockContainer;
import com.ticticboooom.mods.mm.block.tile.StructureGenBlockEntity;
import com.ticticboooom.mods.mm.client.screen.ControllerBlockContainerScreen;
import com.ticticboooom.mods.mm.client.screen.PortBlockContainerScreen;
import com.ticticboooom.mods.mm.client.screen.StructureGenBlockContainerScreen;
import com.ticticboooom.mods.mm.client.ter.StructureGenTileEntityRenderer;
import com.ticticboooom.mods.mm.datagen.MMPackFinder;
import com.ticticboooom.mods.mm.datagen.MemoryDataGeneratorFactory;
import com.ticticboooom.mods.mm.datagen.DataGeneratorFactory;
import com.ticticboooom.mods.mm.datagen.PackType;
import com.ticticboooom.mods.mm.datagen.gen.MMBlockStateProvider;
import com.ticticboooom.mods.mm.datagen.gen.MMItemModelProvider;
@@ -28,7 +27,6 @@ import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.ScreenManager;
import net.minecraft.client.renderer.RenderType;
import net.minecraft.client.renderer.RenderTypeLookup;
import net.minecraft.client.renderer.tileentity.TileEntityRenderer;
import net.minecraft.data.DataGenerator;
import net.minecraft.inventory.container.ContainerType;
import net.minecraft.resources.ResourcePackList;
@@ -40,7 +38,6 @@ import net.minecraftforge.fml.DistExecutor;
import net.minecraftforge.fml.RegistryObject;
import net.minecraftforge.fml.client.registry.ClientRegistry;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.common.thread.EffectiveSide;
import net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent;
import net.minecraftforge.fml.event.server.FMLServerAboutToStartEvent;
import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext;
@@ -64,7 +61,7 @@ public class MM {
instance = this;
MMPorts.init();
MMLoader.load();
MemoryDataGeneratorFactory.init();
DataGeneratorFactory.init();
PacketHandler.init();
registerDataGen();
IEventBus bus = FMLJavaModLoadingContext.get().getModEventBus();
@@ -81,7 +78,7 @@ public class MM {
}
private void registerDataGen() {
generator = MemoryDataGeneratorFactory.createMemoryDataGenerator();
generator = DataGeneratorFactory.createMemoryDataGenerator();
ExistingFileHelper existingFileHelper = new ExistingFileHelper(ImmutableList.of(), ImmutableSet.of(), false);
generator.addProvider(new MMLootTableProvider(generator));

View File

@@ -62,7 +62,7 @@ public class AstralMachineInputPortBlockEntity extends TileReceiverBase<MMSimple
@Override
public boolean isInput() {
return false;
return true;
}
@Override

View File

@@ -1,8 +1,10 @@
package com.ticticboooom.mods.mm.client.jei.category;
package com.ticticboooom.mods.mm.client.jei;
import com.google.common.collect.ImmutableList;
import com.ticticboooom.mods.mm.MM;
import com.ticticboooom.mods.mm.block.ControllerBlock;
import com.ticticboooom.mods.mm.client.jei.category.MachineProcessRecipeCategory;
import com.ticticboooom.mods.mm.client.jei.category.MachineStructureRecipeCategory;
import com.ticticboooom.mods.mm.client.jei.ingredients.*;
import com.ticticboooom.mods.mm.data.MachineProcessRecipe;
import com.ticticboooom.mods.mm.data.MachineStructureRecipe;
@@ -14,13 +16,11 @@ import mezz.jei.api.registration.IModIngredientRegistration;
import mezz.jei.api.registration.IRecipeCategoryRegistration;
import mezz.jei.api.registration.IRecipeRegistration;
import net.minecraft.client.Minecraft;
import net.minecraft.util.NonNullList;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.fml.RegistryObject;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;
@JeiPlugin
public class MMJeiPlugin implements IModPlugin {

View File

@@ -9,15 +9,26 @@ import net.minecraft.world.IBlockReader;
import javax.annotation.Nullable;
public class AirBlockReader implements IBlockReader {
private TileEntity tile;
private BlockState state;
public AirBlockReader(BlockState state) {
this.state = state;
}
public void setTile(TileEntity t){
tile = t;
}
@Nullable
@Override
public TileEntity getTileEntity(BlockPos pos) {
return null;
return tile;
}
@Override
public BlockState getBlockState(BlockPos pos) {
return null;
return state;
}
@Override

View File

@@ -21,14 +21,14 @@ public class ControllerBlockContainerScreen extends ContainerScreen<ControllerBl
@Override
public void render(MatrixStack stack, int mouseX, int mouseY, float p_230430_4_) {
super.render(stack, mouseX, mouseY, p_230430_4_);
this.renderHoveredTooltip(stack, mouseX, mouseY);
}
@Override
protected void drawGuiContainerForegroundLayer(MatrixStack stack, int x0, int y0) {
this.minecraft.fontRenderer.func_238418_a_(container.getTile().getDisplayName(), 10, -10, 176, 0xfefefe);
this.minecraft.fontRenderer.func_238418_a_(container.getTile().getDisplayName(), 10, -10, 176, 0xfefefe);
drawString(stack, this.minecraft.fontRenderer, "Inventory", 7, 110, 0xfefefe);
int y = 50;
for (String s : container.getTile().getUpdate().getMsg().split("\n")) {

View File

@@ -24,6 +24,7 @@ public class StructureGenBlockContainerScreen extends ContainerScreen<StructureG
@Override
public void render(MatrixStack ms, int p_230430_2_, int p_230430_3_, float p_230430_4_) {
super.render(ms, p_230430_2_, p_230430_3_, p_230430_4_);
this.renderHoveredTooltip(ms, p_230430_2_, p_230430_3_);
}
@Override

View File

@@ -33,18 +33,20 @@ public class GuiBlockRenderBuilder {
private Vector3f prePosition = new Vector3f();
private TileEntityRenderer<TileEntity> ter = null;
private TileEntity tile;
private static final IBlockReader reader = new AirBlockReader();
public GuiBlockRenderBuilder(BlockState blockState) {
this.blockState = blockState;
position = new BlockPos(0, 0, 0);
try {
tile = blockState.createTileEntity(reader);
AirBlockReader airBlockReader = new AirBlockReader(blockState);
tile = blockState.createTileEntity(airBlockReader);
airBlockReader.setTile(tile);
if (tile != null) {
ter = TileEntityRendererDispatcher.instance.getRenderer(tile);
}
} catch (Exception ignored) {}
} catch (Exception ignored) {
}
}
public GuiBlockRenderBuilder at(BlockPos position) {
@@ -93,13 +95,16 @@ public class GuiBlockRenderBuilder {
transformMatrix(ms);
brd.renderBlock(blockState, ms, buf, 0xF000F0, OverlayTexture.NO_OVERLAY, EmptyModelData.INSTANCE);
ms.push();
try {
if (ter != null) {
ter.render(tile, 1.f, ms, buf, 0xF000F0, OverlayTexture.NO_OVERLAY);
}
} catch (Exception ignored) {}
} catch (Exception ignored) {
}
buf.finish();
ms.pop();
ms.pop();
cleanupRender();
}
@@ -111,5 +116,8 @@ public class GuiBlockRenderBuilder {
}
ms.scale(scale.getX(), -scale.getY(), scale.getZ());
ms.translate(position.getX(), position.getY(), position.getZ());
if (tile != null) {
tile.setPos(new BlockPos(0, 0, 0));
}
}
}

View File

@@ -0,0 +1,19 @@
package com.ticticboooom.mods.mm.core;
import com.ticticboooom.mods.mm.ports.MasterfulPortType;
import lombok.Getter;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.eventbus.api.Event;
import net.minecraftforge.fml.event.lifecycle.IModBusEvent;
import java.util.Map;
public class MMPortRegistrationEvent extends Event {
@Getter
private Map<ResourceLocation, MasterfulPortType> portsMap;
public MMPortRegistrationEvent(Map<ResourceLocation, MasterfulPortType> portsMap) {
this.portsMap = portsMap;
}
}

View File

@@ -24,27 +24,21 @@
package com.ticticboooom.mods.mm.datagen;
import com.github.marschall.memoryfilesystem.MemoryFileSystemBuilder;
import com.google.common.collect.ImmutableList;
import net.minecraft.data.DataGenerator;
import net.minecraftforge.fml.loading.FMLPaths;
import java.io.IOException;
import java.nio.file.FileSystem;
import java.nio.file.Path;
public class MemoryDataGeneratorFactory {
public static Path ROOT_PATH;
public class DataGeneratorFactory {
public static void init() {
try {
FileSystem fs = MemoryFileSystemBuilder.newEmpty().addRoot("/").setCurrentWorkingDirectory("/mm").setCaseSensitive(true).build();
ROOT_PATH = fs.getPath("/mm");
} catch (IOException e) {
e.printStackTrace();
public static Path ROOT_PATH;
public static void init() {
ROOT_PATH = FMLPaths.CONFIGDIR.get().resolve("masterful_machinery/packs");
}
}
public static DataGenerator createMemoryDataGenerator() {
return new DataGenerator(ROOT_PATH, ImmutableList.of());
}
public static DataGenerator createMemoryDataGenerator() {
return new DataGenerator(ROOT_PATH, ImmutableList.of());
}
}

View File

@@ -44,7 +44,7 @@ public class MMPackFinder implements IPackFinder {
@Override
public void findPacks(Consumer<ResourcePackInfo> infoConsumer, ResourcePackInfo.IFactory infoFactory) {
Path rootPath = MemoryDataGeneratorFactory.ROOT_PATH;
Path rootPath = DataGeneratorFactory.ROOT_PATH;
ResourcePackInfo pack = ResourcePackInfo.createResourcePack("mm_" + type.getSuffix(), true,
() -> new InMemoryPack(rootPath), infoFactory, ResourcePackInfo.Priority.BOTTOM, IPackNameDecorator.PLAIN);

View File

@@ -69,6 +69,10 @@ public class StructureHelper {
BlockState state = world.getBlockState(new BlockPos(xi, yi, zi));
ResourceLocation registryName = state.getBlock().getRegistryName();
if (index == 'C'){
index++;
}
if (state.isAir()) {
row.append(" ");
continue;

View File

@@ -66,7 +66,7 @@ public class MekChemicalInventory<CHEMICAL extends Chemical<CHEMICAL>, STACK ext
if (this.stack.getAmount() + stack.getAmount() > capacity) {
return factory.apply(stack.getType(), (this.stack.getAmount() + stack.getAmount() - capacity));
} else {
return empty;
return this.empty;
}
}
@@ -84,7 +84,7 @@ public class MekChemicalInventory<CHEMICAL extends Chemical<CHEMICAL>, STACK ext
} else {
this.stack.setAmount(this.stack.getAmount() + stack.getAmount());
}
return empty;
return this.empty;
}
}
@@ -92,7 +92,7 @@ public class MekChemicalInventory<CHEMICAL extends Chemical<CHEMICAL>, STACK ext
public STACK extractChemical(int i, long l, Action action) {
if (action.simulate()) {
if (stack.getAmount() - l < 0) {
return factory.apply(stack.getType(), l - (l + stack.getAmount()));
return factory.apply(stack.getType(), l - (l - stack.getAmount()));
} else {
return factory.apply(stack.getType(), l);
}
@@ -101,7 +101,7 @@ public class MekChemicalInventory<CHEMICAL extends Chemical<CHEMICAL>, STACK ext
if (stack.getAmount() - l < 0) {
long preAmount = stack.getAmount();
this.stack = empty;
return factory.apply(stack.getType(),l - (preAmount - l));
return factory.apply(stack.getType(),l - (l - preAmount));
} else {
stack.setAmount(stack.getAmount() - l);
return factory.apply(stack.getType(), l);

View File

@@ -2,8 +2,9 @@ package com.ticticboooom.mods.mm.inventory.mek;
import mekanism.api.chemical.gas.Gas;
import mekanism.api.chemical.gas.GasStack;
import mekanism.api.chemical.gas.IGasHandler;
public class PortMekGasInventory extends MekChemicalInventory<Gas, GasStack> {
public class PortMekGasInventory extends MekChemicalInventory<Gas, GasStack> implements IGasHandler {
public PortMekGasInventory(long capacity) {
super(GasStack.EMPTY, capacity, GasStack::new);

View File

@@ -1,9 +1,10 @@
package com.ticticboooom.mods.mm.inventory.mek;
import mekanism.api.chemical.infuse.IInfusionHandler;
import mekanism.api.chemical.infuse.InfuseType;
import mekanism.api.chemical.infuse.InfusionStack;
public class PortMekInfuseInventory extends MekChemicalInventory<InfuseType, InfusionStack> {
public class PortMekInfuseInventory extends MekChemicalInventory<InfuseType, InfusionStack> implements IInfusionHandler {
public PortMekInfuseInventory(long capacity) {
super(InfusionStack.EMPTY, capacity, InfusionStack::new);

View File

@@ -1,17 +1,11 @@
package com.ticticboooom.mods.mm.inventory.mek;
import mekanism.api.Action;
import mekanism.api.chemical.gas.GasStack;
import mekanism.api.chemical.gas.IGasHandler;
import mekanism.api.chemical.gas.IGasTank;
import mekanism.api.chemical.slurry.ISlurryHandler;
import mekanism.api.chemical.slurry.ISlurryTank;
import mekanism.api.chemical.slurry.Slurry;
import mekanism.api.chemical.slurry.SlurryStack;
import java.util.function.BiFunction;
public class PortMekSlurryInventory extends MekChemicalInventory<Slurry, SlurryStack> {
public class PortMekSlurryInventory extends MekChemicalInventory<Slurry, SlurryStack> implements ISlurryHandler, ISlurryTank {
public PortMekSlurryInventory(long capacity) {
super(SlurryStack.EMPTY, capacity, SlurryStack::new);
}

View File

@@ -13,6 +13,7 @@ import com.ticticboooom.mods.mm.ports.storage.MekInfusePortStorage;
import com.ticticboooom.mods.mm.ports.storage.MekSlurryPortStorage;
import com.ticticboooom.mods.mm.ports.storage.PortStorage;
import lombok.SneakyThrows;
import mekanism.api.chemical.infuse.InfusionStack;
import mekanism.api.chemical.slurry.SlurryStack;
import mekanism.client.jei.MekanismJEI;
import mezz.jei.api.ingredients.IIngredients;
@@ -27,9 +28,9 @@ public class MekInfusePortParser extends PortFactory {
@Override
public void setIngredients(IIngredients ingredients, List<?> stacks, boolean input) {
if (input) {
ingredients.setInputs(MekanismJEI.TYPE_SLURRY, (List<SlurryStack>)stacks);
ingredients.setInputs(MekanismJEI.TYPE_INFUSION, (List<InfusionStack>)stacks);
} else {
ingredients.setOutputs(MekanismJEI.TYPE_SLURRY, (List<SlurryStack>)stacks);
ingredients.setOutputs(MekanismJEI.TYPE_INFUSION, (List<InfusionStack>)stacks);
}
}

View File

@@ -6,7 +6,7 @@ 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.MMJeiPlugin;
import com.ticticboooom.mods.mm.client.jei.ingredients.model.PressureStack;
import com.ticticboooom.mods.mm.ports.state.PneumaticPortState;
import com.ticticboooom.mods.mm.ports.state.PortState;

View File

@@ -4,23 +4,19 @@ 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.client.jei.category.MMJeiPlugin;
import com.ticticboooom.mods.mm.client.jei.MMJeiPlugin;
import com.ticticboooom.mods.mm.client.jei.ingredients.model.EnergyStack;
import com.ticticboooom.mods.mm.ports.storage.EnergyPortStorage;
import com.ticticboooom.mods.mm.ports.storage.PortStorage;
import lombok.Getter;
import mezz.jei.api.constants.VanillaTypes;
import mezz.jei.api.gui.IRecipeLayout;
import mezz.jei.api.gui.drawable.IDrawableStatic;
import mezz.jei.api.gui.ingredient.IGuiIngredientGroup;
import mezz.jei.api.helpers.IJeiHelpers;
import mezz.jei.api.ingredients.IIngredientType;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.AbstractGui;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.text.StringTextComponent;
import java.text.NumberFormat;
import java.util.List;
public class EnergyPortState extends PortState {

View File

@@ -4,10 +4,8 @@ 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.client.jei.category.MMJeiPlugin;
import com.ticticboooom.mods.mm.client.jei.ingredients.model.EnergyStack;
import com.ticticboooom.mods.mm.client.jei.MMJeiPlugin;
import com.ticticboooom.mods.mm.inventory.botania.PortManaInventory;
import com.ticticboooom.mods.mm.ports.storage.EnergyPortStorage;
import com.ticticboooom.mods.mm.ports.storage.ManaPortStorage;
import com.ticticboooom.mods.mm.ports.storage.PortStorage;
import lombok.Getter;
@@ -18,7 +16,6 @@ import mezz.jei.api.helpers.IJeiHelpers;
import mezz.jei.api.ingredients.IIngredientType;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.text.StringTextComponent;
import vazkii.botania.api.mana.IManaReceiver;
import java.util.List;

View File

@@ -86,7 +86,7 @@ public class MekInfusePortState extends PortState {
if (st instanceof MekInfusePortStorage) {
MekInfusePortStorage gasStorage = (MekInfusePortStorage) st;
InfusionStack extract = gasStorage.getInv().insertChemical(new InfusionStack(Objects.requireNonNull(MekanismAPI.infuseTypeRegistry().getValue(RLUtils.toRL(infuse))), current), Action.EXECUTE);
current -= extract.getAmount();
current -= current - extract.getAmount();
if (current <= 0) {
return;
}
@@ -101,7 +101,7 @@ public class MekInfusePortState extends PortState {
if (st instanceof MekInfusePortStorage) {
MekInfusePortStorage gasStorage = (MekInfusePortStorage) st;
InfusionStack extract = gasStorage.getInv().insertChemical(new InfusionStack(Objects.requireNonNull(MekanismAPI.infuseTypeRegistry().getValue(RLUtils.toRL(infuse))), current), Action.SIMULATE);
current -= extract.getAmount();
current -= current - extract.getAmount();
if (current <= 0) {
return true;
}
@@ -119,15 +119,15 @@ public class MekInfusePortState extends PortState {
@Override
public void validateDefinition() {
if (!RLUtils.isRL(infuse)){
throw new InvalidProcessDefinitionException("Slurry: " + infuse + " is not a valid slurry id (ResourceLocation)");
throw new InvalidProcessDefinitionException("Infuse Type: " + infuse + " is not a valid infuse type id (ResourceLocation)");
}
if (!MekanismAPI.slurryRegistry().containsKey(RLUtils.toRL(infuse))){
throw new InvalidProcessDefinitionException("Slurry: " + infuse + " does not exist in the mekansim slurry registry");
if (!MekanismAPI.infuseTypeRegistry().containsKey(RLUtils.toRL(infuse))){
throw new InvalidProcessDefinitionException("Infuse Type: " + infuse + " does not exist in the mekansim infuse type registry");
}
}
private final ChemicalStackRenderer<SlurryStack> renderer;
private final ChemicalStackRenderer<InfusionStack> renderer;
@Override
public void render(MatrixStack ms, int x, int y, int mouseX, int mouseY, IJeiHelpers helpers) {
IDrawableStatic drawable = helpers.getGuiHelper().getSlotDrawable();
@@ -136,9 +136,9 @@ public class MekInfusePortState extends PortState {
@Override
public void setupRecipe(IRecipeLayout layout, Integer typeIndex, int x, int y, boolean input) {
IGuiIngredientGroup<SlurryStack> gasGroup = layout.getIngredientsGroup(MekanismJEI.TYPE_SLURRY);
IGuiIngredientGroup<InfusionStack> gasGroup = layout.getIngredientsGroup(MekanismJEI.TYPE_INFUSION);
gasGroup.init(typeIndex, input, renderer, x + 1, y + 1, 16, 16, 0, 0);
gasGroup.set(typeIndex, new SlurryStack(MekanismAPI.slurryRegistry().getValue(RLUtils.toRL(infuse)), amount));
gasGroup.set(typeIndex, new InfusionStack(MekanismAPI.infuseTypeRegistry().getValue(RLUtils.toRL(infuse)), amount));
if (this.getChance() < 1) {
gasGroup.addTooltipCallback((s, a, b, c) -> {
if (s == typeIndex) {
@@ -155,6 +155,6 @@ public class MekInfusePortState extends PortState {
@Override
public IIngredientType<?> getJeiIngredientType() {
return MekanismJEI.TYPE_SLURRY;
return MekanismJEI.TYPE_INFUSION;
}
}

View File

@@ -86,7 +86,7 @@ public class MekSlurryPortState extends PortState {
if (st instanceof MekSlurryPortStorage) {
MekSlurryPortStorage gasStorage = (MekSlurryPortStorage) st;
SlurryStack extract = gasStorage.getInv().insertChemical(new SlurryStack(Objects.requireNonNull(MekanismAPI.slurryRegistry().getValue(RLUtils.toRL(slurry))), current), Action.EXECUTE);
current -= extract.getAmount();
current -= current - extract.getAmount();
if (current <= 0) {
return;
}
@@ -101,7 +101,7 @@ public class MekSlurryPortState extends PortState {
if (st instanceof MekSlurryPortStorage) {
MekSlurryPortStorage gasStorage = (MekSlurryPortStorage) st;
SlurryStack extract = gasStorage.getInv().insertChemical(new SlurryStack(Objects.requireNonNull(MekanismAPI.slurryRegistry().getValue(RLUtils.toRL(slurry))), current), Action.SIMULATE);
current -= extract.getAmount();
current -= current - extract.getAmount();
if (current <= 0) {
return true;
}

View File

@@ -5,7 +5,7 @@ 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.client.jei.category.MMJeiPlugin;
import com.ticticboooom.mods.mm.client.jei.MMJeiPlugin;
import com.ticticboooom.mods.mm.client.jei.ingredients.model.PressureStack;
import com.ticticboooom.mods.mm.ports.storage.PneumaticPortStorage;
import com.ticticboooom.mods.mm.ports.storage.PortStorage;
@@ -15,7 +15,6 @@ import mezz.jei.api.gui.ingredient.IGuiIngredientGroup;
import mezz.jei.api.helpers.IJeiHelpers;
import mezz.jei.api.ingredients.IIngredientType;
import net.minecraft.util.ResourceLocation;
import org.lwjgl.system.CallbackI;
import java.util.List;

View File

@@ -4,7 +4,7 @@ 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.client.jei.category.MMJeiPlugin;
import com.ticticboooom.mods.mm.client.jei.MMJeiPlugin;
import com.ticticboooom.mods.mm.ports.storage.PortStorage;
import com.ticticboooom.mods.mm.ports.storage.RotationPortStorage;
import mezz.jei.api.gui.IRecipeLayout;

View File

@@ -4,26 +4,19 @@ 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.client.jei.category.MMJeiPlugin;
import com.ticticboooom.mods.mm.client.jei.ingredients.model.PressureStack;
import com.ticticboooom.mods.mm.client.jei.MMJeiPlugin;
import com.ticticboooom.mods.mm.client.jei.ingredients.model.StarlightStack;
import com.ticticboooom.mods.mm.ports.storage.StarlightPortStorage;
import com.ticticboooom.mods.mm.ports.storage.PortStorage;
import com.ticticboooom.mods.mm.ports.storage.StarlightPortStorage;
import hellfirepvp.astralsorcery.common.block.base.BlockStarlightRecipient;
import hellfirepvp.astralsorcery.common.constellation.IWeakConstellation;
import mezz.jei.api.gui.IRecipeLayout;
import mezz.jei.api.gui.drawable.IDrawableStatic;
import mezz.jei.api.gui.ingredient.IGuiIngredientGroup;
import mezz.jei.api.helpers.IJeiHelpers;
import mezz.jei.api.ingredients.IIngredientType;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
public class StarlightPortState extends PortState {
public static final Codec<StarlightPortState> CODEC = RecordCodecBuilder.create(x -> x.group(

View File

@@ -46,7 +46,7 @@ public class MekInfusePortStorage extends PortStorage {
@Override
public <T> boolean validate(Capability<T> cap) {
return cap == Capabilities.SLURRY_HANDLER_CAPABILITY;
return cap == Capabilities.INFUSION_HANDLER_CAPABILITY;
}
@Override

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 3.9 KiB

View File

@@ -1,2 +1,2 @@
#Wed Jun 02 14:35:30 BST 2021
VERSION_CODE=358
#Sun Jul 04 20:32:09 BST 2021
VERSION_CODE=476