Jump to content
View in the app

A better way to browse. Learn more.

Forge Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Featured Replies

Posted

Hello, I am making a custom crafting table. I got it almost working, but it crashes with a new recipe.

The crash report:

net.minecraft.util.ReportedException: Updating screen events
at net.minecraft.client.Minecraft.runTick(Minecraft.java:1774) ~[Minecraft.class:?]
at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1087) ~[Minecraft.class:?]
at net.minecraft.client.Minecraft.run(Minecraft.java:376) [Minecraft.class:?]
at net.minecraft.client.main.Main.main(Main.java:117) [Main.class:?]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_31]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_31]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_31]
at java.lang.reflect.Method.invoke(Method.java:483) ~[?:1.8.0_31]
at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.12.jar:?]
at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_31]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_31]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_31]
at java.lang.reflect.Method.invoke(Method.java:483) ~[?:1.8.0_31]
at net.minecraftforge.gradle.GradleStartCommon.launch(Unknown Source) [start/:?]
at GradleStart.main(Unknown Source) [start/:?]
Caused by: java.lang.NullPointerException
at net.minecraft.inventory.SlotCrafting.onPickupFromSlot(SlotCrafting.java:139) ~[slotCrafting.class:?]
at net.minecraft.inventory.Container.slotClick(Container.java:359) ~[Container.class:?]
at net.minecraft.client.multiplayer.PlayerControllerMP.windowClick(PlayerControllerMP.java:539) ~[PlayerControllerMP.class:?]
at net.minecraft.client.gui.inventory.GuiContainer.handleMouseClick(GuiContainer.java:690) ~[GuiContainer.class:?]
at net.minecraft.client.gui.inventory.GuiContainer.mouseClicked(GuiContainer.java:422) ~[GuiContainer.class:?]
at net.minecraft.client.gui.GuiScreen.handleMouseInput(GuiScreen.java:606) ~[GuiScreen.class:?]
at net.minecraft.client.gui.GuiScreen.handleInput(GuiScreen.java:572) ~[GuiScreen.class:?]
at net.minecraft.client.Minecraft.runTick(Minecraft.java:1760) ~[Minecraft.class:?]
... 15 more
[10:37:51] [Client thread/INFO] [sTDOUT]: [net.minecraft.init.Bootstrap:printToSYSOUT:663]: ---- Minecraft Crash Report ----
// Everything's going to plan. No, really, that was supposed to happen.

Time: 3/24/16 10:37 AM
Description: Updating screen events

java.lang.NullPointerException: Updating screen events
at net.minecraft.inventory.SlotCrafting.onPickupFromSlot(SlotCrafting.java:139)
at net.minecraft.inventory.Container.slotClick(Container.java:359)
at net.minecraft.client.multiplayer.PlayerControllerMP.windowClick(PlayerControllerMP.java:539)
at net.minecraft.client.gui.inventory.GuiContainer.handleMouseClick(GuiContainer.java:690)
at net.minecraft.client.gui.inventory.GuiContainer.mouseClicked(GuiContainer.java:422)
at net.minecraft.client.gui.GuiScreen.handleMouseInput(GuiScreen.java:606)
at net.minecraft.client.gui.GuiScreen.handleInput(GuiScreen.java:572)
at net.minecraft.client.Minecraft.runTick(Minecraft.java:1760)
at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1087)
at net.minecraft.client.Minecraft.run(Minecraft.java:376)
at net.minecraft.client.main.Main.main(Main.java:117)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at net.minecraftforge.gradle.GradleStartCommon.launch(Unknown Source)
at GradleStart.main(Unknown Source)


A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------

-- Head --
Stacktrace:
at net.minecraft.inventory.SlotCrafting.onPickupFromSlot(SlotCrafting.java:139)
at net.minecraft.inventory.Container.slotClick(Container.java:359)
at net.minecraft.client.multiplayer.PlayerControllerMP.windowClick(PlayerControllerMP.java:539)
at net.minecraft.client.gui.inventory.GuiContainer.handleMouseClick(GuiContainer.java:690)
at net.minecraft.client.gui.inventory.GuiContainer.mouseClicked(GuiContainer.java:422)
at net.minecraft.client.gui.GuiScreen.handleMouseInput(GuiScreen.java:606)
at net.minecraft.client.gui.GuiScreen.handleInput(GuiScreen.java:572)

-- Affected screen --
Details:
Screen name: aidas.morestuff.client.gui.BigGui

