Search in sources :

Example 26 with EntityClientPlayerMP

use of net.minecraft.client.entity.EntityClientPlayerMP in project Minestuck by mraof.

the class ClientEditHandler method onInteractEvent.

@SubscribeEvent(priority = EventPriority.NORMAL)
public void onInteractEvent(PlayerInteractEvent event) {
    if (event.entity.worldObj.isRemote && event.entityPlayer instanceof EntityClientPlayerMP && isActive()) {
        if (event.action == PlayerInteractEvent.Action.RIGHT_CLICK_BLOCK) {
            event.useBlock = Result.DENY;
            ItemStack stack = event.entityPlayer.getCurrentEquippedItem();
            if (stack == null || Block.getBlockFromItem(stack.getItem()) == Blocks.air) {
                event.setCanceled(true);
                return;
            }
            GristSet cost;
            if (DeployList.containsItemStack(stack))
                if (Minestuck.clientHardMode && givenItems[DeployList.getOrdinal(stack)])
                    cost = DeployList.getSecondaryCost(stack);
                else
                    cost = DeployList.getPrimaryCost(stack);
            else
                cost = GristRegistry.getGristConversion(stack);
            if (!GristHelper.canAfford(MinestuckPlayerData.getClientGrist(), cost)) {
                StringBuilder str = new StringBuilder();
                if (cost != null) {
                    for (GristAmount grist : cost.getArray()) {
                        if (cost.getArray().indexOf(grist) != 0)
                            str.append(", ");
                        str.append(grist.getAmount() + " " + grist.getType().getDisplayName());
                    }
                    event.entityPlayer.addChatMessage(new ChatComponentTranslation("grist.missing", str.toString()));
                }
                event.setCanceled(true);
            }
            if (event.useItem == Result.DEFAULT)
                event.useItem = Result.ALLOW;
        } else if (event.action == PlayerInteractEvent.Action.LEFT_CLICK_BLOCK) {
            Block block = event.entity.worldObj.getBlock(event.x, event.y, event.z);
            if (block.getBlockHardness(event.entity.worldObj, event.x, event.y, event.z) < 0 || MinestuckPlayerData.getClientGrist().getGrist(GristType.Build) <= 0)
                event.setCanceled(true);
        } else if (event.action == PlayerInteractEvent.Action.RIGHT_CLICK_AIR)
            event.setCanceled(true);
    }
}
Also used : GristSet(com.mraof.minestuck.util.GristSet) EntityClientPlayerMP(net.minecraft.client.entity.EntityClientPlayerMP) ChatComponentTranslation(net.minecraft.util.ChatComponentTranslation) Block(net.minecraft.block.Block) GristAmount(com.mraof.minestuck.util.GristAmount) ItemStack(net.minecraft.item.ItemStack) SubscribeEvent(cpw.mods.fml.common.eventhandler.SubscribeEvent)

Example 27 with EntityClientPlayerMP

use of net.minecraft.client.entity.EntityClientPlayerMP in project BloodMagic by WayofTime.

the class RitualDivinerRender method render.

