Jump to content

ChampionAsh5357

Members
  • Posts

    3284
  • Joined

  • Last visited

  • Days Won

    62

Everything posted by ChampionAsh5357

  1. Did you attach the register to the mod event bus? Also, you should probably check what class the "egg" is using and update accordingly. This will remove all the features associated with the egg. Another thing to note is that you shouldn't replace vanilla entries unless absolutely necessary. It could lead to compatibility issues and a few others (although, since you're only modifying a property, it should be fine).
  2. 1.12.2 is not supported on the forums. The current versions supported can be found in the blue banner above. Forge usually supports the latest version and one major behind for LTS. Although, that does change depending on popularity.
  3. If you already have a IBakedModel implementation, you could create your own ItemOverrideList that gives you the correct model based on the stack tag.
  4. 1. This is problematic for sidedness. 2. Minecraft uses GLFW keybindings, not AWT KeyEvent. Use a KeyBinding regardless. 3. This is not a tutorial. Nothing is explained, just copy this and get a result.
  5. You would probably need to grant execute permission via chmod or whatever method your operating system needs. I would suggest googling it.
  6. There are events within EntityEvent now that handle this (Size and EyeHeight iirc) for 1.16. Note, if you are requesting help for 1.12.2, that version is not supported on the forums.
  7. If RayTraceResult#getType returns BLOCK, then you know the ray trace is an instance of BlockRayTraceResult which has a method called #getDirection (or #getFace in MCP) exactly for that.
  8. Listeners should be added in the constructor. Make the field lazy instead of relying on classloading.
  9. For the official mappings yes. This tutorial uses MCP mappings so it is also correct. You will need to translate them into your mapping set used.
  10. For the simplest implementation, whenever the projectile interacts with the surface, you'll get the associated face that the surface interacted with. Then, invert the associated component and multiply it with some number between 0-1 to represent to loss of energy. For example, if the associated motion velocity is <3,-1,2> and the ball hits a face on the Y-axis (either UP or DOWN), it will invert the component to <3,1,2>. Let's say we want to have 80% of the energy conserved, then it would be <3,0.8,2>. Of course, you'll need probably a deadzone for the total motion to deal with ridiculously small numbers. If you want to introduce other factors, then I would suggest looking over some bouncing ball physics.
  11. How does the client know what the state of the block is? You would need to use IEntityAdditionalSpawnData to send the BlockState across the network and set it on the client so it displays the same.
  12. Are these the only instances of tags within your mod? It's suggesting that there are minecraft entries for your mod tags or registry objects.
  13. A SaplingBlock requires a Tree which holds the associated ConfiguredFeature used to generate the full tree after the sapling as ticked enough times. You can look at currently existing entries in the block registry to see how other saplings do it and use a similar process adjusting where needed.
  14. This is not really a helpful post. Most likely you are using an MCP mapping name for the method while in mojmaps. If that's the case the method would be AbstractBlock$Properteries#of. Feel free to check the replacement of the material name as well on your own if needed.
  15. This will crash if loaded before blocks are registered and will bottleneck world gen for other mods. The ConfiguredFeature needs to be registered to the associated WorldGenRegistries registry. It also should be made after all registries have passed (e.g. FMLCommonSetupEvent) and registered there via Registry::register since there is no forge associated registry. This can be done by lazily storing the value and resolving it within the common setup.
  16. There's no documentation on attributes at the current moment. You would need to read through the source itself on how to create and apply them to entities. Is there anything specific that you need to know?
  17. Does it need to be a java model? The same could be accomplished with a json one.
  18. That's done from EntityType now through either the #create or #spawn methods.
  19. Then you might want to check if the particle displays the same issues on Fabulous graphics. If not, then it's fine how it currently is.
  20. You would need to set the IParticleRenderType to PARTICLE_SHEET_TRANSLUCENT via Particle#getRenderType iirc. Don't manipulate the render system in any way.
  21. Not really. If you set up your JDK with no modifications, it will still point to the JDK. The path variable is pretty much just a list to which the first entry that matches the requirements will be chosen. If I had two JDKs for two different versions on the path, whichever one is at the highest priority or the top of the list will be chosen. On the other hand, I can force a specific JDK to be chosen using the JAVA_HOME environment variable which tells the program exactly where to look for the JDK. If at least one of these two are set, you should be able to mod with no issues. There is no real dependency on any underlying system for modding, just the JDK you are using (which should be 8 as that is what is shipped with vanilla).
  22. Well yes, that's what they were looking for, hence the example to look into chests. A chest is an example of a model rendered inside of some VoxelShape that is not a full cube. The idea is to look for the solution and not somewhere in-between. While yes, the TER might be clouded in shadow will inside a VoxelShape, this does not necessarily have to be the case. While the chest might show how a smaller VoxelShape could still result in the same lightmap as any other block, the mob spawner can show how to interleave a model within the VoxelShape. Using any combination of these blocks' methods can produce the result required.
  23. Probably can use EntityJoinWorldEvent to store the EntityItems and remove them via EntityLeaveWorldEvent. Then can use the world tick event on the server to handle your logic and sync the data to the client.
  24. The if statements are still nested. Nothing has changed.
  25. What are you attempting to do? What would the condition be? Why does it need to be checked every tick?
×
×
  • Create New...

Important Information

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