Fixed #94 - multimeter gui and redstone output
This commit is contained in:
parent
07d53200d5
commit
34018f215b
3 changed files with 27 additions and 24 deletions
|
@ -25,9 +25,6 @@ import cpw.mods.fml.relauncher.SideOnly;
|
||||||
public class GuiMultimeter extends GuiContainerBase
|
public class GuiMultimeter extends GuiContainerBase
|
||||||
{
|
{
|
||||||
PartMultimeter multimeter;
|
PartMultimeter multimeter;
|
||||||
|
|
||||||
private int containerWidth;
|
|
||||||
private int containerHeight;
|
|
||||||
private GuiTextField textFieldLimit;
|
private GuiTextField textFieldLimit;
|
||||||
|
|
||||||
public GuiMultimeter(InventoryPlayer inventoryPlayer, PartMultimeter tileEntity)
|
public GuiMultimeter(InventoryPlayer inventoryPlayer, PartMultimeter tileEntity)
|
||||||
|
@ -76,9 +73,9 @@ public class GuiMultimeter extends GuiContainerBase
|
||||||
super.drawGuiContainerForegroundLayer(mouseX, mouseY);
|
super.drawGuiContainerForegroundLayer(mouseX, mouseY);
|
||||||
String s = LanguageUtility.getLocal("tile.resonantinduction:multimeter.name");
|
String s = LanguageUtility.getLocal("tile.resonantinduction:multimeter.name");
|
||||||
this.fontRenderer.drawString(s, this.xSize / 2 - this.fontRenderer.getStringWidth(s) / 2, 15, 4210752);
|
this.fontRenderer.drawString(s, this.xSize / 2 - this.fontRenderer.getStringWidth(s) / 2, 15, 4210752);
|
||||||
this.fontRenderer.drawString(EnumColor.DARK_GREEN + LanguageUtility.getLocal("gui.resonantinduction.multimeter.averageEnergy"), 35, 15, 4210752);
|
this.fontRenderer.drawString(EnumColor.INDIGO + LanguageUtility.getLocal("gui.resonantinduction.multimeter.averageEnergy"), 35, 15, 4210752);
|
||||||
this.renderUniversalDisplay(35, 25, this.multimeter.getAverageDetectedEnergy(), mouseX, mouseY, Unit.JOULES);
|
this.renderUniversalDisplay(35, 25, this.multimeter.getAverageDetectedEnergy(), mouseX, mouseY, Unit.JOULES);
|
||||||
this.fontRenderer.drawString(EnumColor.DARK_GREEN + LanguageUtility.getLocal("gui.resonantinduction.multimeter.energy"), 35, 35, 4210752);
|
this.fontRenderer.drawString(EnumColor.INDIGO + LanguageUtility.getLocal("gui.resonantinduction.multimeter.energy"), 35, 35, 4210752);
|
||||||
this.renderUniversalDisplay(35, 45, this.multimeter.getDetectedEnergy(), mouseX, mouseY, Unit.JOULES);
|
this.renderUniversalDisplay(35, 45, this.multimeter.getDetectedEnergy(), mouseX, mouseY, Unit.JOULES);
|
||||||
this.fontRenderer.drawString(EnumColor.ORANGE + LanguageUtility.getLocal("gui.resonantinduction.multimeter.redstone"), 35, 58, 4210752);
|
this.fontRenderer.drawString(EnumColor.ORANGE + LanguageUtility.getLocal("gui.resonantinduction.multimeter.redstone"), 35, 58, 4210752);
|
||||||
this.fontRenderer.drawString(EnumColor.RED + LanguageUtility.getLocal("gui.resonantinduction.multimeter." + this.multimeter.getMode().display), 35, 68, 4210752);
|
this.fontRenderer.drawString(EnumColor.RED + LanguageUtility.getLocal("gui.resonantinduction.multimeter." + this.multimeter.getMode().display), 35, 68, 4210752);
|
||||||
|
|
|
@ -29,6 +29,7 @@ import codechicken.lib.vec.Rotation;
|
||||||
import codechicken.lib.vec.Transformation;
|
import codechicken.lib.vec.Transformation;
|
||||||
import codechicken.lib.vec.Vector3;
|
import codechicken.lib.vec.Vector3;
|
||||||
import codechicken.microblock.FaceMicroClass;
|
import codechicken.microblock.FaceMicroClass;
|
||||||
|
import codechicken.multipart.IRedstonePart;
|
||||||
import codechicken.multipart.JCuboidPart;
|
import codechicken.multipart.JCuboidPart;
|
||||||
import codechicken.multipart.JNormalOcclusion;
|
import codechicken.multipart.JNormalOcclusion;
|
||||||
import codechicken.multipart.NormalOcclusionTest;
|
import codechicken.multipart.NormalOcclusionTest;
|
||||||
|
@ -47,7 +48,7 @@ import cpw.mods.fml.relauncher.SideOnly;
|
||||||
* @author Calclavia
|
* @author Calclavia
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public class PartMultimeter extends JCuboidPart implements IPacketReceiver, TFacePart, JNormalOcclusion
|
public class PartMultimeter extends JCuboidPart implements IPacketReceiver, TFacePart, JNormalOcclusion, IRedstonePart
|
||||||
{
|
{
|
||||||
public static Cuboid6[][] bounds = new Cuboid6[6][2];
|
public static Cuboid6[][] bounds = new Cuboid6[6][2];
|
||||||
|
|
||||||
|
@ -95,7 +96,7 @@ public class PartMultimeter extends JCuboidPart implements IPacketReceiver, TFac
|
||||||
@Override
|
@Override
|
||||||
public boolean activate(EntityPlayer player, MovingObjectPosition part, ItemStack item)
|
public boolean activate(EntityPlayer player, MovingObjectPosition part, ItemStack item)
|
||||||
{
|
{
|
||||||
player.openGui(ResonantInduction.INSTANCE, this.side, world(), x(), y(), z());
|
player.openGui(Electrical.INSTANCE, side, world(), x(), y(), z());
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -139,7 +140,7 @@ public class PartMultimeter extends JCuboidPart implements IPacketReceiver, TFac
|
||||||
if (outputRedstone != redstoneOn)
|
if (outputRedstone != redstoneOn)
|
||||||
{
|
{
|
||||||
redstoneOn = outputRedstone;
|
redstoneOn = outputRedstone;
|
||||||
this.tile().notifyTileChange();
|
tile().notifyPartChange(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (prevDetectedEnergy != detectedEnergy)
|
if (prevDetectedEnergy != detectedEnergy)
|
||||||
|
@ -268,23 +269,10 @@ public class PartMultimeter extends JCuboidPart implements IPacketReceiver, TFac
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
PacketDispatcher.sendPacketToServer(ResonantInduction.PACKET_MULTIPART.getPacket(new universalelectricity.api.vector.Vector3(x(), y(), z()), getPartID()));
|
PacketDispatcher.sendPacketToServer(ResonantInduction.PACKET_MULTIPART.getPacket(new universalelectricity.api.vector.Vector3(x(), y(), z()), side));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getPartID()
|
|
||||||
{
|
|
||||||
for (int i = 0; i < this.tile().partList().size(); i++)
|
|
||||||
{
|
|
||||||
if (this.tile().partMap(i) == this)
|
|
||||||
{
|
|
||||||
return i;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void load(NBTTagCompound nbt)
|
public void load(NBTTagCompound nbt)
|
||||||
{
|
{
|
||||||
|
@ -351,7 +339,7 @@ public class PartMultimeter extends JCuboidPart implements IPacketReceiver, TFac
|
||||||
@Override
|
@Override
|
||||||
public int redstoneConductionMap()
|
public int redstoneConductionMap()
|
||||||
{
|
{
|
||||||
return 0;
|
return 0x1F;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -389,4 +377,22 @@ public class PartMultimeter extends JCuboidPart implements IPacketReceiver, TFac
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canConnectRedstone(int arg0)
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int strongPowerLevel(int arg0)
|
||||||
|
{
|
||||||
|
return redstoneOn ? 14 : 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int weakPowerLevel(int arg0)
|
||||||
|
{
|
||||||
|
return redstoneOn ? 14 : 0;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue