Posted June 11, 20214 yr Here is my code. FluidTankHandler#fill fills the holding FluidTank in order, but that doesn't seem to work. The behavior I want to implement is that when the first FluidTank is full, the second FluidTank will be filled. However, now it is put in every Fluid Tank one by one, and after that, the water does not increase no matter how many times it is repeated. Does anyone know what's going on? FluidTankHandler class: https://github.com/Zemelua/UMU-Mod/blob/main/src/main/java/io/github/zemelua/umumod/fluid/FluidTankHandler.java Mod fluid capability: https://github.com/Zemelua/UMU-Mod/blob/main/src/main/java/io/github/zemelua/umumod/capability/UMUCapabilities.java BackpackItem class (Testing FluidTankHandler behavior in onItemUse method: https://github.com/Zemelua/UMU-Mod/blob/main/src/main/java/io/github/zemelua/umumod/item/BackpackItem.java
June 11, 20214 yr Author I did some research, but the data is still not saved ... The data of ItemStackHandler seems to be saved properly. When is IStorage#writeNBT called and where does the instance passed to the instance get from? The instance may not have been passed in properly and may not be able to save the data.
June 11, 20214 yr Author I think the problem is here(https://github.com/Zemelua/UMU-Mod/blob/main/src/main/java/io/github/zemelua/umumod/capability/storage/FluidTankHandlerStorage.java). The instance argument passed by IStorage#writeNBT is incorrect. When is this method called? Where do the passed arguments come from? I'm sorry to repeat, but please help me someone.
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.