Jump to content

Custom Furnace Spitting Out Items On Block Update


chrisps89

Recommended Posts

I have a custom furnace type block I am working on and I am most of the way there, the problem I have at the moment is focused around the two input slots, When the furnace is inactive and focusing on the inactive block, placing several fuel then placing several ore forces the fuel to be spat out except for 1 of the fuel item. And placing the ore then the fuel forces the ore to be spat out except one item. I guess technically it is two since it sucks 1 of each into the machine for processing too.

 

I used breakpoints to find out when it does this and it is during my updatePyrolysisChamber method in my PyrolysisChamber class, it seems when it picks the new block when the furnace becomes active that it does it, but I cannot track down what part of the code is spitting it out. It spits it quite a bit further than when the block is broken and the items drop out too.

 

This is my PyrolysisChamber Class, and I will post a link to my github with all the files below too, any help is greatly appreciated thanks.

 

https://github.com/chrisps89/chrisps

 

 

 

package com.chrisps.testing.ModBlocks;

 

import java.util.ArrayList;

import java.util.Collection;

import java.util.List;

import java.util.Random;

 

import com.chrisps.testing.testingBaseClass;

import com.chrisps.testing.lib.Constants;

import com.chrisps.testing.tileEntities.TileEntityPyrolysisChamber;

 

import cpw.mods.fml.common.registry.GameRegistry;

import cpw.mods.fml.relauncher.Side;

import cpw.mods.fml.relauncher.SideOnly;

import net.minecraft.block.Block;

import net.minecraft.block.ITileEntityProvider;

import net.minecraft.block.material.Material;

import net.minecraft.client.renderer.texture.IIconRegister;

import net.minecraft.creativetab.CreativeTabs;

import net.minecraft.entity.EntityLivingBase;

import net.minecraft.entity.item.EntityItem;

import net.minecraft.entity.player.EntityPlayer;

import net.minecraft.init.Blocks;

import net.minecraft.item.Item;

import net.minecraft.item.ItemStack;

import net.minecraft.nbt.NBTTagCompound;

import net.minecraft.tileentity.TileEntity;

import net.minecraft.tileentity.TileEntityFurnace;

import net.minecraft.util.IIcon;

import net.minecraft.util.MathHelper;

import net.minecraft.util.ResourceLocation;

import net.minecraft.world.World;

 

public class PyrolysisChamber extends Block implements ITileEntityProvider{

 

public static String name = "pyrolysisChamber";

public static String nameActive = "pyrolysisChamberActive";

private String privateName = "pyrolysisChamber";

private String privateNameActive = "pyrolysisChamberActive";

 

public IIcon Bottom;

public IIcon Top;

public IIcon Front;

public IIcon Back;

public IIcon Left;

public IIcon Right;

 

private final Random random = new Random();

 

private static boolean litCheck;

 

public boolean isActive;

 

protected PyrolysisChamber(boolean active) {

super(Material.rock);

if(!active) {

setBlockName(Constants.MODID + "_" + name);

setCreativeTab(CreativeTabs.tabBlock);

GameRegistry.registerBlock(this, privateName);

setHardness(3.0F);

isActive = active;

} else if (active) {

 

setBlockName(Constants.MODID + "_" + nameActive);

GameRegistry.registerBlock(this, privateNameActive);

setHardness(3.0F);

isActive = active;

}

 

}

 

public enum GUIs {

