Parthon
Forge Modder-
Posts
11 -
Joined
-
Last visited
Converted
-
Gender
Undisclosed
-
Personal Text
I am new!
Parthon's Achievements
Tree Puncher (2/8)
2
Reputation
-
[1.7.10] [UNSOLVED] Worldgen isn't generating anything
Parthon replied to SantacreeperLP's topic in Modder Support
Can you post the whole WorldGeneratorProjectRedExtended class, because the code snippets you gave don't give any relevant information on function calls. -
After you get the TE for the chest and cast it to TileEntityChest, you can use the functions getStackInSlot and setInventorySlotContents to peek and poke into the chest.
-
based on this line: at net.minecraft.block.BlockFurnace.onBlockActivated(BlockFurnace.java:175) you might want to check that you didn't edit BlockFurnace by accident. It seems that inside the Furnace class it's trying to access the Essence Extractor, you probably don't want that.
-
[Solved] Limiting what goes in inventory slots
Parthon replied to defiant810's topic in Modder Support
I checked through tileEntity and Iinventory and couldn't find anything useful. What you could do is accept the item into the slot, then poit it out if it's incorrect. Sort of like when the crafting table is closed and everything gets dropped. -
[Solved] Limiting what goes in inventory slots
Parthon replied to defiant810's topic in Modder Support
The vanilla furnace allows non-fuels in the bottom slot, it just doesn't burn them when it's time to get new fuel. There would have to be a function elsewhere that determines what can/can't be put in to a slot, before that function gets called. It seems that setInventorySlotContents happens after the testing, whereever that could be. -
I looked in BlockFlower.java and found: public boolean canPlace(World world, int i, int j, int k) { return super.canPlace(world, i, j, k) && this.d_(world.getTypeId(i, j - 1, k)); } protected boolean d_(int i) { return i == Block.GRASS.id || i == Block.DIRT.id || i == Block.SOIL.id; } I'm not sure if d_ is still called that in forge now, but one of those functions is what you want to override. (I'm at work now and can't access forge. If you need more help, I'll check it when I get home.)
-
ModLoader Worked Fine, Minecraft Forge = Black Screen
Parthon replied to azoundria's topic in Support & Bug Reports
It looked like TechBrew with it's JourneyMap was trying to hook a keyboard resource incorrectly. The problem with detecting 'outdated' mods is that it's hard to do. You would have to force the mod maker to tag the mod against the Forge version somehow. There's no real Java way to tell what version of Forge it was compiled against, which is good because it doesn't force unneccessary version compliance. On top of that, some mods still work even while outdated, so some players would like to load them if they still work. The easiest way to tell if a mod is incompatible is to wait for it to do something bad, then crash out with a log dump. Which is already exactly what happens. -
Yeah, that is the way it's meant to be done. Nice catch Bishamonten. Blocks.<block> is the vanilla minecraft way of storing all the blocks. When you create a new block it won't be in the vanilla list, so you have to access and use the blockID of the block you have created. This depends on where you've stored the reference to the block. You can drop the keyword 'this' from the functions and it will still work. Blakedut2: Also, I tried to find the code on the wiki, but I couldn't find it. Perhaps a link to it would be helpful next time, hint hint.
-
From the wiki: After you've put in the functions to add the ore to the library, then you just use: GameRegistry.addSmelting(int itemID, ItemStack result, float experience); like this: GameRegistry.addSmelting(Block.stone.blockID, new ItemStack(Block.stoneBrick), 0.1f); The first one must be a single itemID, because smelting only ever takes one item at a time. The second one is an item stack of one item, that is the result. The last value is the exp per smelting action.