Fixed energy storage errors

This commit is contained in:
Calclavia 2014-11-02 20:35:27 +08:00
parent 9423b0d753
commit 1b7b4e8c9f
7 changed files with 585 additions and 580 deletions

View file

@ -13,6 +13,7 @@ import net.minecraftforge.fluids._
import resonant.api.ITagRender
import resonant.engine.ResonantEngine
import resonant.lib.config.Config
import resonant.lib.content.prefab.TEnergyStorage
import resonant.lib.content.prefab.java.TileElectric
import resonant.lib.network.discriminator.{PacketTile, PacketType}
import resonant.lib.network.handle.IPacketReceiver
@ -27,7 +28,7 @@ object TilePlasmaHeater
@Config var plasmaHeatAmount: Int = 100
}
class TilePlasmaHeater extends TileElectric(Material.iron) with IPacketReceiver with ITagRender with IFluidHandler
class TilePlasmaHeater extends TileElectric(Material.iron) with IPacketReceiver with ITagRender with IFluidHandler with TEnergyStorage
{
final val tankInputDeuterium: FluidTank = new FluidTank(FluidContainerRegistry.BUCKET_VOLUME * 10)
final val tankInputTritium: FluidTank = new FluidTank(FluidContainerRegistry.BUCKET_VOLUME * 10)
@ -40,9 +41,9 @@ class TilePlasmaHeater extends TileElectric(Material.iron) with IPacketReceiver
normalRender(false)
isOpaqueCube(false)
override def update
override def update()
{
super.update
super.update()
rotation = (rotation + energy.getEnergy / 10000f).asInstanceOf[Float]
if (!worldObj.isRemote)
{

View file

@ -7,6 +7,7 @@ import net.minecraft.entity.player.EntityPlayer
import net.minecraft.item.{Item, ItemStack}
import net.minecraft.nbt.NBTTagCompound
import resonant.api.recipe.QuantumAssemblerRecipes
import resonant.lib.content.prefab.TEnergyStorage
import resonant.lib.content.prefab.java.TileElectricInventory
import resonant.lib.network.discriminator.{PacketTile, PacketType}
import resonant.lib.network.handle.IPacketReceiver
@ -19,7 +20,7 @@ import resonant.lib.transform.vector.Vector3
*
* @author Calclavia, Darkguardsman
*/
class TileQuantumAssembler extends TileElectricInventory(Material.iron) with IPacketReceiver
class TileQuantumAssembler extends TileElectricInventory(Material.iron) with IPacketReceiver with TEnergyStorage
{
private[quantum] var ENERGY: Long = 1000000000L
private[quantum] var MAX_TIME: Int = 20 * 120

View file

@ -10,7 +10,7 @@ import resonant.lib.grid.node.NodeConnector
* A trait that allows nodes to works with Forge Multipart. This trait MUST be mixed in.
* @author Calclavia
*/
trait TMultipartNode extends NodeConnector
trait TMultipartNode[A] extends NodeConnector[A]
{
override def world: World =
{

View file

@ -11,7 +11,7 @@ import scala.collection.JavaConversions._
/** Basic grid designed to be used for creating a level look for batteries connected together
* @author robert(Darkguardsman)
*/
class GridBattery extends Grid[TileBattery](classOf[NodeEnergy[_]]) with TEnergyStorage
class GridBattery extends Grid[TileBattery](classOf[TileBattery])
{
var totalEnergy: Double = 0
var totalCapacity: Double = 0

View file

@ -9,7 +9,7 @@ import net.minecraft.entity.player.EntityPlayer
import net.minecraft.item.ItemStack
import net.minecraftforge.common.util.ForgeDirection
import resonant.content.prefab.java.TileAdvanced
import resonant.lib.content.prefab.TElectric
import resonant.lib.content.prefab.{TEnergyStorage, TElectric}
import resonant.lib.network.discriminator.{PacketTile, PacketType}
import resonant.lib.network.handle.IPacketReceiver
import resonant.lib.network.netty.AbstractPacket
@ -36,7 +36,7 @@ object TileBattery
final val DEFAULT_WATTAGE: Long = getEnergyForTier(0)
}
class TileBattery extends TileAdvanced(Material.iron) with TElectric with IPacketReceiver
class TileBattery extends TileAdvanced(Material.iron) with TElectric with IPacketReceiver with TEnergyStorage
{
private var markClientUpdate: Boolean = false
private var markDistributionUpdate: Boolean = false

View file

@ -393,7 +393,7 @@ class PartFlatWire extends PartAbstract with TWire with TFacePart with TNormalOc
if (canConnectTo(part))
{
//TODO: Check dir
connect(part.asInstanceOf[INodeProvider].getNode(classOf[DCNode], to.getOpposite).asInstanceOf[DCNode], to)
connect(part.asInstanceOf[INodeProvider].getNode(classOf[DCNode], to.getOpposite), to)
skip = true
}
}