GotoLink
Members-
Posts
2012 -
Joined
-
Last visited
-
Days Won
1
Everything posted by GotoLink
-
Recompile errors after fresh forge installation [SOLVED] [1.6.2]
GotoLink replied to OwnAgePau's topic in Modder Support
Check if you have read/write access to that folder. -
This is called from the parent class in public Icon getIcon(int par1, int par2) { int k = par2 & 12; int l = par2 & 3; return k == 0 && (par1 == 1 || par1 == 0) ? this.func_111049_d(l) : (k == 4 && (par1 == 5 || par1 == 4) ? this.func_111049_d(l) : (k == 8 && (par1 == 2 || par1 == 3) ? this.func_111049_d(l) : this.func_111048_c(l))); } We have some bit to bit calculation here... all in all, it comes down to getting a texture depending on side(par1) and metadata (par2). Consider returning a default icon depending on metadata, if needed.
-
If mc is an instance of Minecraft, this should work.
-
If what i said is false, why do you agree with me ? You should have read what is said a bit more carefully Well, we may have had a different experience with it. What? Prove this please. Just one counter example: if you need to access a private method with a normal mod you have to use reflection, with a coremod you don't. Reflection is bad for performance. And bytecode generation at runtime is worse than reflection, sorry to say.
-
Mod init seems to only be called on client side
GotoLink replied to vtsman's topic in Modder Support
Without reading at your code, there is a 50% chance of either case I suggested. Now do what you must. -
public TileEntitySunCollector sunCollector; public GuiSunCollector (InventoryPlayer inventoryPlayer, TileEntitySunCollector tileEntity) { //the container is instanciated and passed to the superclass for handling super(new ContainerSunCollector(inventoryPlayer, tileEntity)); this.sunCollector = tileEntity; } then use sunCollector.count
-
You can make it non static.
-
You found the issue yourself, why asking ?
-
Mod init seems to only be called on client side
GotoLink replied to vtsman's topic in Modder Support
Okay, time to learn how to debug: <debug course> Searching "Skipping TileEntity" within whole Minecraft code... Found one match in TileEntity class (ho my, wasn't obvious, was it ?) Reading out that a TileEntity needs to be registered in nameToClassMap field, and have a default constructor without arguments </debug course> Conclusions: -Register your TileEntity -Make sure you have a default constructor without arguments -
Check like this: if(world.provider!=null) { //generate... } I'd recommend you to add a default case to your switch too, your never know who might be adding a dimension ID
-
Huh, mods aren't supposed to inject bytecode. Coremods can do anything. The difference in naming should be kept, because mods are more likely to be compatible between each other, while coremods are just fancy way of editing base classes. Two coremods changing the same thing will probably crash the game, just like two internal mods were. What I meant by this If you made edits into a base class, you have to inject bytecode for all modifications. You shouldn't do it half-way. Why not a coremod ? -It will be a real hassle to maintain with Mojang updates -Compatibility issues, as said previously -It is usually less efficient than a mod -Bytecode / ASM is tedious to code and hard to debug
-
Reobfuscation and recompile not working!
GotoLink replied to Thecheatgamer1's topic in Modder Support
Reinstall Forge. You probably broke the bin folder. -
Reobfuscation and recompile not working!
GotoLink replied to Thecheatgamer1's topic in Modder Support
Don't move anything into the bin folder. Ever. -
You are not calling super.onEntityUpdate();
-
updateTick(World world, ...) { //Some code here ? world.scheduleBlockUpdate(args); }
-
That is because you can only read once the data at a given place in the packet.
-
Mod authors provide an installation procedure in their own topic. If there isn't, you can ask the mod author.
-
What is Package ? Do you mean folder ?
-
You can register an Icon with a Block, an Item or a Render class. But why would it matter ? Once you get that returned icon, you can do whatever you want with it, it should be already registered. Alternatively, you can ask for a ResourceLocation
-
public boolean isFull3D() { return true; } Might conflict. Don't know if 3Dified items can have animated textures yet. Try with false, see if that fix it. To add time, I would use for (int j = 0; j < MinecraftServer.getServer().worldServers.length; ++j) { WorldServer worldserver = MinecraftServer.getServer().worldServers[j]; worldserver.setWorldTime(worldserver.getWorldTime() + (long)timeAdded); }
-
Both seems good. Note that the png and txt files should have same name. Can we see your item class ?
-
1.You need a dummy container jar in the coremods folder. See tutorials. 2.Don't know, might be linked with 1., but you may also have left a null in your mod description. 3.You have to decide between editing the classes and making a coremod. Doing both makes no sense.
-
java.lang.IndexOutOfBoundsException: Index: 55, Size: 0
GotoLink replied to AzureusNation123's topic in Modder Support
I'll bet Description constructor is never called, so its description field is empty. Why do you have a String[] argument for your Description constructor ? -
[SOLVED][1.5.2] Dual Input Furnace Recipe Problem
GotoLink replied to SerriniaCorp's topic in Modder Support
Well, this has already been discussed in other threads... Inputs should be a group of ItemStacks...just build a structure that group them. A class, an array, a list...your choice ! The only things is, you'll have to be able to compare two groups so that each key (ie inputs or "group" of itemstacks) in the map is unique. Outputs can be the same structure, with the resulting ItemStack, or something different. A void example with arrays: Map dualSmeltingList = new HashMap(); ItemStack[] inputs = new ItemStack[2]; ItemStack[] outputs = new ItemStack[2]; dualSmeltingList.put(inputs,outputs);