Jump to content

Cadiboo

Members
  • Posts

    3624
  • Joined

  • Last visited

  • Days Won

    58

Everything posted by Cadiboo

  1. I think that there’s a translation matrix involved - if memory serves me right you should be able to use your IDE to search for “leftHandHackery” and I think it’s in the same method
  2. Along with the horribly ugly village buildings
  3. I think that the actual code of mods will remain pretty much the same (except for removing getStateFromMeta & getMetaFromState). The mod loading system has changed massively though & the only thing you put in your @Mod annotation is your ModID, with everything else being put in a META.INF file. However all this should take under 10 mins. Theres also the conversion from .lang to .json
  4. There’s a proper limit of 16,384 (from memory) particles allowed at any one time. If another particle is spawned the oldest existing particle is killed
  5. addCollisionBoxToList allows you to add multiple boxes (think of fences, they have a box for the pillar, and a box for each connection) that an entity can collide with. This method exists because AxisAlignedBoundingBoxes have to be cuboids. To have different shapes you can group together cuboids (in a List) to create a more complex shape that can be collided with - any shape can be made with cuboids if you use enough of them.
  6. Can you please clarify?
  7. A pixel is 1/16 so 0.0625. That AxisAlignedBoundingBox goes from (in “pixels”) 1,1,1 to 15,2,15. Is this what you want? Are you correctly overriding the method? Use print statements & the debugger to see if it’s getting called and what’s happening. You want to override getBoundingBox, getSelectedBoundingBox and getCollisionBoundingBox
  8. Which has been created by first making a JSON model & then copying the values to Java? Or am I wrong and BlockBench can make Java models?
  9. position passed in + 0.5x + 1y + 0.5z Use the debugger’s hotswap code feature to tinker around with the values.
  10. That makes sense, thanks!
  11. ^^^ That’s not what I said, I gave an example of why using a tool rather than writing it out yourself is less prone to mistakes. In the onRandomDisplayTick method in your block class. Look at BlockFurnace. Also please post your block class.
  12. The getField method from Vanilla creates a level abstraction that I don’t think any Modder wants or needs. You should just use getCapability(ItemHandlerCapability) (read more about capabilities here https://mcforge.readthedocs.io/en/latest/datastorage/capabilities/) or a method that returns your ItemStackHandler (you should still be using capabilities, use of a shorthand method is allowable for internal use though). For syncing you just need to override a couple of methods https://mcforge.readthedocs.io/en/latest/tileentities/tileentity/#synchronizing-the-data-to-the-client
  13. Sorry, I accidentally hit submit right after I started writing, look at my edited post
  14. Can I recommend BlockBench? (blockbench.net) It’s a tool that allows you to graphically create your model without having to deal with the intricacies & specifics of the process. An example of one of these intricacies is that in the UV mapping system V goes down, not up (Theres a good story here). You should also read https://mcforge.readthedocs.io/en/latest/models/introduction/ and http://greyminecraftcoder.blogspot.com/2015/03/troubleshooting-block-and-item-rendering.html
  15. Thanks! This is what I was looking for. Any idea why Forge didn’t initially (when it was created) start by using Minecrafts Java though? It seems like it would have been the logical way to streamline the installation for end-users. Then again, Forge probably wasn’t created with end-users in mind who didn’t know how to install Java.
  16. This isn’t an unpopular opinion at all, it’s a great idea. However, we still have to use (target/retain comparability with) the Java version that Minecraft uses because all their code is written in it. It seems to me that Mojang has fallen down on pretty much everything except for adding features so far. They don’t have a Modding API, lots of their code is badly written, lots of their code is old and should be updated and, as you said, they use a very outdated java version. Also Forge’s Internals use some Java Internals like Sun’s classloader (I think) that only work on specific versions of java (i.e. the version of Java that Minecraft uses). This is why Forge breaks on Java 9 (I think). I also pretty sure that a lot of effort went into making Forge work with Java 9 for 1.13 though.
  17. It looks to me as though the only things that are rendering wrong are the “horns” (which both have rotations applied to them) and the 2 “torso” parts that have rotation applied to them. Additionally I think your arms are being rendered wrongly (rotated an extra 90deg Y). Because all your variables are named “e1” or similar, I can’t really see which ones are which and what they correspond to in the actual json model. Edit: I assume they’re e27 & e28, you might want to set the rotation point & the rotation before making the box?
  18. Yes there is, but your not doing this to your own slot, you own slot is holding the item that was in your ActiveHand, and your having to do all this stuff to the active hand slot which isn’t directly controlled by you
  19. I assume that that’s only for people who are developing mods (& Forge etc.) though, I don’t see why the end-users of Forge & mods need to redownload Java when it appears that Forge could just directly use Minecraft’s Java.
  20. Wait so is your problem solved? Cause if not...
  21. I was thinking that you should swap the ItemStacks and intercept calls to stuff like canAddItemStackToInventory & canFitStackInSlot for the hand slot.
  22. We’re being forced to use the same JRE anyway though, so we can’t exactly help the out of date part and don’t we already know exactly where it is?
  23. Minecraft’s launcher downloads the Java it needs to run, why doesn’t Forge use this pre installed Java instead of requiring end-users to download the same (I assume it’s the same) version themselves?
×
×
  • Create New...

Important Information

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