Some work on glass jar item rendering
This commit is contained in:
parent
d3ebaac06d
commit
3c70f362a4
|
@ -23,6 +23,7 @@ item.resonantinduction:oreRefinedDust.name=%v Refined Dust
|
||||||
item.resonantinduction:oreRubble.name=%v Rubble
|
item.resonantinduction:oreRubble.name=%v Rubble
|
||||||
item.resonantinduction:bucketMixture.name=%v Bucket
|
item.resonantinduction:bucketMixture.name=%v Bucket
|
||||||
item.resonantinduction:bucketMolten.name=%v Bucket
|
item.resonantinduction:bucketMolten.name=%v Bucket
|
||||||
|
item.resonantinduction:bucketMolten.name=%v Bucket
|
||||||
|
|
||||||
#Misc
|
#Misc
|
||||||
misc.ingot=Ingot
|
misc.ingot=Ingot
|
||||||
|
|
|
@ -1,13 +1,20 @@
|
||||||
package resonantinduction.archaic.process.mixing
|
package resonantinduction.archaic.process.mixing
|
||||||
|
|
||||||
|
import java.util
|
||||||
|
|
||||||
import net.minecraft.block.Block
|
import net.minecraft.block.Block
|
||||||
import net.minecraft.entity.Entity
|
import net.minecraft.entity.Entity
|
||||||
import net.minecraft.entity.player.EntityPlayer
|
import net.minecraft.entity.player.EntityPlayer
|
||||||
import net.minecraft.item.ItemStack
|
import net.minecraft.item.ItemStack
|
||||||
import net.minecraft.world.World
|
import net.minecraft.world.World
|
||||||
|
import org.lwjgl.input.Keyboard
|
||||||
import resonant.lib.prefab.tile.item.ItemBlockSaved
|
import resonant.lib.prefab.tile.item.ItemBlockSaved
|
||||||
|
import resonant.lib.render.EnumColor
|
||||||
import resonant.lib.transform.vector.{IVector3, Vector3}
|
import resonant.lib.transform.vector.{IVector3, Vector3}
|
||||||
import resonant.lib.utility.nbt.NBTUtility
|
import resonant.lib.utility.nbt.NBTUtility
|
||||||
|
import resonant.lib.wrapper.StringWrapper._
|
||||||
|
import resonant.lib.wrapper.WrapList._
|
||||||
|
import resonantinduction.core.resource.Alloy
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The ItemBlock for the glass jar
|
* The ItemBlock for the glass jar
|
||||||
|
@ -17,6 +24,22 @@ class ItemGlassJar(block: Block) extends ItemBlockSaved(block)
|
||||||
{
|
{
|
||||||
var lastLook: Vector3 = null
|
var lastLook: Vector3 = null
|
||||||
|
|
||||||
|
override def addInformation(itemStack: ItemStack, player: EntityPlayer, list: util.List[_], par4: Boolean)
|
||||||
|
{
|
||||||
|
super.addInformation(itemStack, player, list, par4)
|
||||||
|
|
||||||
|
if (!Keyboard.isKeyDown(Keyboard.KEY_LSHIFT))
|
||||||
|
{
|
||||||
|
list.add("tooltip.noShift".getLocal.replace("#0", EnumColor.AQUA.toString).replace("#1", EnumColor.GREY.toString))
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
val nbt = NBTUtility.getNBTTagCompound(itemStack)
|
||||||
|
val alloy = new Alloy(nbt)
|
||||||
|
alloy.content.map(c => EnumColor.ORANGE + c._1.capitalizeFirst + EnumColor.DARK_RED + " " + Math.round(alloy.percentage(c._1) * 100) + "%").foreach(m => list.add(m))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
override def onUpdate(stack: ItemStack, world: World, entity: Entity, p_77663_4_ : Int, p_77663_5_ : Boolean): Unit =
|
override def onUpdate(stack: ItemStack, world: World, entity: Entity, p_77663_4_ : Int, p_77663_5_ : Boolean): Unit =
|
||||||
{
|
{
|
||||||
val player = entity.asInstanceOf[EntityPlayer]
|
val player = entity.asInstanceOf[EntityPlayer]
|
||||||
|
|
|
@ -11,8 +11,10 @@ import net.minecraft.entity.player.EntityPlayer
|
||||||
import net.minecraft.item.ItemStack
|
import net.minecraft.item.ItemStack
|
||||||
import net.minecraft.nbt.NBTTagCompound
|
import net.minecraft.nbt.NBTTagCompound
|
||||||
import net.minecraft.util.ResourceLocation
|
import net.minecraft.util.ResourceLocation
|
||||||
|
import net.minecraftforge.client.IItemRenderer.ItemRenderType
|
||||||
import net.minecraftforge.client.model.AdvancedModelLoader
|
import net.minecraftforge.client.model.AdvancedModelLoader
|
||||||
import org.lwjgl.opengl.GL11
|
import org.lwjgl.opengl.GL11
|
||||||
|
import resonant.api.items.ISimpleItemRenderer
|
||||||
import resonant.lib.factory.resources.item.TItemResource
|
import resonant.lib.factory.resources.item.TItemResource
|
||||||
import resonant.lib.network.discriminator.PacketType
|
import resonant.lib.network.discriminator.PacketType
|
||||||
import resonant.lib.network.handle.{TPacketReceiver, TPacketSender}
|
import resonant.lib.network.handle.{TPacketReceiver, TPacketSender}
|
||||||
|
@ -23,6 +25,7 @@ import resonant.lib.render.model.ModelCube
|
||||||
import resonant.lib.transform.region.Cuboid
|
import resonant.lib.transform.region.Cuboid
|
||||||
import resonant.lib.transform.vector.Vector3
|
import resonant.lib.transform.vector.Vector3
|
||||||
import resonant.lib.utility.inventory.InventoryUtility
|
import resonant.lib.utility.inventory.InventoryUtility
|
||||||
|
import resonant.lib.utility.nbt.NBTUtility
|
||||||
import resonant.lib.wrapper.ByteBufWrapper._
|
import resonant.lib.wrapper.ByteBufWrapper._
|
||||||
import resonantinduction.core.Reference
|
import resonantinduction.core.Reference
|
||||||
import resonantinduction.core.resource.Alloy
|
import resonantinduction.core.resource.Alloy
|
||||||
|
@ -38,7 +41,7 @@ object TileGlassJar
|
||||||
val dustMaterialTexture = new ResourceLocation(Reference.domain, Reference.blockTextureDirectory + "material_sand.png")
|
val dustMaterialTexture = new ResourceLocation(Reference.domain, Reference.blockTextureDirectory + "material_sand.png")
|
||||||
}
|
}
|
||||||
|
|
||||||
class TileGlassJar extends SpatialTile(Material.wood) with TPacketReceiver with TPacketSender
|
class TileGlassJar extends SpatialTile(Material.wood) with TPacketReceiver with TPacketSender with ISimpleItemRenderer
|
||||||
{
|
{
|
||||||
var alloy = new Alloy(8)
|
var alloy = new Alloy(8)
|
||||||
var mixed = false
|
var mixed = false
|
||||||
|
@ -87,6 +90,11 @@ class TileGlassJar extends SpatialTile(Material.wood) with TPacketReceiver with
|
||||||
InventoryUtility.dropItemStack(world, center, stack)
|
InventoryUtility.dropItemStack(world, center, stack)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
override def renderInventoryItem(`type`: ItemRenderType, itemStack: ItemStack, data: AnyRef*): Unit =
|
||||||
|
{
|
||||||
|
renderInventory(itemStack)
|
||||||
|
}
|
||||||
|
|
||||||
@SideOnly(Side.CLIENT)
|
@SideOnly(Side.CLIENT)
|
||||||
override def renderInventory(itemStack: ItemStack): Unit =
|
override def renderInventory(itemStack: ItemStack): Unit =
|
||||||
{
|
{
|
||||||
|
@ -118,10 +126,7 @@ class TileGlassJar extends SpatialTile(Material.wood) with TPacketReceiver with
|
||||||
{
|
{
|
||||||
val alloy: Alloy =
|
val alloy: Alloy =
|
||||||
if (itemStack != null)
|
if (itemStack != null)
|
||||||
if (itemStack.getTagCompound != null)
|
new Alloy(NBTUtility.getNBTTagCompound(itemStack))
|
||||||
new Alloy(itemStack.getTagCompound)
|
|
||||||
else
|
|
||||||
null
|
|
||||||
else
|
else
|
||||||
this.alloy
|
this.alloy
|
||||||
|
|
||||||
|
|
|
@ -13,10 +13,12 @@ import net.minecraft.entity.player.EntityPlayer
|
||||||
import net.minecraft.item.Item
|
import net.minecraft.item.Item
|
||||||
import net.minecraft.tileentity.TileEntity
|
import net.minecraft.tileentity.TileEntity
|
||||||
import net.minecraft.world.World
|
import net.minecraft.world.World
|
||||||
import resonant.lib.render.wrapper.ItemRenderHandler
|
|
||||||
import resonant.lib.render.fx.FXElectricBolt2
|
import resonant.lib.render.fx.FXElectricBolt2
|
||||||
|
import resonant.lib.render.wrapper.ItemRenderHandler
|
||||||
import resonant.lib.transform.vector.Vector3
|
import resonant.lib.transform.vector.Vector3
|
||||||
|
import resonantinduction.archaic.ArchaicContent
|
||||||
import resonantinduction.archaic.firebox.{RenderHotPlate, TileHotPlate}
|
import resonantinduction.archaic.firebox.{RenderHotPlate, TileHotPlate}
|
||||||
|
import resonantinduction.archaic.process.mixing.TileGlassJar
|
||||||
import resonantinduction.archaic.process.{RenderCastingMold, RenderMillstone, TileCastingMold, TileMillstone}
|
import resonantinduction.archaic.process.{RenderCastingMold, RenderMillstone, TileCastingMold, TileMillstone}
|
||||||
import resonantinduction.atomic.gate.RenderQuantumGlyph
|
import resonantinduction.atomic.gate.RenderQuantumGlyph
|
||||||
import resonantinduction.atomic.machine.accelerator.{EntityParticle, GuiAccelerator, RenderParticle, TileAccelerator}
|
import resonantinduction.atomic.machine.accelerator.{EntityParticle, GuiAccelerator, RenderParticle, TileAccelerator}
|
||||||
|
@ -50,6 +52,7 @@ import resonantinduction.mechanical.mech.turbine._
|
||||||
override def init()
|
override def init()
|
||||||
{
|
{
|
||||||
//Mech content TODO no-load if mech content is not loaded
|
//Mech content TODO no-load if mech content is not loaded
|
||||||
|
ItemRenderHandler.register(Item.getItemFromBlock(ArchaicContent.blockJar), new TileGlassJar)
|
||||||
ItemRenderHandler.register(MechanicalContent.itemGear, RenderGear)
|
ItemRenderHandler.register(MechanicalContent.itemGear, RenderGear)
|
||||||
ItemRenderHandler.register(MechanicalContent.itemGearShaft, RenderGearShaft)
|
ItemRenderHandler.register(MechanicalContent.itemGearShaft, RenderGearShaft)
|
||||||
ItemRenderHandler.register(MechanicalContent.itemPipe, RenderPipe)
|
ItemRenderHandler.register(MechanicalContent.itemPipe, RenderPipe)
|
||||||
|
|
Loading…
Reference in a new issue