-- Affected level --
Details:
Level name: MpServer
All players: 1 total; [EntityPlayerSP['Player568'/170, l='MpServer', x=172.67, y=66.00, z=278.58]]
Chunk stats: MultiplayerChunkCache: 625, 625
Level seed: 0
Level generator: ID 00 - default, ver 1. Features enabled: false
Level generator options: 
Level spawn location: 164.00,64.00,256.00 - World: (164,64,256), Chunk: (at 4,4,0 in 10,16; contains blocks 160,0,256 to 175,255,271), Region: (0,0; contains chunks 0,0 to 31,31, blocks 0,0,0 to 511,255,511)
Level time: 375270 game time, 1000 day time
Level dimension: 0
Level storage version: 0x00000 - Unknown?
Level weather: Rain time: 0 (now: false), thunder time: 0 (now: false)
Level game mode: Game mode: creative (ID 1). Hardcore: false. Cheats: false
Forced entities: 69 total; [EntityBat['Bat'/128, l='MpServer', x=243.75, y=27.10, z=218.25], EntityBat['Bat'/129, l='MpServer', x=247.48, y=27.00, z=244.13], EntityBat['Bat'/130, l='MpServer', x=247.48, y=27.01, z=253.78], EntityZombie['Zombie'/131, l='MpServer', x=251.84, y=26.00, z=263.63], EntityZombie['Zombie'/133, l='MpServer', x=242.50, y=39.00, z=274.50], EntitySquid['Squid'/134, l='MpServer', x=234.47, y=60.59, z=274.38], EntitySkeleton['Skeleton'/137, l='MpServer', x=245.88, y=28.00, z=298.44], EntitySkeleton['Skeleton'/138, l='MpServer', x=247.50, y=12.00, z=305.50], EntityBat['Bat'/139, l='MpServer', x=246.60, y=33.67, z=307.04], EntitySkeleton['Skeleton'/140, l='MpServer', x=244.50, y=32.00, z=307.50], EntitySkeleton['Skeleton'/141, l='MpServer', x=247.50, y=33.00, z=310.09], EntityCreeper['Creeper'/142, l='MpServer', x=251.72, y=15.00, z=327.75], EntitySkeleton['Skeleton'/143, l='MpServer', x=250.50, y=15.00, z=327.50], EntityCreeper['Creeper'/144, l='MpServer', x=252.69, y=15.00, z=328.69], EntitySkeleton['Skeleton'/145, l='MpServer', x=249.81, y=18.00, z=341.69], EntityZombie['Zombie'/146, l='MpServer', x=251.50, y=18.00, z=341.50], EntityBat['Bat'/147, l='MpServer', x=242.75, y=23.10, z=341.41], EntitySpider['Spider'/148, l='MpServer', x=246.50, y=25.00, z=344.50], EntityCreeper['Creeper'/149, l='MpServer', x=247.50, y=25.00, z=347.50], EntityEnderman['Enderman'/26, l='MpServer', x=94.47, y=15.00, z=209.31], EntityCreeper['Creeper'/30, l='MpServer', x=107.72, y=14.00, z=218.16], EntityEnderman['Enderman'/31, l='MpServer', x=99.28, y=15.00, z=210.44], EntityCreeper['Creeper'/33, l='MpServer', x=109.50, y=11.00, z=276.50], EntityZombie['Zombie'/36, l='MpServer', x=128.47, y=20.00, z=202.03], EntityCreeper['Creeper'/40, l='MpServer', x=154.97, y=12.00, z=246.38], EntityChicken['Chicken'/51, l='MpServer', x=170.19, y=64.65, z=206.31], EntityCreeper['Creeper'/52, l='MpServer', x=168.50, y=12.00, z=227.50], EntityCreeper['Creeper'/53, l='MpServer', x=171.50, y=12.00, z=228.50], EntityCreeper['Creeper'/54, l='MpServer', x=166.56, y=13.00, z=231.03], EntityChicken['Chicken'/55, l='MpServer', x=160.22, y=65.47, z=244.34], EntityItem['item.item.egg'/56, l='MpServer', x=160.09, y=65.00, z=244.63], EntityZombie['Zombie'/60, l='MpServer', x=192.03, y=13.00, z=200.50], EntityRabbit['Rabbit'/61, l='MpServer', x=184.69, y=68.00, z=241.09], EntitySpider['Spider'/62, l='MpServer', x=191.50, y=14.00, z=298.50], EntityZombie['Zombie'/63, l='MpServer', x=183.50, y=17.00, z=326.50], EntityZombie['Zombie'/73, l='MpServer', x=192.69, y=13.00, z=201.66], EntitySpider['Spider'/74, l='MpServer', x=194.50, y=13.00, z=203.50], EntitySkeleton['Skeleton'/75, l='MpServer', x=199.91, y=37.00, z=230.44], EntitySkeleton['Skeleton'/76, l='MpServer', x=200.50, y=35.00, z=247.50], EntityCreeper['Creeper'/77, l='MpServer', x=207.59, y=33.00, z=247.81], EntitySquid['Squid'/78, l='MpServer', x=201.63, y=62.00, z=250.97], EntityCreeper['Creeper'/79, l='MpServer', x=201.50, y=30.00, z=274.50], EntityCreeper['Creeper'/80, l='MpServer', x=199.50, y=30.00, z=274.50], EntitySkeleton['Skeleton'/81, l='MpServer', x=206.41, y=47.00, z=283.06], EntityZombie['Zombie'/82, l='MpServer', x=205.09, y=47.00, z=280.25], EntityBat['Bat'/83, l='MpServer', x=207.05, y=48.56, z=282.00], EntitySpider['Spider'/84, l='MpServer', x=199.63, y=20.00, z=332.84], EntityBat['Bat'/85, l='MpServer', x=203.75, y=22.10, z=335.41], EntityRabbit['Rabbit'/97, l='MpServer', x=220.66, y=66.00, z=208.75], EntityCreeper['Creeper'/98, l='MpServer', x=208.47, y=32.00, z=249.06], EntitySquid['Squid'/99, l='MpServer', x=220.47, y=44.94, z=244.75], EntityBat['Bat'/228, l='MpServer', x=206.56, y=31.10, z=276.19], EntitySquid['Squid'/100, l='MpServer', x=215.84, y=60.84, z=256.69], EntityBat['Bat'/229, l='MpServer', x=210.00, y=30.02, z=274.53], EntitySquid['Squid'/101, l='MpServer', x=228.47, y=46.16, z=250.41], EntityCreeper['Creeper'/102, l='MpServer', x=218.91, y=32.00, z=269.47], EntitySquid['Squid'/103, l='MpServer', x=228.41, y=55.19, z=264.53], EntitySquid['Squid'/104, l='MpServer', x=222.56, y=53.00, z=267.81], EntitySquid['Squid'/105, l='MpServer', x=218.44, y=59.13, z=342.81], EntityPlayerSP['Player568'/170, l='MpServer', x=172.67, y=66.00, z=278.58], EntityChicken['Chicken'/108, l='MpServer', x=236.47, y=62.69, z=237.22], EntitySquid['Squid'/109, l='MpServer', x=232.16, y=46.81, z=244.47], EntitySquid['Squid'/110, l='MpServer', x=230.84, y=52.25, z=256.91], EntitySquid['Squid'/111, l='MpServer', x=220.34, y=48.72, z=250.44], EntitySquid['Squid'/112, l='MpServer', x=224.81, y=54.69, z=263.53], EntitySkeleton['Skeleton'/114, l='MpServer', x=227.50, y=37.00, z=316.50], EntityBat['Bat'/115, l='MpServer', x=236.53, y=26.10, z=345.34], EntityBat['Bat'/116, l='MpServer', x=235.25, y=24.10, z=344.56], EntityBat['Bat'/119, l='MpServer', x=228.20, y=22.05, z=353.16]]
Retry entities: 0 total; []
Server brand: fml,forge
Server type: Integrated singleplayer server
Stacktrace:
at net.minecraft.client.multiplayer.WorldClient.addWorldInfoToCrashReport(WorldClient.java:392)
at net.minecraft.client.Minecraft.addGraphicsAndWorldToCrashReport(Minecraft.java:2614)
at net.minecraft.client.Minecraft.run(Minecraft.java:398)
at net.minecraft.client.main.Main.main(Main.java:117)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at net.minecraftforge.gradle.GradleStartCommon.launch(Unknown Source)
at GradleStart.main(Unknown Source)

