Converted waila support to scala

This commit is contained in:
Robert S 2014-10-04 16:22:34 -04:00
parent 05bf1f6c23
commit 30ad8d98cf
8 changed files with 146 additions and 164 deletions

View file

@ -1,36 +0,0 @@
package resonantinduction.archaic.waila;
import cpw.mods.fml.common.event.FMLInterModComms;
import resonant.lib.compat.Mods;
import resonant.lib.loadable.ICompatProxy;
/**
* @author tgame14
* @since 21/03/14
*/
public class Waila implements ICompatProxy
{
@Override
public void preInit()
{
// nothing
}
@Override
public void init()
{
FMLInterModComms.sendMessage(Mods.WAILA(), "register", "resonantinduction.archaic.waila.WailaRegistrar.wailaCallBack");
}
@Override
public void postInit()
{
// nothing
}
@Override
public String modId()
{
return Mods.WAILA();
}
}

View file

@ -0,0 +1,30 @@
package resonantinduction.archaic.waila
import cpw.mods.fml.common.event.FMLInterModComms
import resonant.lib.compat.Mods
import resonant.lib.loadable.ICompatProxy
/**
* @author tgame14
* @since 21/03/14
*/
class Waila extends ICompatProxy
{
def preInit
{
}
def init
{
FMLInterModComms.sendMessage(Mods.WAILA, "register", "resonantinduction.archaic.waila.WailaRegistrar.wailaCallBack")
}
def postInit
{
}
def modId: String =
{
return Mods.WAILA
}
}

View file

@ -1,59 +0,0 @@
package resonantinduction.archaic.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.minecraft.tileentity.TileEntity;
import resonant.lib.utility.LanguageUtility;
import resonantinduction.archaic.crate.TileCrate;
import java.util.List;
/**
* Waila support for crates
*
* @author Darkguardsman
*/
public class WailaCrate implements IWailaDataProvider
{
@Override
public List<String> getWailaBody(ItemStack itemStack, List<String> currenttip, IWailaDataAccessor accessor, IWailaConfigHandler config)
{
TileEntity tile = accessor.getTileEntity();
if (tile instanceof TileCrate)
{
ItemStack stored = ((TileCrate) tile).getSampleStack();
int cap = ((TileCrate) tile).getSlotCount() * 64;
if (stored != null)
{
currenttip.add(LanguageUtility.getLocal("info.waila.crate.stack") + " " + stored.getDisplayName());
currenttip.add(LanguageUtility.getLocal("info.waila.crate.stored") + " " + stored.stackSize + " / " + cap);
}
else
{
currenttip.add(LanguageUtility.getLocal("info.waila.crate.empty"));
}
}
return currenttip;
}
@Override
public List<String> getWailaHead(ItemStack itemStack, List<String> currenttip, IWailaDataAccessor accessor, IWailaConfigHandler config)
{
return currenttip;
}
@Override
public ItemStack getWailaStack(IWailaDataAccessor accessor, IWailaConfigHandler config)
{
return null;
}
@Override
public List<String> getWailaTail(ItemStack itemStack, List<String> currenttip, IWailaDataAccessor accessor, IWailaConfigHandler config)
{
return currenttip;
}
}

View file

@ -0,0 +1,53 @@
package resonantinduction.archaic.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.minecraft.tileentity.TileEntity
import resonant.lib.utility.LanguageUtility
import resonantinduction.archaic.crate.TileCrate
import java.util.List
/**
* Waila support for crates
*
* @author Darkguardsman
*/
class WailaCrate extends IWailaDataProvider
{
override def getWailaBody(itemStack: ItemStack, currenttip: List[String], accessor: IWailaDataAccessor, config: IWailaConfigHandler): List[String] =
{
val tile: TileEntity = accessor.getTileEntity
if (tile.isInstanceOf[TileCrate])
{
val stored: ItemStack = (tile.asInstanceOf[TileCrate]).getSampleStack
val cap: Int = (tile.asInstanceOf[TileCrate]).getSlotCount * 64
if (stored != null)
{
currenttip.add(LanguageUtility.getLocal("info.waila.crate.stack") + " " + stored.getDisplayName)
currenttip.add(LanguageUtility.getLocal("info.waila.crate.stored") + " " + stored.stackSize + " / " + cap)
}
else
{
currenttip.add(LanguageUtility.getLocal("info.waila.crate.empty"))
}
}
return currenttip
}
override def getWailaHead(itemStack: ItemStack, currenttip: List[String], accessor: IWailaDataAccessor, config: IWailaConfigHandler): List[String] =
{
return currenttip
}
override def getWailaStack(accessor: IWailaDataAccessor, config: IWailaConfigHandler): ItemStack =
{
return null
}
override def getWailaTail(itemStack: ItemStack, currenttip: List[String], accessor: IWailaDataAccessor, config: IWailaConfigHandler): List[String] =
{
return currenttip
}
}

