From f8cab1b595bcceaed57bcc684d45d4593cc25214 Mon Sep 17 00:00:00 2001 From: Calclavia Date: Mon, 26 Jan 2015 20:28:38 +0800 Subject: [PATCH] Even more mass refactor --- .../edx/basic/blocks/TileFilterable.scala | 2 +- .../edx/basic/blocks/TileImprinter.scala | 64 +++++++------- .../edx/basic/blocks/TileTurntable.scala | 4 +- .../engineering/TileEngineeringTable.scala | 84 +++++++++---------- .../edx/basic/fluid/grate/TileGrate.scala | 2 +- .../process/grinding/TileWorkbench.scala | 6 +- .../basic/process/mixing/ItemGlassJar.scala | 2 +- .../basic/process/mixing/TileGlassJar.scala | 36 ++++---- .../edx/basic/process/sifting/ItemSieve.scala | 2 +- .../edx/basic/process/sifting/TileSieve.scala | 8 +- .../process/smelting/TileCastingMold.scala | 4 +- .../smelting/firebox/TileFirebox.scala | 6 +- .../smelting/firebox/TileHotPlate.scala | 42 +++++----- .../core/prefab/node/TileFluidProvider.scala | 34 ++++---- .../core/prefab/part/PacketMultiPart.scala | 14 ++-- .../prefab/part/connector/PartAbstract.scala | 2 +- .../resource/content/BlockDecoration.scala | 4 +- .../edx/core/resource/content/TileDust.scala | 2 +- .../edx/electrical/ElectricalContent.scala | 2 +- .../edx/electrical/battery/TileBattery.scala | 26 +++--- .../edx/electrical/generator/TileMotor.scala | 4 +- .../electrical/generator/TileSolarPanel.scala | 2 +- .../electrical/generator/TileThermopile.scala | 2 +- .../multimeter/PartMultimeter.scala | 40 ++++----- .../edx/electrical/tesla/TileTesla.scala | 10 +-- .../edx/mechanical/machine/TileDetector.scala | 4 +- .../mechanical/machine/edit/TileBreaker.scala | 6 +- .../mechanical/machine/edit/TilePlacer.scala | 8 +- .../edx/mechanical/mech/TileMechanical.scala | 8 +- .../mech/gear/GearMultiBlockHandler.scala | 2 +- .../edx/mechanical/mech/gear/PartGear.scala | 6 +- .../mechanical/mech/turbine/TileTurbine.scala | 14 ++-- .../mech/turbine/TileWaterTurbine.scala | 2 +- .../mech/turbine/TileWindTurbine.scala | 2 +- .../mech/turbine/TurbineMBlockHandler.scala | 2 +- .../scala/edx/quantum/QuantumContent.scala | 2 +- .../quantum/blocks/TileElectromagnet.scala | 4 +- .../scala/edx/quantum/blocks/TileSiren.scala | 2 +- .../edx/quantum/laser/TileLaserEmitter.scala | 4 +- .../edx/quantum/laser/TileLaserReceiver.scala | 4 +- .../edx/quantum/laser/focus/TileFocus.scala | 2 +- .../edx/quantum/machine/TileFunnel.scala | 2 +- .../machine/accelerator/TileAccelerator.scala | 8 +- .../machine/boiler/TileNuclearBoiler.scala | 6 +- .../machine/centrifuge/TileCentrifuge.scala | 6 +- .../extractor/TileChemicalExtractor.scala | 2 +- .../machine/extractor/TileProcess.scala | 2 +- .../machine/fulmination/TileFulmination.scala | 4 +- .../quantum/machine/plasma/TilePlasma.scala | 2 +- .../machine/plasma/TilePlasmaHeater.scala | 6 +- .../quantum/TileQuantumAssembler.scala | 6 +- .../thermometer/ItemBlockThermometer.scala | 28 +++---- .../machine/thermometer/TileThermometer.scala | 24 +++--- .../edx/quantum/reactor/TileControlRod.scala | 2 +- .../edx/quantum/reactor/TileReactorCell.scala | 10 +-- 55 files changed, 292 insertions(+), 292 deletions(-) diff --git a/src/main/scala/edx/basic/blocks/TileFilterable.scala b/src/main/scala/edx/basic/blocks/TileFilterable.scala index 4d6433512..853bead1e 100644 --- a/src/main/scala/edx/basic/blocks/TileFilterable.scala +++ b/src/main/scala/edx/basic/blocks/TileFilterable.scala @@ -7,8 +7,8 @@ import net.minecraft.item.ItemStack import net.minecraft.nbt.NBTTagCompound import net.minecraftforge.common.util.ForgeDirection import resonantengine.api.tile.{IFilterable, IRotatable} -import resonantengine.lib.prefab.tile.mixed.TileInventory import resonantengine.lib.transform.vector.Vector3 +import resonantengine.prefab.block.mixed.TileInventory object TileFilterable { diff --git a/src/main/scala/edx/basic/blocks/TileImprinter.scala b/src/main/scala/edx/basic/blocks/TileImprinter.scala index 353287002..0e6f53367 100644 --- a/src/main/scala/edx/basic/blocks/TileImprinter.scala +++ b/src/main/scala/edx/basic/blocks/TileImprinter.scala @@ -21,8 +21,8 @@ import net.minecraftforge.common.util.ForgeDirection import org.lwjgl.opengl.GL11 import resonantengine.api.network.IPacketReceiver import resonantengine.core.ResonantEngine -import resonantengine.lib.network.discriminator.{PacketTile, PacketType} -import resonantengine.lib.prefab.tile.spatial.{ResonantBlock, ResonantTile} +import resonantengine.core.network.discriminator.{PacketTile, PacketType} +import resonantengine.lib.modcontent.block.{ResonantBlock, ResonantTile} import resonantengine.lib.render.RenderItemOverlayUtility import resonantengine.lib.transform.vector.{Vector2, Vector3} import resonantengine.lib.utility.inventory.InventoryUtility @@ -61,16 +61,6 @@ class TileImprinter extends ResonantTile(Material.circuits) with ISidedInventory nbt.setTag("Items", var2) } - def getSizeInventory: Int = - { - return this.inventory.length - } - - def getStackInSlot(slot: Int): ItemStack = - { - return this.inventory(slot) - } - def read(data: ByteBuf, player: EntityPlayer, `type`: PacketType) { try @@ -170,19 +160,12 @@ class TileImprinter extends ResonantTile(Material.circuits) with ISidedInventory } } - /** - * Sets the given item stack to the specified slot in the inventory (can be crafting or armor - * sections). - */ - def setInventorySlotContents(slot: Int, itemStack: ItemStack) + def openInventory { - if (slot < this.getSizeInventory) - { - inventory(slot) = itemStack - } + this.onInventoryChanged } - def openInventory + def closeInventory { this.onInventoryChanged } @@ -245,11 +228,6 @@ class TileImprinter extends ResonantTile(Material.circuits) with ISidedInventory } } - def closeInventory - { - this.onInventoryChanged - } - def getInventoryStackLimit: Int = { return 64 @@ -270,16 +248,16 @@ class TileImprinter extends ResonantTile(Material.circuits) with ISidedInventory return this.isItemValidForSlot(slot, itemstack) } - def isItemValidForSlot(i: Int, itemstack: ItemStack): Boolean = - { - return true - } - def canExtractItem(slot: Int, itemstack: ItemStack, side: Int): Boolean = { return this.isItemValidForSlot(slot, itemstack) } + def isItemValidForSlot(i: Int, itemstack: ItemStack): Boolean = + { + return true + } + override def renderDynamic(position: Vector3, frame: Float, pass: Int) { GL11.glPushMatrix @@ -396,6 +374,28 @@ class TileImprinter extends ResonantTile(Material.circuits) with ISidedInventory return false } + def getStackInSlot(slot: Int): ItemStack = + { + return this.inventory(slot) + } + + /** + * Sets the given item stack to the specified slot in the inventory (can be crafting or armor + * sections). + */ + def setInventorySlotContents(slot: Int, itemStack: ItemStack) + { + if (slot < this.getSizeInventory) + { + inventory(slot) = itemStack + } + } + + def getSizeInventory: Int = + { + return this.inventory.length + } + override def onNeighborChanged(block: Block) { val b: Block = toVectorWorld.add(ForgeDirection.getOrientation(1)).getBlock diff --git a/src/main/scala/edx/basic/blocks/TileTurntable.scala b/src/main/scala/edx/basic/blocks/TileTurntable.scala index 78a66ba1f..61b208ab2 100644 --- a/src/main/scala/edx/basic/blocks/TileTurntable.scala +++ b/src/main/scala/edx/basic/blocks/TileTurntable.scala @@ -10,9 +10,9 @@ import net.minecraft.util.IIcon import net.minecraft.world.{IBlockAccess, World} import net.minecraftforge.common.util.ForgeDirection import resonantengine.api.tile.IRotatable -import resonantengine.lib.prefab.tile.spatial.ResonantBlock -import resonantengine.lib.prefab.tile.traits.TRotatable +import resonantengine.lib.modcontent.block.ResonantBlock import resonantengine.lib.transform.vector.Vector3 +import resonantengine.prefab.block.traits.TRotatable object TileTurntable { diff --git a/src/main/scala/edx/basic/engineering/TileEngineeringTable.scala b/src/main/scala/edx/basic/engineering/TileEngineeringTable.scala index c174c931d..ddb295f20 100644 --- a/src/main/scala/edx/basic/engineering/TileEngineeringTable.scala +++ b/src/main/scala/edx/basic/engineering/TileEngineeringTable.scala @@ -24,22 +24,22 @@ import net.minecraftforge.common.util.ForgeDirection import net.minecraftforge.oredict.OreDictionary import org.apache.commons.lang3.ArrayUtils import org.lwjgl.opengl.GL11 -import resonantengine.api.gui.ISlotPickResult import resonantengine.api.edx.recipe.{MachineRecipes, RecipeResource, RecipeType} +import resonantengine.api.gui.ISlotPickResult import resonantengine.api.network.IPacketReceiver import resonantengine.api.tile.IRotatable import resonantengine.core.ResonantEngine +import resonantengine.core.network.discriminator.{PacketTile, PacketType} import resonantengine.lib.collection.Pair -import resonantengine.lib.network.discriminator.{PacketTile, PacketType} import resonantengine.lib.prefab.gui.ContainerDummy -import resonantengine.lib.prefab.tile.item.ItemBlockSaved -import resonantengine.lib.prefab.tile.mixed.TileInventory import resonantengine.lib.render.RenderItemOverlayUtility import resonantengine.lib.transform.region.Cuboid import resonantengine.lib.transform.vector.{Vector2, Vector3} import resonantengine.lib.utility.LanguageUtility import resonantengine.lib.utility.inventory.AutoCraftingManager.IAutoCrafter import resonantengine.lib.utility.inventory.{AutoCraftingManager, InventoryUtility} +import resonantengine.prefab.block.itemblock.ItemBlockSaved +import resonantengine.prefab.block.mixed.TileInventory import scala.collection.JavaConversions._ @@ -252,44 +252,6 @@ class TileEngineeringTable extends TileInventory(Material.wood) with IPacketRece return inventoryCrafting } - /** - * DO NOT USE THIS INTERNALLY. FOR EXTERNAL USE ONLY! - */ - override def getStackInSlot(slot: Int): ItemStack = - { - if (slot < TileEngineeringTable.CRAFTING_MATRIX_END) - { - return this.craftingMatrix(slot) - } - else if (slot < TileEngineeringTable.CRAFTING_OUTPUT_END) - { - return outputInventory(slot - TileEngineeringTable.CRAFTING_MATRIX_END) - } - else if (slot < TileEngineeringTable.PLAYER_OUTPUT_END && invPlayer != null) - { - return this.invPlayer.getStackInSlot(slot - TileEngineeringTable.CRAFTING_OUTPUT_END) - } - else if (searchInventories) - { - var idDisplacement: Int = TileEngineeringTable.PLAYER_OUTPUT_END - for (dir <- ForgeDirection.VALID_DIRECTIONS) - { - val tile: TileEntity = toVectorWorld.add(dir).getTileEntity - if (tile.isInstanceOf[IInventory]) - { - val inventory: IInventory = tile.asInstanceOf[IInventory] - val slotID: Int = slot - idDisplacement - if (slotID >= 0 && slotID < inventory.getSizeInventory) - { - return inventory.getStackInSlot(slotID) - } - idDisplacement += inventory.getSizeInventory - } - } - } - return null - } - override def use(player: EntityPlayer, hitSide: Int, hit: Vector3): Boolean = { if (player.getCurrentEquippedItem != null && player.getCurrentEquippedItem.getItem.isInstanceOf[ItemHammer]) @@ -621,6 +583,44 @@ class TileEngineeringTable extends TileInventory(Material.wood) with IPacketRece return slot == optimalSlot } + /** + * DO NOT USE THIS INTERNALLY. FOR EXTERNAL USE ONLY! + */ + override def getStackInSlot(slot: Int): ItemStack = + { + if (slot < TileEngineeringTable.CRAFTING_MATRIX_END) + { + return this.craftingMatrix(slot) + } + else if (slot < TileEngineeringTable.CRAFTING_OUTPUT_END) + { + return outputInventory(slot - TileEngineeringTable.CRAFTING_MATRIX_END) + } + else if (slot < TileEngineeringTable.PLAYER_OUTPUT_END && invPlayer != null) + { + return this.invPlayer.getStackInSlot(slot - TileEngineeringTable.CRAFTING_OUTPUT_END) + } + else if (searchInventories) + { + var idDisplacement: Int = TileEngineeringTable.PLAYER_OUTPUT_END + for (dir <- ForgeDirection.VALID_DIRECTIONS) + { + val tile: TileEntity = toVectorWorld.add(dir).getTileEntity + if (tile.isInstanceOf[IInventory]) + { + val inventory: IInventory = tile.asInstanceOf[IInventory] + val slotID: Int = slot - idDisplacement + if (slotID >= 0 && slotID < inventory.getSizeInventory) + { + return inventory.getStackInSlot(slotID) + } + idDisplacement += inventory.getSizeInventory + } + } + } + return null + } + override def canExtractItem(slot: Int, itemstack: ItemStack, side: Int): Boolean = { val outputStack: ItemStack = getStackInSlot(TileEngineeringTable.CRAFTING_MATRIX_END) diff --git a/src/main/scala/edx/basic/fluid/grate/TileGrate.scala b/src/main/scala/edx/basic/fluid/grate/TileGrate.scala index 08ad00010..e3aea82db 100644 --- a/src/main/scala/edx/basic/fluid/grate/TileGrate.scala +++ b/src/main/scala/edx/basic/fluid/grate/TileGrate.scala @@ -15,9 +15,9 @@ import net.minecraft.world.IBlockAccess import net.minecraftforge.common.util.ForgeDirection import net.minecraftforge.fluids.{Fluid, FluidContainerRegistry, FluidRegistry, FluidStack} import resonantengine.lib.mod.config.Config -import resonantengine.lib.prefab.tile.traits.TRotatable import resonantengine.lib.transform.vector.Vector3 import resonantengine.lib.utility.FluidUtility +import resonantengine.prefab.block.traits.TRotatable object TileGrate { diff --git a/src/main/scala/edx/basic/process/grinding/TileWorkbench.scala b/src/main/scala/edx/basic/process/grinding/TileWorkbench.scala index ab5a7b087..8716ba85a 100644 --- a/src/main/scala/edx/basic/process/grinding/TileWorkbench.scala +++ b/src/main/scala/edx/basic/process/grinding/TileWorkbench.scala @@ -12,14 +12,14 @@ import net.minecraftforge.client.model.AdvancedModelLoader import net.minecraftforge.oredict.OreDictionary import org.lwjgl.opengl.GL11 import resonantengine.api.edx.recipe.{MachineRecipes, RecipeType} +import resonantengine.core.network.discriminator.PacketType import resonantengine.lib.content.prefab.TInventory -import resonantengine.lib.network.discriminator.PacketType -import resonantengine.prefab.network.{TPacketReceiver, TPacketSender} -import resonantengine.lib.prefab.tile.spatial.ResonantTile +import resonantengine.lib.modcontent.block.ResonantTile import resonantengine.lib.render.{RenderItemOverlayUtility, RenderUtility} import resonantengine.lib.transform.vector.Vector3 import resonantengine.lib.utility.inventory.InventoryUtility import resonantengine.lib.wrapper.ByteBufWrapper._ +import resonantengine.prefab.network.{TPacketReceiver, TPacketSender} /** * The workbench is meant for manual ore and wood processing. diff --git a/src/main/scala/edx/basic/process/mixing/ItemGlassJar.scala b/src/main/scala/edx/basic/process/mixing/ItemGlassJar.scala index e6e1ee135..53356de10 100644 --- a/src/main/scala/edx/basic/process/mixing/ItemGlassJar.scala +++ b/src/main/scala/edx/basic/process/mixing/ItemGlassJar.scala @@ -7,9 +7,9 @@ import net.minecraft.entity.player.EntityPlayer import net.minecraft.item.ItemStack import net.minecraft.world.World import resonantengine.api.transform.vector.IVector3 -import resonantengine.lib.prefab.tile.item.ItemBlockSaved import resonantengine.lib.transform.vector.Vector3 import resonantengine.lib.utility.nbt.NBTUtility +import resonantengine.prefab.block.itemblock.ItemBlockSaved /** * The ItemBlock for the glass jar diff --git a/src/main/scala/edx/basic/process/mixing/TileGlassJar.scala b/src/main/scala/edx/basic/process/mixing/TileGlassJar.scala index 934ada1e9..7082c5e6d 100644 --- a/src/main/scala/edx/basic/process/mixing/TileGlassJar.scala +++ b/src/main/scala/edx/basic/process/mixing/TileGlassJar.scala @@ -19,12 +19,10 @@ import net.minecraftforge.client.IItemRenderer.ItemRenderType import net.minecraftforge.client.model.AdvancedModelLoader import org.lwjgl.opengl.GL11 import resonantengine.api.item.ISimpleItemRenderer +import resonantengine.core.network.discriminator.PacketType import resonantengine.lib.factory.resources.ResourceFactory import resonantengine.lib.factory.resources.item.TItemResource -import resonantengine.lib.network.discriminator.PacketType -import resonantengine.prefab.network.{TPacketReceiver, TPacketSender} -import resonantengine.lib.prefab.tile.item.ItemBlockSaved -import resonantengine.lib.prefab.tile.spatial.ResonantTile +import resonantengine.lib.modcontent.block.ResonantTile import resonantengine.lib.render.RenderUtility import resonantengine.lib.render.model.ModelCube import resonantengine.lib.transform.region.Cuboid @@ -32,6 +30,8 @@ import resonantengine.lib.transform.vector.{Vector3, VectorWorld} import resonantengine.lib.utility.inventory.InventoryUtility import resonantengine.lib.utility.nbt.NBTUtility import resonantengine.lib.wrapper.ByteBufWrapper._ +import resonantengine.prefab.block.itemblock.ItemBlockSaved +import resonantengine.prefab.network.{TPacketReceiver, TPacketSender} /** * A glass jar for mixing different dusts/refined together. @@ -112,6 +112,20 @@ class TileGlassJar extends ResonantTile(Material.wood) with TPacketReceiver with GL11.glPopMatrix() } + @SideOnly(Side.CLIENT) + override def renderDynamic(pos: Vector3, frame: Float, pass: Int) + { + GL11.glPushMatrix() + GL11.glTranslated(pos.x + 0.5, pos.y + 0.5, pos.z + 0.5) + renderMixture() + GL11.glPopMatrix() + + GL11.glPushMatrix() + GL11.glTranslated(pos.x + 0.5, pos.y + 0.8, pos.z + 0.5) + renderJar() + GL11.glPopMatrix() + } + def renderMixture(itemStack: ItemStack = null) { val alloy: Alloy = @@ -179,20 +193,6 @@ class TileGlassJar extends ResonantTile(Material.wood) with TPacketReceiver with RenderUtility.disableBlending() } - @SideOnly(Side.CLIENT) - override def renderDynamic(pos: Vector3, frame: Float, pass: Int) - { - GL11.glPushMatrix() - GL11.glTranslated(pos.x + 0.5, pos.y + 0.5, pos.z + 0.5) - renderMixture() - GL11.glPopMatrix() - - GL11.glPushMatrix() - GL11.glTranslated(pos.x + 0.5, pos.y + 0.8, pos.z + 0.5) - renderJar() - GL11.glPopMatrix() - } - @SideOnly(Side.CLIENT) override protected def getTextureName: String = textureName diff --git a/src/main/scala/edx/basic/process/sifting/ItemSieve.scala b/src/main/scala/edx/basic/process/sifting/ItemSieve.scala index 124932180..f05ae393f 100644 --- a/src/main/scala/edx/basic/process/sifting/ItemSieve.scala +++ b/src/main/scala/edx/basic/process/sifting/ItemSieve.scala @@ -7,13 +7,13 @@ import net.minecraft.entity.player.EntityPlayer import net.minecraft.item.{EnumAction, ItemStack} import net.minecraft.world.World import resonantengine.api.edx.recipe.{MachineRecipes, RecipeType} -import resonantengine.lib.prefab.tile.item.ItemBlockSaved import resonantengine.lib.render.EnumColor import resonantengine.lib.transform.vector.Vector3 import resonantengine.lib.utility.inventory.{ExternalInventory, InventoryUtility} import resonantengine.lib.utility.nbt.NBTUtility import resonantengine.lib.wrapper.CollectionWrapper._ import resonantengine.lib.wrapper.StringWrapper._ +import resonantengine.prefab.block.itemblock.ItemBlockSaved /** * The ItemBlock for the glass jar diff --git a/src/main/scala/edx/basic/process/sifting/TileSieve.scala b/src/main/scala/edx/basic/process/sifting/TileSieve.scala index 98080697d..30cefce56 100644 --- a/src/main/scala/edx/basic/process/sifting/TileSieve.scala +++ b/src/main/scala/edx/basic/process/sifting/TileSieve.scala @@ -15,16 +15,16 @@ import net.minecraftforge.client.IItemRenderer.ItemRenderType import net.minecraftforge.client.model.AdvancedModelLoader import org.lwjgl.opengl.GL11 import resonantengine.api.item.ISimpleItemRenderer +import resonantengine.core.network.discriminator.PacketType import resonantengine.lib.content.prefab.TInventory -import resonantengine.lib.network.discriminator.PacketType -import resonantengine.prefab.network.{TPacketReceiver, TPacketSender} -import resonantengine.lib.prefab.tile.item.ItemBlockSaved -import resonantengine.lib.prefab.tile.spatial.ResonantTile +import resonantengine.lib.modcontent.block.ResonantTile import resonantengine.lib.render.{RenderItemOverlayUtility, RenderUtility} import resonantengine.lib.transform.region.Cuboid import resonantengine.lib.transform.vector.Vector3 import resonantengine.lib.utility.inventory.InventoryUtility import resonantengine.lib.wrapper.ByteBufWrapper._ +import resonantengine.prefab.block.itemblock.ItemBlockSaved +import resonantengine.prefab.network.{TPacketReceiver, TPacketSender} object TileSieve { diff --git a/src/main/scala/edx/basic/process/smelting/TileCastingMold.scala b/src/main/scala/edx/basic/process/smelting/TileCastingMold.scala index d8052cc5c..ca37e806d 100644 --- a/src/main/scala/edx/basic/process/smelting/TileCastingMold.scala +++ b/src/main/scala/edx/basic/process/smelting/TileCastingMold.scala @@ -10,11 +10,11 @@ import net.minecraftforge.common.util.ForgeDirection import net.minecraftforge.fluids._ import resonantengine.api.edx.recipe.{MachineRecipes, RecipeResource, RecipeType} import resonantengine.api.network.IPacketReceiver -import resonantengine.lib.network.discriminator.{PacketTile, PacketType} -import resonantengine.lib.prefab.tile.mixed.TileInventory +import resonantengine.core.network.discriminator.{PacketTile, PacketType} import resonantengine.lib.transform.vector.Vector3 import resonantengine.lib.utility.FluidUtility import resonantengine.lib.utility.inventory.InventoryUtility +import resonantengine.prefab.block.mixed.TileInventory /** * Turns molten fuilds into ingots. diff --git a/src/main/scala/edx/basic/process/smelting/firebox/TileFirebox.scala b/src/main/scala/edx/basic/process/smelting/firebox/TileFirebox.scala index 927543bf4..fdc342f94 100644 --- a/src/main/scala/edx/basic/process/smelting/firebox/TileFirebox.scala +++ b/src/main/scala/edx/basic/process/smelting/firebox/TileFirebox.scala @@ -18,18 +18,18 @@ import net.minecraft.util.IIcon import net.minecraftforge.common.MinecraftForge import net.minecraftforge.common.util.ForgeDirection import net.minecraftforge.fluids._ +import resonantengine.core.network.discriminator.PacketType import resonantengine.lib.content.prefab.{TIO, TInventory} import resonantengine.lib.grid.core.TBlockNodeProvider import resonantengine.lib.grid.energy.EnergyStorage import resonantengine.lib.grid.energy.electric.NodeElectricComponent import resonantengine.lib.grid.thermal.{BoilEvent, ThermalPhysics} -import resonantengine.lib.network.discriminator.PacketType -import resonantengine.prefab.network.{TPacketReceiver, TPacketSender} -import resonantengine.lib.prefab.tile.spatial.{ResonantBlock, ResonantTile} +import resonantengine.lib.modcontent.block.{ResonantBlock, ResonantTile} import resonantengine.lib.transform.vector.Vector3 import resonantengine.lib.utility.FluidUtility import resonantengine.lib.wrapper.ByteBufWrapper._ import resonantengine.lib.wrapper.CollectionWrapper._ +import resonantengine.prefab.network.{TPacketReceiver, TPacketSender} /** * Meant to replace the furnace class. diff --git a/src/main/scala/edx/basic/process/smelting/firebox/TileHotPlate.scala b/src/main/scala/edx/basic/process/smelting/firebox/TileHotPlate.scala index 252adbad6..afd36c468 100644 --- a/src/main/scala/edx/basic/process/smelting/firebox/TileHotPlate.scala +++ b/src/main/scala/edx/basic/process/smelting/firebox/TileHotPlate.scala @@ -11,14 +11,14 @@ import net.minecraft.item.crafting.FurnaceRecipes import net.minecraft.nbt.NBTTagCompound import net.minecraft.util.IIcon import net.minecraft.world.IBlockAccess +import resonantengine.core.network.discriminator.PacketType import resonantengine.lib.content.prefab.TInventory -import resonantengine.lib.network.discriminator.PacketType -import resonantengine.prefab.network.{TPacketReceiver, TPacketSender} -import resonantengine.lib.prefab.tile.spatial.{ResonantBlock, ResonantTile} +import resonantengine.lib.modcontent.block.{ResonantBlock, ResonantTile} import resonantengine.lib.transform.region.Cuboid import resonantengine.lib.transform.vector.{Vector2, Vector3} import resonantengine.lib.wrapper.ByteBufWrapper._ import resonantengine.lib.wrapper.RandomWrapper._ +import resonantengine.prefab.network.{TPacketReceiver, TPacketSender} /** * For smelting items. @@ -85,22 +85,6 @@ class TileHotPlate extends ResonantTile(Material.iron) with TInventory with TPac } } - def canSmelt(stack: ItemStack): Boolean = stack != null && FurnaceRecipes.smelting.getSmeltingResult(stack) != null - - def canRun: Boolean = - { - val tileEntity = worldObj.getTileEntity(xCoord, yCoord - 1, zCoord) - - if (tileEntity.isInstanceOf[TileFirebox]) - { - if ((tileEntity.asInstanceOf[TileFirebox]).isBurning) - { - return true - } - } - return false - } - override def randomDisplayTick() { val height = 0.2 @@ -133,13 +117,13 @@ class TileHotPlate extends ResonantTile(Material.iron) with TInventory with TPac return smeltTime(i) } - override def getSizeInventory: Int = 4 - override def isItemValidForSlot(i: Int, itemStack: ItemStack): Boolean = { return i < getSizeInventory && canSmelt(itemStack) } + def canSmelt(stack: ItemStack): Boolean = stack != null && FurnaceRecipes.smelting.getSmeltingResult(stack) != null + override def write(buf: ByteBuf, id: Int) { super.write(buf, id) @@ -173,6 +157,8 @@ class TileHotPlate extends ResonantTile(Material.iron) with TInventory with TPac } + override def getSizeInventory: Int = 4 + @SideOnly(Side.CLIENT) override def registerIcons(iconReg: IIconRegister) { @@ -189,6 +175,20 @@ class TileHotPlate extends ResonantTile(Material.iron) with TInventory with TPac return if (access.getBlockMetadata(xi, yi, zi) == 1) ResonantBlock.icon.get("electricHotPlate") else (if (canRun) ResonantBlock.icon.get("hotPlate_on") else ResonantBlock.icon.get(getTextureName)) } + def canRun: Boolean = + { + val tileEntity = worldObj.getTileEntity(xCoord, yCoord - 1, zCoord) + + if (tileEntity.isInstanceOf[TileFirebox]) + { + if ((tileEntity.asInstanceOf[TileFirebox]).isBurning) + { + return true + } + } + return false + } + @SideOnly(Side.CLIENT) override def getIcon(side: Int, meta: Int): IIcon = { diff --git a/src/main/scala/edx/core/prefab/node/TileFluidProvider.scala b/src/main/scala/edx/core/prefab/node/TileFluidProvider.scala index 430b169d3..37869a6b8 100644 --- a/src/main/scala/edx/core/prefab/node/TileFluidProvider.scala +++ b/src/main/scala/edx/core/prefab/node/TileFluidProvider.scala @@ -5,12 +5,12 @@ import net.minecraft.block.material.Material import net.minecraft.nbt.NBTTagCompound import net.minecraftforge.common.util.ForgeDirection import net.minecraftforge.fluids._ +import resonantengine.core.network.discriminator.PacketType import resonantengine.lib.grid.core.TBlockNodeProvider -import resonantengine.lib.network.discriminator.PacketType -import resonantengine.prefab.network.{TPacketReceiver, TPacketSender} +import resonantengine.lib.modcontent.block.ResonantTile import resonantengine.lib.prefab.fluid.NodeFluid -import resonantengine.lib.prefab.tile.spatial.ResonantTile import resonantengine.lib.wrapper.ByteBufWrapper._ +import resonantengine.prefab.network.{TPacketReceiver, TPacketSender} /** * A prefab class for tiles that use the fluid network. @@ -33,20 +33,6 @@ abstract class TileFluidProvider(material: Material) extends ResonantTile(materi } } - def fluidNode = _fluidNode - - def fluidNode_=(newNode: NodeFluid) - { - _fluidNode = newNode - fluidNode.onConnectionChanged = () => - { - clientRenderMask = fluidNode.connectedMask - sendPacket(0) - } - fluidNode.onFluidChanged = () => if (!world.isRemote) sendPacket(1) - nodes.add(fluidNode) - } - override def write(buf: ByteBuf, id: Int) { super.write(buf, id) @@ -66,6 +52,20 @@ abstract class TileFluidProvider(material: Material) extends ResonantTile(materi } } + def fluidNode = _fluidNode + + def fluidNode_=(newNode: NodeFluid) + { + _fluidNode = newNode + fluidNode.onConnectionChanged = () => + { + clientRenderMask = fluidNode.connectedMask + sendPacket(0) + } + fluidNode.onFluidChanged = () => if (!world.isRemote) sendPacket(1) + nodes.add(fluidNode) + } + override def read(buf: ByteBuf, id: Int, packet: PacketType) { super.read(buf, id, packet) diff --git a/src/main/scala/edx/core/prefab/part/PacketMultiPart.scala b/src/main/scala/edx/core/prefab/part/PacketMultiPart.scala index 860a1add6..3cc1d7e86 100644 --- a/src/main/scala/edx/core/prefab/part/PacketMultiPart.scala +++ b/src/main/scala/edx/core/prefab/part/PacketMultiPart.scala @@ -4,9 +4,9 @@ import codechicken.multipart.{TMultiPart, TileMultipart} import io.netty.buffer.ByteBuf import io.netty.channel.ChannelHandlerContext import net.minecraft.entity.player.EntityPlayer -import resonantengine.lib.network.discriminator.PacketType -import resonantengine.prefab.network.TPacketReceiver +import resonantengine.core.network.discriminator.PacketType import resonantengine.lib.transform.vector.Vector3 +import resonantengine.prefab.network.TPacketReceiver /** * Packet handler for blocks and tile entities. @@ -57,11 +57,6 @@ class PacketMultiPart extends PacketType handle(player) } - override def handleServerSide(player: EntityPlayer) - { - handle(player) - } - def handle(player: EntityPlayer) { val tile = player.getEntityWorld.getTileEntity(this.x, this.y, this.z) @@ -80,4 +75,9 @@ class PacketMultiPart extends PacketType throw new UnsupportedOperationException("Packet was sent to a multipart not implementing IPacketReceiver, this is a coding error [" + tile + "] in " + new Vector3(x, y, z)) } } + + override def handleServerSide(player: EntityPlayer) + { + handle(player) + } } \ No newline at end of file diff --git a/src/main/scala/edx/core/prefab/part/connector/PartAbstract.scala b/src/main/scala/edx/core/prefab/part/connector/PartAbstract.scala index ae4bcc628..0f7b5e429 100644 --- a/src/main/scala/edx/core/prefab/part/connector/PartAbstract.scala +++ b/src/main/scala/edx/core/prefab/part/connector/PartAbstract.scala @@ -5,7 +5,7 @@ import codechicken.multipart.{IRedstonePart, TMultiPart} import edx.core.ResonantPartFactory import net.minecraft.item.ItemStack import net.minecraft.util.MovingObjectPosition -import resonantengine.lib.prefab.tile.traits.TTicker +import resonantengine.prefab.block.traits.TTicker import scala.collection.convert.wrapAll._ import scala.collection.mutable diff --git a/src/main/scala/edx/core/resource/content/BlockDecoration.scala b/src/main/scala/edx/core/resource/content/BlockDecoration.scala index 35bcd48d6..e56cd99e9 100644 --- a/src/main/scala/edx/core/resource/content/BlockDecoration.scala +++ b/src/main/scala/edx/core/resource/content/BlockDecoration.scala @@ -9,9 +9,9 @@ import net.minecraft.client.renderer.texture.IIconRegister import net.minecraft.creativetab.CreativeTabs import net.minecraft.item.{Item, ItemStack} import net.minecraft.util.IIcon -import resonantengine.lib.prefab.tile.item.ItemBlockMetadata -import resonantengine.lib.prefab.tile.spatial.ResonantBlock +import resonantengine.lib.modcontent.block.ResonantBlock import resonantengine.lib.wrapper.CollectionWrapper._ +import resonantengine.prefab.block.itemblock.ItemBlockMetadata /** * A block used to build machines or decoration. diff --git a/src/main/scala/edx/core/resource/content/TileDust.scala b/src/main/scala/edx/core/resource/content/TileDust.scala index 247de7439..3112a8923 100644 --- a/src/main/scala/edx/core/resource/content/TileDust.scala +++ b/src/main/scala/edx/core/resource/content/TileDust.scala @@ -3,7 +3,7 @@ package edx.core.resource.content import edx.core.Reference import net.minecraft.block.material.Material import net.minecraft.nbt.NBTTagCompound -import resonantengine.lib.prefab.tile.spatial.ResonantTile +import resonantengine.lib.modcontent.block.ResonantTile import resonantengine.lib.transform.region.Cuboid /** diff --git a/src/main/scala/edx/electrical/ElectricalContent.scala b/src/main/scala/edx/electrical/ElectricalContent.scala index 8e7eda24e..da86ebd88 100644 --- a/src/main/scala/edx/electrical/ElectricalContent.scala +++ b/src/main/scala/edx/electrical/ElectricalContent.scala @@ -25,7 +25,7 @@ import net.minecraft.util.ResourceLocation import net.minecraftforge.client.event.TextureStitchEvent import net.minecraftforge.common.MinecraftForge import net.minecraftforge.oredict.{OreDictionary, ShapelessOreRecipe} -import resonantengine.api.modcontent.ExplicitContentName +import resonantengine.lib.modcontent.ExplicitContentName import resonantengine.lib.utility.recipe.UniversalRecipe import resonantengine.prefab.modcontent.ContentHolder diff --git a/src/main/scala/edx/electrical/battery/TileBattery.scala b/src/main/scala/edx/electrical/battery/TileBattery.scala index b42a9d9c8..179aba0d6 100644 --- a/src/main/scala/edx/electrical/battery/TileBattery.scala +++ b/src/main/scala/edx/electrical/battery/TileBattery.scala @@ -16,18 +16,18 @@ import net.minecraftforge.client.model.AdvancedModelLoader import net.minecraftforge.common.util.ForgeDirection import org.lwjgl.opengl.GL11._ import resonantengine.api.item.ISimpleItemRenderer +import resonantengine.core.network.discriminator.PacketType import resonantengine.lib.content.prefab.TIO import resonantengine.lib.grid.core.TBlockNodeProvider import resonantengine.lib.grid.energy.EnergyStorage import resonantengine.lib.grid.energy.electric.NodeElectricComponent -import resonantengine.lib.network.discriminator.PacketType -import resonantengine.prefab.network.{TPacketReceiver, TPacketSender} -import resonantengine.lib.prefab.tile.spatial.ResonantTile -import resonantengine.lib.prefab.tile.traits.TEnergyProvider +import resonantengine.lib.modcontent.block.ResonantTile import resonantengine.lib.render.RenderUtility import resonantengine.lib.transform.vector.Vector3 import resonantengine.lib.utility.science.UnitDisplay import resonantengine.lib.wrapper.ByteBufWrapper._ +import resonantengine.prefab.block.traits.TEnergyProvider +import resonantengine.prefab.network.{TPacketReceiver, TPacketSender} /** A modular battery box that allows shared connections with boxes next to it. * @@ -69,15 +69,6 @@ class TileBattery extends ResonantTile(Material.iron) with TIO with TBlockNodePr updateConnectionMask() } - def updateConnectionMask() - { - electricNode.setPositives(getInputDirections()) - electricNode.setNegatives(getOutputDirections()) - electricNode.reconstruct() - markUpdate() - notifyChange() - } - override def update() { super.update() @@ -141,6 +132,15 @@ class TileBattery extends ResonantTile(Material.iron) with TIO with TBlockNodePr updateConnectionMask() } + def updateConnectionMask() + { + electricNode.setPositives(getInputDirections()) + electricNode.setNegatives(getOutputDirections()) + electricNode.reconstruct() + markUpdate() + notifyChange() + } + override def onPlaced(entityLiving: EntityLivingBase, itemStack: ItemStack) { if (!world.isRemote && itemStack.getItem.isInstanceOf[ItemBlockBattery]) diff --git a/src/main/scala/edx/electrical/generator/TileMotor.scala b/src/main/scala/edx/electrical/generator/TileMotor.scala index a6d451cd0..d8e354881 100644 --- a/src/main/scala/edx/electrical/generator/TileMotor.scala +++ b/src/main/scala/edx/electrical/generator/TileMotor.scala @@ -13,10 +13,10 @@ import org.lwjgl.opengl.GL11 import resonantengine.lib.content.prefab.TIO import resonantengine.lib.grid.core.TBlockNodeProvider import resonantengine.lib.grid.energy.electric.NodeElectricComponent -import resonantengine.lib.prefab.tile.spatial.ResonantTile -import resonantengine.lib.prefab.tile.traits.TRotatable +import resonantengine.lib.modcontent.block.ResonantTile import resonantengine.lib.render.RenderUtility import resonantengine.lib.transform.vector.Vector3 +import resonantengine.prefab.block.traits.TRotatable /** * A kinetic energy to electrical energy converter. diff --git a/src/main/scala/edx/electrical/generator/TileSolarPanel.scala b/src/main/scala/edx/electrical/generator/TileSolarPanel.scala index ea073e16c..7d00d7857 100644 --- a/src/main/scala/edx/electrical/generator/TileSolarPanel.scala +++ b/src/main/scala/edx/electrical/generator/TileSolarPanel.scala @@ -9,7 +9,7 @@ import net.minecraftforge.common.util.ForgeDirection import resonantengine.lib.content.prefab.TIO import resonantengine.lib.grid.core.TBlockNodeProvider import resonantengine.lib.grid.energy.electric.NodeElectricComponent -import resonantengine.lib.prefab.tile.spatial.{ResonantBlock, ResonantTile} +import resonantengine.lib.modcontent.block.{ResonantBlock, ResonantTile} import resonantengine.lib.render.block.RenderConnectedTexture import resonantengine.lib.transform.region.Cuboid diff --git a/src/main/scala/edx/electrical/generator/TileThermopile.scala b/src/main/scala/edx/electrical/generator/TileThermopile.scala index f46808190..da087e0bf 100644 --- a/src/main/scala/edx/electrical/generator/TileThermopile.scala +++ b/src/main/scala/edx/electrical/generator/TileThermopile.scala @@ -10,7 +10,7 @@ import net.minecraftforge.common.util.ForgeDirection import resonantengine.lib.content.prefab.TIO import resonantengine.lib.grid.core.TBlockNodeProvider import resonantengine.lib.grid.energy.electric.NodeElectricComponent -import resonantengine.lib.prefab.tile.spatial.{ResonantBlock, ResonantTile} +import resonantengine.lib.modcontent.block.{ResonantBlock, ResonantTile} import scala.collection.convert.wrapAll._ diff --git a/src/main/scala/edx/electrical/multimeter/PartMultimeter.scala b/src/main/scala/edx/electrical/multimeter/PartMultimeter.scala index cfcd086c3..05151466e 100644 --- a/src/main/scala/edx/electrical/multimeter/PartMultimeter.scala +++ b/src/main/scala/edx/electrical/multimeter/PartMultimeter.scala @@ -23,8 +23,8 @@ import net.minecraftforge.fluids.{FluidTankInfo, IFluidHandler} import resonantengine.api.graph.INodeProvider import resonantengine.api.network.IPacketReceiver import resonantengine.api.tile.IRemovable +import resonantengine.core.network.discriminator.PacketType import resonantengine.lib.mod.compat.energy.Compatibility -import resonantengine.lib.network.discriminator.PacketType import resonantengine.lib.transform.vector.Vector3 import resonantengine.lib.utility.WrenchUtility @@ -54,6 +54,21 @@ class PartMultimeter extends PartFace with IRedstonePart with IPacketReceiver wi getGrid.remove(this) } + def getGrid: GridMultimeter = + { + if (grid == null) + { + grid = new GridMultimeter + grid.add(this) + } + return grid + } + + def setGrid(network: GridMultimeter) + { + grid = network + } + def updateDesc() { writeDesc(getWriteStream) @@ -237,37 +252,22 @@ class PartMultimeter extends PartFace with IRedstonePart with IPacketReceiver wi updateServer } + def updateServer + { + } + def toggleMode { detectMode = DetectModes((detectMode.id + 1) % DetectModes.values.size).asInstanceOf[DetectModes.DetectMode] updateServer } - def updateServer - { - } - def toggleDetectionValue { detectType = ((detectType + 1) % getGrid.graphs.size).asInstanceOf[Byte] updateServer } - def getGrid: GridMultimeter = - { - if (grid == null) - { - grid = new GridMultimeter - grid.add(this) - } - return grid - } - - def setGrid(network: GridMultimeter) - { - grid = network - } - override def load(nbt: NBTTagCompound) { super.load(nbt) diff --git a/src/main/scala/edx/electrical/tesla/TileTesla.scala b/src/main/scala/edx/electrical/tesla/TileTesla.scala index 31842a0e3..065426fe3 100644 --- a/src/main/scala/edx/electrical/tesla/TileTesla.scala +++ b/src/main/scala/edx/electrical/tesla/TileTesla.scala @@ -17,18 +17,18 @@ import net.minecraft.tileentity.TileEntity import net.minecraft.util.ChatComponentText import net.minecraft.world.World import net.minecraftforge.common.util.ForgeDirection +import resonantengine.core.network.discriminator.{PacketTile, PacketType} import resonantengine.lib.content.prefab.TIO import resonantengine.lib.grid.core.TBlockNodeProvider import resonantengine.lib.grid.energy.EnergyStorage import resonantengine.lib.grid.energy.electric.NodeElectricComponent -import resonantengine.lib.network.discriminator.{PacketTile, PacketType} -import resonantengine.prefab.network.{TPacketReceiver, TPacketSender} -import resonantengine.lib.prefab.tile.multiblock.reference.{IMultiBlockStructure, MultiBlockHandler} -import resonantengine.lib.prefab.tile.spatial.ResonantTile -import resonantengine.lib.prefab.tile.traits.TEnergyProvider +import resonantengine.lib.modcontent.block.ResonantTile import resonantengine.lib.render.EnumColor import resonantengine.lib.transform.vector.{Vector3, VectorWorld} import resonantengine.lib.utility.{LanguageUtility, LinkUtility} +import resonantengine.prefab.block.multiblock.reference.{IMultiBlockStructure, MultiBlockHandler} +import resonantengine.prefab.block.traits.TEnergyProvider +import resonantengine.prefab.network.{TPacketReceiver, TPacketSender} import scala.collection.JavaConversions._ diff --git a/src/main/scala/edx/mechanical/machine/TileDetector.scala b/src/main/scala/edx/mechanical/machine/TileDetector.scala index 9d0ab99a8..e887e56d0 100644 --- a/src/main/scala/edx/mechanical/machine/TileDetector.scala +++ b/src/main/scala/edx/mechanical/machine/TileDetector.scala @@ -18,9 +18,9 @@ import net.minecraft.util.{AxisAlignedBB, IIcon} import net.minecraft.world.IBlockAccess import net.minecraftforge.common.util.ForgeDirection import resonantengine.core.ResonantEngine -import resonantengine.lib.network.discriminator.{PacketTile, PacketType} +import resonantengine.core.network.discriminator.{PacketTile, PacketType} +import resonantengine.lib.modcontent.block.ResonantBlock import resonantengine.prefab.network.TPacketReceiver -import resonantengine.lib.prefab.tile.spatial.ResonantBlock class TileDetector extends TileFilterable with TPacketReceiver { diff --git a/src/main/scala/edx/mechanical/machine/edit/TileBreaker.scala b/src/main/scala/edx/mechanical/machine/edit/TileBreaker.scala index 63723881d..0e7696c35 100644 --- a/src/main/scala/edx/mechanical/machine/edit/TileBreaker.scala +++ b/src/main/scala/edx/mechanical/machine/edit/TileBreaker.scala @@ -16,11 +16,11 @@ import net.minecraft.util.IIcon import net.minecraft.world.IBlockAccess import net.minecraftforge.common.util.ForgeDirection import resonantengine.api.network.IPacketReceiver -import resonantengine.lib.network.discriminator.{PacketTile, PacketType} -import resonantengine.lib.prefab.tile.spatial.ResonantTile -import resonantengine.lib.prefab.tile.traits.TRotatable +import resonantengine.core.network.discriminator.{PacketTile, PacketType} +import resonantengine.lib.modcontent.block.ResonantTile import resonantengine.lib.transform.vector.{Vector3, VectorWorld} import resonantengine.lib.utility.inventory.InternalInventoryHandler +import resonantengine.prefab.block.traits.TRotatable /** * @author tgame14 diff --git a/src/main/scala/edx/mechanical/machine/edit/TilePlacer.scala b/src/main/scala/edx/mechanical/machine/edit/TilePlacer.scala index 3a1180cc8..d115eda98 100644 --- a/src/main/scala/edx/mechanical/machine/edit/TilePlacer.scala +++ b/src/main/scala/edx/mechanical/machine/edit/TilePlacer.scala @@ -13,15 +13,15 @@ import net.minecraft.util.{ChatComponentText, IIcon} import net.minecraft.world.IBlockAccess import net.minecraftforge.common.util.ForgeDirection import org.lwjgl.opengl.GL11 +import resonantengine.core.network.discriminator.PacketTile import resonantengine.lib.content.prefab.TInventory -import resonantengine.lib.network.discriminator.PacketTile -import resonantengine.prefab.network.TPacketSender -import resonantengine.lib.prefab.tile.spatial.ResonantTile -import resonantengine.lib.prefab.tile.traits.TRotatable +import resonantengine.lib.modcontent.block.ResonantTile import resonantengine.lib.render.RenderItemOverlayUtility import resonantengine.lib.transform.vector.Vector3 import resonantengine.lib.utility.LanguageUtility import resonantengine.lib.utility.inventory.{InternalInventoryHandler, InventoryUtility} +import resonantengine.prefab.block.traits.TRotatable +import resonantengine.prefab.network.TPacketSender /** * @author tgame14 diff --git a/src/main/scala/edx/mechanical/mech/TileMechanical.scala b/src/main/scala/edx/mechanical/mech/TileMechanical.scala index ebc73edbe..80cdf60c6 100644 --- a/src/main/scala/edx/mechanical/mech/TileMechanical.scala +++ b/src/main/scala/edx/mechanical/mech/TileMechanical.scala @@ -5,13 +5,13 @@ import io.netty.buffer.ByteBuf import net.minecraft.block.material.Material import net.minecraft.entity.player.EntityPlayer import net.minecraftforge.common.util.ForgeDirection +import resonantengine.core.network.discriminator.PacketType import resonantengine.lib.grid.core.TBlockNodeProvider -import resonantengine.lib.network.discriminator.PacketType -import resonantengine.prefab.network.{TPacketReceiver, TPacketSender} -import resonantengine.lib.prefab.tile.spatial.ResonantTile -import resonantengine.lib.prefab.tile.traits.TRotatable +import resonantengine.lib.modcontent.block.ResonantTile import resonantengine.lib.transform.vector.Vector3 import resonantengine.lib.wrapper.ByteBufWrapper._ +import resonantengine.prefab.block.traits.TRotatable +import resonantengine.prefab.network.{TPacketReceiver, TPacketSender} import scala.collection.convert.wrapAll._ diff --git a/src/main/scala/edx/mechanical/mech/gear/GearMultiBlockHandler.scala b/src/main/scala/edx/mechanical/mech/gear/GearMultiBlockHandler.scala index 2a9b4f35a..321df508f 100644 --- a/src/main/scala/edx/mechanical/mech/gear/GearMultiBlockHandler.scala +++ b/src/main/scala/edx/mechanical/mech/gear/GearMultiBlockHandler.scala @@ -2,8 +2,8 @@ package edx.mechanical.mech.gear import codechicken.multipart.TileMultipart import net.minecraftforge.common.util.ForgeDirection -import resonantengine.lib.prefab.tile.multiblock.reference.MultiBlockHandler import resonantengine.lib.transform.vector.Vector3 +import resonantengine.prefab.block.multiblock.reference.MultiBlockHandler class GearMultiBlockHandler(wrapper: PartGear) extends MultiBlockHandler[PartGear](wrapper: PartGear) { diff --git a/src/main/scala/edx/mechanical/mech/gear/PartGear.scala b/src/main/scala/edx/mechanical/mech/gear/PartGear.scala index 7b24340ac..fb2b05d52 100644 --- a/src/main/scala/edx/mechanical/mech/gear/PartGear.scala +++ b/src/main/scala/edx/mechanical/mech/gear/PartGear.scala @@ -16,8 +16,8 @@ import net.minecraft.util.MovingObjectPosition import net.minecraft.world.World import net.minecraftforge.common.util.ForgeDirection import resonantengine.api.graph.node.INode -import resonantengine.lib.prefab.tile.multiblock.reference.IMultiBlockStructure import resonantengine.lib.utility.WrenchUtility +import resonantengine.prefab.block.multiblock.reference.IMultiBlockStructure /** * We assume all the force acting on the gear is 90 degrees. @@ -96,6 +96,8 @@ class PartGear extends PartMechanical with IMultiBlockStructure[PartGear] return (primaryPos.xi == x && placementSide.offsetX == 0) || (primaryPos.yi == y && placementSide.offsetY == 0) || (primaryPos.zi == z && placementSide.offsetZ == 0) } + override def getMultiBlock: GearMultiBlockHandler = multiBlock + @SideOnly(Side.CLIENT) override def renderDynamic(pos: Vector3, frame: Float, pass: Int) { @@ -115,8 +117,6 @@ class PartGear extends PartMechanical with IMultiBlockStructure[PartGear] getMultiBlock.save(nbt) } - override def getMultiBlock: GearMultiBlockHandler = multiBlock - override def getMultiBlockVectors: java.util.List[resonantengine.lib.transform.vector.Vector3] = new resonantengine.lib.transform.vector.Vector3().getAround(this.world, placementSide, 1) def getWorld: World = diff --git a/src/main/scala/edx/mechanical/mech/turbine/TileTurbine.scala b/src/main/scala/edx/mechanical/mech/turbine/TileTurbine.scala index b4b92c3a1..1b017dab1 100644 --- a/src/main/scala/edx/mechanical/mech/turbine/TileTurbine.scala +++ b/src/main/scala/edx/mechanical/mech/turbine/TileTurbine.scala @@ -12,10 +12,10 @@ import net.minecraft.nbt.NBTTagCompound import net.minecraft.util.AxisAlignedBB import net.minecraft.world.World import net.minecraftforge.common.util.ForgeDirection -import resonantengine.lib.network.discriminator.PacketType -import resonantengine.lib.prefab.tile.multiblock.reference.IMultiBlockStructure +import resonantengine.core.network.discriminator.PacketType import resonantengine.lib.transform.vector.Vector3 import resonantengine.lib.wrapper.ByteBufWrapper._ +import resonantengine.prefab.block.multiblock.reference.IMultiBlockStructure import scala.collection.JavaConversions._ @@ -113,6 +113,11 @@ class TileTurbine extends TileMechanical(Material.wood) with IMultiBlockStructur getMultiBlock.load(nbt) } + def getMultiBlock: TurbineMBlockHandler = + { + return multiBlock + } + /** Writes a tile entity to NBT. */ override def writeToNBT(nbt: NBTTagCompound) { @@ -122,11 +127,6 @@ class TileTurbine extends TileMechanical(Material.wood) with IMultiBlockStructur getMultiBlock.save(nbt) } - def getMultiBlock: TurbineMBlockHandler = - { - return multiBlock - } - override def read(buf: ByteBuf, id: Int, packetType: PacketType) { super.read(buf, id, packetType) diff --git a/src/main/scala/edx/mechanical/mech/turbine/TileWaterTurbine.scala b/src/main/scala/edx/mechanical/mech/turbine/TileWaterTurbine.scala index ddb23245d..871d06c1c 100644 --- a/src/main/scala/edx/mechanical/mech/turbine/TileWaterTurbine.scala +++ b/src/main/scala/edx/mechanical/mech/turbine/TileWaterTurbine.scala @@ -14,9 +14,9 @@ import net.minecraft.util.Vec3 import net.minecraft.world.IBlockAccess import net.minecraftforge.common.util.ForgeDirection import resonantengine.api.graph.INodeProvider -import resonantengine.lib.prefab.tile.item.ItemBlockMetadata import resonantengine.lib.transform.vector.Vector3 import resonantengine.lib.wrapper.CollectionWrapper._ +import resonantengine.prefab.block.itemblock.ItemBlockMetadata /** * The vertical water turbine collects flowing water flowing on X axis. diff --git a/src/main/scala/edx/mechanical/mech/turbine/TileWindTurbine.scala b/src/main/scala/edx/mechanical/mech/turbine/TileWindTurbine.scala index e4f016e54..6fa110491 100644 --- a/src/main/scala/edx/mechanical/mech/turbine/TileWindTurbine.scala +++ b/src/main/scala/edx/mechanical/mech/turbine/TileWindTurbine.scala @@ -15,13 +15,13 @@ import net.minecraftforge.common.util.ForgeDirection import net.minecraftforge.fluids.{Fluid, FluidStack, FluidTank, FluidTankInfo} import org.lwjgl.opengl.GL11 import resonantengine.api.tile.IBoilHandler -import resonantengine.lib.prefab.tile.item.ItemBlockMetadata import resonantengine.lib.render.RenderUtility import resonantengine.lib.transform.vector.Vector3 import resonantengine.lib.utility.MathUtility import resonantengine.lib.utility.inventory.InventoryUtility import resonantengine.lib.wrapper.CollectionWrapper._ import resonantengine.lib.wrapper.NBTWrapper._ +import resonantengine.prefab.block.itemblock.ItemBlockMetadata /** * The vertical wind turbine collects airflow. diff --git a/src/main/scala/edx/mechanical/mech/turbine/TurbineMBlockHandler.scala b/src/main/scala/edx/mechanical/mech/turbine/TurbineMBlockHandler.scala index bc025a671..245633053 100644 --- a/src/main/scala/edx/mechanical/mech/turbine/TurbineMBlockHandler.scala +++ b/src/main/scala/edx/mechanical/mech/turbine/TurbineMBlockHandler.scala @@ -1,8 +1,8 @@ package edx.mechanical.mech.turbine import net.minecraft.tileentity.TileEntity -import resonantengine.lib.prefab.tile.multiblock.reference.MultiBlockHandler import resonantengine.lib.transform.vector.Vector3 +import resonantengine.prefab.block.multiblock.reference.MultiBlockHandler class TurbineMBlockHandler(wrapper: TileTurbine) extends MultiBlockHandler[TileTurbine](wrapper) { diff --git a/src/main/scala/edx/quantum/QuantumContent.scala b/src/main/scala/edx/quantum/QuantumContent.scala index 04a5be263..38718bfe1 100644 --- a/src/main/scala/edx/quantum/QuantumContent.scala +++ b/src/main/scala/edx/quantum/QuantumContent.scala @@ -36,10 +36,10 @@ import net.minecraftforge.fluids._ import net.minecraftforge.oredict.{OreDictionary, ShapelessOreRecipe} import resonantengine.api.edx.recipe.QuantumAssemblerRecipes import resonantengine.api.event.PlasmaEvent -import resonantengine.api.modcontent.ExplicitContentName import resonantengine.api.tile.IElectromagnet import resonantengine.lib.factory.resources.block.OreGenerator import resonantengine.lib.grid.thermal.ThermalEvent +import resonantengine.lib.modcontent.ExplicitContentName import resonantengine.lib.schematic.SchematicRegistry import resonantengine.lib.transform.vector.VectorWorld import resonantengine.lib.utility.recipe.UniversalRecipe diff --git a/src/main/scala/edx/quantum/blocks/TileElectromagnet.scala b/src/main/scala/edx/quantum/blocks/TileElectromagnet.scala index 5e14135df..dc504a9e3 100644 --- a/src/main/scala/edx/quantum/blocks/TileElectromagnet.scala +++ b/src/main/scala/edx/quantum/blocks/TileElectromagnet.scala @@ -12,12 +12,12 @@ import net.minecraft.world.IBlockAccess import net.minecraftforge.common.util.ForgeDirection import org.lwjgl.opengl.GL11._ import resonantengine.api.tile.IElectromagnet -import resonantengine.lib.prefab.tile.item.ItemBlockMetadata -import resonantengine.lib.prefab.tile.spatial.ResonantBlock +import resonantengine.lib.modcontent.block.ResonantBlock import resonantengine.lib.render.{RenderBlockUtility, RenderUtility} import resonantengine.lib.transform.vector.Vector3 import resonantengine.lib.utility.WorldUtility import resonantengine.lib.wrapper.CollectionWrapper._ +import resonantengine.prefab.block.itemblock.ItemBlockMetadata /** * Electromagnet block diff --git a/src/main/scala/edx/quantum/blocks/TileSiren.scala b/src/main/scala/edx/quantum/blocks/TileSiren.scala index f4ab159d4..082836848 100644 --- a/src/main/scala/edx/quantum/blocks/TileSiren.scala +++ b/src/main/scala/edx/quantum/blocks/TileSiren.scala @@ -5,7 +5,7 @@ import net.minecraft.block.material.Material import net.minecraft.entity.player.EntityPlayer import net.minecraft.world.World import net.minecraftforge.common.util.ForgeDirection -import resonantengine.lib.prefab.tile.spatial.ResonantBlock +import resonantengine.lib.modcontent.block.ResonantBlock import resonantengine.lib.transform.vector.Vector3 /** diff --git a/src/main/scala/edx/quantum/laser/TileLaserEmitter.scala b/src/main/scala/edx/quantum/laser/TileLaserEmitter.scala index 99e7f6215..e953cdf17 100644 --- a/src/main/scala/edx/quantum/laser/TileLaserEmitter.scala +++ b/src/main/scala/edx/quantum/laser/TileLaserEmitter.scala @@ -15,10 +15,10 @@ import org.lwjgl.opengl.GL11 import org.lwjgl.opengl.GL11._ import resonantengine.lib.grid.core.TBlockNodeProvider import resonantengine.lib.grid.energy.electric.NodeElectricComponent -import resonantengine.lib.prefab.tile.spatial.ResonantTile -import resonantengine.lib.prefab.tile.traits.TRotatable +import resonantengine.lib.modcontent.block.ResonantTile import resonantengine.lib.render.RenderUtility import resonantengine.lib.transform.vector.Vector3 +import resonantengine.prefab.block.traits.TRotatable import scala.collection.convert.wrapAll._ diff --git a/src/main/scala/edx/quantum/laser/TileLaserReceiver.scala b/src/main/scala/edx/quantum/laser/TileLaserReceiver.scala index 39acde068..d98d1e8bc 100644 --- a/src/main/scala/edx/quantum/laser/TileLaserReceiver.scala +++ b/src/main/scala/edx/quantum/laser/TileLaserReceiver.scala @@ -13,10 +13,10 @@ import net.minecraftforge.common.util.ForgeDirection import org.lwjgl.opengl.GL11._ import resonantengine.lib.grid.core.TBlockNodeProvider import resonantengine.lib.grid.energy.electric.NodeElectricComponent -import resonantengine.lib.prefab.tile.spatial.ResonantTile -import resonantengine.lib.prefab.tile.traits.TRotatable +import resonantengine.lib.modcontent.block.ResonantTile import resonantengine.lib.render.RenderUtility import resonantengine.lib.transform.vector.Vector3 +import resonantengine.prefab.block.traits.TRotatable import scala.collection.convert.wrapAll._ diff --git a/src/main/scala/edx/quantum/laser/focus/TileFocus.scala b/src/main/scala/edx/quantum/laser/focus/TileFocus.scala index 98d880600..73f7aa6b7 100644 --- a/src/main/scala/edx/quantum/laser/focus/TileFocus.scala +++ b/src/main/scala/edx/quantum/laser/focus/TileFocus.scala @@ -5,7 +5,7 @@ import net.minecraft.entity.EntityLivingBase import net.minecraft.entity.player.EntityPlayer import net.minecraft.item.ItemStack import net.minecraftforge.common.util.ForgeDirection -import resonantengine.lib.prefab.tile.spatial.ResonantTile +import resonantengine.lib.modcontent.block.ResonantTile import resonantengine.lib.transform.vector.Vector3 /** diff --git a/src/main/scala/edx/quantum/machine/TileFunnel.scala b/src/main/scala/edx/quantum/machine/TileFunnel.scala index ddeea5272..e2f870bd6 100644 --- a/src/main/scala/edx/quantum/machine/TileFunnel.scala +++ b/src/main/scala/edx/quantum/machine/TileFunnel.scala @@ -9,7 +9,7 @@ import net.minecraft.util.IIcon import net.minecraftforge.common.util.ForgeDirection import net.minecraftforge.fluids._ import resonantengine.api.tile.IBoilHandler -import resonantengine.lib.prefab.tile.spatial.ResonantTile +import resonantengine.lib.modcontent.block.ResonantTile /** * Funnel for gas. diff --git a/src/main/scala/edx/quantum/machine/accelerator/TileAccelerator.scala b/src/main/scala/edx/quantum/machine/accelerator/TileAccelerator.scala index 02f81e680..135f4b380 100644 --- a/src/main/scala/edx/quantum/machine/accelerator/TileAccelerator.scala +++ b/src/main/scala/edx/quantum/machine/accelerator/TileAccelerator.scala @@ -13,14 +13,14 @@ import net.minecraft.nbt.NBTTagCompound import net.minecraft.util.IIcon import net.minecraftforge.common.util.ForgeDirection import resonantengine.api.tile.{IElectromagnet, IRotatable} +import resonantengine.core.network.discriminator.{PacketTile, PacketType} import resonantengine.lib.content.prefab.TInventory import resonantengine.lib.grid.energy.EnergyStorage -import resonantengine.lib.network.discriminator.{PacketTile, PacketType} -import resonantengine.prefab.network.{TPacketReceiver, TPacketSender} -import resonantengine.lib.prefab.tile.spatial.ResonantTile -import resonantengine.lib.prefab.tile.traits.TEnergyProvider +import resonantengine.lib.modcontent.block.ResonantTile import resonantengine.lib.transform.vector.Vector3 import resonantengine.lib.utility.BlockUtility +import resonantengine.prefab.block.traits.TEnergyProvider +import resonantengine.prefab.network.{TPacketReceiver, TPacketSender} import scala.collection.JavaConversions._ diff --git a/src/main/scala/edx/quantum/machine/boiler/TileNuclearBoiler.scala b/src/main/scala/edx/quantum/machine/boiler/TileNuclearBoiler.scala index 13b615988..8cb89e4ba 100644 --- a/src/main/scala/edx/quantum/machine/boiler/TileNuclearBoiler.scala +++ b/src/main/scala/edx/quantum/machine/boiler/TileNuclearBoiler.scala @@ -12,14 +12,14 @@ import net.minecraftforge.common.util.ForgeDirection import net.minecraftforge.fluids._ import resonantengine.api.network.IPacketReceiver import resonantengine.core.ResonantEngine +import resonantengine.core.network.discriminator.{PacketTile, PacketType} import resonantengine.lib.content.prefab.{TIO, TInventory} import resonantengine.lib.grid.core.TBlockNodeProvider import resonantengine.lib.grid.energy.EnergyStorage import resonantengine.lib.grid.energy.electric.NodeElectricComponent -import resonantengine.lib.network.discriminator.{PacketTile, PacketType} -import resonantengine.lib.prefab.tile.spatial.ResonantTile -import resonantengine.lib.prefab.tile.traits.{TEnergyProvider, TRotatable} +import resonantengine.lib.modcontent.block.ResonantTile import resonantengine.lib.transform.vector.Vector3 +import resonantengine.prefab.block.traits.{TEnergyProvider, TRotatable} /** * Nuclear boiler TileEntity diff --git a/src/main/scala/edx/quantum/machine/centrifuge/TileCentrifuge.scala b/src/main/scala/edx/quantum/machine/centrifuge/TileCentrifuge.scala index 3f2e44290..b5e3dd5a6 100644 --- a/src/main/scala/edx/quantum/machine/centrifuge/TileCentrifuge.scala +++ b/src/main/scala/edx/quantum/machine/centrifuge/TileCentrifuge.scala @@ -12,15 +12,15 @@ import net.minecraft.tileentity.TileEntity import net.minecraftforge.common.util.ForgeDirection import net.minecraftforge.fluids._ import resonantengine.api.network.IPacketReceiver +import resonantengine.core.network.discriminator.{PacketTile, PacketType} import resonantengine.lib.content.prefab.{TIO, TInventory} import resonantengine.lib.grid.core.TBlockNodeProvider import resonantengine.lib.grid.energy.EnergyStorage import resonantengine.lib.grid.energy.electric.NodeElectricComponent import resonantengine.lib.mod.compat.energy.Compatibility -import resonantengine.lib.network.discriminator.{PacketTile, PacketType} -import resonantengine.lib.prefab.tile.spatial.ResonantTile -import resonantengine.lib.prefab.tile.traits.{TEnergyProvider, TRotatable} +import resonantengine.lib.modcontent.block.ResonantTile import resonantengine.lib.transform.vector.Vector3 +import resonantengine.prefab.block.traits.{TEnergyProvider, TRotatable} /** * Centrifuge TileEntity diff --git a/src/main/scala/edx/quantum/machine/extractor/TileChemicalExtractor.scala b/src/main/scala/edx/quantum/machine/extractor/TileChemicalExtractor.scala index d89950b3a..9a67e83d4 100644 --- a/src/main/scala/edx/quantum/machine/extractor/TileChemicalExtractor.scala +++ b/src/main/scala/edx/quantum/machine/extractor/TileChemicalExtractor.scala @@ -11,8 +11,8 @@ import net.minecraftforge.fluids._ import resonantengine.lib.content.prefab.TIO import resonantengine.lib.grid.energy.EnergyStorage import resonantengine.lib.mod.compat.energy.Compatibility -import resonantengine.lib.prefab.tile.traits.{TEnergyProvider, TRotatable} import resonantengine.lib.transform.vector.Vector3 +import resonantengine.prefab.block.traits.{TEnergyProvider, TRotatable} /** * Chemical extractor TileEntity diff --git a/src/main/scala/edx/quantum/machine/extractor/TileProcess.scala b/src/main/scala/edx/quantum/machine/extractor/TileProcess.scala index e1efb4e5e..c5cd6d8ef 100644 --- a/src/main/scala/edx/quantum/machine/extractor/TileProcess.scala +++ b/src/main/scala/edx/quantum/machine/extractor/TileProcess.scala @@ -6,7 +6,7 @@ import net.minecraftforge.fluids.{FluidContainerRegistry, FluidStack, FluidTank} import resonantengine.api.edx.recipe.{MachineRecipes, RecipeResource} import resonantengine.lib.content.prefab.TInventory import resonantengine.lib.grid.core.TBlockNodeProvider -import resonantengine.lib.prefab.tile.spatial.ResonantTile +import resonantengine.lib.modcontent.block.ResonantTile /** * General class for all machines that do traditional recipe processing diff --git a/src/main/scala/edx/quantum/machine/fulmination/TileFulmination.scala b/src/main/scala/edx/quantum/machine/fulmination/TileFulmination.scala index 2450f6ea9..14fdcb9f6 100644 --- a/src/main/scala/edx/quantum/machine/fulmination/TileFulmination.scala +++ b/src/main/scala/edx/quantum/machine/fulmination/TileFulmination.scala @@ -2,8 +2,8 @@ package edx.quantum.machine.fulmination import net.minecraft.block.material.Material import resonantengine.lib.grid.energy.EnergyStorage -import resonantengine.lib.prefab.tile.spatial.ResonantTile -import resonantengine.lib.prefab.tile.traits.TEnergyProvider +import resonantengine.lib.modcontent.block.ResonantTile +import resonantengine.prefab.block.traits.TEnergyProvider /** * Fulmination TileEntity diff --git a/src/main/scala/edx/quantum/machine/plasma/TilePlasma.scala b/src/main/scala/edx/quantum/machine/plasma/TilePlasma.scala index e43be72f8..39f580518 100644 --- a/src/main/scala/edx/quantum/machine/plasma/TilePlasma.scala +++ b/src/main/scala/edx/quantum/machine/plasma/TilePlasma.scala @@ -14,7 +14,7 @@ import net.minecraftforge.common.util.ForgeDirection import resonantengine.api.event.PlasmaEvent import resonantengine.lib.grid.thermal.GridThermal import resonantengine.lib.mod.config.Config -import resonantengine.lib.prefab.tile.spatial.ResonantTile +import resonantengine.lib.modcontent.block.ResonantTile import resonantengine.lib.transform.vector.Vector3 object TilePlasma diff --git a/src/main/scala/edx/quantum/machine/plasma/TilePlasmaHeater.scala b/src/main/scala/edx/quantum/machine/plasma/TilePlasmaHeater.scala index 74173bc77..04636d596 100644 --- a/src/main/scala/edx/quantum/machine/plasma/TilePlasmaHeater.scala +++ b/src/main/scala/edx/quantum/machine/plasma/TilePlasmaHeater.scala @@ -13,16 +13,16 @@ import net.minecraftforge.common.util.ForgeDirection import net.minecraftforge.fluids._ import resonantengine.api.network.IPacketReceiver import resonantengine.core.ResonantEngine +import resonantengine.core.network.discriminator.{PacketTile, PacketType} import resonantengine.lib.grid.core.TBlockNodeProvider import resonantengine.lib.grid.energy.EnergyStorage import resonantengine.lib.grid.energy.electric.NodeElectricComponent import resonantengine.lib.mod.config.Config -import resonantengine.lib.network.discriminator.{PacketTile, PacketType} -import resonantengine.lib.prefab.tile.spatial.ResonantTile -import resonantengine.lib.prefab.tile.traits.TEnergyProvider +import resonantengine.lib.modcontent.block.ResonantTile import resonantengine.lib.transform.vector.Vector3 import resonantengine.lib.utility.science.UnitDisplay import resonantengine.lib.utility.{FluidUtility, LanguageUtility} +import resonantengine.prefab.block.traits.TEnergyProvider object TilePlasmaHeater { diff --git a/src/main/scala/edx/quantum/machine/quantum/TileQuantumAssembler.scala b/src/main/scala/edx/quantum/machine/quantum/TileQuantumAssembler.scala index 9af6c29ea..00f285a0c 100644 --- a/src/main/scala/edx/quantum/machine/quantum/TileQuantumAssembler.scala +++ b/src/main/scala/edx/quantum/machine/quantum/TileQuantumAssembler.scala @@ -10,14 +10,14 @@ import net.minecraft.item.{Item, ItemStack} import net.minecraft.nbt.NBTTagCompound import resonantengine.api.edx.recipe.QuantumAssemblerRecipes import resonantengine.api.network.IPacketReceiver +import resonantengine.core.network.discriminator.{PacketTile, PacketType} import resonantengine.lib.content.prefab.TInventory import resonantengine.lib.grid.core.TBlockNodeProvider import resonantengine.lib.grid.energy.EnergyStorage import resonantengine.lib.grid.energy.electric.NodeElectricComponent -import resonantengine.lib.network.discriminator.{PacketTile, PacketType} -import resonantengine.lib.prefab.tile.spatial.ResonantTile -import resonantengine.lib.prefab.tile.traits.TEnergyProvider +import resonantengine.lib.modcontent.block.ResonantTile import resonantengine.lib.transform.vector.Vector3 +import resonantengine.prefab.block.traits.TEnergyProvider /** * Atomic assembler of items * diff --git a/src/main/scala/edx/quantum/machine/thermometer/ItemBlockThermometer.scala b/src/main/scala/edx/quantum/machine/thermometer/ItemBlockThermometer.scala index 9ee64952f..51aa67014 100644 --- a/src/main/scala/edx/quantum/machine/thermometer/ItemBlockThermometer.scala +++ b/src/main/scala/edx/quantum/machine/thermometer/ItemBlockThermometer.scala @@ -8,11 +8,11 @@ import net.minecraft.item.ItemStack import net.minecraft.nbt.NBTTagCompound import net.minecraft.util.ChatComponentText import net.minecraft.world.World -import resonantengine.lib.prefab.tile.item.ItemBlockSaved import resonantengine.lib.transform.vector.Vector3 import resonantengine.lib.utility.LanguageUtility import resonantengine.lib.utility.nbt.NBTUtility import resonantengine.lib.wrapper.CollectionWrapper._ +import resonantengine.prefab.block.itemblock.ItemBlockSaved class ItemBlockThermometer(block: Block) extends ItemBlockSaved(block: Block) { @@ -52,19 +52,6 @@ class ItemBlockThermometer(block: Block) extends ItemBlockSaved(block: Block) return itemStack } - def setSavedCoords(itemStack: ItemStack, position: Vector3) - { - val nbt: NBTTagCompound = NBTUtility.getNBTTagCompound(itemStack) - if (position != null) - { - nbt.setTag("trackCoordinate", position.writeNBT(new NBTTagCompound)) - } - else - { - nbt.removeTag("trackCoordinate") - } - } - override def onItemUse(itemStack: ItemStack, player: EntityPlayer, world: World, x: Int, y: Int, z: Int, par7: Int, par8: Float, par9: Float, par10: Float): Boolean = { if (player.isSneaking) @@ -78,4 +65,17 @@ class ItemBlockThermometer(block: Block) extends ItemBlockSaved(block: Block) } return super.onItemUse(itemStack, player, world, x, y, z, par7, par8, par9, par10) } + + def setSavedCoords(itemStack: ItemStack, position: Vector3) + { + val nbt: NBTTagCompound = NBTUtility.getNBTTagCompound(itemStack) + if (position != null) + { + nbt.setTag("trackCoordinate", position.writeNBT(new NBTTagCompound)) + } + else + { + nbt.removeTag("trackCoordinate") + } + } } \ No newline at end of file diff --git a/src/main/scala/edx/quantum/machine/thermometer/TileThermometer.scala b/src/main/scala/edx/quantum/machine/thermometer/TileThermometer.scala index fee093d15..597216073 100644 --- a/src/main/scala/edx/quantum/machine/thermometer/TileThermometer.scala +++ b/src/main/scala/edx/quantum/machine/thermometer/TileThermometer.scala @@ -16,10 +16,10 @@ import net.minecraft.nbt.NBTTagCompound import net.minecraft.util.IIcon import net.minecraft.world.IBlockAccess import resonantengine.lib.grid.thermal.GridThermal -import resonantengine.lib.prefab.tile.item.ItemBlockSaved -import resonantengine.lib.prefab.tile.spatial.ResonantTile +import resonantengine.lib.modcontent.block.ResonantTile import resonantengine.lib.transform.vector.{Vector3, VectorWorld} import resonantengine.lib.utility.inventory.InventoryUtility +import resonantengine.prefab.block.itemblock.ItemBlockSaved /** * Thermometer TileEntity @@ -81,11 +81,6 @@ class TileThermometer extends ResonantTile(Material.piston) with SimpleComponent markUpdate } - def getThreshold: Int = - { - return threshold - } - override def configure(player: EntityPlayer, side: Int, hit: Vector3): Boolean = { if (player.isSneaking) @@ -141,11 +136,6 @@ class TileThermometer extends ResonantTile(Material.piston) with SimpleComponent } } - def isOverThreshold: Boolean = - { - return detectedTemperature >= getThreshold - } - def setTrack(track: Vector3) { trackCoordinate = track @@ -195,6 +185,11 @@ class TileThermometer extends ResonantTile(Material.piston) with SimpleComponent return Array[Any](this.getThreshold) } + def getThreshold: Int = + { + return threshold + } + @Callback @Optional.Method(modid = "OpenComputers") def isAboveWarningTemperature(context: Context, args: Arguments): Array[Any] = @@ -202,6 +197,11 @@ class TileThermometer extends ResonantTile(Material.piston) with SimpleComponent return Array[Any](this.isOverThreshold) } + def isOverThreshold: Boolean = + { + return detectedTemperature >= getThreshold + } + @Callback @Optional.Method(modid = "OpenComputers") def setWarningTemperature(context: Context, args: Arguments): Array[Any] = diff --git a/src/main/scala/edx/quantum/reactor/TileControlRod.scala b/src/main/scala/edx/quantum/reactor/TileControlRod.scala index 6651820c2..9eb8dd8ef 100644 --- a/src/main/scala/edx/quantum/reactor/TileControlRod.scala +++ b/src/main/scala/edx/quantum/reactor/TileControlRod.scala @@ -1,7 +1,7 @@ package edx.quantum.reactor import net.minecraft.block.material.Material -import resonantengine.lib.prefab.tile.spatial.ResonantBlock +import resonantengine.lib.modcontent.block.ResonantBlock import resonantengine.lib.transform.region.Cuboid /** diff --git a/src/main/scala/edx/quantum/reactor/TileReactorCell.scala b/src/main/scala/edx/quantum/reactor/TileReactorCell.scala index 2a3c7ec2f..c206e1131 100644 --- a/src/main/scala/edx/quantum/reactor/TileReactorCell.scala +++ b/src/main/scala/edx/quantum/reactor/TileReactorCell.scala @@ -21,14 +21,14 @@ import net.minecraftforge.common.util.ForgeDirection import org.lwjgl.opengl.GL11 import resonantengine.api.edx.machine.{IReactor, IReactorComponent} import resonantengine.lib.grid.thermal.{GridThermal, ThermalPhysics} -import resonantengine.prefab.network.{TPacketReceiver, TPacketSender} import resonantengine.lib.prefab.poison.PoisonRadiation -import resonantengine.lib.prefab.tile.mixed.TileInventory -import resonantengine.lib.prefab.tile.multiblock.reference.{IMultiBlockStructure, MultiBlockHandler} import resonantengine.lib.render.RenderUtility import resonantengine.lib.render.model.ModelCube import resonantengine.lib.transform.vector.Vector3 import resonantengine.lib.utility.inventory.InventoryUtility +import resonantengine.prefab.block.mixed.TileInventory +import resonantengine.prefab.block.multiblock.reference.{IMultiBlockStructure, MultiBlockHandler} +import resonantengine.prefab.network.{TPacketReceiver, TPacketSender} import scala.collection.convert.wrapAll._ @@ -115,8 +115,6 @@ class TileReactorCell extends TileInventory(Material.iron) with IMultiBlockStruc return lowest } - override def getMultiBlock: MultiBlockHandler[TileReactorCell] = multiBlock - override def onNeighborChanged(block: Block) { updatePositionStatus() @@ -245,6 +243,8 @@ class TileReactorCell extends TileInventory(Material.iron) with IMultiBlockStruc } } + override def getMultiBlock: MultiBlockHandler[TileReactorCell] = multiBlock + override def getWorld: World = { return worldObj