The container code:

package aidas.morestuff.guicontainer;

import aidas.morestuff.blocks.MBlocks;
import aidas.morestuff.items.MItems;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.init.Blocks;
import net.minecraft.inventory.Container;
import net.minecraft.inventory.IInventory;
import net.minecraft.inventory.InventoryCraftResult;
import net.minecraft.inventory.InventoryCrafting;
import net.minecraft.inventory.Slot;
import net.minecraft.inventory.SlotCrafting;
import net.minecraft.item.ItemStack;
import net.minecraft.item.crafting.CraftingManager;
import net.minecraft.util.BlockPos;
import net.minecraft.world.World;

public class BigContainer extends Container
{
    /** The crafting matrix inventory (4x4). */
    public InventoryCrafting craftMatrix = new InventoryCrafting(this, 4, 4);
    public IInventory craftResult = new InventoryCraftResult();
    private World worldObj;
    private BlockPos field_178145_h;
    private static final String __OBFID = "CL_00001744";

    public BigContainer(InventoryPlayer playerInventory, World worldIn, BlockPos p_i45800_3_)
    {
        this.worldObj = worldIn;
        this.field_178145_h = p_i45800_3_;
        this.addSlotToContainer(new SlotCrafting(playerInventory.player, this.craftMatrix, this.craftResult, 0, 124, 35));
        int i;
        int j;
        
        int counter = 0;
        for (i = 0; i < 4; ++i)
        {
            for (j = 0; j < 4; ++j)
            {
                this.addSlotToContainer(new Slot(this.craftMatrix, counter++, 11 + j * 18, 5 + i * 18));
            }
        }

        for (i = 0; i < 3; ++i)
        {
            for (j = 0; j < 9; ++j)
            {
                this.addSlotToContainer(new Slot(playerInventory, j + i * 9 + 9, 8 + j * 18, 84 + i * 18));
            }
        }

        for (i = 0; i < 9; ++i)
        {
            this.addSlotToContainer(new Slot(playerInventory, i, 8 + i * 18, 142));
        }

        this.onCraftMatrixChanged(this.craftMatrix);
    }