View file

@ -1,55 +0,0 @@
package resonantinduction.archaic.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.minecraft.tileentity.TileEntity;
import net.minecraftforge.fluids.IFluidTank;
import resonant.lib.utility.LanguageUtility;
import resonantinduction.archaic.fluid.tank.TileTank;
import java.util.List;
/**
* Waila support for tanks
*
* @author Darkguardsman
*/
public class WailaFluidTank implements IWailaDataProvider
{
@Override
public List<String> getWailaBody(ItemStack itemStack, List<String> currenttip, IWailaDataAccessor accessor, IWailaConfigHandler config)
{
TileEntity tile = accessor.getTileEntity();
if (tile instanceof TileTank)
{
IFluidTank tank = ((TileTank) tile).getTank();
if (tank != null && tank.getFluid() != null)
{
currenttip.add(LanguageUtility.getLocal("info.waila.tank.fluid") + " " + tank.getFluid().getFluid().getLocalizedName());
currenttip.add(LanguageUtility.getLocal("info.waila.tank.vol") + " " + tank.getFluidAmount() + " / " + tank.getCapacity());
}
}
return currenttip;
}
@Override
public List<String> getWailaHead(ItemStack itemStack, List<String> currenttip, IWailaDataAccessor accessor, IWailaConfigHandler config)
{
return currenttip;
}
@Override
public ItemStack getWailaStack(IWailaDataAccessor accessor, IWailaConfigHandler config)
{
return null;
}
@Override
public List<String> getWailaTail(ItemStack itemStack, List<String> currenttip, IWailaDataAccessor accessor, IWailaConfigHandler config)
{
return currenttip;
}
}

View file

@ -0,0 +1,49 @@
package resonantinduction.archaic.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.minecraft.tileentity.TileEntity
import net.minecraftforge.fluids.IFluidTank
import resonant.lib.utility.LanguageUtility
import resonantinduction.archaic.fluid.tank.TileTank
import java.util.List
/**
* Waila support for tanks
*
* @author Darkguardsman
*/
class WailaFluidTank extends IWailaDataProvider
{
override def getWailaBody(itemStack: ItemStack, currenttip: List[String], accessor: IWailaDataAccessor, config: IWailaConfigHandler): List[String] =
{
val tile: TileEntity = accessor.getTileEntity
if (tile.isInstanceOf[TileTank])
{
val tank: IFluidTank = (tile.asInstanceOf[TileTank]).getTank
if (tank != null && tank.getFluid != null)
{
currenttip.add(LanguageUtility.getLocal("info.waila.tank.fluid") + " " + tank.getFluid.getFluid.getLocalizedName)
currenttip.add(LanguageUtility.getLocal("info.waila.tank.vol") + " " + tank.getFluidAmount + " / " + tank.getCapacity)
}
}
return currenttip
}
override def getWailaHead(itemStack: ItemStack, currenttip: List[String], accessor: IWailaDataAccessor, config: IWailaConfigHandler): List[String] =
{
return currenttip
}
override def getWailaStack(accessor: IWailaDataAccessor, config: IWailaConfigHandler): ItemStack =
{
return null
}
override def getWailaTail(itemStack: ItemStack, currenttip: List[String], accessor: IWailaDataAccessor, config: IWailaConfigHandler): List[String] =
{
return currenttip
}
}

View file

@ -1,14 +0,0 @@
package resonantinduction.archaic.waila;
import mcp.mobius.waila.api.IWailaRegistrar;
import resonantinduction.archaic.crate.TileCrate;
import resonantinduction.archaic.fluid.tank.TileTank;
public class WailaRegistrar
{
public static void wailaCallBack(IWailaRegistrar registrar)
{
registrar.registerBodyProvider(new WailaCrate(), TileCrate.class);
registrar.registerBodyProvider(new WailaFluidTank(), TileTank.class);
}
}

View file

@ -0,0 +1,14 @@
package resonantinduction.archaic.waila
import mcp.mobius.waila.api.IWailaRegistrar
import resonantinduction.archaic.crate.TileCrate
import resonantinduction.archaic.fluid.tank.TileTank
object WailaRegistrar
{
def wailaCallBack(registrar: IWailaRegistrar)
{
registrar.registerBodyProvider(new WailaCrate, classOf[TileCrate])
registrar.registerBodyProvider(new WailaFluidTank, classOf[TileTank])
}
}