make gui semi stable again
This commit is contained in:
@@ -1,11 +1,8 @@
|
|||||||
package storagecraft.block;
|
package storagecraft.block;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
import net.minecraft.block.BlockPistonBase;
|
import net.minecraft.block.BlockPistonBase;
|
||||||
import net.minecraft.block.material.Material;
|
import net.minecraft.block.material.Material;
|
||||||
import net.minecraft.block.properties.IProperty;
|
|
||||||
import net.minecraft.block.state.IBlockState;
|
import net.minecraft.block.state.IBlockState;
|
||||||
import net.minecraft.entity.EntityLivingBase;
|
import net.minecraft.entity.EntityLivingBase;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
@@ -21,8 +18,6 @@ public abstract class BlockBase extends Block
|
|||||||
{
|
{
|
||||||
private String name;
|
private String name;
|
||||||
|
|
||||||
protected List<IProperty> states = new ArrayList<IProperty>();
|
|
||||||
|
|
||||||
public BlockBase(String name)
|
public BlockBase(String name)
|
||||||
{
|
{
|
||||||
super(Material.rock);
|
super(Material.rock);
|
||||||
|
@@ -10,7 +10,7 @@ import storagecraft.StorageCraft;
|
|||||||
import storagecraft.StorageCraftGUI;
|
import storagecraft.StorageCraftGUI;
|
||||||
import storagecraft.tile.TileDetector;
|
import storagecraft.tile.TileDetector;
|
||||||
|
|
||||||
// @TODO: This too other textures
|
// @TODO: This texture behaves differently
|
||||||
public class BlockDetector extends BlockMachine
|
public class BlockDetector extends BlockMachine
|
||||||
{
|
{
|
||||||
public BlockDetector()
|
public BlockDetector()
|
||||||
|
@@ -1,19 +1,18 @@
|
|||||||
package storagecraft.gui;
|
package storagecraft.gui;
|
||||||
|
|
||||||
import com.google.common.base.Joiner;
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import net.minecraft.client.gui.FontRenderer;
|
||||||
import net.minecraft.client.gui.GuiButton;
|
import net.minecraft.client.gui.GuiButton;
|
||||||
import net.minecraft.client.gui.inventory.GuiContainer;
|
import net.minecraft.client.gui.inventory.GuiContainer;
|
||||||
import net.minecraft.client.renderer.RenderHelper;
|
import net.minecraft.client.renderer.GlStateManager;
|
||||||
import net.minecraft.inventory.Container;
|
import net.minecraft.inventory.Container;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.util.EnumChatFormatting;
|
|
||||||
import net.minecraft.util.ResourceLocation;
|
import net.minecraft.util.ResourceLocation;
|
||||||
import net.minecraft.util.StatCollector;
|
import net.minecraft.util.StatCollector;
|
||||||
import org.lwjgl.opengl.GL11;
|
import org.lwjgl.opengl.GL11;
|
||||||
import org.lwjgl.opengl.GL12;
|
|
||||||
import storagecraft.StorageCraft;
|
import storagecraft.StorageCraft;
|
||||||
import storagecraft.gui.sidebutton.SideButton;
|
import storagecraft.gui.sidebutton.SideButton;
|
||||||
|
|
||||||
@@ -146,27 +145,31 @@ public abstract class GuiBase extends GuiContainer
|
|||||||
|
|
||||||
public void drawItem(int x, int y, ItemStack stack, boolean withOverlay)
|
public void drawItem(int x, int y, ItemStack stack, boolean withOverlay)
|
||||||
{
|
{
|
||||||
zLevel = 100;
|
GlStateManager.translate(0.0F, 0.0F, 32.0F);
|
||||||
itemRender.zLevel = 100;
|
|
||||||
|
|
||||||
GL11.glPushAttrib(GL11.GL_ALL_ATTRIB_BITS);
|
zLevel = 200.0F;
|
||||||
|
itemRender.zLevel = 200.0F;
|
||||||
|
|
||||||
GL11.glEnable(GL11.GL_LIGHTING);
|
FontRenderer font = null;
|
||||||
GL11.glEnable(GL12.GL_RESCALE_NORMAL);
|
|
||||||
GL11.glEnable(GL11.GL_DEPTH_TEST);
|
|
||||||
|
|
||||||
RenderHelper.enableGUIStandardItemLighting();
|
if (stack != null)
|
||||||
|
|
||||||
// @TODO: itemRender.renderItemAndEffectIntoGUI(fontRendererObj, mc.renderEngine, stack, x, y);
|
|
||||||
if (withOverlay)
|
|
||||||
{
|
{
|
||||||
// @TODO: itemRender.renderItemOverlayIntoGUI(fontRendererObj, mc.renderEngine, stack, x, y);
|
font = stack.getItem().getFontRenderer(stack);
|
||||||
|
}
|
||||||
|
if (font == null)
|
||||||
|
{
|
||||||
|
font = fontRendererObj;
|
||||||
}
|
}
|
||||||
|
|
||||||
GL11.glPopAttrib();
|
itemRender.func_180450_b(stack, x, y);
|
||||||
|
|
||||||
itemRender.zLevel = 0;
|
if (withOverlay)
|
||||||
zLevel = 0;
|
{
|
||||||
|
itemRender.func_180453_a(font, stack, x, y, null);
|
||||||
|
}
|
||||||
|
|
||||||
|
zLevel = 0.0F;
|
||||||
|
itemRender.zLevel = 0.0F;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void drawString(int x, int y, String message)
|
public void drawString(int x, int y, String message)
|
||||||
@@ -179,115 +182,14 @@ public abstract class GuiBase extends GuiContainer
|
|||||||
fontRendererObj.drawString(message, x, y, color);
|
fontRendererObj.drawString(message, x, y, color);
|
||||||
}
|
}
|
||||||
|
|
||||||
// https://github.com/AppliedEnergistics/Applied-Energistics-2/blob/master/src/main/java/appeng/client/gui/AEBaseGui.java
|
|
||||||
public void drawTooltip(int x, int y, String message)
|
public void drawTooltip(int x, int y, String message)
|
||||||
{
|
{
|
||||||
GL11.glPushAttrib(GL11.GL_ALL_ATTRIB_BITS);
|
drawHoveringText(Arrays.asList(message.split("\n")), x, y);
|
||||||
|
|
||||||
GL11.glDisable(GL12.GL_RESCALE_NORMAL);
|
|
||||||
|
|
||||||
RenderHelper.disableStandardItemLighting();
|
|
||||||
|
|
||||||
GL11.glDisable(GL11.GL_LIGHTING);
|
|
||||||
GL11.glDisable(GL11.GL_DEPTH_TEST);
|
|
||||||
|
|
||||||
String[] lines = message.split("\n");
|
|
||||||
|
|
||||||
if (lines.length > 0)
|
|
||||||
{
|
|
||||||
int var5 = 0;
|
|
||||||
int var6;
|
|
||||||
int var7;
|
|
||||||
|
|
||||||
for (var6 = 0; var6 < lines.length; ++var6)
|
|
||||||
{
|
|
||||||
var7 = this.fontRendererObj.getStringWidth(lines[var6]);
|
|
||||||
|
|
||||||
if (var7 > var5)
|
|
||||||
{
|
|
||||||
var5 = var7;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
var6 = x + 12;
|
|
||||||
var7 = y - 12;
|
|
||||||
int var9 = 8;
|
|
||||||
|
|
||||||
if (lines.length > 1)
|
|
||||||
{
|
|
||||||
var9 += 2 + (lines.length - 1) * 10;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this.guiTop + var7 + var9 + 6 > this.height)
|
|
||||||
{
|
|
||||||
var7 = this.height - var9 - this.guiTop - 6;
|
|
||||||
}
|
|
||||||
|
|
||||||
zLevel = 300.0F;
|
|
||||||
itemRender.zLevel = 300.0F;
|
|
||||||
|
|
||||||
int var10 = -267386864;
|
|
||||||
|
|
||||||
drawGradientRect(var6 - 3, var7 - 4, var6 + var5 + 3, var7 - 3, var10, var10);
|
|
||||||
drawGradientRect(var6 - 3, var7 + var9 + 3, var6 + var5 + 3, var7 + var9 + 4, var10, var10);
|
|
||||||
drawGradientRect(var6 - 3, var7 - 3, var6 + var5 + 3, var7 + var9 + 3, var10, var10);
|
|
||||||
drawGradientRect(var6 - 4, var7 - 3, var6 - 3, var7 + var9 + 3, var10, var10);
|
|
||||||
drawGradientRect(var6 + var5 + 3, var7 - 3, var6 + var5 + 4, var7 + var9 + 3, var10, var10);
|
|
||||||
|
|
||||||
int var11 = 1347420415;
|
|
||||||
int var12 = (var11 & 16711422) >> 1 | var11 & -16777216;
|
|
||||||
|
|
||||||
drawGradientRect(var6 - 3, var7 - 3 + 1, var6 - 3 + 1, var7 + var9 + 3 - 1, var11, var12);
|
|
||||||
drawGradientRect(var6 + var5 + 2, var7 - 3 + 1, var6 + var5 + 3, var7 + var9 + 3 - 1, var11, var12);
|
|
||||||
drawGradientRect(var6 - 3, var7 - 3, var6 + var5 + 3, var7 - 3 + 1, var11, var11);
|
|
||||||
drawGradientRect(var6 - 3, var7 + var9 + 2, var6 + var5 + 3, var7 + var9 + 3, var12, var12);
|
|
||||||
|
|
||||||
for (int var13 = 0; var13 < lines.length; ++var13)
|
|
||||||
{
|
|
||||||
String var14 = lines[var13];
|
|
||||||
|
|
||||||
if (var13 == 0)
|
|
||||||
{
|
|
||||||
var14 = '\u00a7' + Integer.toHexString(15) + var14;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
var14 = "\u00a77" + var14;
|
|
||||||
}
|
|
||||||
|
|
||||||
// @TODO: fontRendererObj.drawStringWithShadow(var14, var6, var7, -1);
|
|
||||||
if (var13 == 0)
|
|
||||||
{
|
|
||||||
var7 += 2;
|
|
||||||
}
|
|
||||||
|
|
||||||
var7 += 10;
|
|
||||||
}
|
|
||||||
|
|
||||||
zLevel = 0.0F;
|
|
||||||
itemRender.zLevel = 0.0F;
|
|
||||||
}
|
|
||||||
|
|
||||||
GL11.glPopAttrib();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void drawTooltip(int x, int y, ItemStack stack)
|
public void drawTooltip(int x, int y, ItemStack stack)
|
||||||
{
|
{
|
||||||
List list = stack.getTooltip(mc.thePlayer, mc.gameSettings.advancedItemTooltips);
|
renderToolTip(stack, x, y);
|
||||||
|
|
||||||
for (int i = 0; i < list.size(); ++i)
|
|
||||||
{
|
|
||||||
if (i == 0)
|
|
||||||
{
|
|
||||||
list.set(i, stack.getRarity().rarityColor + (String) list.get(i));
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
list.set(i, EnumChatFormatting.GRAY + (String) list.get(i));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
drawTooltip(x, y, Joiner.on("\n").join(list));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public String t(String name, Object... format)
|
public String t(String name, Object... format)
|
||||||
|
@@ -32,7 +32,7 @@ public class GuiDetector extends GuiBase
|
|||||||
|
|
||||||
addSideButton(new SideButtonDetectorMode(detector));
|
addSideButton(new SideButtonDetectorMode(detector));
|
||||||
|
|
||||||
amountField = new GuiTextField(0, fontRendererObj, x + 62 + 1, y + 23 + 1, 25, fontRendererObj.FONT_HEIGHT); // @TODO: Is this the right id?
|
amountField = new GuiTextField(0, fontRendererObj, x + 62 + 1, y + 23 + 1, 25, fontRendererObj.FONT_HEIGHT);
|
||||||
amountField.setText(String.valueOf(detector.getAmount()));
|
amountField.setText(String.valueOf(detector.getAmount()));
|
||||||
amountField.setEnableBackgroundDrawing(false);
|
amountField.setEnableBackgroundDrawing(false);
|
||||||
amountField.setVisible(true);
|
amountField.setVisible(true);
|
||||||
|
@@ -61,7 +61,7 @@ public class GuiGrid extends GuiBase
|
|||||||
addSideButton(new SideButtonGridSortingDirection());
|
addSideButton(new SideButtonGridSortingDirection());
|
||||||
addSideButton(new SideButtonGridSortingType());
|
addSideButton(new SideButtonGridSortingType());
|
||||||
|
|
||||||
searchField = new GuiTextField(0, fontRendererObj, x + 80 + 1, y + 6 + 1, 88 - 6, fontRendererObj.FONT_HEIGHT); // @TODO: Is this the right id?
|
searchField = new GuiTextField(0, fontRendererObj, x + 80 + 1, y + 6 + 1, 88 - 6, fontRendererObj.FONT_HEIGHT);
|
||||||
searchField.setEnableBackgroundDrawing(false);
|
searchField.setEnableBackgroundDrawing(false);
|
||||||
searchField.setVisible(true);
|
searchField.setVisible(true);
|
||||||
searchField.setTextColor(16777215);
|
searchField.setTextColor(16777215);
|
||||||
|
@@ -13,7 +13,6 @@ public abstract class ItemBase extends Item
|
|||||||
this.name = name;
|
this.name = name;
|
||||||
|
|
||||||
setCreativeTab(StorageCraft.TAB);
|
setCreativeTab(StorageCraft.TAB);
|
||||||
// @TODO: ... setTextureName("storagecraft:" + name);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@@ -11,7 +11,7 @@ public class BlockCableRenderer extends TileEntitySpecialRenderer
|
|||||||
public static final CableModel CABLE_MODEL = new CableModel();
|
public static final CableModel CABLE_MODEL = new CableModel();
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void renderTileEntityAt(TileEntity tile, double x, double y, double z, float scale, int a) // @TODO: Find out what a is
|
public void renderTileEntityAt(TileEntity tile, double x, double y, double z, float scale, int a)
|
||||||
{
|
{
|
||||||
GL11.glPushMatrix();
|
GL11.glPushMatrix();
|
||||||
GL11.glTranslatef((float) x, (float) y, (float) z);
|
GL11.glTranslatef((float) x, (float) y, (float) z);
|
||||||
|
@@ -27,8 +27,11 @@ public abstract class TileMachine extends TileBase implements INetworkTile, IRed
|
|||||||
{
|
{
|
||||||
connected = false;
|
connected = false;
|
||||||
|
|
||||||
|
if (!worldObj.isAirBlock(pos))
|
||||||
|
{
|
||||||
worldObj.setBlockState(pos, worldObj.getBlockState(pos).withProperty(BlockMachine.CONNECTED, false));
|
worldObj.setBlockState(pos, worldObj.getBlockState(pos).withProperty(BlockMachine.CONNECTED, false));
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void update()
|
public void update()
|
||||||
|
Reference in New Issue
Block a user