    /**
     * Callback for when the crafting matrix is changed.
     */
    public void onCraftMatrixChanged(IInventory inventoryIn)
    {
        /*ItemStack out = CraftingManager.getInstance().findMatchingRecipe(this.craftMatrix, this.worldObj);
        if(out != null && out.getItem() == MItems.SeedRuby)
        {*/
    	this.craftResult.setInventorySlotContents(0, CraftingManager.getInstance().findMatchingRecipe(this.craftMatrix, this.worldObj));
        //}
    }

    /**
     * Called when the container is closed.
     */
    public void onContainerClosed(EntityPlayer playerIn)
    {
        super.onContainerClosed(playerIn);

        if (!this.worldObj.isRemote)
        {
            for (int i = 0; i < 16; ++i)
            {
                ItemStack itemstack = this.craftMatrix.getStackInSlotOnClosing(i);

                if (itemstack != null)
                {
                    playerIn.dropPlayerItemWithRandomChoice(itemstack, false);
                }
            }
        }
    }

    public boolean canInteractWith(EntityPlayer playerIn)
    {
        return this.worldObj.getBlockState(this.field_178145_h).getBlock() != MBlocks.big_workbench ? false : playerIn.getDistanceSq((double)this.field_178145_h.getX() + 0.5D, (double)this.field_178145_h.getY() + 0.5D, (double)this.field_178145_h.getZ() + 0.5D) <= 64.0D;
    }

    /**
     * Take a stack from the specified inventory slot.
     */
    public ItemStack transferStackInSlot(EntityPlayer playerIn, int index)
    {
        ItemStack itemstack = null;
        Slot slot = (Slot)this.inventorySlots.get(index);

        if (slot != null && slot.getHasStack())
        {
            ItemStack itemstack1 = slot.getStack();
            itemstack = itemstack1.copy();

            if (index == 0)
            {
                if (!this.mergeItemStack(itemstack1, 10, 46, true))
                {
                    return null;
                }

                slot.onSlotChange(itemstack1, itemstack);
            }
            else if (index >= 10 && index < 37)
            {
                if (!this.mergeItemStack(itemstack1, 37, 46, false))
                {
                    return null;
                }
            }
            else if (index >= 37 && index < 46)
            {
                if (!this.mergeItemStack(itemstack1, 10, 37, false))
                {
                    return null;
                }
            }
            else if (!this.mergeItemStack(itemstack1, 10, 46, false))
            {
                return null;
            }

            if (itemstack1.stackSize == 0)
            {
                slot.putStack((ItemStack)null);
            }
            else
            {
                slot.onSlotChanged();
            }

            if (itemstack1.stackSize == itemstack.stackSize)
            {
                return null;
            }
            System.out.println(itemstack1.toString());
            slot.onPickupFromSlot(playerIn, itemstack1);
        }

        return itemstack;
    }

