diff --git a/src/main/java/tconstruct/plugins/waila/BasinDataProvider.java b/src/main/java/tconstruct/plugins/waila/BasinDataProvider.java new file mode 100644 index 00000000..9b6e9a49 --- /dev/null +++ b/src/main/java/tconstruct/plugins/waila/BasinDataProvider.java @@ -0,0 +1,47 @@ +package tconstruct.plugins.waila; + +import mcp.mobius.waila.api.IWailaConfigHandler; +import mcp.mobius.waila.api.IWailaDataAccessor; +import mcp.mobius.waila.api.IWailaDataProvider; +import net.minecraft.item.ItemStack; +import net.minecraftforge.fluids.FluidStack; +import tconstruct.blocks.logic.CastingBasinLogic; + +import java.util.List; + +public class BasinDataProvider implements IWailaDataProvider { + + @Override + public ItemStack getWailaStack(IWailaDataAccessor accessor, IWailaConfigHandler config) { + if (accessor.getTileEntity() instanceof CastingBasinLogic) + { + return ((CastingBasinLogic)accessor.getTileEntity()).getStackInSlot(0); + } + return null; + } + + @Override + public List getWailaHead(ItemStack itemStack, List currenttip, IWailaDataAccessor accessor, IWailaConfigHandler config) { + return currenttip; + } + + @Override + public List getWailaBody(ItemStack itemStack, List currenttip, IWailaDataAccessor accessor, IWailaConfigHandler config) { + if (accessor.getTileEntity() instanceof CastingBasinLogic) + { + CastingBasinLogic te = (CastingBasinLogic)accessor.getTileEntity(); + if (te.getFluidAmount() != 0) + { + FluidStack fs = te.getFluid(); + currenttip.add("Liquid: " + WailaRegistrar.fluidNameHelper(fs)); + currenttip.add("Amount: " + fs.amount + "/" + te.getCapacity()); + } + else + { + currenttip.add("§oEmpty"); // "§o" == Italics + } + } + return currenttip; + } + +} diff --git a/src/main/java/tconstruct/plugins/waila/WailaRegistrar.java b/src/main/java/tconstruct/plugins/waila/WailaRegistrar.java index 7eedc774..52345e01 100644 --- a/src/main/java/tconstruct/plugins/waila/WailaRegistrar.java +++ b/src/main/java/tconstruct/plugins/waila/WailaRegistrar.java @@ -7,6 +7,7 @@ import net.minecraftforge.fluids.FluidStack; import tconstruct.TConstruct; import tconstruct.blocks.LavaTankBlock; import tconstruct.blocks.SmelteryBlock; +import tconstruct.blocks.logic.CastingBasinLogic; import tconstruct.blocks.logic.CastingChannelLogic; public class WailaRegistrar @@ -19,6 +20,7 @@ public class WailaRegistrar registrar.registerBodyProvider(new SearedTankDataProvider(), LavaTankBlock.class); registrar.registerBodyProvider(new CastingChannelDataProvider(), CastingChannelLogic.class); //registrar.registerBodyProvider(new EssenceExtractorDataProvider(), EssenceExtractor.class); + registrar.registerBodyProvider(new BasinDataProvider(), CastingBasinLogic.class); // Smeltery registrar.registerBodyProvider(new SmelteryDataProvider(), SmelteryBlock.class);