biscuitWizard
Members-
Posts
7 -
Joined
-
Last visited
Converted
-
Gender
Undisclosed
-
Personal Text
I am new!
Recent Profile Visitors
The recent visitors block is disabled and is not being shown to other users.
biscuitWizard's Achievements
Tree Puncher (2/8)
1
Reputation
-
ChunkProviderGenerator Modifications
biscuitWizard replied to biscuitWizard's topic in General Discussion
Just to provide resolution for future people have this issue. The way to replace fields in Minecraft code without editing core classes is to use java.lang.reflect. public static void replaceBlock(String blockName, Block replacement) { try { Field f = Block.class.getDeclaredField(blockName); f.setAccessible(true); Field modifiersField = Field.class.getDeclaredField("modifiers"); modifiersField.setAccessible(true); modifiersField.setInt(f, f.getModifiers() & ~Modifier.FINAL); f.set(null, replacement); } catch (Throwable e) { System.err.println(e); } } -
ChunkProviderGenerator Modifications
biscuitWizard replied to biscuitWizard's topic in General Discussion
I thought it was Block.blocksList[block.waterStill.blockID] = FiniteLiquidBase.blockWaterStill; Block.blocksList[block.waterMoving.blockID] = FiniteLiquidBase.blockWater; But it wasn't. You've got me, I have no idea. Something with block metadata? -
ChunkProviderGenerator Modifications
biscuitWizard replied to biscuitWizard's topic in General Discussion
Good answer, thanks for the quick reply, Lex. Also Block.waterStill can't be set, it's final. -
Hello again, peeps. I need to change a variable within ChunkProviderGenerator at line 143 else if (var12 * 8 + var31 < var6) { par3ArrayOfByte[var43 += var44] = (byte)FiniteLiquidBase.blockOcean.blockID; } But I'd like to do so without actually modifying that file, in the interest of compatibility. How would I do that? :?
-
I write lesserer good, but if I can decode the FML/Modloader/Forge API code, I'll write up some wiki docs. Meanwhile, I suppose I will continue breaking this code.
-
Hey there! Sorry for asking this on my first post, but why is there no forge/FML API documentation? I've searched the forums and looked around on google for some sort of documentation, but have turned up nothing. It kind of seems like a glaring misnomer to me, especially when modders should have some kind of unified documentation when working with an API. At the moment, the code I'm working on steps on the toes of ItemBucket, ChunkProviderGenerator, World, and numerous WorldGen* files, and I know for a fact that isn't going to bode well for compatibility with other mods. Worse yet, I know there /are/ forge hooks around in the code, I've seen them, but they're scattered and undocumented. I'm really not sure what to make of this. Is there some kind of documentation? Or is there some way to learn to ropes without needing to read through all of the forge code?