    /**
     * Called to determine if the current slot is valid for the stack merging (double-click) code. The stack passed in
     * is null for the initial slot that was double-clicked.
     */
    public boolean canMergeSlot(ItemStack p_94530_1_, Slot p_94530_2_)
    {
        return p_94530_2_.inventory != this.craftResult && super.canMergeSlot(p_94530_1_, p_94530_2_);
    }
}

The recipe code:

package aidas.morestuff.crafting;

import aidas.morestuff.items.MItems;
import net.minecraft.inventory.InventoryCrafting;
import net.minecraft.item.ItemStack;
import net.minecraft.item.crafting.IRecipe;
import net.minecraft.world.World;

public class RubySeedRecipie implements IRecipe
{

@Override
public boolean matches(InventoryCrafting slot, World worldIn)
{
	if(slot.getSizeInventory() != 16) return false;
	boolean matches = false;
	for(int i = 0; i < slot.getSizeInventory(); i++)
	{
		matches = slot.getStackInSlot(i) != null && slot.getStackInSlot(i).getItem() == MItems.ruby;
		if(!matches) break;
	}
	return matches;
}

@Override
public ItemStack getCraftingResult(InventoryCrafting p_77572_1_)
{
	return new ItemStack(MItems.pokeball);
}

@Override
public int getRecipeSize()
{
	return 16;
}

@Override
public ItemStack getRecipeOutput()
{
	return new ItemStack(MItems.pokeball);
}

@Override
public ItemStack[] getRemainingItems(InventoryCrafting p_179532_1_)
{
	return null;
}

}

It actually crafts it, but when I try to get the item out of it, it crashes :(.

  • Author

Are you registering the items and recipes in the correct order?

I'm first registering the recipe in both client and server side and then items/blocks.

Are you registering the items and recipes in the correct order?

I'm first registering the recipe in both client and server side and then items/blocks.

 

Don't do that.

 

Items/blocks should be registered in the preInit phase. Recipes should be registered in the init phase.

Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.

Item doodad;
registerRecipe(doodad, stick, string); //what is the value of doodad now?
doodad = new ItemDoodad();
regosterItem(doodad, "doodad");

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

  • Author

Are you registering the items and recipes in the correct order?

I'm first registering the recipe in both client and server side and then items/blocks.

 

Don't do that.

 

Items/blocks should be registered in the preInit phase. Recipes should be registered in the init phase.

Ok. I have placed it in the init phase, but it still crashes with the same error.

Ok. I have placed it in the init phase, but it still crashes with the same error.

 

Upload your

@Mod

class, your item registration class and your recipe registration class to Gist or Pastebin with syntax highlighting and link them here. To get syntax highlighting on Gist, give each file the appropriate extension (.java for Java code). To get syntax highlighting on Pastebin, select the language from the dropdown at the bottom of the page.

Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.

  • Author

Upload your

@Mod

class, your item registration class and your recipe registration class to Gist or Pastebin with syntax highlighting and link them here. To get syntax highlighting on Gist, give each file the appropriate extension (.java for Java code). To get syntax highlighting on Pastebin, select the language from the dropdown at the bottom of the page.

@Mod

http://pastebin.com/4QNrjRJR

Recipe registering

http://pastebin.com/5MQCgys1

And the item registration

http://pastebin.com/zgdG8Yyc

  • Author

getRemainingItems

must not return null.

I might sound dumb, but how do I make the player get nothing without returning null?

  • Author

Ok after I added the forge hook I get a different crash report

net.minecraft.util.ReportedException: Updating screen events
at net.minecraft.client.Minecraft.runTick(Minecraft.java:1774) ~[Minecraft.class:?]
at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1087) ~[Minecraft.class:?]
at net.minecraft.client.Minecraft.run(Minecraft.java:376) [Minecraft.class:?]
at net.minecraft.client.main.Main.main(Main.java:117) [Main.class:?]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_31]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_31]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_31]
at java.lang.reflect.Method.invoke(Method.java:483) ~[?:1.8.0_31]
at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.12.jar:?]
at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_31]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_31]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_31]
at java.lang.reflect.Method.invoke(Method.java:483) ~[?:1.8.0_31]
at net.minecraftforge.gradle.GradleStartCommon.launch(Unknown Source) [start/:?]
at GradleStart.main(Unknown Source) [start/:?]
Caused by: java.lang.NullPointerException
at net.minecraftforge.common.ForgeHooks.defaultRecipeGetRemainingItems(ForgeHooks.java:715) ~[ForgeHooks.class:?]
at aidas.morestuff.crafting.RubySeedRecipie.getRemainingItems(RubySeedRecipie.java:47) ~[RubySeedRecipie.class:?]
at net.minecraft.item.crafting.CraftingManager.func_180303_b(CraftingManager.java:362) ~[CraftingManager.class:?]
at net.minecraft.inventory.SlotCrafting.onPickupFromSlot(SlotCrafting.java:136) ~[slotCrafting.class:?]
at net.minecraft.inventory.Container.slotClick(Container.java:359) ~[Container.class:?]
at net.minecraft.client.multiplayer.PlayerControllerMP.windowClick(PlayerControllerMP.java:539) ~[PlayerControllerMP.class:?]
at net.minecraft.client.gui.inventory.GuiContainer.handleMouseClick(GuiContainer.java:690) ~[GuiContainer.class:?]
at net.minecraft.client.gui.inventory.GuiContainer.mouseClicked(GuiContainer.java:422) ~[GuiContainer.class:?]
at net.minecraft.client.gui.GuiScreen.handleMouseInput(GuiScreen.java:606) ~[GuiScreen.class:?]
at net.minecraft.client.gui.GuiScreen.handleInput(GuiScreen.java:572) ~[GuiScreen.class:?]
at net.minecraft.client.Minecraft.runTick(Minecraft.java:1760) ~[Minecraft.class:?]
... 15 more
[21:07:16] [Client thread/INFO] [sTDOUT]: [net.minecraft.init.Bootstrap:printToSYSOUT:663]: ---- Minecraft Crash Report ----
// But it works on my machine.