@SubscribeEvent
public void render(RenderWorldLastEvent event) {
    Minecraft minecraft = Minecraft.getMinecraft();
    EntityClientPlayerMP player = minecraft.thePlayer;
    World world = player.worldObj;
    if (minecraft.objectMouseOver == null || minecraft.objectMouseOver.typeOfHit != MovingObjectPosition.MovingObjectType.BLOCK) {
        return;
    }
    TileEntity tileEntity = world.getTileEntity(minecraft.objectMouseOver.blockX, minecraft.objectMouseOver.blockY, minecraft.objectMouseOver.blockZ);
    if (!(tileEntity instanceof IMasterRitualStone)) {
        return;
    }
    Vector3 vec3 = new Vector3(minecraft.objectMouseOver.blockX, minecraft.objectMouseOver.blockY, minecraft.objectMouseOver.blockZ);
    double posX = player.lastTickPosX + (player.posX - player.lastTickPosX) * event.partialTicks;
    double posY = player.lastTickPosY + (player.posY - player.lastTickPosY) * event.partialTicks;
    double posZ = player.lastTickPosZ + (player.posZ - player.lastTickPosZ) * event.partialTicks;
    if (player.inventory.getCurrentItem() != null && player.inventory.getCurrentItem().getItem() instanceof ItemRitualDiviner) {
        ItemRitualDiviner ritualDiviner = (ItemRitualDiviner) player.inventory.getCurrentItem().getItem();
        int direction = ritualDiviner.getDirection(player.inventory.getCurrentItem());
        RitualEffect ritualEffect = getEffectFromString(ritualDiviner.getCurrentRitual(player.inventory.getCurrentItem()));
        if (ritualEffect == null) {
            return;
        }
        GL11.glPushMatrix();
        GL11.glEnable(GL11.GL_BLEND);
        GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
        for (RitualComponent ritualComponent : ritualEffect.getRitualComponentList()) {
            Vector3 vX = vec3.add(new Vector3(ritualComponent.getX(direction), ritualComponent.getY(), ritualComponent.getZ(direction)));
            double minX = vX.x - posX;
            double minY = vX.y - posY;
            double minZ = vX.z - posZ;
            if (!world.getBlock(vX.x, vX.y, vX.z).isOpaqueCube()) {
                RenderFakeBlocks.drawFakeBlock(vX, ModBlocks.ritualStone, ritualComponent.getStoneType(), minX, minY, minZ, world);
            }
        }
        GL11.glPopMatrix();
    }
}
Also used : TileEntity(net.minecraft.tileentity.TileEntity) EntityClientPlayerMP(net.minecraft.client.entity.EntityClientPlayerMP) RitualEffect(WayofTime.alchemicalWizardry.api.rituals.RitualEffect) IMasterRitualStone(WayofTime.alchemicalWizardry.api.rituals.IMasterRitualStone) RitualComponent(WayofTime.alchemicalWizardry.api.rituals.RitualComponent) Vector3(WayofTime.alchemicalWizardry.api.Vector3) World(net.minecraft.world.World) ItemRitualDiviner(WayofTime.alchemicalWizardry.common.items.ItemRitualDiviner) Minecraft(net.minecraft.client.Minecraft) SubscribeEvent(cpw.mods.fml.common.eventhandler.SubscribeEvent)

Example 28 with EntityClientPlayerMP

use of net.minecraft.client.entity.EntityClientPlayerMP in project BloodMagic by WayofTime.

the class ClientUtils method renderPlayerArmourInPOV.