    PYROLYSISCHAMBER

}

 

@Override

public TileEntity createNewTileEntity(World world, int meta){

return new TileEntityPyrolysisChamber();

}

 

@Override

public boolean hasTileEntity(int metadata){

return true;

}

 

@Override

public void onBlockPlacedBy(World world, int x, int y, int z,

EntityLivingBase entLivBase, ItemStack itemStack) {

int facing = MathHelper

.floor_double(entLivBase.rotationYaw * 4.0F / 360.0F + 0.5D) & 3;

 

if (facing == 0) {

world.setBlockMetadataWithNotify(x, y, z, 2, 2); // South - Front is

// Front.

}

 

if (facing == 1) {

world.setBlockMetadataWithNotify(x, y, z, 5, 2); // West - Front is

// Left.

}

 

if (facing == 2) {

world.setBlockMetadataWithNotify(x, y, z, 3, 2); // North - Back is

// Front.

}

 

if (facing == 3) {

world.setBlockMetadataWithNotify(x, y, z, 4, 2); // East - Front is

// Right

}

 

}

 

 

public void registerBlockIcons(IIconRegister icon) {

Bottom = icon.registerIcon(Constants.MODID + ":" + "pyrolysisChamber0");

Top = icon.registerIcon(Constants.MODID + ":" + "pyrolysisChamber1");

if (!isActive) {

Front = icon.registerIcon(Constants.MODID + ":" + "pyrolysisChamber2");

} else if (isActive) {

Front = icon.registerIcon(Constants.MODID + ":" + "pyrolysisChamber2active");

}

Back = icon.registerIcon(Constants.MODID + ":" + "pyrolysisChamber3");

Left = icon.registerIcon(Constants.MODID + ":" + "pyrolysisChamber4");

Right = icon.registerIcon(Constants.MODID + ":" + "pyrolysisChamber5");

}

 

    public static void updatePyrolysisChamber(boolean active, World world, int x, int y, int z) {

   

        int l = world.getBlockMetadata(x, y, z);

       

        TileEntityPyrolysisChamber tileentity = (TileEntityPyrolysisChamber) world.getTileEntity(x, y, z);

       

      //litCheck = true;

 

        if (active) {

       

            world.setBlock(x, y, z, ModBlocks.pyrolysisChamberActive);

            System.out.println("Block Activated");

           

        } else {

       

            world.setBlock(x, y, z, ModBlocks.pyrolysisChamber);

            System.out.println("Block Deactivated");

        }

 

        //litCheck = false;

       

        world.setBlockMetadataWithNotify(x, y, z, l, 2);

 

        if (tileentity != null) {

       

            tileentity.validate();

            world.setTileEntity(x, y, z, tileentity);

        }

    }

 

@Override

public IIcon getIcon(int side, int meta) {

 

switch (meta) {

case 2:

if (side == 2) {

return Front;

} else if (side == 3) {

return Back;

} else if (side == 4) {

return Right;

} else if (side == 5) {

return Left;

}

case 5:

if (side == 2) {

return Right;

} else if (side == 3) {

return Left;

} else if (side == 4) {

return Back;

} else if (side == 5) {

return Front;

}

case 3:

if (side == 2) {

return Back;

} else if (side == 3) {

return Front;

} else if (side == 4) {

return Left;

} else if (side == 5) {

return Right;

}

case 4:

if (side == 2) {

return Left;

} else if (side == 3) {

return Right;

} else if (side == 4) {

return Front;

} else if (side == 5) {

return Back;

}

case 0:

if (side == 0) {

return Bottom;

} else if (side == 1) {

return Top;

} else if (side == 2) {

return Back;

} else if (side == 3) {

return Front;

} else if (side == 4) {

return Left;

} else if (side == 5) {

return Right;

}

}

return null;

}

 

@Override

public int damageDropped(int meta){

return meta;

}

 

 