Time: 3/24/16 9:07 PM
Description: Updating screen events

java.lang.NullPointerException: Updating screen events
at net.minecraftforge.common.ForgeHooks.defaultRecipeGetRemainingItems(ForgeHooks.java:715)
at aidas.morestuff.crafting.RubySeedRecipie.getRemainingItems(RubySeedRecipie.java:47)
at net.minecraft.item.crafting.CraftingManager.func_180303_b(CraftingManager.java:362)
at net.minecraft.inventory.SlotCrafting.onPickupFromSlot(SlotCrafting.java:136)
at net.minecraft.inventory.Container.slotClick(Container.java:359)
at net.minecraft.client.multiplayer.PlayerControllerMP.windowClick(PlayerControllerMP.java:539)
at net.minecraft.client.gui.inventory.GuiContainer.handleMouseClick(GuiContainer.java:690)
at net.minecraft.client.gui.inventory.GuiContainer.mouseClicked(GuiContainer.java:422)
at net.minecraft.client.gui.GuiScreen.handleMouseInput(GuiScreen.java:606)
at net.minecraft.client.gui.GuiScreen.handleInput(GuiScreen.java:572)
at net.minecraft.client.Minecraft.runTick(Minecraft.java:1760)
at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1087)
at net.minecraft.client.Minecraft.run(Minecraft.java:376)
at net.minecraft.client.main.Main.main(Main.java:117)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at net.minecraftforge.gradle.GradleStartCommon.launch(Unknown Source)
at GradleStart.main(Unknown Source)


A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------

-- Head --
Stacktrace:
at net.minecraftforge.common.ForgeHooks.defaultRecipeGetRemainingItems(ForgeHooks.java:715)
at aidas.morestuff.crafting.RubySeedRecipie.getRemainingItems(RubySeedRecipie.java:47)
at net.minecraft.item.crafting.CraftingManager.func_180303_b(CraftingManager.java:362)
at net.minecraft.inventory.SlotCrafting.onPickupFromSlot(SlotCrafting.java:136)
at net.minecraft.inventory.Container.slotClick(Container.java:359)
at net.minecraft.client.multiplayer.PlayerControllerMP.windowClick(PlayerControllerMP.java:539)
at net.minecraft.client.gui.inventory.GuiContainer.handleMouseClick(GuiContainer.java:690)
at net.minecraft.client.gui.inventory.GuiContainer.mouseClicked(GuiContainer.java:422)
at net.minecraft.client.gui.GuiScreen.handleMouseInput(GuiScreen.java:606)
at net.minecraft.client.gui.GuiScreen.handleInput(GuiScreen.java:572)

-- Affected screen --
Details:
Screen name: aidas.morestuff.client.gui.BigGui

