Jump to content

Choonster

Moderators
  • Posts

    5124
  • Joined

  • Last visited

  • Days Won

    76

Everything posted by Choonster

  1. Can you post the logs/fml-client-latest.log file from your Minecraft folder on Gist and link it here? Screenshots of the issue may also help.
  2. Do you both own the game and have your own accounts? Post the logs/fml-client-latest.log file from both clients on Gist and link them here.
  3. You've messed up the dimensions of the side model. You've made them identical to the centre model, so each connected side is just rendering the centre cube again. My side model's element goes from 4,4,0 to 12,12,4 (note the unique z coordinates); yours goes from 5,5,5 to 11,11,11. Edit: On a side note, why is your GitHub repository a bunch of unorganised files without file extensions? Why not use your mod's actual working directory as the repository?
  4. Yes, posting the full code on Gist or Pastebin would help. Could you also take a screenshot of the debug information while looking at a pipe with at least one pipe next to it and post that?
  5. The Watering Can schedules block updates with World#scheduleBlockUpdate when it detects a plant ( IPlantable or IGrowable ) in its area of effect.
  6. That's odd. If you enable debug information with F3 and look at a pipe, are any of the direction properties displayed as true?
  7. Did you override Block#getActualState to set each direction property's value?
  8. The models for the pipe are in the same repository I linked before: pipe_centre, pipe_part. All pipes with the same shape can use these models, the textures are controlled by the blockstates file for each pipe block.
  9. You mean actually moving the steam from point A to point B? I can't really help you much there apart from suggesting you look at open source mods that do this kind of thing, e.g. BuildCraft or Power Advantage.
  10. Look at the blockstates file I linked. It only uses two models (centre cube + side connection) but uses Forge's blockstates format to combine them as needed.
  11. Don't use absolute paths in your build.gradle script (C:/Users/.../src/main/java), use relative paths (src/main/java). This way other people will be able to download your code from a site like GitHub and compile it themselves without having to put it in a specific location. Anyway, you don't need to explicitly set the Java and resources paths if you're using the default ones (src/main/java and src/main/resources), you can delete the sourceSets block.
  12. I have a basic implementation of a pipe-like block here (blockstates file). I use some Java 8 features like streams and lambdas in the code, you'll have to adapt it if you're not compiling against Java 8. I haven't got the bounding boxes working, but the pipes know they're connected to each other and render the model properly. Since your pipe block will likely have a TileEntity , you may want to cache the connection state in it (like BuildCraft pipes do) and make Block#getActualState return the values from that rather than checking each neighbouring block.
  13. Most authors tend to have a thread on minecraftforum.net linking to the mod's download page. A lot of authors host their mods on Curse, which is slightly easier to search.
  14. EntityEvent.EntityConstructing is fired from the Entity constructor, which is called before the EntityPlayer constructor sets the Entity#entityUniqueID field to the player's UUID .
  15. Both of the examples I provided use a single blockstates JSON for all the mod's fluids. Each variant is a single fluid.
  16. You also need to use the forge:fluid model in your blockstates file with the fluid name in the custom data section provided by the Forge blockstates format. You can see examples of this in Forge here (blockstates file) and my mod here (blockstates file). Note that the MeshDefinitionFix interface in my mod is just a workaround that allows a lambda to be used as an ItemMeshDefinition (ForgeGradle doesn't know how to reobfuscate lambdas properly), you can also use an anonymous class like in Forge's example.
  17. I haven't used IDEA's artifacts before, but I don't think they're compiled with the Gradle build task; so they're not reobfuscated by ForgeGradle. You need to run the build task from the command line or IDEA's Gradle window, which will compile and reobfuscate the mod and output it to build/libs.
  18. Applaud increases the poster's karma, the Thank You button in the top right of a post displays the thanks under the post.
  19. Are you compiling it with gradlew build (or running the build task through IDEA's Gradle window)? This reobfuscates the mod after compiling it, so setUnlocalizedName is renamed to the appropriate SRG name (the names used outside of the development environment).
  20. This does appear to be a vanilla bug. On the client, PlayerControllerMP#onPlayerDestroyBlock calls Block#removedByPlayer (which sets the block to air) before calling ItemStack#onBlockDestroyed (which ItemTool calls Block#getBlockHardness from). On the server, ItemInWorldManager#tryHarvestBlock calls ItemStack#onBlockDestroyed before calling Block#removedByPlayer . This means that the block still exists on the server when Item#onBlockDestroyed is called; but it's already been set to air on the client.
  21. The "x" and "y" values are the rotation around the x and y axes, respectively. This wiki page explains the vanilla blockstates and block/item model formats. For blocks with many combinations of properties, you may want to use Forge's blockstates format which is explained here. This allows you to specify what effect each value has on the model and combine multiple models.
  22. The direct damage of the Large Fireball is hardcoded at 6.0 in EntityLargeFireball#onImpact , but the explosion power is controlled by the public EntityLargeFireball#explosionPower field. If you want it to deal a different amount of damage, extend EntityLargeFireball and override onImpact to do the same thing as EntityLargeFireball#onImpact but deal the appropriate amount of damage instead of 6.0.
  23. Using the latest snapshot of ForgeGradle instead of the 2.0.1 stable version may help, since the snapshot includes a recent fix that correctly builds Minecraft with debug information which was previously missing. To switch to the snapshot, follow the instructions in the comments at the top of build.gradle (you may need to download a recent MDK version and copy the code from its build.gradle if you deleted the comments from yours).
  24. All events in the net.minecraftforge.fml.common.gameevent package are fired on the FML bus ( FMLCommonHandler.instance().bus() ) rather than the Forge bus ( MinecraftForge.EVENT_BUS ). Event handlers only work if they're registered with the right bus.
×
×
  • Create New...

Important Information

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