    public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int meta, float hitX, float hitY, float hitZ) {

            if (world.getTileEntity(x, y, z) != null){

                player.openGui(testingBaseClass.instance, GUIs.PYROLYSISCHAMBER.ordinal(), world, x, y, z);

            return true;

        }

        return true;

    }

   

    public void breakBlock(World world, int x, int y, int z, Block block, int var6) {

   

    if(!isActive) {

    TileEntityPyrolysisChamber tileEntityPyrolysisChamber = (TileEntityPyrolysisChamber)world.getTileEntity(x, y, z);

   

        if (tileEntityPyrolysisChamber != null) {

            for (int i = 0; i < tileEntityPyrolysisChamber.getSizeInventory(); ++i)

            {

                ItemStack itemstack = tileEntityPyrolysisChamber.getStackInSlot(i);

 

                if (itemstack != null)

                {

                    float f = this.random.nextFloat() * 0.4F + 0.1F;

                    float f1 = this.random.nextFloat() * 0.4F + 0.1F;

                    float f2 = this.random.nextFloat() * 0.4F + 0.1F;

 

                    while (itemstack.stackSize > 0) {

                        int j1 = this.random.nextInt(21) + 10;

 

                        if (j1 > itemstack.stackSize)

                        {

                            j1 = itemstack.stackSize;

                        }

 

                        itemstack.stackSize -= j1;

                       

                        EntityItem entityitem = new EntityItem(world, (double)((float)x + f), (double)((float)y + f1), (double)((float)z + f2), new ItemStack(itemstack.getItem(), j1, itemstack.getItemDamage()));

 

                        if (itemstack.hasTagCompound())

                        {

                            entityitem.getEntityItem().setTagCompound((NBTTagCompound)itemstack.getTagCompound().copy());

                        }

 

                        float f3 = 0.05F;

                       

                        entityitem.motionX = (double)((float)this.random.nextGaussian() * f3);

                        entityitem.motionY = (double)((float)this.random.nextGaussian() * f3 + 0.2F);

                        entityitem.motionZ = (double)((float)this.random.nextGaussian() * f3);

                       

                        world.spawnEntityInWorld(entityitem);

                    }

                }

            }

        }

 

            world.func_147453_f(x, y, z, block);

            }

 

    super.breakBlock(world, x, y, z, this, var6);

}

   

    public Item getItemDropped(int p_149650_1_, Random p_149650_2_, int p_149650_3_)

    {

        return Item.getItemFromBlock(ModBlocks.pyrolysisChamber);

    }

   

    @SideOnly(Side.CLIENT)

    public Item getItem(World world, int x, int y, int z)

    {

        return Item.getItemFromBlock(ModBlocks.pyrolysisChamber);

    }

 

}

 

 

 

 

Link to comment
Share on other sites

In your TileEntity, override shouldRefresh and return true when the second block parameter does not match one of your PyrolysisChamber blocks (the active and inactive one).

Don't ask for support per PM! They'll get ignored! | If a post helped you, click the "Thank You" button at the top right corner of said post! |

mah twitter

This thread makes me sad because people just post copy-paste-ready code when it's obvious that the OP has little to no programming experience. This is not how learning works.

Link to comment
Share on other sites

Thanks for the response, and I tried what you said to the best of my knowledge but I am a little new to modding, coding I'm okay with but still learning some of the ins and outs with forge.

 

I tried it like this:

 

public boolean shouldRefresh(int oldID, int newID, int oldMeta, int newMeta, World world, int x, int y, int z) {

 

Block check = world.getBlock(x, y, z);

 

if(check != blockRefresh || check != blockRefresh2){

return true;

} else {

return false;

}

 

}

 

But I get the impression I likely did it wrong since it didn't make a difference. I created two variable in my tile entity and had them equal to my blocks in my ModBlocks Class then inside the shouldRefresh method you mentioned I got the block and tried comparing it to my blocks. But I think I either got confused or just misunderstood.

 

By second block parameter did you mean what the block was set to once it changed?

 

Sorry if I am asking some stupid questions here, still learning like I said.

 

Edit: It suddenly occurred to me after posting that I make no call to shouldRefresh anywhere. Also I couldn't override the method because I had to overide or implement a supertype method.

 

Edit2: I had my method paramaters messed up fixed that, might be able to get it to work, will update shortly

Link to comment
Share on other sites

1. No need for you to create new variables, just directly reference the fields from your ModBlocks class.

2. shouldRefresh has different parameters, that's why you can't override it. Use your IDE's auto-complete feature or look at the TileEntity class for the right implementation. Hint: The first and second parameters are Block type, not int.

3. You don't need to call it, that's why you should override it

4. By second block parameter I meant the second Block parameter from the (correct) shouldRefresh method.

5. You can shorten your check to one return statement w/o an if-else block.

Don't ask for support per PM! They'll get ignored! | If a post helped you, click the "Thank You" button at the top right corner of said post! |