-- Affected level --
Details:
Level name: MpServer
All players: 1 total; [EntityPlayerSP['Player856'/173, l='MpServer', x=173.38, y=66.00, z=280.77]]
Chunk stats: MultiplayerChunkCache: 625, 625
Level seed: 0
Level generator: ID 00 - default, ver 1. Features enabled: false
Level generator options: 
Level spawn location: 164.00,64.00,256.00 - World: (164,64,256), Chunk: (at 4,4,0 in 10,16; contains blocks 160,0,256 to 175,255,271), Region: (0,0; contains chunks 0,0 to 31,31, blocks 0,0,0 to 511,255,511)
Level time: 388056 game time, 1000 day time
Level dimension: 0
Level storage version: 0x00000 - Unknown?
Level weather: Rain time: 0 (now: true), thunder time: 0 (now: false)
Level game mode: Game mode: creative (ID 1). Hardcore: false. Cheats: false
Forced entities: 62 total; [EntityCreeper['Creeper'/211075, l='MpServer', x=246.50, y=25.00, z=354.50], EntityZombie['Zombie'/295812, l='MpServer', x=132.50, y=67.00, z=239.50], EntityCreeper['Creeper'/211074, l='MpServer', x=245.59, y=24.00, z=362.06], EntityZombie['Zombie'/295808, l='MpServer', x=135.50, y=67.00, z=238.50], EntityZombie['Zombie'/295809, l='MpServer', x=136.50, y=67.00, z=238.50], EntitySkeleton['Skeleton'/211076, l='MpServer', x=245.50, y=25.00, z=352.50], EntityCreeper['Creeper'/295822, l='MpServer', x=116.41, y=67.00, z=264.94], EntityBat['Bat'/290319, l='MpServer', x=236.86, y=33.85, z=311.24], EntityZombie['Zombie'/295823, l='MpServer', x=120.38, y=69.00, z=275.91], EntityBat['Bat'/8846, l='MpServer', x=216.94, y=32.10, z=272.69], EntityZombie['Zombie'/152466, l='MpServer', x=182.88, y=64.00, z=265.41], EntityZombie['Zombie'/295824, l='MpServer', x=124.50, y=71.00, z=278.50], EntityBat['Bat'/290321, l='MpServer', x=222.91, y=35.32, z=324.49], EntityZombie['Zombie'/316957, l='MpServer', x=237.50, y=24.00, z=217.50], EntityBat['Bat'/248739, l='MpServer', x=114.46, y=12.09, z=201.06], EntityBat['Bat'/248738, l='MpServer', x=241.39, y=21.65, z=341.81], EntityBat['Bat'/248736, l='MpServer', x=195.09, y=18.75, z=316.48], EntityBat['Bat'/248740, l='MpServer', x=106.74, y=14.35, z=215.76], EntityZombie['Zombie'/154408, l='MpServer', x=172.50, y=13.00, z=229.50], EntityChicken['Chicken'/45, l='MpServer', x=170.63, y=64.69, z=206.56], EntityCreeper['Creeper'/320298, l='MpServer', x=231.56, y=21.00, z=345.73], EntityChicken['Chicken'/50, l='MpServer', x=160.28, y=65.51, z=243.78], EntityBat['Bat'/180401, l='MpServer', x=211.91, y=34.10, z=230.53], EntityCreeper['Creeper'/12084, l='MpServer', x=233.50, y=22.00, z=357.50], EntityPlayerSP['Player856'/173, l='MpServer', x=173.38, y=66.00, z=280.77], EntityRabbit['Rabbit'/55, l='MpServer', x=185.38, y=67.00, z=231.59], EntityBat['Bat'/318781, l='MpServer', x=138.64, y=12.00, z=205.57], EntityCreeper['Creeper'/320313, l='MpServer', x=174.50, y=66.00, z=201.50], EntityCreeper['Creeper'/327493, l='MpServer', x=184.50, y=66.00, z=215.50], EntityCreeper['Creeper'/327495, l='MpServer', x=188.50, y=66.00, z=220.50], EntityCreeper['Creeper'/327489, l='MpServer', x=182.50, y=66.00, z=218.50], EntityCreeper['Creeper'/327491, l='MpServer', x=185.50, y=66.00, z=218.50], EntityCreeper['Creeper'/242763, l='MpServer', x=226.50, y=63.00, z=316.50], EntitySpider['Spider'/253515, l='MpServer', x=107.50, y=70.00, z=288.50], EntityZombie['Zombie'/327501, l='MpServer', x=111.50, y=69.00, z=275.50], EntityCreeper['Creeper'/253513, l='MpServer', x=113.50, y=70.00, z=282.50], EntityCreeper['Creeper'/174668, l='MpServer', x=99.50, y=70.00, z=264.50], EntitySpider['Spider'/253516, l='MpServer', x=106.50, y=70.00, z=285.50], EntityWitch['Witch'/159960, l='MpServer', x=158.56, y=66.00, z=314.91], EntityCreeper['Creeper'/275038, l='MpServer', x=117.50, y=68.00, z=304.50], EntityCreeper['Creeper'/275039, l='MpServer', x=118.50, y=68.00, z=307.50], EntityItem['item.item.egg'/10332, l='MpServer', x=237.16, y=59.00, z=236.44], EntityChicken['Chicken'/94, l='MpServer', x=237.09, y=62.51, z=236.69], EntityBat['Bat'/8798, l='MpServer', x=151.47, y=29.10, z=214.78], EntityCreeper['Creeper'/295780, l='MpServer', x=208.31, y=40.00, z=246.91], EntityCreeper['Creeper'/295781, l='MpServer', x=208.56, y=40.00, z=249.56], EntityCreeper['Creeper'/159968, l='MpServer', x=206.50, y=47.00, z=282.50], EntityCreeper['Creeper'/275046, l='MpServer', x=225.50, y=63.00, z=316.50], EntityCreeper['Creeper'/295778, l='MpServer', x=193.28, y=63.00, z=268.60], EntityCreeper['Creeper'/295779, l='MpServer', x=194.13, y=63.00, z=268.28], EntitySquid['Squid'/161003, l='MpServer', x=180.50, y=58.63, z=312.50], EntitySkeleton['Skeleton'/201066, l='MpServer', x=208.84, y=32.00, z=247.47], EntitySkeleton['Skeleton'/201065, l='MpServer', x=212.50, y=32.02, z=234.50], EntitySquid['Squid'/161007, l='MpServer', x=220.50, y=51.69, z=270.41], EntityBat['Bat'/12142, l='MpServer', x=95.25, y=17.10, z=354.25], EntitySquid['Squid'/161004, l='MpServer', x=194.61, y=61.02, z=308.44], EntitySquid['Squid'/161005, l='MpServer', x=183.50, y=62.56, z=314.47], EntitySpider['Spider'/275051, l='MpServer', x=132.50, y=72.00, z=278.50], EntitySquid['Squid'/161008, l='MpServer', x=228.25, y=53.84, z=271.94], EntitySquid['Squid'/161009, l='MpServer', x=219.22, y=50.16, z=268.81], EntityCreeper['Creeper'/253552, l='MpServer', x=194.50, y=20.00, z=331.50], EntityBat['Bat'/209659, l='MpServer', x=190.66, y=14.10, z=298.00]]
Retry entities: 0 total; []
Server brand: fml,forge
Server type: Integrated singleplayer server
Stacktrace:
at net.minecraft.client.multiplayer.WorldClient.addWorldInfoToCrashReport(WorldClient.java:392)
at net.minecraft.client.Minecraft.addGraphicsAndWorldToCrashReport(Minecraft.java:2614)
at net.minecraft.client.Minecraft.run(Minecraft.java:398)
at net.minecraft.client.main.Main.main(Main.java:117)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at net.minecraftforge.gradle.GradleStartCommon.launch(Unknown Source)
at GradleStart.main(Unknown Source)

  • Author

