Jump to content

shadowfacts

Forge Modder
  • Posts

    588
  • Joined

  • Last visited

Posts posted by shadowfacts

  1. 1. In your call to setDefaultState, don't create a new BlockState instance, just call setDefaultState with blockState.withProperty(DIRECTION, EnumFacing.NORTH)

    2. You should have @Override on your onBlockAdded method, if you did you'd see that you've got the signature wrong. It takes several additional parameters and returns the IBlockState to place in the world. Instead of calling setBlockState, you'd simply return the correct state.

    • Like 1
  2. To expand a bit on what diesieben said, @Optional.Interface takes the fully qualified name, as in some.package.Interface not Interface. 

     

    A side note: You'll also need @Optional.Method on any methods from IBauble that you implement. If you don't include @Optional.Method on the IBauble methods whose signatures contain types from the Baubles API, there will be a crash when the mod isn't present. (This is due to how the JVM works. When a class is loaded, it looks at all the method signatures and tries to load all the types that they contain if they haven't been loaded already. )

  3. I doubt that it's possible to use any cloud IDE for Forge mod development because of the way that they work. You might be able to setup a workspace in  it, but you wouldn't be able to test anything. Che and other cloud IDEs likely run the programs in headless mode (i.e., with no video output) so LWJGL won't be able to work and Minecraft won't render anything.

  4. As a newb im looking into these things on google, not much luck yet with this

     

    public IBlockState getState(){
    	IBlockState state = (IBlockState) super.getUpdateTag();
    	return state;
    }
    

     

    Why isnt there a simple method like: getFacing(); that returns the face haha

     

    o_O

    The getUpdateTag method returns some Packet object. Why on earth are you trying to cast that to an IBlockState? There's nothing even in the method's name to suggest that it might be even tangentially related to what you're trying to do.

     

    There isn't a simple method like getFacing because you have to create it yourself.

  5. Because Gradle is better than previous setup. No there is no way to develop Forge mods without Gradle (theoretically you could, but it would be a massive PITA, far more so than Gradle).

     

    Gradle works perfectly well, just very few people know how to actually use it. Gradle is just another programming language. Under the hood it uses the Groovy language which also runs on the JVM. There is a plethora of documentation for it, and for almost any problem you could possibly encounter,  someone already has and has worked out a solution.

     

    Gradle integrates Eclipse perfectly fine, and very well with IDEA.

     

    You can't just have a bunch of jar files because of the way Forge and Minecraft exist. Forge is forbidden from distributing Minecraft (sources or jars) by Mojang. So instead of doing this, Forge distributes what are called patches. On each user's computer, the Forge patches are applied to Minecraft and that is what's used. Combine this with access transformers used by other mods, and you've got an environment where it's not possible to just distribute a bunch of jar files.

     

    Your complaint seems to be specifically about Eclipse, so here's a suggestion: Try switching to IDEA. It may take some time to get used to, but you can. It's Gradle integration works very well making it a breeze to import a Gradle-based project into it.

×
×
  • Create New...

Important Information

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