public static void renderPlayerArmourInPOV(EntityPlayer player, float partialTickTime) {
    GL11.glClear(GL11.GL_DEPTH_BUFFER_BIT);
    // this.prevEquippedProgress + (this.equippedProgress - this.prevEquippedProgress) * partialTickTime;
    float f1 = 1.0f;
    EntityClientPlayerMP entityclientplayermp = mc.thePlayer;
    float f2 = entityclientplayermp.prevRotationPitch + (entityclientplayermp.rotationPitch - entityclientplayermp.prevRotationPitch) * partialTickTime;
    // GL11.glPushMatrix();
    GL11.glRotatef(180 - (entityclientplayermp.prevRotationYaw + (entityclientplayermp.rotationYaw - entityclientplayermp.prevRotationYaw) * partialTickTime), 0.0F, 1.0F, 0.0F);
    GL11.glRotatef(-f2, 1.0F, 0.0F, 0.0F);
    RenderHelper.enableStandardItemLighting();
    // GL11.glPopMatrix();
    EntityPlayerSP entityplayersp = (EntityPlayerSP) entityclientplayermp;
    float f3 = entityplayersp.prevRenderArmPitch + (entityplayersp.renderArmPitch - entityplayersp.prevRenderArmPitch) * partialTickTime;
    float f4 = entityplayersp.prevRenderArmYaw + (entityplayersp.renderArmYaw - entityplayersp.prevRenderArmYaw) * partialTickTime;
    GL11.glRotatef((entityclientplayermp.rotationPitch - f3) * 0.1F, 1.0F, 0.0F, 0.0F);
    GL11.glRotatef((entityclientplayermp.rotationYaw - f4) * 0.1F, 0.0F, 1.0F, 0.0F);
    ItemStack itemstack = player.getCurrentEquippedItem();
    if (itemstack != null && itemstack.getItem() instanceof ItemCloth) {
        GL11.glEnable(GL11.GL_BLEND);
        OpenGlHelper.glBlendFunc(770, 771, 1, 0);
    }
    int i = mc.theWorld.getLightBrightnessForSkyBlocks(MathHelper.floor_double(entityclientplayermp.posX), MathHelper.floor_double(entityclientplayermp.posY), MathHelper.floor_double(entityclientplayermp.posZ), 0);
    int j = i % 65536;
    int k = i / 65536;
    OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, (float) j / 1.0F, (float) k / 1.0F);
    GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
    float f5;
    float f6;
    float f7;
    if (itemstack != null) {
        int l = itemstack.getItem().getColorFromItemStack(itemstack, 0);
        f5 = (float) (l >> 16 & 255) / 255.0F;
        f6 = (float) (l >> 8 & 255) / 255.0F;
        f7 = (float) (l & 255) / 255.0F;
        GL11.glColor4f(f5, f6, f7, 1.0F);
    } else {
        GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
    }
    float f8;
    float f9;
    float f10;
    float f13;
    Render render;
    RenderPlayer renderplayer;
    if (itemstack != null && itemstack.getItem() instanceof ItemMap) {
        GL11.glPushMatrix();
        f13 = 0.8F;
        f5 = entityclientplayermp.getSwingProgress(partialTickTime);
        f6 = MathHelper.sin(f5 * (float) Math.PI);
        f7 = MathHelper.sin(MathHelper.sqrt_float(f5) * (float) Math.PI);
        GL11.glTranslatef(-f7 * 0.4F, MathHelper.sin(MathHelper.sqrt_float(f5) * (float) Math.PI * 2.0F) * 0.2F, -f6 * 0.2F);
        f5 = 1.0F - f2 / 45.0F + 0.1F;
        if (f5 < 0.0F) {
            f5 = 0.0F;
        }
        if (f5 > 1.0F) {
            f5 = 1.0F;
        }
        f5 = -MathHelper.cos(f5 * (float) Math.PI) * 0.5F + 0.5F;
        GL11.glTranslatef(0.0F, 0.0F * f13 - (1.0F - f1) * 1.2F - f5 * 0.5F + 0.04F, -0.9F * f13);
        GL11.glRotatef(90.0F, 0.0F, 1.0F, 0.0F);
        GL11.glRotatef(f5 * -85.0F, 0.0F, 0.0F, 1.0F);
        GL11.glEnable(GL12.GL_RESCALE_NORMAL);
        mc.getTextureManager().bindTexture(entityclientplayermp.getLocationSkin());
        for (int i1 = 0; i1 < 2; ++i1) {
            int j1 = i1 * 2 - 1;
            GL11.glPushMatrix();
            GL11.glTranslatef(-0.0F, -0.6F, 1.1F * (float) j1);
            GL11.glRotatef((float) (-45 * j1), 1.0F, 0.0F, 0.0F);
            GL11.glRotatef(-90.0F, 0.0F, 0.0F, 1.0F);
            GL11.glRotatef(59.0F, 0.0F, 0.0F, 1.0F);
            GL11.glRotatef((float) (-65 * j1), 0.0F, 1.0F, 0.0F);
            render = RenderManager.instance.getEntityRenderObject(mc.thePlayer);
            renderplayer = (RenderPlayer) render;
            f10 = 1.0F;
            GL11.glScalef(f10, f10, f10);
            renderFirstPersonArm(renderplayer, mc.thePlayer);
            GL11.glPopMatrix();
        }
        f6 = entityclientplayermp.getSwingProgress(partialTickTime);
        f7 = MathHelper.sin(f6 * f6 * (float) Math.PI);
        f8 = MathHelper.sin(MathHelper.sqrt_float(f6) * (float) Math.PI);
        GL11.glRotatef(-f7 * 20.0F, 0.0F, 1.0F, 0.0F);
        GL11.glRotatef(-f8 * 20.0F, 0.0F, 0.0F, 1.0F);
        GL11.glRotatef(-f8 * 80.0F, 1.0F, 0.0F, 0.0F);
        f9 = 0.38F;
        GL11.glScalef(f9, f9, f9);
        GL11.glRotatef(90.0F, 0.0F, 1.0F, 0.0F);
        GL11.glRotatef(180.0F, 0.0F, 0.0F, 1.0F);
        GL11.glTranslatef(-1.0F, -1.0F, 0.0F);
        f10 = 0.015625F;
        GL11.glScalef(f10, f10, f10);
        mc.getTextureManager().bindTexture(RES_MAP_BACKGROUND);
        Tessellator tessellator = Tessellator.instance;
        GL11.glNormal3f(0.0F, 0.0F, -1.0F);
        tessellator.startDrawingQuads();
        byte b0 = 7;
        tessellator.addVertexWithUV((double) (0 - b0), (double) (128 + b0), 0.0D, 0.0D, 1.0D);
        tessellator.addVertexWithUV((double) (128 + b0), (double) (128 + b0), 0.0D, 1.0D, 1.0D);
        tessellator.addVertexWithUV((double) (128 + b0), (double) (0 - b0), 0.0D, 1.0D, 0.0D);
        tessellator.addVertexWithUV((double) (0 - b0), (double) (0 - b0), 0.0D, 0.0D, 0.0D);
        tessellator.draw();
        IItemRenderer custom = MinecraftForgeClient.getItemRenderer(itemstack, FIRST_PERSON_MAP);
        MapData mapdata = ((ItemMap) itemstack.getItem()).getMapData(itemstack, mc.theWorld);
        if (custom == null) {
            if (mapdata != null) {
                mc.entityRenderer.getMapItemRenderer().func_148250_a(mapdata, false);
            }
        } else {
            custom.renderItem(FIRST_PERSON_MAP, itemstack, mc.thePlayer, mc.getTextureManager(), mapdata);
        }
        GL11.glPopMatrix();
    } else if (itemstack != null) {
        GL11.glPushMatrix();
        f13 = 0.8F;
        if (entityclientplayermp.getItemInUseCount() > 0) {
            EnumAction enumaction = itemstack.getItemUseAction();
            if (enumaction == EnumAction.eat || enumaction == EnumAction.drink) {
                f6 = (float) entityclientplayermp.getItemInUseCount() - partialTickTime + 1.0F;
                f7 = 1.0F - f6 / (float) itemstack.getMaxItemUseDuration();
                f8 = 1.0F - f7;
                f8 = f8 * f8 * f8;
                f8 = f8 * f8 * f8;
                f8 = f8 * f8 * f8;
                f9 = 1.0F - f8;
                GL11.glTranslatef(0.0F, MathHelper.abs(MathHelper.cos(f6 / 4.0F * (float) Math.PI) * 0.1F) * (float) ((double) f7 > 0.2D ? 1 : 0), 0.0F);
                GL11.glTranslatef(f9 * 0.6F, -f9 * 0.5F, 0.0F);
                GL11.glRotatef(f9 * 90.0F, 0.0F, 1.0F, 0.0F);
                GL11.glRotatef(f9 * 10.0F, 1.0F, 0.0F, 0.0F);
                GL11.glRotatef(f9 * 30.0F, 0.0F, 0.0F, 1.0F);
            }
        } else {
            f5 = entityclientplayermp.getSwingProgress(partialTickTime);
            f6 = MathHelper.sin(f5 * (float) Math.PI);
            f7 = MathHelper.sin(MathHelper.sqrt_float(f5) * (float) Math.PI);
            GL11.glTranslatef(-f7 * 0.4F, MathHelper.sin(MathHelper.sqrt_float(f5) * (float) Math.PI * 2.0F) * 0.2F, -f6 * 0.2F);
        }
        GL11.glTranslatef(0.7F * f13, -0.65F * f13 - (1.0F - f1) * 0.6F, -0.9F * f13);
        GL11.glRotatef(45.0F, 0.0F, 1.0F, 0.0F);
        GL11.glEnable(GL12.GL_RESCALE_NORMAL);
        f5 = entityclientplayermp.getSwingProgress(partialTickTime);
        f6 = MathHelper.sin(f5 * f5 * (float) Math.PI);
        f7 = MathHelper.sin(MathHelper.sqrt_float(f5) * (float) Math.PI);
        GL11.glRotatef(-f6 * 20.0F, 0.0F, 1.0F, 0.0F);
        GL11.glRotatef(-f7 * 20.0F, 0.0F, 0.0F, 1.0F);
        GL11.glRotatef(-f7 * 80.0F, 1.0F, 0.0F, 0.0F);
        f8 = 0.4F;
        GL11.glScalef(f8, f8, f8);
        float f11;
        float f12;
        if (entityclientplayermp.getItemInUseCount() > 0) {
            EnumAction enumaction1 = itemstack.getItemUseAction();
            if (enumaction1 == EnumAction.block) {
                GL11.glTranslatef(-0.5F, 0.2F, 0.0F);
                GL11.glRotatef(30.0F, 0.0F, 1.0F, 0.0F);
                GL11.glRotatef(-80.0F, 1.0F, 0.0F, 0.0F);
                GL11.glRotatef(60.0F, 0.0F, 1.0F, 0.0F);
            } else if (enumaction1 == EnumAction.bow) {
                GL11.glRotatef(-18.0F, 0.0F, 0.0F, 1.0F);
                GL11.glRotatef(-12.0F, 0.0F, 1.0F, 0.0F);
                GL11.glRotatef(-8.0F, 1.0F, 0.0F, 0.0F);
                GL11.glTranslatef(-0.9F, 0.2F, 0.0F);
                f10 = (float) itemstack.getMaxItemUseDuration() - ((float) entityclientplayermp.getItemInUseCount() - partialTickTime + 1.0F);
                f11 = f10 / 20.0F;
                f11 = (f11 * f11 + f11 * 2.0F) / 3.0F;
                if (f11 > 1.0F) {
                    f11 = 1.0F;
                }
                if (f11 > 0.1F) {
                    GL11.glTranslatef(0.0F, MathHelper.sin((f10 - 0.1F) * 1.3F) * 0.01F * (f11 - 0.1F), 0.0F);
                }
                GL11.glTranslatef(0.0F, 0.0F, f11 * 0.1F);
                GL11.glRotatef(-335.0F, 0.0F, 0.0F, 1.0F);
                GL11.glRotatef(-50.0F, 0.0F, 1.0F, 0.0F);
                GL11.glTranslatef(0.0F, 0.5F, 0.0F);
                f12 = 1.0F + f11 * 0.2F;
                GL11.glScalef(1.0F, 1.0F, f12);
                GL11.glTranslatef(0.0F, -0.5F, 0.0F);
                GL11.glRotatef(50.0F, 0.0F, 1.0F, 0.0F);
                GL11.glRotatef(335.0F, 0.0F, 0.0F, 1.0F);
            }
        }
        if (itemstack.getItem().shouldRotateAroundWhenRendering()) {
            GL11.glRotatef(180.0F, 0.0F, 1.0F, 0.0F);
        }
        if (itemstack.getItem().requiresMultipleRenderPasses()) {
            RenderManager.instance.itemRenderer.renderItem(entityclientplayermp, itemstack, 0, EQUIPPED_FIRST_PERSON);
            for (int x = 1; x < itemstack.getItem().getRenderPasses(itemstack.getItemDamage()); x++) {
                int k1 = itemstack.getItem().getColorFromItemStack(itemstack, x);
                f10 = (float) (k1 >> 16 & 255) / 255.0F;
                f11 = (float) (k1 >> 8 & 255) / 255.0F;
                f12 = (float) (k1 & 255) / 255.0F;
                GL11.glColor4f(1.0F * f10, 1.0F * f11, 1.0F * f12, 1.0F);
                RenderManager.instance.itemRenderer.renderItem(entityclientplayermp, itemstack, x, EQUIPPED_FIRST_PERSON);
            }
        } else {
            RenderManager.instance.itemRenderer.renderItem(entityclientplayermp, itemstack, 0, EQUIPPED_FIRST_PERSON);
        }
        GL11.glPopMatrix();
    } else if (!entityclientplayermp.isInvisible()) {
        GL11.glPushMatrix();
        f13 = 0.8F;
        f5 = entityclientplayermp.getSwingProgress(partialTickTime);
        f6 = MathHelper.sin(f5 * (float) Math.PI);
        f7 = MathHelper.sin(MathHelper.sqrt_float(f5) * (float) Math.PI);
        GL11.glTranslatef(-f7 * 0.3F, MathHelper.sin(MathHelper.sqrt_float(f5) * (float) Math.PI * 2.0F) * 0.4F, -f6 * 0.4F);
        GL11.glTranslatef(0.8F * f13, -0.75F * f13 - (1.0F - f1) * 0.6F, -0.9F * f13);
        GL11.glRotatef(45.0F, 0.0F, 1.0F, 0.0F);
        GL11.glEnable(GL12.GL_RESCALE_NORMAL);
        f5 = entityclientplayermp.getSwingProgress(partialTickTime);
        f6 = MathHelper.sin(f5 * f5 * (float) Math.PI);
        f7 = MathHelper.sin(MathHelper.sqrt_float(f5) * (float) Math.PI);
        GL11.glRotatef(f7 * 70.0F, 0.0F, 1.0F, 0.0F);
        GL11.glRotatef(-f6 * 20.0F, 0.0F, 0.0F, 1.0F);
        mc.getTextureManager().bindTexture(entityclientplayermp.getLocationSkin());
        GL11.glTranslatef(-1.0F, 3.6F, 3.5F);
        GL11.glRotatef(120.0F, 0.0F, 0.0F, 1.0F);
        GL11.glRotatef(200.0F, 1.0F, 0.0F, 0.0F);
        GL11.glRotatef(-135.0F, 0.0F, 1.0F, 0.0F);
        GL11.glScalef(1.0F, 1.0F, 1.0F);
        GL11.glTranslatef(5.6F, 0.0F, 0.0F);
        render = RenderManager.instance.getEntityRenderObject(mc.thePlayer);
        renderplayer = (RenderPlayer) render;
        f10 = 1.0F;
        GL11.glScalef(f10, f10, f10);
        renderFirstPersonArm(renderplayer, mc.thePlayer);
        GL11.glPopMatrix();
    }
    if (itemstack != null && itemstack.getItem() instanceof ItemCloth) {
        GL11.glDisable(GL11.GL_BLEND);
    }
    GL11.glDisable(GL12.GL_RESCALE_NORMAL);
    RenderHelper.disableStandardItemLighting();
}
Also used : IItemRenderer(net.minecraftforge.client.IItemRenderer) ItemCloth(net.minecraft.item.ItemCloth) Tessellator(net.minecraft.client.renderer.Tessellator) Render(net.minecraft.client.renderer.entity.Render) EnumAction(net.minecraft.item.EnumAction) ItemMap(net.minecraft.item.ItemMap) EntityClientPlayerMP(net.minecraft.client.entity.EntityClientPlayerMP) MapData(net.minecraft.world.storage.MapData) RenderPlayer(net.minecraft.client.renderer.entity.RenderPlayer) EntityPlayerSP(net.minecraft.client.entity.EntityPlayerSP) ItemStack(net.minecraft.item.ItemStack)

