From 7ff592b4b5903edb372819c104e2e2aec22183e5 Mon Sep 17 00:00:00 2001 From: Sunstrike Date: Tue, 24 Dec 2013 20:46:46 +0100 Subject: [PATCH] Waila: Casting Basin support. --- .../plugins/waila/BasinDataProvider.java | 47 +++++++++++++++++++ .../plugins/waila/WailaRegistrar.java | 2 + 2 files changed, 49 insertions(+) create mode 100644 src/main/java/tconstruct/plugins/waila/BasinDataProvider.java 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);