Posted March 31, 201312 yr So I'm trying to render a blur over the player's view like a pumkin when in the dimension im working on but no matter what i do it just wont work TickHandler: package arcticraft.main; import java.util.EnumSet; import net.minecraft.block.Block; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.GuiScreen; import net.minecraft.client.gui.ScaledResolution; import net.minecraft.client.renderer.Tessellator; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.src.ModLoader; import net.minecraft.util.Icon; import org.lwjgl.input.Keyboard; import org.lwjgl.opengl.GL11; import arcticraft.blocks.BlockACWaterFlowing; import arcticraft.blocks.BlockACWaterStill; import cpw.mods.fml.client.FMLClientHandler; import cpw.mods.fml.common.ITickHandler; import cpw.mods.fml.common.TickType; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; @SideOnly(Side.CLIENT) public class TickHandler implements ITickHandler { @Override public void tickStart(EnumSet<TickType> type, Object... tickData) { if (type.equals(EnumSet.of(TickType.RENDER))) { float ticks = ((Float)tickData[0]).floatValue(); onRenderTickStart(ticks); } } @Override public void tickEnd(EnumSet<TickType> type, Object... tickData) { if (type.equals(EnumSet.of(TickType.PLAYER))) { EntityPlayer player = (EntityPlayer)tickData[0]; } else if (type.equals(EnumSet.of(TickType.RENDER))) { float ticks = ((Float)tickData[0]).floatValue(); onRenderTickEnd(ticks); GuiScreen guiscreen = Minecraft.getMinecraft().currentScreen; if (guiscreen != null && ModLoader.getMinecraftInstance().thePlayer != null) { onTickInGUI(guiscreen); } } else if (type.equals(EnumSet.of(TickType.CLIENT))) { if(ModLoader.getMinecraftInstance().thePlayer != null){ onTickInGame(); } } } @Override public EnumSet<TickType> ticks() { return EnumSet.of(TickType.RENDER, TickType.CLIENT, TickType.PLAYER); // In my testing only RENDER, CLIENT, & PLAYER did anything on the client side. // Read 'cpw.mods.fml.common.TickType.java' for a full list and description of available types } @Override public String getLabel() { return null; } private boolean keyStates[]; /**Key checking function**/ public boolean checkKey(int i) { keyStates = new boolean[256]; if(ModLoader.getMinecraftInstance().currentScreen != null) { return false; } if(Keyboard.isKeyDown(i) != keyStates[i]) { return keyStates[i] = !keyStates[i]; } else { return false; } } private Minecraft mc = FMLClientHandler.instance().getClient(); public void onRenderTickStart(float ticks) { } public void onRenderTickEnd(float ticks) { ScaledResolution var5 = new ScaledResolution(this.mc.gameSettings, this.mc.displayWidth, this.mc.displayHeight); int var6 = var5.getScaledWidth(); int var7 = var5.getScaledHeight(); if(mc.currentScreen == null) { ACLivingEvent.renderFreezeEffect(var6, var7, mc); } } public void onTickInGUI(GuiScreen gui) { } public void onTickInGame() { } } Event File: package arcticraft.main; import org.lwjgl.opengl.GL11; import net.minecraft.block.Block; import net.minecraft.block.BlockFluid; import net.minecraft.block.material.Material; import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.Tessellator; import net.minecraft.entity.EntityLiving; import net.minecraft.src.ModLoader; import net.minecraft.util.MathHelper; import net.minecraftforge.event.ForgeSubscribe; import net.minecraftforge.event.entity.living.*; import net.minecraftforge.event.entity.player.PlayerEvent; public class ACLivingEvent { public static boolean isFreezing = false; @ForgeSubscribe public void playerEvent(PlayerEvent event) { if(event.entityPlayer.dimension == MainRegistry.dimension) { this.isFreezing = true; } } public static void renderFreezeEffect(int par1, int par2, Minecraft mc) { if (isFreezing) { Minecraft mc8 = ModLoader.getMinecraftInstance(); GL11.glDisable(GL11.GL_DEPTH_TEST); GL11.glDepthMask(false); GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); GL11.glDisable(GL11.GL_ALPHA_TEST); GL11.glBindTexture(GL11.GL_TEXTURE_2D, mc8.renderEngine.getTexture("/mods/AC/textures/misc/freezing.png")); Tessellator tessellator = Tessellator.instance; tessellator.startDrawingQuads(); tessellator.addVertexWithUV(0.0D, par2, -90D, 0.0D, 1.0D); tessellator.addVertexWithUV(par1, par2, -90D, 1.0D, 1.0D); tessellator.addVertexWithUV(par1, 0.0D, -90D, 1.0D, 0.0D); tessellator.addVertexWithUV(0.0D, 0.0D, -90D, 0.0D, 0.0D); tessellator.draw(); GL11.glDepthMask(true); GL11.glEnable(GL11.GL_DEPTH_TEST); GL11.glEnable(GL11.GL_ALPHA_TEST); GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); } } } MainRegistry.dimension = public static int dimension = DimensionManager.getNextFreeDimId(); Event Registering line in MainRegistry: MinecraftForge.EVENT_BUS.register(new ACLivingEvent()); Any ideas? http://i.imgur.com/Hppni.png[/img]
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.