Example 29 with EntityClientPlayerMP

use of net.minecraft.client.entity.EntityClientPlayerMP in project BloodMagic by WayofTime.

the class ScrollHelper method onMouseEvent.

@SubscribeEvent
public void onMouseEvent(MouseEvent event) {
    EntityClientPlayerMP player = Minecraft.getMinecraft().thePlayer;
    if (event.dwheel != 0 && player != null && player.isSneaking()) {
        ItemStack stack = player.getCurrentEquippedItem();
        if (stack != null) {
            Item item = stack.getItem();
            if (item instanceof SigilOfHolding) {
                cycleSigil(stack, player, event.dwheel);
                event.setCanceled(true);
            }
        }
    }
}
Also used : Item(net.minecraft.item.Item) EntityClientPlayerMP(net.minecraft.client.entity.EntityClientPlayerMP) ItemStack(net.minecraft.item.ItemStack) SubscribeEvent(cpw.mods.fml.common.eventhandler.SubscribeEvent)

Example 30 with EntityClientPlayerMP

use of net.minecraft.client.entity.EntityClientPlayerMP in project RFTools by McJty.

the class RenderWorldLastEventHandler method renderHilightedBlock.

private static void renderHilightedBlock(RenderWorldLastEvent evt) {
    Coordinate c = RFTools.instance.clientInfo.getHilightedBlock();
    if (c == null) {
        return;
    }
    Minecraft mc = Minecraft.getMinecraft();
    long time = System.currentTimeMillis();
    if (time > RFTools.instance.clientInfo.getExpireHilight()) {
        RFTools.instance.clientInfo.hilightBlock(null, -1);
        return;
    }
    if (((time / 500) & 1) == 0) {
        return;
    }
    EntityClientPlayerMP p = mc.thePlayer;
    double doubleX = p.lastTickPosX + (p.posX - p.lastTickPosX) * evt.partialTicks;
    double doubleY = p.lastTickPosY + (p.posY - p.lastTickPosY) * evt.partialTicks;
    double doubleZ = p.lastTickPosZ + (p.posZ - p.lastTickPosZ) * evt.partialTicks;
    GL11.glPushMatrix();
    GL11.glColor3ub((byte) 255, (byte) 0, (byte) 0);
    GL11.glLineWidth(3);
    GL11.glTranslated(-doubleX, -doubleY, -doubleZ);
    boolean depth = GL11.glIsEnabled(GL11.GL_DEPTH_TEST);
    GL11.glDisable(GL11.GL_DEPTH_TEST);
    boolean txt2D = GL11.glIsEnabled(GL11.GL_TEXTURE_2D);
    GL11.glDisable(GL11.GL_TEXTURE_2D);
    Tessellator tessellator = Tessellator.instance;
    float mx = c.getX();
    float my = c.getY();
    float mz = c.getZ();
    tessellator.startDrawing(GL11.GL_LINES);
    tessellator.addVertex(mx, my, mz);
    tessellator.addVertex(mx + 1, my, mz);
    tessellator.addVertex(mx, my, mz);
    tessellator.addVertex(mx, my + 1, mz);
    tessellator.addVertex(mx, my, mz);
    tessellator.addVertex(mx, my, mz + 1);
    tessellator.addVertex(mx + 1, my + 1, mz + 1);
    tessellator.addVertex(mx, my + 1, mz + 1);
    tessellator.addVertex(mx + 1, my + 1, mz + 1);
    tessellator.addVertex(mx + 1, my, mz + 1);
    tessellator.addVertex(mx + 1, my + 1, mz + 1);
    tessellator.addVertex(mx + 1, my + 1, mz);
    tessellator.addVertex(mx, my + 1, mz);
    tessellator.addVertex(mx, my + 1, mz + 1);
    tessellator.addVertex(mx, my + 1, mz);
    tessellator.addVertex(mx + 1, my + 1, mz);
    tessellator.addVertex(mx + 1, my, mz);
    tessellator.addVertex(mx + 1, my, mz + 1);
    tessellator.addVertex(mx + 1, my, mz);
    tessellator.addVertex(mx + 1, my + 1, mz);
    tessellator.addVertex(mx, my, mz + 1);
    tessellator.addVertex(mx + 1, my, mz + 1);
    tessellator.addVertex(mx, my, mz + 1);
    tessellator.addVertex(mx, my + 1, mz + 1);
    tessellator.draw();
    if (depth) {
        GL11.glEnable(GL11.GL_DEPTH_TEST);
    }
    if (txt2D) {
        GL11.glEnable(GL11.GL_TEXTURE_2D);
    }
    GL11.glPopMatrix();
}
Also used : EntityClientPlayerMP(net.minecraft.client.entity.EntityClientPlayerMP) Tessellator(net.minecraft.client.renderer.Tessellator) GlobalCoordinate(mcjty.lib.varia.GlobalCoordinate) Coordinate(mcjty.lib.varia.Coordinate) Minecraft(net.minecraft.client.Minecraft)

