Jump to content
View in the app

A better way to browse. Learn more.

Forge Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

ChampionAsh5357

Members
  • Joined

  • Last visited

Everything posted by ChampionAsh5357

  1. A FluidStack holds an int amount to extract. So you can choose the maximum value to extract from the current cap holder.
  2. The version you are using is no longer supported. Please update to LTS 1.15.2 to receive support.
  3. It's really complicated what you need to do for it. You basically need to create a separate renderer and match the model animations to your current one with whatever method you would like to use. From there, you can set the texture width and size to what you want.
  4. Look into IFluidHandler::fill more, it should jump at you in the form of replicating ItemStacks.
  5. Biomes are final and data-driven. Forge is currently working on a way to append data. In the meantime, you can add features using json, but they will be standalone.
  6. As of 1.16.1, dimensions were replaced with jsons. 1.16.2 also made that true for biomes. Other generations such as features are still handled in game code for good reasons; however, objects that just hold information can be stored in a json, hence the change.
  7. From there, you can figure it out. Learn 3d dimensional rotation, translation, and scaling based around a specific point. From there, take a look at how stacks work. For mc in particular, take a look at how they compress textures into an atlas (the sign type points to a location holding the sign textures). Now you have a decent understanding on how rendering works without understanding the complications of rendering types, culling, raytracing, overlays, etc. You probably won't need to know this anyways, but its always helpful.
  8. Besides the abysmal programming + copy-paste, it's probably because your texture doesn't exist in the specified Atlas location. I believe it even tells you that in the stacktrace/log when it tries to find it. Read over it again and fix. If you're lucky with this very cutout code, you won't even need to use TextureStitchEvent$Pre.
  9. They are now data driven. You should look into how json works.
  10. You probably want to look at this. Forge synchronizes differently than mc.
  11. Then I would like to see the tile entity class and the renderer class.
  12. 1.12.2 is not supported on this forum. Please update to a modern version for support.
  13. Did you even register/attach the TER to the respective TE in the client setup?
  14. That's because beds are usually renderered through a TER. You need to create a TER by default for it tor render, or just change the render type to block to support it. Nothing to do with what you said.
  15. A method that returns true can be overridden by something that extends the class its implemented on
  16. So your tile entity can never exist then? This has a set tile entity type that is unchangeable. You need to make your own class or at least extend and super correctly. In the block class.
  17. That part can be achieved using some GLMs. You can just store the original loot generated. As for how to get it back to the player object, it's gonna take some crafty work with the server world.
  18. But, if you're adding from inside the root of the mdk location, it should be pretty small.
  19. Yes, global initializers always go so well, especially when passing in uninitialized variables. Same thing goes for here too.
  20. Ok, let's do a breakdown of lazy coding. You need a tile entity for that. You need a tile entity for that. You need a tile entity renderer for that. You need to put your block in the block tags for campfires. Just because you decide to copy one part of a block doesn't necessarily mean it will work. At least check and make sure the block isn't referencing anything else before doing so.
  21. This seems ridiculously complex for what you're trying to do. There is a much simpler solution with a bit of clever usage of Slot::isEnabled.
  22. Please link a repo holding your code. I'm just gonna go through it in one pass instead of modifying each individual detail with little to go on other than a picture.
  23. You can't really do this. When the class is first called by the event bus loader, it will declare these variables prior to the registry phase. So, it will initialize both of these values to null. Just create the variables locally in the event since you're not using them anywhere else. Two more things, if you need to cast the value to BlockState, you're doing BlockStates wrong. Second, everything must be wrapped in a DeferredWorkQueue as everything you're doing is not thread-safe.
  24. Hopefully you are talking about the latest versions of mc instead of the one this is on. As for how to do it, just append a LayerRenderer to the player and render whatever you want on top of him. Do note that every layer is usually rendered as a cutout which may cause issues with culling depending on how it's ordered.

Important Information

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

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.