mah twitter

This thread makes me sad because people just post copy-paste-ready code when it's obvious that the OP has little to no programming experience. This is not how learning works.

Link to comment
Share on other sites

Yeah made some silly mistakes formatting that originally.

 

I have it like this now, which I believe is okay.

 

    @Override

    public boolean shouldRefresh(Block oldBlock, Block newBlock, int oldMeta, int newMeta, World world, int x, int y, int z) {

   

return newBlock != ModBlocks.pyrolysisChamber || newBlock != ModBlocks.pyrolysisChamberActive;

 

}

 

However if that is correct, it sadly made no difference, items still get chucked out the same way.

Link to comment
Share on other sites

That statement is always true, because the block can't be both.

 

"If new block is NOT PCInactive OR new block is NOT PCActive"

 

If block is PCInactive => block is not PCActive => true

If block is PCActive => block is not PCInactive => true

If block is something else => block is neither PCActive nor PCInactive => true

 

You probably want a && in there.

Don't ask for support per PM! They'll get ignored! | If a post helped you, click the "Thank You" button at the top right corner of said post! |

mah twitter

This thread makes me sad because people just post copy-paste-ready code when it's obvious that the OP has little to no programming experience. This is not how learning works.

Link to comment
Share on other sites

Ah of course, another silly mistake that.

 

So hopefully 3rd times the charm?

 

    @Override

    public boolean shouldRefresh(Block oldBlock, Block newBlock, int oldMeta, int newMeta, World world, int x, int y, int z) {

   

return newBlock != ModBlocks.pyrolysisChamber && newBlock != ModBlocks.pyrolysisChamberActive;

}

 

so now its checking if it is not pc and not pca, and returning true, if it isn't equal to either of them, otherwise it's false. Which is what you mentioned I believe...hopefully.

 

However it has no effect, although it is equal to false, at least when the block updates as I tracked it with a print. Should there be a point where my block is neither of them ?

Link to comment
Share on other sites

It is true when you break the block (it changes to air), since that's not an instance of neither of your blocks.

 

Try removing this part:

if (tileentity != null) {
           
    tileentity.validate();
    world.setTileEntity(x, y, z, tileentity);
}

 