Aggregations

EntityClientPlayerMP (net.minecraft.client.entity.EntityClientPlayerMP)34 Minecraft (net.minecraft.client.Minecraft)8 SubscribeEvent (cpw.mods.fml.common.eventhandler.SubscribeEvent)7 ItemStack (net.minecraft.item.ItemStack)6 SideOnly (cpw.mods.fml.relauncher.SideOnly)5 Coordinate (mcjty.lib.varia.Coordinate)3 Tessellator (net.minecraft.client.renderer.Tessellator)3 Item (net.minecraft.item.Item)3 TileEntity (net.minecraft.tileentity.TileEntity)3 GlobalCoordinate (mcjty.lib.varia.GlobalCoordinate)2 EntityPlayerSP (net.minecraft.client.entity.EntityPlayerSP)2 GuiScreen (net.minecraft.client.gui.GuiScreen)2 ClickEvent (net.minecraft.event.ClickEvent)2 HoverEvent (net.minecraft.event.HoverEvent)2 ChatComponentText (net.minecraft.util.ChatComponentText)2 ChatComponentTranslation (net.minecraft.util.ChatComponentTranslation)2 World (net.minecraft.world.World)2 Vector3 (WayofTime.alchemicalWizardry.api.Vector3)1 IMasterRitualStone (WayofTime.alchemicalWizardry.api.rituals.IMasterRitualStone)1 RitualComponent (WayofTime.alchemicalWizardry.api.rituals.RitualComponent)1