Improved insertCurrentItem controls
This commit is contained in:
parent
d97edd17bb
commit
43ff86eab2
|
@ -10,7 +10,7 @@ import net.minecraft.item.{Item, ItemStack}
|
|||
import net.minecraft.nbt.{NBTTagCompound, NBTTagList}
|
||||
import resonant.lib.utility.LanguageUtility
|
||||
import resonant.lib.utility.nbt.NBTUtility
|
||||
import resonant.lib.wrapper.WrapList._
|
||||
import resonant.lib.wrapper.CollectionWrapper._
|
||||
|
||||
import scala.collection.JavaConversions._
|
||||
|
||||
|
|
|
@ -12,7 +12,7 @@ import net.minecraftforge.fluids.{FluidContainerRegistry, FluidStack, IFluidCont
|
|||
import resonant.lib.utility.LanguageUtility
|
||||
import resonant.lib.utility.science.UnitDisplay
|
||||
import resonant.lib.utility.science.UnitDisplay.Unit
|
||||
import resonant.lib.wrapper.WrapList._
|
||||
import resonant.lib.wrapper.CollectionWrapper._
|
||||
|
||||
/**
|
||||
* @author Darkguardsman
|
||||
|
@ -41,6 +41,15 @@ class ItemBlockTank(block: Block) extends ItemBlock(block: Block) with IFluidCon
|
|||
}
|
||||
}
|
||||
|
||||
def getFluid(container: ItemStack): FluidStack =
|
||||
{
|
||||
if (container.stackTagCompound == null || !container.stackTagCompound.hasKey("fluid"))
|
||||
{
|
||||
return null
|
||||
}
|
||||
return FluidStack.loadFluidStackFromNBT(container.stackTagCompound.getCompoundTag("fluid"))
|
||||
}
|
||||
|
||||
override def getItemStackLimit(stack: ItemStack): Int =
|
||||
{
|
||||
if (stack.getTagCompound != null && stack.getTagCompound.hasKey("fluid"))
|
||||
|
@ -74,15 +83,6 @@ class ItemBlockTank(block: Block) extends ItemBlock(block: Block) with IFluidCon
|
|||
return false
|
||||
}
|
||||
|
||||
def getFluid(container: ItemStack): FluidStack =
|
||||
{
|
||||
if (container.stackTagCompound == null || !container.stackTagCompound.hasKey("fluid"))
|
||||
{
|
||||
return null
|
||||
}
|
||||
return FluidStack.loadFluidStackFromNBT(container.stackTagCompound.getCompoundTag("fluid"))
|
||||
}
|
||||
|
||||
def fill(container: ItemStack, resource: FluidStack, doFill: Boolean): Int =
|
||||
{
|
||||
if (resource == null)
|
||||
|
|
|
@ -27,7 +27,7 @@ import resonant.lib.prefab.tile.spatial.{SpatialBlock, SpatialTile}
|
|||
import resonant.lib.transform.vector.Vector3
|
||||
import resonant.lib.utility.FluidUtility
|
||||
import resonant.lib.wrapper.ByteBufWrapper._
|
||||
import resonant.lib.wrapper.WrapList._
|
||||
import resonant.lib.wrapper.CollectionWrapper._
|
||||
|
||||
/**
|
||||
* Meant to replace the furnace class.
|
||||
|
@ -189,8 +189,6 @@ class TileFirebox extends SpatialTile(Material.rock) with IFluidHandler with TIn
|
|||
}
|
||||
}
|
||||
|
||||
def isBurning: Boolean = burnTime > 0
|
||||
|
||||
override def getSizeInventory = 1
|
||||
|
||||
def getMeltIronEnergy(volume: Float): Long =
|
||||
|
@ -295,6 +293,8 @@ class TileFirebox extends SpatialTile(Material.rock) with IFluidHandler with TIn
|
|||
return if (isBurning) (if (isElectric) SpatialBlock.icon.get("firebox_electric_side_on") else SpatialBlock.icon.get("firebox_side_on")) else (if (isElectric) SpatialBlock.icon.get("firebox_electric_side_off") else SpatialBlock.icon.get("firebox_side_off"))
|
||||
}
|
||||
|
||||
def isBurning: Boolean = burnTime > 0
|
||||
|
||||
override def click(player: EntityPlayer)
|
||||
{
|
||||
if (server)
|
||||
|
|
|
@ -6,8 +6,8 @@ import net.minecraft.entity.player.EntityPlayer
|
|||
import net.minecraft.item.{Item, ItemStack}
|
||||
import resonant.lib.render.EnumColor
|
||||
import resonant.lib.utility.nbt.NBTUtility
|
||||
import resonant.lib.wrapper.CollectionWrapper._
|
||||
import resonant.lib.wrapper.StringWrapper._
|
||||
import resonant.lib.wrapper.WrapList._
|
||||
|
||||
/**
|
||||
* A trait applied to all items that can store alloys within them
|
||||
|
|
|
@ -11,7 +11,7 @@ import net.minecraft.item.{Item, ItemStack}
|
|||
import net.minecraft.util.IIcon
|
||||
import resonant.lib.prefab.tile.item.ItemBlockMetadata
|
||||
import resonant.lib.prefab.tile.spatial.SpatialBlock
|
||||
import resonant.lib.wrapper.WrapList._
|
||||
import resonant.lib.wrapper.CollectionWrapper._
|
||||
|
||||
/**
|
||||
* A block used to build machines or decoration.
|
||||
|
|
|
@ -13,7 +13,7 @@ import resonant.lib.mod.compat.energy.Compatibility
|
|||
import resonant.lib.render.EnumColor
|
||||
import resonant.lib.utility.LanguageUtility
|
||||
import resonant.lib.utility.science.UnitDisplay
|
||||
import resonant.lib.wrapper.WrapList._
|
||||
import resonant.lib.wrapper.CollectionWrapper._
|
||||
|
||||
object ItemBlockBattery
|
||||
{
|
||||
|
@ -84,16 +84,6 @@ class ItemBlockBattery(block: Block) extends ItemBlock(block) with IEnergyItem
|
|||
return energyToReceive
|
||||
}
|
||||
|
||||
def discharge(itemStack: ItemStack, energy: Double, doTransfer: Boolean): Double =
|
||||
{
|
||||
val energyToExtract: Double = Math.min(Math.min(this.getEnergy(itemStack), energy), getTransferRate(itemStack))
|
||||
if (doTransfer)
|
||||
{
|
||||
this.setEnergy(itemStack, this.getEnergy(itemStack) - energyToExtract)
|
||||
}
|
||||
return energyToExtract
|
||||
}
|
||||
|
||||
def setEnergy(itemStack: ItemStack, joules: Double)
|
||||
{
|
||||
if (itemStack.getTagCompound == null)
|
||||
|
@ -109,6 +99,16 @@ class ItemBlockBattery(block: Block) extends ItemBlock(block) with IEnergyItem
|
|||
return this.getEnergyCapacity(itemStack) / 100
|
||||
}
|
||||
|
||||
def discharge(itemStack: ItemStack, energy: Double, doTransfer: Boolean): Double =
|
||||
{
|
||||
val energyToExtract: Double = Math.min(Math.min(this.getEnergy(itemStack), energy), getTransferRate(itemStack))
|
||||
if (doTransfer)
|
||||
{
|
||||
this.setEnergy(itemStack, this.getEnergy(itemStack) - energyToExtract)
|
||||
}
|
||||
return energyToExtract
|
||||
}
|
||||
|
||||
def getVoltage(itemStack: ItemStack): Double =
|
||||
{
|
||||
return 240
|
||||
|
|
|
@ -9,7 +9,7 @@ import net.minecraft.entity.player.InventoryPlayer
|
|||
import resonant.lib.prefab.gui.GuiContainerBase
|
||||
import resonant.lib.render.EnumColor
|
||||
import resonant.lib.utility.LanguageUtility
|
||||
import resonant.lib.wrapper.WrapList._
|
||||
import resonant.lib.wrapper.CollectionWrapper._
|
||||
|
||||
/**
|
||||
* Multimeter GUI
|
||||
|
|
|
@ -16,7 +16,7 @@ import net.minecraft.world.World
|
|||
import org.lwjgl.input.Keyboard
|
||||
import resonant.lib.render.EnumColor
|
||||
import resonant.lib.utility.LanguageUtility
|
||||
import resonant.lib.wrapper.WrapList._
|
||||
import resonant.lib.wrapper.CollectionWrapper._
|
||||
|
||||
class ItemMultimeter extends JItemMultiPart with IHighlight
|
||||
{
|
||||
|
|
|
@ -20,7 +20,7 @@ import org.lwjgl.input.Keyboard
|
|||
import resonant.lib.render.EnumColor
|
||||
import resonant.lib.utility.LanguageUtility
|
||||
import resonant.lib.utility.science.UnitDisplay
|
||||
import resonant.lib.wrapper.WrapList._
|
||||
import resonant.lib.wrapper.CollectionWrapper._
|
||||
|
||||
class ItemWire extends TItemMultiPart
|
||||
{
|
||||
|
|
|
@ -13,7 +13,7 @@ import org.lwjgl.input.Keyboard
|
|||
import resonant.lib.render.EnumColor
|
||||
import resonant.lib.utility.LanguageUtility
|
||||
import resonant.lib.utility.science.UnitDisplay
|
||||
import resonant.lib.wrapper.WrapList._
|
||||
import resonant.lib.wrapper.CollectionWrapper._
|
||||
|
||||
class ItemPipe extends TItemMultiPart
|
||||
{
|
||||
|
|
|
@ -13,7 +13,7 @@ import net.minecraft.entity.player.EntityPlayer
|
|||
import net.minecraft.item.{Item, ItemStack}
|
||||
import net.minecraft.tileentity.TileEntity
|
||||
import net.minecraft.world.World
|
||||
import resonant.lib.wrapper.WrapList._
|
||||
import resonant.lib.wrapper.CollectionWrapper._
|
||||
|
||||
class ItemGear extends JItemMultiPart with IHighlight
|
||||
{
|
||||
|
|
|
@ -10,7 +10,7 @@ import net.minecraft.creativetab.CreativeTabs
|
|||
import net.minecraft.entity.player.EntityPlayer
|
||||
import net.minecraft.item.{Item, ItemStack}
|
||||
import net.minecraft.world.World
|
||||
import resonant.lib.wrapper.WrapList._
|
||||
import resonant.lib.wrapper.CollectionWrapper._
|
||||
|
||||
class ItemGearShaft extends Item with TItemMultiPart with IHighlight
|
||||
{
|
||||
|
|
|
@ -16,7 +16,7 @@ import net.minecraftforge.common.util.ForgeDirection
|
|||
import resonant.api.tile.INodeProvider
|
||||
import resonant.lib.prefab.tile.item.ItemBlockMetadata
|
||||
import resonant.lib.transform.vector.Vector3
|
||||
import resonant.lib.wrapper.WrapList._
|
||||
import resonant.lib.wrapper.CollectionWrapper._
|
||||
|
||||
/**
|
||||
* The vertical water turbine collects flowing water flowing on X axis.
|
||||
|
|
|
@ -20,8 +20,8 @@ import resonant.lib.render.RenderUtility
|
|||
import resonant.lib.transform.vector.Vector3
|
||||
import resonant.lib.utility.MathUtility
|
||||
import resonant.lib.utility.inventory.InventoryUtility
|
||||
import resonant.lib.wrapper.CollectionWrapper._
|
||||
import resonant.lib.wrapper.NBTWrapper._
|
||||
import resonant.lib.wrapper.WrapList._
|
||||
|
||||
/**
|
||||
* The vertical wind turbine collects airflow.
|
||||
|
|
|
@ -17,7 +17,7 @@ import resonant.lib.prefab.tile.spatial.SpatialBlock
|
|||
import resonant.lib.render.{RenderBlockUtility, RenderUtility}
|
||||
import resonant.lib.transform.vector.Vector3
|
||||
import resonant.lib.world.WorldUtility
|
||||
import resonant.lib.wrapper.WrapList._
|
||||
import resonant.lib.wrapper.CollectionWrapper._
|
||||
|
||||
/**
|
||||
* Electromagnet block
|
||||
|
|
|
@ -11,7 +11,7 @@ import net.minecraft.creativetab.CreativeTabs
|
|||
import net.minecraft.entity.player.EntityPlayer
|
||||
import net.minecraft.item.{Item, ItemStack}
|
||||
import net.minecraft.world.World
|
||||
import resonant.lib.wrapper.WrapList._
|
||||
import resonant.lib.wrapper.CollectionWrapper._
|
||||
|
||||
class ItemQuantumGlyph extends Item with TItemMultiPart with IHighlight
|
||||
{
|
||||
|
|
|
@ -9,7 +9,7 @@ import net.minecraft.creativetab.CreativeTabs
|
|||
import net.minecraft.item.{Item, ItemStack}
|
||||
import net.minecraft.util.IIcon
|
||||
import net.minecraft.world.World
|
||||
import resonant.lib.wrapper.WrapList._
|
||||
import resonant.lib.wrapper.CollectionWrapper._
|
||||
|
||||
class ItemAntimatter extends ItemCell
|
||||
{
|
||||
|
|
|
@ -14,7 +14,7 @@ import net.minecraftforge.common.util.ForgeDirection
|
|||
import net.minecraftforge.fluids.FluidStack
|
||||
import resonant.api.tile.{IReactor, IReactorComponent}
|
||||
import resonant.lib.transform.vector.Vector3
|
||||
import resonant.lib.wrapper.WrapList._
|
||||
import resonant.lib.wrapper.CollectionWrapper._
|
||||
|
||||
/**
|
||||
* Fissile fuel rod
|
||||
|
|
|
@ -8,7 +8,7 @@ import net.minecraft.item.{Item, ItemStack}
|
|||
import org.lwjgl.input.Keyboard
|
||||
import resonant.lib.render.EnumColor
|
||||
import resonant.lib.utility.LanguageUtility
|
||||
import resonant.lib.wrapper.WrapList._
|
||||
import resonant.lib.wrapper.CollectionWrapper._
|
||||
|
||||
/**
|
||||
* Uranium
|
||||
|
|
|
@ -12,7 +12,7 @@ import resonant.lib.prefab.tile.item.ItemBlockSaved
|
|||
import resonant.lib.transform.vector.Vector3
|
||||
import resonant.lib.utility.LanguageUtility
|
||||
import resonant.lib.utility.nbt.NBTUtility
|
||||
import resonant.lib.wrapper.WrapList._
|
||||
import resonant.lib.wrapper.CollectionWrapper._
|
||||
|
||||
class ItemBlockThermometer(block: Block) extends ItemBlockSaved(block: Block)
|
||||
{
|
||||
|
|
Loading…
Reference in a new issue