From aa42aedecd2d2842351088085e8fd9d69ec79565 Mon Sep 17 00:00:00 2001 From: Foghrye4 Date: Fri, 14 Apr 2017 07:58:16 +0300 Subject: Colourful lights --- ihl/utils/BlockItemRender.java | 12 ++++++++++++ ihl/utils/GuiMultiTextureButton.java | 3 +++ ihl/utils/IHLItemRenderer.java | 3 +++ ihl/utils/IHLMathUtils.java | 8 ++++---- ihl/utils/IHLRenderUtils.java | 3 +++ ihl/utils/IHLUtils.java | 6 ++++++ 6 files changed, 31 insertions(+), 4 deletions(-) (limited to 'ihl/utils') diff --git a/ihl/utils/BlockItemRender.java b/ihl/utils/BlockItemRender.java index 5a0c6de..870ab21 100644 --- a/ihl/utils/BlockItemRender.java +++ b/ihl/utils/BlockItemRender.java @@ -16,6 +16,10 @@ import net.minecraft.util.ResourceLocation; import net.minecraftforge.client.IItemRenderer; import org.lwjgl.opengl.GL11; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; + +@SideOnly(value = Side.CLIENT) public class BlockItemRender implements IItemRenderer{ private ModelBase model; private ResourceLocation tex; @@ -86,6 +90,10 @@ public void renderItem(ItemRenderType type, ItemStack item, Object... data) { IHLItemBlock bItem =(IHLItemBlock) item.getItem(); Block block = bItem.getBlockContained(); GL11.glScalef(1F, -1F+amendment, -1F); + if(item.stackTagCompound!=null && item.stackTagCompound.hasKey("colour")){ + int colour = item.stackTagCompound.getInteger("colour"); + GL11.glColor4f((colour>>>16)/255f,((colour>>>8)&255)/255f, (colour&255)/255f,1f); + } switch (type) { case ENTITY: GL11.glTranslatef(0,-1.5F,0); @@ -151,6 +159,10 @@ public void renderItem(ItemRenderType type, ItemStack item, Object... data) { GL11.glTranslatef(0.0F,0.2F,0F); } GL11.glTranslatef(-0.25F,-2.0F-amendment,0F); + if(item.stackTagCompound!=null && item.stackTagCompound.hasKey("colour")){ + int colour = item.stackTagCompound.getInteger("colour"); + GL11.glColor4f((colour>>>16)/255f,((colour>>>8)&255)/255f, (colour&255)/255f,1f); + } if(model!=null) { for(int i = this.renderFrom;i= 1.0f) { - multiplier *= multiplier; - value1 /= multiplier * multiplier; + multiplier=multiplier<<2; + value1 = value / (multiplier * multiplier); } - return ((multiplier > 2) ? multiplier : 1) * sqrt_table[(int) (value1 * accuracy_level)]; + return multiplier * sqrt_table[(int) (value1 * accuracy_level)]; } public static float[] vector_vector_multiply(float[] v1, float[] v2) { diff --git a/ihl/utils/IHLRenderUtils.java b/ihl/utils/IHLRenderUtils.java index af5fe2a..d0d13f4 100644 --- a/ihl/utils/IHLRenderUtils.java +++ b/ihl/utils/IHLRenderUtils.java @@ -9,6 +9,8 @@ import java.util.Map; import org.lwjgl.opengl.GL11; import cpw.mods.fml.common.eventhandler.SubscribeEvent; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; import ic2.core.util.DrawUtil; import ihl.IHLMod; import net.minecraft.block.Block; @@ -30,6 +32,7 @@ import net.minecraftforge.common.util.ForgeDirection; import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fluids.FluidStack; +@SideOnly(value = Side.CLIENT) public class IHLRenderUtils { private FloatBuffer colorBuffer; diff --git a/ihl/utils/IHLUtils.java b/ihl/utils/IHLUtils.java index f47673c..519f265 100644 --- a/ihl/utils/IHLUtils.java +++ b/ihl/utils/IHLUtils.java @@ -453,6 +453,12 @@ public class IHLUtils { } public static boolean isItemStacksIsEqual(ItemStack stack1, ItemStack stack2, boolean useOreDictionary) { + if(stack2==null && stack1==null){ + return true; + } + else if(stack2==null || stack1==null){ + return false; + } if (useOreDictionary && isItemsHaveSameOreDictionaryEntry(stack1, stack2)) { return true; } else { -- cgit v1.2.3