Show updated code.

[/code]

The updated code:

package aidas.morestuff.crafting;

import aidas.morestuff.items.MItems;
import net.minecraft.inventory.InventoryCrafting;
import net.minecraft.item.ItemStack;
import net.minecraft.item.crafting.IRecipe;
import net.minecraft.world.World;
import net.minecraftforge.common.ForgeHooks;

public class RubySeedRecipie implements IRecipe
{

@Override
public boolean matches(InventoryCrafting slot, World worldIn)
{
	if(slot.getSizeInventory() != 16) return false;
	boolean matches = false;
	for(int i = 0; i < slot.getSizeInventory(); i++)
	{
		matches = slot.getStackInSlot(i) != null && slot.getStackInSlot(i).getItem() == MItems.ruby;
		if(!matches) break;
	}
	return matches;
}

@Override
public ItemStack getCraftingResult(InventoryCrafting p_77572_1_)
{
	return new ItemStack(MItems.pokeball);
}

@Override
public int getRecipeSize()
{
	return 16;
}

@Override
public ItemStack getRecipeOutput()
{
	return new ItemStack(MItems.pokeball);
}

@Override
public ItemStack[] getRemainingItems(InventoryCrafting p_179532_1_)
{
	return ForgeHooks.defaultRecipeGetRemainingItems(null);
}

}

  • Author

Why are you calling it with

null

as an argument? :o

Oh.. Yeah... I thought it must return an item. Sorry :-[. Everything works fine now.

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...

Important Information

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

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.