and see if that fixes it (you don't need it anyway)

Don't ask for support per PM! They'll get ignored! | If a post helped you, click the "Thank You" button at the top right corner of said post! |

mah twitter

This thread makes me sad because people just post copy-paste-ready code when it's obvious that the OP has little to no programming experience. This is not how learning works.

Link to comment
Share on other sites

Taking that part out causes the gui to close and spit the item i am placing in onto the floor. It only does that when placing the second part in either the fuel or the ore. Thanks for your time and help so far !

 

Hm, that should not happen...

I noticed you're registering your TileEntity in init. Try to do it in preInit after you've initialized your block.

 

Also try to set a breakpoint on the shouldRefresh return and see if it even gets called.

Don't ask for support per PM! They'll get ignored! | If a post helped you, click the "Thank You" button at the top right corner of said post! |

mah twitter

This thread makes me sad because people just post copy-paste-ready code when it's obvious that the OP has little to no programming experience. This is not how learning works.

Link to comment
Share on other sites

I tried moving the tile entity to the pre initialize and I put a print into the shouldRefresh to print the result of newBlock != ModBlocks.pyrolysisChamber && newBlock != ModBlocks.pyrolysisChamberActive, which does seem to be working as planned, for true and false.

 

I tried it commenting out the if (tileentity != null) { code like you said in your previous post but got the same thing with the gui just closing itself and all items falling on the floor. And I tried it with that code in but same original problem prevails sadly.

 

An extra thing I noticed is that if i say shift click 3 coal in and then shift click 3 ore in, it spits both out not just either, except for the 1 ore its processing and 1 coal remains in the fuel slot, however that coal cannot be shift clicked back to my inventory, although it can be dragged in. Not sure if this changes anything but thought I would mention it.

 

I have been looking at trying to save and refresh the inventory when the new block is created but no luck just yet.

 

Edit: I managed to figure out that the 1 coal that gets left in the machine is kind of a ghost item, I printed out the contents of the itemstack in that slot and it prints out 3xcoal etc. but after spitting out items it changes to 0xcoal, even though one shows inside the slot. Still working on it but thought I would update this.

Link to comment
Share on other sites

Taking that part out causes the gui to close and spit the item i am placing in onto the floor. It only does that when placing the second part in either the fuel or the ore. Thanks for your time and help so far !

 

Hm, that should not happen...

I noticed you're registering your TileEntity in init. Try to do it in preInit after you've initialized your block.

 

Also try to set a breakpoint on the shouldRefresh return and see if it even gets called.

 

Could the problem be because I set my variable 'private ItemStack[] pyrolysisChamberItemStacks = new ItemStack[39];' At the top of my tile entity, so every time the tile entity runs it is resetting the itemstackvariable back to 0 and in the process resetting the slots ? Just theorising based on what I am seeing and reading in my code, I am trying to test the theory now.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • Hello There! In the 171st episode of Hunger Games we are for once not the most wanted men in this match however after this I feel like we have officially became enemies with them if we haven't already.  
    • crashed with a empty report i tried again and [18jun.2024 04:38:56.251] [main/INFO] [cpw.mods.modlauncher.Launcher/MODLAUNCHER]: ModLauncher running: args [--username, 42crowley, --version, 1.20.1-forge-47.3.1, --gameDir, C:\Users\********\curseforge\minecraft\Instances\Mine dos cria, --assetsDir, C:\Users\********\AppData\Roaming\.minecraft\assets, --assetIndex, 5, --uuid, b917df67f6ce3ca4ac9b4e438faa1f85, --accessToken, ????????, --clientId, 0, --xuid, 0, --userType, msa, --versionType, release, --width, 854, --height, 480, --launchTarget, forgeclient, --fml.forgeVersion, 47.3.1, --fml.mcVersion, 1.20.1, --fml.forgeGroup, net.minecraftforge, --fml.mcpVersion, 20230612.114412] 2[18jun.2024 04:38:56.263] [main/INFO] [cpw.mods.modlauncher.Launcher/MODLAUNCHER]: ModLauncher 10.0.9 10.0.9 main.dcd20f30 starting: java version 17.0.8 by Microsoft; OS Windows 11 arch amd64 version 10.0 3[18jun.2024 04:38:57.587] [main/INFO] [net.minecraftforge.fml.loading.ImmediateWindowHandler/]: Loading ImmediateWindowProvider fmlearlywindow 4[18jun.2024 04:38:57.967] [main/INFO] [EARLYDISPLAY/]: Trying GL version 4.6 5[18jun.2024 04:38:58.046] [main/INFO] [EARLYDISPLAY/]: Requested GL version 4.6 got version 4.6 6[18jun.2024 04:38:58.464] [main/INFO] [mixin/]: SpongePowered MIXIN Subsystem Version=0.8.5 Source=union:/C:/Users/********/AppData/Roaming/.minecraft/libraries/org/spongepowered/mixin/0.8.5/mixin-0.8.5.jar#100!/ Service=ModLauncher Env=CLIENT 7[18jun.2024 04:38:58.680] [pool-4-thread-1/INFO] [EARLYDISPLAY/]: GL info: Intel(R) UHD Graphics GL version 4.6.0 - Build 30.0.101.2079, Intel 8[18jun.2024 04:38:59.401] [main/WARN] [net.minecraftforge.fml.loading.moddiscovery.ModFileParser/LOADING]: Mod file C:\Users\********\AppData\Roaming\.minecraft\libraries\net\minecraftforge\fmlcore\1.20.1-47.3.1\fmlcore-1.20.1-47.3.1.jar is missing mods.toml file 9[18jun.2024 04:38:59.407] [main/WARN] [net.minecraftforge.fml.loading.moddiscovery.ModFileParser/LOADING]: Mod file C:\Users\********\AppData\Roaming\.minecraft\libraries\net\minecraftforge\javafmllanguage\1.20.1-47.3.1\javafmllanguage-1.20.1-47.3.1.jar is missing mods.toml file 10[18jun.2024 04:38:59.412] [main/WARN] [net.minecraftforge.fml.loading.moddiscovery.ModFileParser/LOADING]: Mod file C:\Users\********\AppData\Roaming\.minecraft\libraries\net\minecraftforge\lowcodelanguage\1.20.1-47.3.1\lowcodelanguage-1.20.1-47.3.1.jar is missing mods.toml file 11[18jun.2024 04:38:59.418] [main/WARN] [net.minecraftforge.fml.loading.moddiscovery.ModFileParser/LOADING]: Mod file C:\Users\********\AppData\Roaming\.minecraft\libraries\net\minecraftforge\mclanguage\1.20.1-47.3.1\mclanguage-1.20.1-47.3.1.jar is missing mods.toml file 12[18jun.2024 04:39:00.142] [main/WARN] [net.minecraftforge.jarjar.selection.JarSelector/]: Attempted to select two dependency jars from JarJar which have the same identification: Mod File: and Mod File: . Using Mod File: 13[18jun.2024 04:39:00.144] [main/WARN] [net.minecraftforge.jarjar.selection.JarSelector/]: Attempted to select a dependency jar for JarJar which was passed in as source: curios. Using Mod File: C:\Users\********\curseforge\minecraft\Instances\Mine dos cria\mods\curios-forge-5.9.1 1.20.1.jar 14[18jun.2024 04:39:00.145] [main/INFO] [net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator/]: Found 20 dependencies adding them to mods collection 15[18jun.2024 04:39:05.971] [main/INFO] [mixin/]: Compatibility level set to JAVA_17 16[18jun.2024 04:39:06.966] [main/INFO] [mixin/]: Successfully loaded Mixin Connector [com.sonicether.soundphysics.MixinConnector] 17[18jun.2024 04:39:06.972] [main/INFO] [cpw.mods.modlauncher.LaunchServiceHandler/MODLAUNCHER]: Launching target 'forgeclient' with arguments [--version, 1.20.1-forge-47.3.1, --gameDir, C:\Users\********\curseforge\minecraft\Instances\Mine dos cria, --assetsDir, C:\Users\********\AppData\Roaming\.minecraft\assets, --uuid, b917df67f6ce3ca4ac9b4e438faa1f85, --username, 42crowley, --assetIndex, 5, --accessToken, ????????, --clientId, 0, --xuid, 0, --userType, msa, --versionType, release, --width, 854, --height, 480] 18[18jun.2024 04:39:07.007] [main/WARN] [mixin/]: Reference map 'createdeco-forge-refmap.json' for createdeco.mixins.json could not be read. If this is a development environment you can ignore this message 19[18jun.2024 04:39:07.192] [main/INFO] [ModernFix/]: Loaded configuration file for ModernFix 5.17.0 mc1.20.1: 78 options available, 0 override(s) found 20[18jun.2024 04:39:07.194] [main/INFO] [ModernFix/]: Applying Nashorn fix 21[18jun.2024 04:39:07.223] [main/INFO] [ModernFix/]: Applied Forge config corruption patch 22[18jun.2024 04:39:07.413] [main/WARN] [mixin/]: Reference map 'interiors-forge-refmap.json' for interiors.mixins.json could not be read. If this is a development environment you can ignore this message 23[18jun.2024 04:39:07.477] [main/INFO] [Embeddium/]: Loaded configuration file for Embeddium: 132 options available, 3 override(s) found 24[18jun.2024 04:39:07.480] [main/INFO] [Embeddium-GraphicsAdapterProbe/]: Searching for graphics cards... 25[18jun.2024 04:39:08.097] [main/INFO] [Embeddium-GraphicsAdapterProbe/]: Found graphics card: GraphicsAdapterInfo[vendor=INTEL, name=Intel(R) UHD Graphics, version=DriverVersion=30.0.101.2079] 26[18jun.2024 04:39:08.194] [main/WARN] [mixin/]: Reference map 'yungsextras.refmap.json' for yungsextras.mixins.json could not be read. If this is a development environment you can ignore this message 27[18jun.2024 04:39:08.197] [main/WARN] [mixin/]: Reference map 'yungsextras.refmap.json' for yungsextras_forge.mixins.json could not be read. If this is a development environment you can ignore this message 28[18jun.2024 04:39:08.234] [main/WARN] [mixin/]: Reference map 'nitrogen_internals.refmap.json' for nitrogen_internals.mixins.json could not be read. If this is a development environment you can ignore this message 29[18jun.2024 04:39:08.259] [main/WARN] [mixin/]: Reference map 'octolib.refmap.json' for octolib.mixins.json could not be read. If this is a development environment you can ignore this message 30[18jun.2024 04:39:08.384] [main/WARN] [mixin/]: Reference map 'mes-forge-refmap.json' for mes-forge.mixins.json could not be read. If this is a development environment you can ignore this message 31[18jun.2024 04:39:11.680] [main/WARN] [mixin/]: Error loading class: dev/latvian/mods/kubejs/recipe/RecipesEventJS (java.lang.ClassNotFoundException: dev.latvian.mods.kubejs.recipe.RecipesEventJS) 32[18jun.2024 04:39:11.685] [main/WARN] [mixin/]: @Mixin target dev.latvian.mods.kubejs.recipe.RecipesEventJS was not found sliceanddice.mixins.json:RecipeEventJSMixin 33[18jun.2024 04:39:12.476] [main/WARN] [mixin/]: Error loading class: earth/terrarium/botarium/forge/BotariumForge (java.lang.ClassNotFoundException: earth.terrarium.botarium.forge.BotariumForge) 34[18jun.2024 04:39:12.477] [main/WARN] [mixin/]: @Mixin target earth.terrarium.botarium.forge.BotariumForge was not found create_central_kitchen.mixins.json:common.botarium.BotariumForgeMixin 35[18jun.2024 04:39:12.481] [main/WARN] [mixin/]: Error loading class: dan200/computercraft/shared/integration/MoreRedIntegration (java.lang.ClassNotFoundException: dan200.computercraft.shared.integration.MoreRedIntegration) 36[18jun.2024 04:39:12.482] [main/WARN] [mixin/]: @Mixin target dan200.computercraft.shared.integration.MoreRedIntegration was not found create_central_kitchen.mixins.json:common.computercraft.MoreRedIntegrationMixin 37[18jun.2024 04:39:12.739] [main/WARN] [mixin/]: Error loading class: com/sammy/minersdelight/content/block/copper_pot/CopperPotBlockEntity (java.lang.ClassNotFoundException: com.sammy.minersdelight.content.block.copper_pot.CopperPotBlockEntity) 38[18jun.2024 04:39:12.739] [main/WARN] [mixin/]: @Mixin target com.sammy.minersdelight.content.block.copper_pot.CopperPotBlockEntity was not found create_central_kitchen.mixins.json:common.minersdelight.CopperPotBlockEntityMixin 39[18jun.2024 04:39:12.742] [main/WARN] [mixin/]: Error loading class: com/sammy/minersdelight/content/block/sticky_basket/StickyBasketBlockEntity (java.lang.ClassNotFoundException: com.sammy.minersdelight.content.block.sticky_basket.StickyBasketBlockEntity) 40[18jun.2024 04:39:12.742] [main/WARN] [mixin/]: @Mixin target com.sammy.minersdelight.content.block.sticky_basket.StickyBasketBlockEntity was not found create_central_kitchen.mixins.json:common.minersdelight.StickyBasketBlockEntityAccessor 41[18jun.2024 04:39:12.745] [main/WARN] [mixin/]: Error loading class: com/sammy/minersdelight/content/block/sticky_basket/StickyBasketBlockEntity (java.lang.ClassNotFoundException: com.sammy.minersdelight.content.block.sticky_basket.StickyBasketBlockEntity) 42[18jun.2024 04:39:12.745] [main/WARN] [mixin/]: @Mixin target com.sammy.minersdelight.content.block.sticky_basket.StickyBasketBlockEntity was not found create_central_kitchen.mixins.json:common.minersdelight.StickyBasketBlockEntityMixin 43[18jun.2024 04:39:12.749] [main/WARN] [mixin/]: Error loading class: net/orcinus/overweightfarming/blocks/CropFullBlock (java.lang.ClassNotFoundException: net.orcinus.overweightfarming.blocks.CropFullBlock) 44[18jun.2024 04:39:12.749] [main/WARN] [mixin/]: @Mixin target net.orcinus.overweightfarming.blocks.CropFullBlock was not found create_central_kitchen.mixins.json:common.overweightfarming.CropFullBlockMixin 45[18jun.2024 04:39:13.708] [main/WARN] [Embeddium/]: Force-disabling mixin 'features.render.world.sky.WorldRendererMixin' as rule 'mixin.features.render.world.sky' (added by mods [oculus]) disables it and children 46[18jun.2024 04:39:13.710] [main/WARN] [Embeddium/]: Force-disabling mixin 'features.render.world.sky.ClientWorldMixin' as rule 'mixin.features.render.world.sky' (added by mods [oculus]) disables it and children 47[18jun.2024 04:39:13.711] [main/WARN] [Embeddium/]: Force-disabling mixin 'features.render.world.sky.BackgroundRendererMixin' as rule 'mixin.features.render.world.sky' (added by mods [oculus]) disables it and children 48[18jun.2024 04:39:13.719] [main/WARN] [Embeddium/]: Force-disabling mixin 'features.render.gui.font.GlyphRendererMixin' as rule 'mixin.features.render.gui.font' (added by mods [oculus]) disables it and children 49[18jun.2024 04:39:13.720] [main/WARN] [Embeddium/]: Force-disabling mixin 'features.render.gui.font.FontSetMixin' as rule 'mixin.features.render.gui.font' (added by mods [oculus]) disables it and children 50[18jun.2024 04:39:13.722] [main/WARN] [Embeddium/]: Force-disabling mixin 'features.render.entity.shadows.EntityRenderDispatcherMixin' as rule 'mixin.features.render.entity' (added by mods [oculus]) disables it and children 51[18jun.2024 04:39:13.724] [main/WARN] [Embeddium/]: Force-disabling mixin 'features.render.entity.fast_render.ModelPartMixin' as rule 'mixin.features.render.entity' (added by mods [oculus]) disables it and children 52[18jun.2024 04:39:13.726] [main/WARN] [Embeddium/]: Force-disabling mixin 'features.render.entity.fast_render.CuboidMixin' as rule 'mixin.features.render.entity' (added by mods [oculus]) disables it and children 53[18jun.2024 04:39:13.729] [main/WARN] [Embeddium/]: Force-disabling mixin 'features.render.entity.cull.EntityRendererMixin' as rule 'mixin.features.render.entity' (added by mods [oculus]) disables it and children 54[18jun.2024 04:39:15.111] [main/INFO] [MixinExtras|Service/]: Initializing MixinExtras via com.llamalad7.mixinextras.service.MixinExtrasServiceImpl(version=0.3.6). 55[18jun.2024 04:39:18.941] [pool-6-thread-1/INFO] [net.minecraft.server.Bootstrap/]: ModernFix reached bootstrap stage (29.23 s after launch) 56[18jun.2024 04:39:19.116] [pool-6-thread-1/WARN] [mixin/]: @Final field delegatesByName:Ljava/util/Map; in modernfix-forge.mixins.json:perf.forge_registry_alloc.ForgeRegistryMixin should be final 57[18jun.2024 04:39:19.116] [pool-6-thread-1/WARN] [mixin/]: @Final field delegatesByValue:Ljava/util/Map; in modernfix-forge.mixins.json:perf.forge_registry_alloc.ForgeRegistryMixin should be final [18jun.2024 04:39:21.577] [pool-6-thread-1/INFO] [net.minecraft.server.Bootstrap/]: Vanilla bootstrap took 2632 milliseconds
  • Topics

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.